Communitygithub.com

linwanjiu/short-video-copy

一句话选题を短视频文案に変換します。デフォルトでは文案と公開文案のみを出力し、必要に応じて分鏡表を提供します。プラットフォーム/カテゴリ/トーンのプリセットを組み合わせ、タイミングモデルと句読点ルールに準拠します。ユーザーが「短视频文案/口播稿/脚本を書いて」と依頼した際に使用します。

short-video-copy とは?

このスキルは、与えられた一句话の选题を基に、即座に撮影可能な短视频用文案(口播稿、公開文案)を生成するAIエージェント用ツールです。エンジン(メソッド)とプリセット(styles)の二層構造を採用しており、`profile.md`で選択されたプラットフォーム(抖音、小红书等)、カテゴリ(知識科普、販促等)、トーン(犀利、親切等)に基づき、`presets/`内の対応ファイルからスタイルを読み込み、出力を調整します。デフォルトでは時間軸付き口播稿と公開文案のみを出力し、分鏡表はユーザーが明示的に要求した場合のみ提供します。これにより、過剰な情報提供を避け、ユーザーのワークフローを最適化します。また、出力内容に対する自己チェックリスト、フィードバックに基づくプリセットの永続的変更機能、参考動画の分析モードなど、実践的な機能を備えており、短视频制作の効率を大幅に向上させます。主にClaude CodeやCursorなどのコード生成・編集が可能なAIエージェント上で動作することを想定しています。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/linwanjiu/short-video-copy/tree/HEAD/skills/short-video-copy

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

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

ドキュメント

短视频文案(日本語版)

一句话選題 → すぐに撮影できる文案一式を生成します。

このスキルはエンジン + プリセットの構造です。メソッドはここに、スタイルは presets/ に、現在の選択は profile.md にあります。


0. 最初に読むもの

  1. profile.md — 現在の選択(platform / category / tone / duration / density / person / cta / banned)
  2. profileに従い、対応するプリセットファイルから選択されたセクションのみを読む。ファイル全体は読まない。
profile フィールド読み込むファイル読むセクション
platformpresets/platforms.md同名の小セクション(抖音/小红书/视频号/B站/通用)
categorypresets/categories.md同名の小セクション
tonepresets/tones.md同名の小セクション
フックpresets/hooks.md選題タイプに応じて1–2種類を選択

profileの値は、このファイルのすべてのデフォルトより優先されます。ユーザーがその場で変更した場合は、その場での指示が最優先です。


1. デフォルトフロー:まず出力、次にパラメータ収集

ユーザーが一句话を入力した場合、先に質問を連発しないでください。まず現在のprofile(なければ「通用 / 清晰直接 / 30 秒」を使用)で完全版を出力し、ユーザーに内容を見せてから質問します。

ステップ1:汎用稿の出力

4点セット(口播 + 分鏡 + 公開文案)を完全に揃え、時間は presets/timing.md に従って計算します。 冒頭に必ず次の一文を明記します:「これは汎用版です。プラットフォーム特化はしていません」— そうしないと、ユーザーがこれを最終稿だと思ってしまうためです。

ステップ2:固定4つの質問

以下の4つの質問のみを、この順序で、各質問に選択肢を付けて行います。それ以外の質問は追加しないでください。

1. プラットフォーム:抖音 / 小红书 / 视频号 / B站 / 汎用のまま? — リズム、話速、CTAを決定

2. トーン:犀利 / 親切 / 幽默 / 克制专业 / 清晰直接を維持? — 文長、動詞、視聴者との距離感を決定

3. 構造:口播三段 / 科普(結論先行 + メカニズム)/ ストーリー(経験 + 抽出)/ 劇(対立 + 逆転)? — 段落の順序と比率を決定

4. 逆転とフック:追加しない / 中盤で常識を覆す転換 / 末尾に逆転を残す / ダブルフック(最初の3秒で引きつけ + 8秒でキープ)? — 完播設計を決定

質問後、次の一文を追加します:「番号(1/2/3など)で直接答えるか、一句话でまとめてください。その指示に従って書き直します。」

ステップ3:書き直し

  • 影響を受ける段落のみを変更し、ユーザーが承認した部分は保持します。
  • 冒頭に変更内容を一行で説明します:プラットフォーム→抖音,トーン→犀利,長さ30→15秒,中盤に常識を覆す転換を追加
  • 書き直し後は必ず時間を再計算し、古い表を使い回さないでください。

ステップ4:記憶するかどうか

ユーザーが「今後はこれで」「覚えて」「デフォルトに変更」などと言った場合 → §5 に従って profile.md に書き込み、結果を報告します。

例外ケース

状況処理
ユーザーが最初からプラットフォーム/トーンを明確に指定したアンケートをスキップし、直接カスタマイズ稿を出力
ユーザーが「とりあえず汎用版を見せて」と言った汎用稿のみ出力し、質問しない
ユーザーが全文ではなくフックだけを欲しがっている5つの候補フックのみを提示し、選択させる

1b. 一句话に不足している情報

不足情報処理方法
誰に向けた内容か選題から最も可能性の高い視聴者層を逆算し、仮定を明示する
どのようなアクションを期待するかprofile の cta を使用
長さprofile の duration を使用
プラットフォームprofile の platform を使用。なければ「通用」とする

汎用稿の段階では、最も重要な仮定を1つ補うだけにし、連続質問はしないでください。 質問はステップ2の固定4つの質問で行います。


2. 組み立て:4つのプリセットの重ね方

順序は変更不可。各レイヤーは異なる問題を解決します:

platform  → リズム、話速、CTAを決定(外形)
category  → 段落の順序と比率を決定(骨格)
tone      → 文の長さ、動詞、距離感を決定(皮膚)
hooks     → 最初の3秒を決定(扉)

優先順位:platform > category > tone。 例えば、小红书は「ゆっくり」が求められるが、販促は「密度高く」が求められる場合、中間値を取り、文末で妥協点を説明します。

よく使う組み合わせ(ユーザーに直接推奨可)

目標組み合わせ
抖音でバズらせたい抖音 + 知識科普 + 犀利 + 常識を覆すフック
小红书で草を生やしたい小红书 + 販促 + 親切 + 痛点シーン
视频号で信頼を得たい视频号 + 個人IP + 克制专业 + ストーリー展開
B站で硬派な内容をB站 + 知識科普 + 克制专业 + 具体的な数字
初心者に最も安定した組み合わせ通用 + 口播 + 清晰直接 + 常識を覆す

3. 出力:デフォルトでは文案のみ

最初から大量の情報を詰め込まないでください。 デフォルトでは、文案と公開文案の2つだけを出力します。分鏡表が必要かどうかは、ユーザーに確認してから提供します。

3.1 文案(デフォルトで提供、唯一必須)

タイムライン付きの口播稿。3列で構成:

時間文字数台詞
0.0–1.9s6你越补觉,越累。
  • 時間は presets/timing.md に従って計算し、手動推定は禁止。node scripts/timing.mjs --rate <話速> "台詞1" "台詞2" を直接実行すること。
  • 句読点と文の構成は presets/punctuation.md に厳密に従う:全角句読点、1文 ≤ 15字、1文に最大2つの読点まで。
  • 末尾の時間と目標時間の誤差は ≤ 0.5秒。超えた場合は字を削る。速く読んでごまかさないこと。
  • 提供時にJSONや分鏡表を添付しない。ユーザーが要求した場合のみ。

3.2 公開文案(デフォルトで提供)

タイトル(≤ 20字)+ 3–5個のハッシュタグ + 1文のコメント誘導。

3.3 提供後に必ず質問する

文案を提供した直後に、次の質問をします:

この文案に基づいて分鏡表を作成しましょうか?(各台詞にどのような映像、テロップ、タイミングを割り当てるか)

  • ユーザーが「はい」→ 3.4を出力
  • ユーザーが「不要」または応答なし → ここで終了
  • content.json を勝手に出力したり、「出しますか?」と尋ねたりしないこと。

3.4 分鏡表(ユーザーが明示的に要求した場合のみ)

#時間映像テロップ備考
  • 時間列は3.1の時間をそのままコピーし、独立した割り当ては禁止。
  • 1台詞 = 1カット。1台詞を2カットに分割する場合は 1a/1b と表記し、両者の合計は元の台詞と等しくなければならない。
  • 1カット < 1.2秒の場合は結合、> 6秒の場合は分割。
  • 映像には実際に撮影可能なもののみを記述し、「雰囲気のある空ショット」などは書かない。

3.5 動効果チェック(ユーザーが明示的に「出したい」と言った場合のみ)

ユーザーが「出したい」「下書きをちょうだい」と言った場合のみ、以下を実行:

cd <video-studio>
.\check-effects.ps1 -Human
結果アクション
スクリプトが存在しないユーザーが動画パイプラインをインストールしていない → スキップし、エラーとしない
installed=true続行
installed=false最初に注意喚起し、確認を取る。無言で生成しない

動効果素材ライブラリ(9個、約196 MB)がまだ生成されていません。今生成しますか? 約2.5分かかります。

ユーザーが同意しなければ、生成を実行しないでください。

3.6 明確に行わないこと

  • content.json / scenes を出力しない:それらは動画側の構造であり、文案側が持つべきではありません。
  • 分鏡を自ら提供したり、「出しますか?」と尋ねたりしない。
  • プラットフォームやトーンをユーザーに代わって決定しない — それは profile.md の役割です。

4. 自己チェック

  • 最初の3秒はフックであり、自己紹介ではない
  • フックは hooks.md の明確なカテゴリに属し、カテゴリを混在させていない
  • スクリーンショットで単独でシェアできる一文がある
  • 具体的な数字が少なくとも1つあり、本文でその数字が説明されている
  • 口播の各文 ≤ 15字、指定された話速で読んでも時間超過しない
  • 全体で唯一のトーンが保たれており、途中で変わらない
  • 構造が選択したカテゴリの段落比率に合致している
  • 絶対表現(最/第一/根治/百分百)を使用していない
  • 医療、金融、教育分野で効果を約束する表現がない
  • banned リストの単語に該当するものがない。該当した場合はその文を書き直す
  • 句読点はすべて全角、半角 ,.!? は使用していない
  • 引用符は統一されている(「」か“”)、省略記号は ……、ダッシュは ——
  • 1文で読点が続く長文がなく、各文は ≤ 15字
  • 数字のフォーマットは統一(15秒 / 73%)、英字の前後にはスペース

5. フィードバックに基づく修正

プリセットを変更し、エンジンは変更しない。

ユーザーの発言修正箇所
長すぎる / 短すぎるduration
堅すぎる / きつすぎる / 軽すぎるtone
小红书っぽくない / 抖音っぽいplatform
情報が多すぎる / 少なすぎるdensity
構造が合わないcategory
冒頭がダメhooks のカテゴリを変更
この言葉は使わないでbanned

一時的な変更 vs 永続的な変更(重要)

ユーザーの発言あなたのアクションファイルに書き込むか
「今回は小红书向けに」新しいパラメータで今回のみ書き直す❌ 書き込まない
「今後は小红书で」 / 「覚えて」 / 「デフォルトに変更」編集ツールで profile.md を変更する✅ 書き込む
「きつすぎる」 / 「軽すぎる」一時的か長期的かを判断し、質問するか、長期的として処理する✅ 書き込む

「言っただけ = 変更していない」 です。会話が終わればコンテキストは失われ、次回は古いパラメータが使われます。

永続化する場合は、以下の3つを必ず行います:

  1. profile.md の該当行を変更する
  2. profile.md の「変更履歴」の末尾に1行追加する:- YYYY-MM-DD toneをXからYに変更(理由)
  3. ユーザーに次のように報告する:「profile.mdに書き込みました:tone: 犀利」

プリセットにない値の場合

ユーザーが platform: 知乎 を要求したが、presets/platforms.md には4つのプラットフォームしかない場合:

  1. まず最も近いもので書く(知乎 ≈ B站长文 + 克制专业)、近似であることを説明する
  2. それを presets/platforms.md に追加するかどうか尋ねる
  3. 追加する場合は、既存のフォーマットに従ってセクションを追加する。SKILL.md には詰め込まない

もしユーザーが同じ次元で3回連続して調整を行った場合、プリセット自体が粗すぎることを意味するため、presets/ 内の該当セクションの修正を検討します。

もしユーザーが同じ次元で3回連続して調整を行った場合、プリセット自体が粗すぎることを意味するため、presets/ 内の該当セクションの修正を検討します。


6. 分解モード(オプション)

ユーザーから選題ではなく、参考動画(リンクまたは文字起こし)が提供された場合、references/analysis.md を使用します: 出力:フックタイプ、構造区分、スタイルタグ、バズった理由、3つのリライト方向。


7. 境界

  • データを捏造しない。数字が与えられていない場合は、検証可能な曖昧な表現を使用するか、直接質問する。
  • 医療、金融、教育分野では、具体的な効果を約束する表現を書かない。
  • 不確かな事実には「要確認」と明記し、結論として書かない。
  • 「最/第一/唯一」などの絶対表現を書かない。検証可能な情報源がある場合を除く。

関連スキル