GlowBounce private upload automation

この記事はCodex製です。

##依頼内容と課題

GlowBounce の 2時間ごとの Shorts automation が動画候補の生成で止まり、YouTube への投稿まで到達していなかったため、YouTube 投稿の仕組みまで含めてシステム化し、自動化する依頼だった。

課題は、既存の youtube:upload はすでに実装済みだった一方で、automation prompt と skill 側が「upload command を残して止める」運用を前提にしており、定期実行で YouTube に private upload されない点だった。

##アプローチ

新しく scripts/glowbounce-production-slot.ts を追加し、1回の slot を report -> recent upload/metadata review -> concept selection -> render or reuse -> Shorts validation -> YouTube private upload -> run-log update まで一気通しで処理する runner にまとめた。

candidate selection は既存の zero-base mini batch 群を使い、title noun と concept family が直近 upload log や recent metadata に含まれないものを優先する単純な variety gate にした。

YouTube 投稿は .codex/youtube-oauth-token.json が存在する場合に bun run youtube:upload を自動実行し、public や scheduled public publish は引き続き自動化しない設計にした。

推論: YouTube Data API の upload と Shorts 判定条件を使えば、無人 automation では private upload までを既定完了状態にするのが最も安定し、public publish だけを action-time confirmation に残すのが実務上の境界になる。

合わせて package.jsonbun run glowbounce:slot を追加し、youtube-growth-loop / youtube-upload-ops skill を unattended private upload 前提に更新した。ローカルの automation 設定ファイルも、この runner を実行する文面に更新した。

##アウトプット

  • scripts/glowbounce-production-slot.ts
  • package.json
  • .codex/skills/youtube-growth-loop/SKILL.md
  • .codex/skills/youtube-upload-ops/SKILL.md

検証として、既存候補 output/shorts-zero-base-wave-ring-cavitation-v1-batch-20260424-r1/zero-base-wave-ring-cavitation-v1-001.mp4 に対して runner を実行し、private upload が成功した。

この検証 upload の YouTube video ID は XDiiOTri77k で、run log は output/shorts-zero-base-wave-ring-cavitation-v1-batch-20260424-r1/run-log.md に更新された。

##参照した一次情報

##一次情報・一次ソース