成片工坊(video-forge)
良い作品は一言で生成されません。このスキルは以下の3つのことを管理します:
- 明確化するまで尋ねる:曖昧な要求の場合は、シーン、人物、感情、細部すべてが具体的な映像になるまで尋ね続けます。
- 確認してから制作する:スタイル、設定、絵コンテはすべてユーザーの承認を得てから、時間のかかる制作に入ります。
- 第三者による審査:完成作品は独立した審査員に渡され、ユーザーが承認した「評価基準カード」に従って項目ごとに判定されます。自己チェックで審査を代替しません。
制作自体は既存のパイプライン(lemo-opuscar、mv-director、Remotion、three.js ミニチュア)に委ねられ、このスキルはディレクターとゲートキーパーの役割のみを担います。
鉄則
- 一言で作業を開始してはならない。確認リスト(
references/interview-checklist.md)の必須項目をすべて尋ねていない場合は、制作に入ってはいけません。ユーザーが「任せる」と言った項目は、具体的なデフォルト値を決めて要求カードに記載し、ユーザーに確認させます。 - 曖昧な言葉は映像に置き換える:「温かい」「高級」「感じが良い」は回答とみなしません。2~4個の具体的な映像オプションを提示し、ユーザーに選ばせます。
- 毎回のヒアリング後、要求カードを貼る(
references/card-templates.md)。ユーザーが決定済みと未決定を一目で確認できるようにします。 - 関門の順序はスキップ不可:要求カード + 評価基準カード → スタイル(サンプル映像)→ スタイルカード/スタイルフレーム → 設定カード → 絵コンテ連絡表 → ラフ → 審査員ループ → アーカイブ。パイプラインが特定の関門をスキップできると宣言する場合(例:ミニチュアは絵コンテなし)は、その旨を明記します。
- 絵コンテはデフォルトで確認必須(lemo はデフォルト非確認だが、ここではデフォルト確認に変更)。
- 審査員は独立したサブエージェント。作品とユーザー承認済みの評価基準カードのみを渡し、私の結論は渡しません。審査員は全編を視聴し(2秒ごとに1フレーム抽出)、音響は測定のみで「良い/悪い」の評価は行いません。ユーザーの意見が審査員に優先します。
- 人物に演技をさせない:コードで描画した表情や手の動きは必ず不自然になります。パイプラインにキャラクターリギング機能がない限り、人物は小さい、遠い、静止、または単純なループ動作にとどめます。
- ユーザーの発言はそのままカードに記録:ユーザーが言った具体的な要求(例:「ライトで潰さないで」)は、原文のまま要求カードの禁止事項やハード要件に書き込みます。
- 大規模タスクは役割に応じて複数のエージェントに分割(
references/division-of-labor.md):まず骨格ファイルを決定し、各役割は番号のみを参照し、算術はスクリプトで検証します。思考強度を下げてタイムアウトを回避しようとしてはなりません。 - 作品は
~/video-forgeにアーカイブし、一時ディレクトリには置きません。一時ディレクトリは再起動で消えます。 - ネットワーク:このマシンのプロキシは極めて遅いため、大規模なダウンロードは
curl --noproxy '*'、env -u http_proxy -u https_proxy -u HTTP_PROXY -u HTTPS_PROXYでバイパスします。シェル内でgrepが壊れている場合は/usr/bin/grepを使用します。
手順
0. 振り分け
まず ~/video-forge/recipes/ を確認します:ユーザーが明示的に方式を指定した場合(「三渲二ミニチュア方式で駅を作って」など)、その方式のファイルを読み、方式で未決定の項目のみヒアリングします。
それ以外の場合は、要求に応じてパイプラインを選択します:
| 要求 | パイプライン | ファイル |
|---|---|---|
| 特定スタイルの短編(30~90秒)、テーマは自由 | スタイル動画 | references/pipeline-style-film.md |
| 楽曲に合わせたMV制作 | MV | references/pipeline-mv.md |
| 物事・歴史・データの解説 | 解説 | references/pipeline-explainer.md |
| ドラッグ&回転可能な3D小シーン | ミニチュア | references/pipeline-diorama.md |
ユーザーが全く未定の場合:references/style-picker.md の初心者ガイドを実行(まずサンプル映像ウォールを表示し、次にコンテンツアイデアを提案)。
1. ヒアリング → 要求カード
まず映像タイプと尺区分を決定し、references/genres/ 内の対応するタイプカードをロードします(カード選択表は genres/README.md 参照)。以降のヒアリング、構成、文字数予算、評価基準カードはすべてこのカードを起点とします。
references/interview-checklist.md に従い、ラウンドごとに質問します。AskUserQuestion を使用し、各ラウンド最大4個の質問とし、オプションは具体的な映像として提示します。各ラウンド後、要求カードを貼ります。必須項目が揃ったら、ユーザーに要求カードを確認させます。
2. スタイル
ユーザーが未選択の場合:references/style-picker.md に従い、2~3個のスタイルをサンプル映像リンク付きで推薦すると同時に、全66種のリストも提示します(テキストのみの質問とし、AskUserQuestion は使いません。選択肢が少なすぎるとリストが隠れてしまうため)。
選択後、そのスタイルの STYLE.md を読み、スタイルカード(数値:色値、線幅、光比、フォント、カメラ文法、音響)にまとめ、ユーザーに確認させます。
3. スタイルフレーム
実際の描画コードを使用して、1~3枚のスタイルフレームを生成します(1ショット/1コーナー、光と色を確定)。ユーザー確認後に本展開します。
4. 設定カード
キャラクター、場所、小道具がある場合、それぞれに設定カードを作成:容姿、プロポーション、配色、衣装、重要小道具、禁止事項。設定図を出力し、ユーザーに確認させます。
5. 絵コンテ連絡表
6~9コマのサムネイルを1枚にまとめます(各コマ:時間、映像、カメラ、音響、字幕)。ユーザー確認後にアニメーション制作を開始します。
6. ラフ → 審査員ループ
パイプラインに従ってラフを制作し、references/review.md に従って2名の審査員を起動し、評価基準カードに従って項目ごとに判定(合格 / 一部合格 / 不合格 + 証拠フレーム)。不合格項目のみ修正し、毎ラウンドユーザーに確認します。
停止条件:必須項目がすべて合格かつユーザー満足、または3ラウンド経過、またはユーザーが停止を指示。
7. アーカイブ
~/video-forge/works/<slug>/ に以下を配置:ソースコードまたはプロジェクトリンク、完成作品/スクリーンショット、要求カード、スタイルカード、絵コンテ、scores.md。~/video-forge/retros/ に振り返りを記述。再利用可能なルートであれば recipes/_template.md から新しい方式を作成し、~/video-forge/README.md の「🎞 作品」テーブルに行を追加。新たに外部ライブラリを使用した場合は deps.json に登録し、index/ を再構築します。
公開後約1週間後に、ユーザーにプラットフォームの管理画面(例:抖音クリエイターサービスセンター)で完視聴率、平均視聴時間、離脱の多い秒数、リピート視聴された区間を確認してもらい、その作品の scores.md の「公開データ」セクションにフィードバックを記入。振り返りには、どのリテンション施策が効果的だったか、どこで離脱したかを一文で記述します。次回の脚本と絵コンテ作成時には、審査員の意見だけでなく、これらの実データも参考にします。
参考ファイル
| フェーズ | ファイル | いつ参照するか |
|---|---|---|
| 1 ヒアリング | references/interview-checklist.md | 毎回の作業開始時;各ラウンドのヒアリング前に不足項目を確認 |
| 1–5 カード | references/card-templates.md | 要求カード、スタイルカード、設定カード、絵コンテ連絡表を貼る時 |
| 2 スタイル | references/style-picker.md | ユーザーがスタイル未選択、コンテンツ未定 |
| 3–6 制作 | references/pipeline-style-film.md | lemo-opuscar スタイルで短編制作 |
| references/pipeline-mv.md | ミュージックビデオ制作 | |
| references/pipeline-explainer.md | Remotion で情報・解説動画制作 | |
| references/pipeline-diorama.md | three.js 3Dミニチュアシーン制作 | |
| 3–6 役割分担 | references/division-of-labor.md | 複数エージェントで Treatment または制作を行う時:役割分担、骨格ファイル、検証スクリプト |
| タイプカード(タイプ/尺別) | references/genres/README.md | ヒアリング時にタイプと尺を決定後、該当カードをロード:尺予算、構成、映像・音響規範、検証ロジック、プロンプトテンプレートはすべてカードから取得 |
| 伴奏 | references/music.md | 伴奏手法の選択(コード作曲カード/ビート、ロイヤリティフリー楽曲ライブラリ、オープンソースモデル)、tools/music/code_score.py の使い方 |
| スタイル選択 / 動効果選択 | ~/video-forge/index/catalog.md(index.json 機械可読) | 全スタイルライブラリ、動効果カード、ナレーション文法、自作スタイルを一覧表に;ライブラリ不足時は bash ~/video-forge/bootstrap.sh <id> を実行 |
| 1 / 6 審査 | references/review-standards.md | ヒアリング時に映像タイプに応じたデフォルトチェック項目を提示し、ユーザーと共に評価基準カードを決定 |
| 6 審査 | references/review.md | 審査員起動、項目ごとの判定、停止判断 |
| トラブルシューティング | references/troubleshooting.md | 依存関係インストール、レンダリング、スクリーンショット、ネットワークの問題 |
| アーカイブ | ~/video-forge/README.md、~/video-forge/recipes/_template.md | 制作完了後 |