Communitygithub.com

tianbester-ZA/script

15~60秒の有料ソーシャル動画やリール(UGC、創業者動画、トーキングヘッド、寸劇)用の台本を生成し、Butcherbirdの1ページ1広告形式のシュートパックにまとめます。全フック・約束・証明・オファーを17冊の広告書籍と照合し、批評も行います。

script とは?

このスキルは、有料ソーシャル動画広告やリール向けの台本生成を専門的に支援するエージェントです。UGC、創業者動画、トーキングヘッド、寸劇など、多様な形式に対応し、15~60秒の枠に収まる完結な広告パッケージ(シュートパック)を作成します。最大の特徴は、生成した各広告のフック・約束・証明・オファーといった要素を、17冊に及ぶ広告・マーケティング書籍の知見と照合し、根拠を明示することです。さらに、作成した台本に対して独立した批評エージェントによる評価を実施し、質を高めます。これにより、単なるテンプレート的な広告ではなく、理論とデータに裏打ちされた、視聴者の行動を促す効果的な広告を生成できます。Claude CodeなどのAIエージェント環境で動作し、詳細な手順に従って、ターゲットの設定、フックの提案、台本の執筆、そして批評と修正を繰り返しながら、撮影現場でそのまま使える洗練されたシュートパックを出力します。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/tianbester-ZA/butcherbird-skills/tree/main/plugins/bb/skills/script

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

/bb:script

ゴール

チームが午後一で撮影できるシュートパック。すべての広告は、音を消しても2秒で見知らぬ人の目を引き、一人の購入者に購入理由を伝え、実行可能な一つのオファーで締めくくる。その背後には、各フック、約束、証明の下にある書籍の該当箇所を記した理由シートが存在する。

ここから始める:読み、言い換え、一度だけ質問する

これを実行する人がコンテキストを保持し、ここで述べられることが良質な成果を生む。私たちの広告が失敗したのは何も質問しなかったからであり、リールが成功したのは誰かが実際のコンテキストを提供したからだ。

最初に読むこと、質問しないこと:クライアントの成功事例、ペルソナ、レビュー、過去の広告;実際の製品、価格、オファー;ブリーフに記載された内容。

言い換えること:証拠から読み取った、購入者、アングル、ステージ、オファー。知っている情報を入力し、相手が再入力するのではなく確認するだけにする。

不足しているものだけを、短い一回のやり取りで質問する(わかっている場合はAskUserQuestion、そうでなければメッセージ内で)。通常は2~3つ:

  1. この広告は誰を動かすべきか、彼らは自分自身に何を思い描くべきか、視聴後すぐに何をすべきか?
  2. 今日提示できる正確な製品、オファー、価格、行動理由、証拠は?話している人に実際に何が起こったのか?
  3. 誰が話しているのか、どのような口調か、実際に撮影できるもの(カメラ、人、場所、小道具、時間)は何か?

次に、その位置づけを提案し、承認か変更かを求める:購入者 × アングル × 認識段階、スクリプトモード(創業者ストーリー、実際のコメント返信、デモンストレーション、問題主導、公正な比較、フィールドチャレンジまたはエンターテイメント、直接オファー)、およびフォーマット。

回答を job/brief.md に記入し、その後は止まらずに最後まで作業する。すでにすべてが与えられている場合、または「そのまま進めて」と言われた場合は、質問しない。誰も答えられない場合(ヘッドレス実行)は、質問すべきだったことを述べ、妥当な解釈を採用する。

味付けはジョブごとに異なる

job/brief.md の最初の行にジョブの種類(有料広告、オーガニックリール、など)を記述する。ある動画で好まれたものが別の動画でも通用するとは限らない。オーガニックリールと有料広告は異なるジョブであり、有料広告は販売を目的とする。したがって、有料広告は、対象者、製品のセールスポイント、証拠、購入理由に基づいて評価され、オーガニック作品のジョークや雰囲気ではない。ジョークが広告内で居場所を得るのは、販売に貢献する場合のみである。

なぜこれが存在するのか

放っておくと、Claudeは丁寧な広告を書く:一人がカメラに向かって話し、優しい口調のフックで視聴者がスターを知っている必要があり、小さなギャグ、オファーを二回繰り返し、毎回同じクローズ。清潔で、撮影可能で、平坦だ。モデルは安全で一般的な選択肢に偏り、ルールのリストでは軌道修正できない。

効果的なのは、言葉の前に魅力を見つけ、選択する前に多くのフックを作り、目の前に書籍のメモを置き、あなたの推論を見たことのない批評家が草案を評価することだ。書籍は質問と一節であり、声ではない。「シュワルツのように書け」は無意味だ。「この視聴者はコールドなので、最初の行は製品ではなく彼らを描写すべきか?」という問いと、その背後にある一節は効果的だ。

良い成果物の基準

  • 形状が異なる5つの広告。実行順序を見ても、広告1から広告4を予測できない。
  • 見知らぬ人がミュートでも理解できる、最小限の文字数の最初のフレームとテキスト行。カメラがキャラクターになり、最後のギャグは視線で表現できる。すべてのアイデアがトーキングヘッドである必要はなく、すべてのアイデアが誰かがプールに落ちることで終わるわけではない。
  • 誰のためのものか、なぜ購入するのかが迅速かつ明確で、すべての広告が一つのオファーで終わる。寸劇はブリーフが楽しさを求める場合に歓迎されるが、それでも販売しなければならない:ジョークがセールスポイントであり、それを語り直すには製品が必要である。
  • 指示しやすい:「これをやれ。これをやれ。これを言え。」アイデアを伝える最もシンプルなセットアップで、通常は一つの場所と最小限の人数。
  • 広告ごとに一つのオファー、クローズで一度だけ、正確に、12語以内で、最も強力な真実の形で表現する。
  • 形容詞ではなく、正確な数字と名前付きの詳細。それぞれの出所が特定できる。
  • 一人の人物に語りかけ、彼女が抱く一つの信念を変える。素敵なショットの中を製品が歩くのは、いかに美しくてもショーケースであり、失敗である。
  • 出荷されたフォーマットとまったく同じパック。引用、未解決の質問、未確認のマークがない。

コマンド

参照ファイルはこれらを短く記述する。シェルの状態はコマンド間で引き継がれないため、常に完全な形式を使用し、批評エージェントにも完全な形式を与えること。

  • scripts/... は ${CLAUDE_SKILL_DIR}/scripts/... を意味する。references/... は ${CLAUDE_SKILL_DIR}/references/... を意味する。
  • search.py は python3 "${CLAUDE_PLUGIN_ROOT}/skills/books/scripts/search.py" を意味する。
  • ブックカード:${CLAUDE_PLUGIN_ROOT}/skills/books/cards/。

手順

<client>-scripts/<yyyy-mm-dd>-<slug>/ 内で作業する(ユーザーがいるフォルダ、またはブリーフが指定するフォルダ job/)。各ステップで何かが書き込まれるため、再開したセッションは最後のファイルから続行する。

0. まず、クライアントを読む。 上記の開始ラウンドを適切に行う:クライアント自身の成功事例とその数字、ペルソナ、顧客の言葉(レビュー、広告コメント)。「ファイルなし」はまだ調べていないことを意味する。次に、クライアントのノートやプロフィールスキル、クライアント自身の成功事例フォルダ(そのクライアントのみ、examples/README.md 参照)、lessons.md、ブリーフ。価格、オファー、期限はその出所で再確認する。job/brief.md を作成する:出所と日付付きの事実とオファー、誰がカメラに映るか、このブランドだけが持つもの、クライアント自身のアイデア(一行ごと)、開始ラウンドの回答。

1. 診断。 references/diagnose.md を読み込む。一人の実在の人物から始める:彼女のタイプの名前、彼女の日常、現在使用しているもの、彼女が言いそうなこと、なぜ他のペルソナではなく彼女なのか、その証拠。次に、アピール、現在の行動、認識度、何度聞いたか、信じていないこと、オファーが存在する理由、このブランドだけが持つものを確定する。reasoning.md §1 を、スロットごとに一つのブロックで記述する。

2. このジョブに関連する書籍を検索する。 references/search.md を読み込む。書籍の内容を記憶から始めない:この製品の実際の問題について6~10回検索し、--show でメモを読み、このブリーフに関連する8~12件を保持する。reasoning.md §2 を記述する:ID、一行、該当スロット。

3. フック。 references/hooks.md を読み込む。少なくとも4種類にわたって広告ごとに6~8個のフックを作成する。そのうち、プレーンなもの1つ、クライアントに見せるのを躊躇するような奇抜なもの少なくとも2つを含む。3つを保持する:安全なもの1つ、奇抜なもの1つ、オファーを述べないもの1つ。reasoning.md §3 を記述する。誰も見ていなくても選択肢を作る:選び、選ばれなかったものもシートに残す。

4. 下書き。 references/body-and-close.md、references/offer-and-proof.md、references/pack-format.md を読み込む。job/pack-draft.md を作成する。reasoning.md §4 を記述する:広告ごとに、フック、約束、証明、ボディ、クローズの各行に、その一節を付記する。

5. チェック。

python3 "${CLAUDE_SKILL_DIR}/scripts/check_pack.py" job/pack-draft.md --event "Black Friday"
python3 "${CLAUDE_SKILL_DIR}/scripts/cite_check.py" job/reasoning.md

すべての赤線を修正する。琥珀色の線は判断の余地がある。出力を job/checks.txt に保存する。

6. 批評。 利用可能な最強のモデルで新規エージェントを起動し、pack-draft.md、brief.md、references/critic.md、完全な search.py コマンド(編集の場合はフッテージシートも)を与える。reasoning.md やこのチャットは渡さない:批評は、言い訳ではなく、ブリーフのジョブに対して広告を評価する。質問は実際の一節を引用し、そのメモを読む。批評はメモを返し、書き直しは決して行わない。job/critic.md として保存する。

7. 書き直し。 批評が引用した各一節の背後にあるメモを、それに基づいて行動する前に読む:IDによっては別の内容に関するものもある可能性があり、メモ自体は正しい場合もある。ブリーフが優先される場合は、reasoning.md §5 に書面で異議を記録する。ステップ5を再実行する。1回、多くても2回。結果は job/pack.md となる。

8. パッケージ化。

python3 "${CLAUDE_SKILL_DIR}/scripts/build_pack.py" job/pack.md --pdf

PDFを開き、すべてのページを確認する:クリップされていないこと、1ページに1広告であること。warning: 行を読む。返信では、広告ごとに一行、書籍名を一度だけ述べる一文を入れる。クライアントにログがある場合は、日付付きの行を追加する。

確定したものは確定

ユーザーが確定した事実は確定である。未確認の項目や小さな質問のページがあるパックを誰も好まない。したがって、行わないこと:妥当な解釈を使用し、reasoning.md §0 に理由を一行で記述し、先に進む。確認された事項はパックの settled: 行に記述し、チェッカーがこれを尊重する。真に出所が不明な数字がある場合は、その数字なしで広告を書き、それを記録する。

決定やクライアントに影響を与えるものだけが、返信内の平文の一行として提起される。出所不明の数字は決して創作せず、また質問としても表示しない。

既存のフッテージの編集

時には、ジョブは撮影ではなく、手元にあるフッテージのための言葉である。同じ手順、3つの違い。ステップ0はフッテージから始める:クリップと時間ごとに使用可能な瞬間をリストアップする。スクリプトは撮影されたものしか約束できないからだ。ステップ1ではフッテージチェックを追加する:すべての主張について、それを示すクリップの瞬間を挙げ、ショットがない主張は書き直すか削除する。ページ上では、フロントマターに mode: edit を設定する:Say lines は画面上の言葉を保持し、クローズは画面上のテキスト、フィルムセクションは ## The footage とする。パックを /bb:edit に渡す。

ハードリミット

  • ジョブごとに1クライアント。他のクライアントの情報はブリーフ、パック、シートに入れてはならず、クライアントの情報をこのスキルに入れてはならない。
  • 数字、期限、在庫数、レビューの捏造禁止。緊急性は真実であり、理由があるもののみ。
  • 書籍のテキストはそのまま引用しない。書籍が教えることを自分の言葉で述べ、IDを引用する。
  • ユーザーの同意なしに、このスキルからクライアントに何かを送付したり、公開したり、費用を費やしたりしてはならない。パックはこれを実行しているユーザーに渡され、ユーザーが送信する。

ノウハウ

1秒あたりの単語数。 1秒あたり約2.5語:15秒で約35語、20秒で約50語、30秒で約75語、60秒で約150語。アクションにも時間がかかる。

書籍はリールについてではない。 それらは印刷物、通信販売、テレビ、ラボスタディである。数字は当時人々を動かしたものとして扱う。Hormoziのものは彼自身の主張であり、Cialdiniの多くは購入ではなく好意である。これらのどれもミュートされたフィードをテストしていない。ミュートの文法、キャラクターとしてのカメラ、最後のギャグは実際のリールを観察することで得られるため、そこを見るべきである:クライアント自身の参考資料、およびユーザーが送ったもの。

書籍が矛盾する場合。 各参考文献は、意見の相違と、15~60秒の動画においてどちらに傾くかを末尾に記している。広告を決定づける場合は、シートにその傾きを記述する。

投票は意見テストである。 批評家や審査員は巧妙さを好むが、スプリットランではしばしばそうではない(caples-0221、caples-0279)。したがって、批評家が感心しなくても、プレーンなフックは別のオプションとして撮影され、実際の数字が決定する。

フックとホールド。 フック率 = 3秒再生数 ÷ インプレッション数。ホールド率 = ThruPlays ÷ 3秒再生数。フックが約20%未満:冒頭のみを再編集する。ホールドが約40%未満:中盤を再編集する。両方が良好で購入がない場合:オファーかクローズの問題であり、編集の問題ではない。

これらを該当時に読み込む

参照ファイルタイミング
references/diagnose.mdステップ1、およびスクリプトが平坦に感じられるが理由がわからない場合
references/search.mdステップ2、または検索結果が空の場合
references/hooks.mdステップ3、および「この広告に新しいフックを付ける」ジョブの場合
references/body-and-close.mdステップ4
references/offer-and-proof.mdステップ1(信念のギャップとオファーの理由)、ステップ4
references/pack-format.mdステップ4とステップ8
references/critic.md批評エージェントのみ(ステップ6)
examples/README.mdステップ0、クライアントの成功事例を見つけるため
evals/judge.md2つのパック間のブラインドテストのみ

教訓

lessons.md には、実際の結果からの日付付き箇条書きが含まれる:広告、日付付きの数字、その施策の背後にある一節、試されたこと。ステップ0で最後の5つを読む。批評家はそれらに対して草案をチェックする。このフォルダは更新のたびに置き換えられるため、クライアント自身の教訓や成功事例はそのクライアントのフォルダに、全員向けの教訓はリポジトリ(CONTRIBUTING.md)を通じて保存される。

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

関連スキル