Communitygithub.com

トゥーンファクト

アニメーション漫画風の豆知識ショート動画(ストーリー重視、フックで視聴者を引きつける:最初の3秒で1つの疑問を提示)を、Ricks Clipsスタイル(カラフルな3D世界の中の2Dキャラクター、自然で淡々としたナレーター、単語ごとのキャプション)で、Remotionとthree.jsを使ってエンドツーエンドで作成します。モード:新規動画作成(トピック、調査、脚本、ElevenLabs音声、構築、自己レビュー、レンダリング)、既存動画の更新、続行、レビュー、アイデア出し。使用例:「new video」、「new video about X」、「update video <slug>」、「continue video <slug>」、「review video」、「give me video ideas」、またはバイラルなアニメーション豆知識ショート動画のリクエスト全般。

トゥーンファクト とは?

このスキルは、Remotionとthree.jsを使用して、Ricks Clipsスタイルのアニメーション漫画風豆知識ショート動画をエンドツーエンドで作成するためのものです。ストーリーを最優先し、動画の最初の3秒で視聴者を引きつける強力なフック(疑問)を提示することが特徴です。ナレーターは自然で淡々とした口調で、単語ごとにキャプションが表示され、2Dキャラクターがカラフルな3D世界の中で動きます。対応プラットフォームはClaude Codeで、ElevenLabs MCPと連携して音声を生成します。主なモードとして、新規動画作成(アイデア、調査、脚本、音声、構築、自己レビュー、レンダリングまでを一貫して実行)、既存動画の更新、途中からの続行、レビュー、アイデア出しがあります。このスキルは、ユーザーがスタイルを説明する必要がないよう、すべてのルールとテンプレートを内包しており、各動画は`videos/<slug>/`フォルダにまとめて管理されます。レンダリング前に`tools/check_scene.py`が各シーンの整合性をチェックし、フックの品質が基準に達しない場合は動画を納品しません。

対応✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/alifmahmudashik/toonfacts/tree/HEAD

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

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

ドキュメント

トゥーンファクト:アニメーション漫画風豆知識ショート動画、たった一つのスキルで

やりたいことを平易な言葉で伝えてください。このスキル一つで、アイデア、豆知識、脚本、ショット計画、キャプション、ElevenLabs音声、構築、自己レビュー、レンダリング、そして後からの更新まで、すべての作業を行います。スタイルについてユーザーに説明を求めることはありません。このスキル内で定義されています。

モード(ユーザーの言葉から選択)

ユーザーの発言モード参照ドキュメント
"new video", "new video about X", "surprise me", "make the next short"新規docs/new-video.md
"update video ", "fix the video", "change X in ", "apply the latest rules"更新docs/update-video.md
"continue video "(音声保存などの手動ステップ後)続行docs/new-video.md、欠けている最初のフェーズから再開
"review video", "check ", "check this mp4"レビューdocs/review.md のみ
"video ideas", "give me ideas"アイデアdocs/new-video.md フェーズ1のみ:実際のストーリーや興味深い事実を調査し、ストーリーの強度とフックの強度でスコア付けし、videos/_ideas.md に記録。ストーリーの一文、その構造、ドラフトフックを含むトップ5を表示。構築はしない。
"update the skill"アップグレードプリフライトステップ2のみ実行し、バージョン変更を報告。

リクエストが不明瞭な場合は、動画名が指定されていなければ「新規」を、指定されていれば「更新」を選択します。動画の構築方法と見た目のルールは docs/engine.md にあります。「新規」と「更新」の両方でこれを参照します。

運用ルール(全モード共通)

  • ショットはナレーション内容を正確に表現しなければならず、機械的にチェックされます。 すべてのショットは、その主張する内容(何を読んでいるか、誰が何を見ているか、何が何を狙っているか、何を保持しているか)を宣言し、assertScene を呼び出す必要があります。プロップに描かれたすべての文字列は fitText を通します。tools/check_scene.py は、これらの呼び出しが存在するまでレンダリングをブロックします。ゲートに失敗した状態でレンダリングを進めてはならず、テキストを縮小したり許容差を広げたりしてトリミングされた看板を修正してはいけません。ジオメトリを修正してください。
  • フックは飾りではなくゲートです。 docs/new-video.md のフェーズ2で最初の行がフックゲートを通過するまで脚本は作成されず、templates/review_checklist.md の上部にあるフックブロックが通過するまで動画は納品されません。弱い最初の行は後から何かで埋め合わせるのではなく、書き直す理由です。
  • 質問はしないでください。 合理的な選択を行い、それを動画の NOTES.md に書き留め、先に進んでください。停止するのは、音声を作成できない場合(docs/new-video.md フェーズ3参照)、必要なツールがない場合、または元に戻せない決定が必要な場合のみです。
  • 動画ごとに1つのフォルダ、すべてをその中に収めます: videos/<slug>/(slug = タイトルを小文字のハイフン区切りにしたもの)。最終的なMP4と publish.txt は最上位に、作業ファイルは source/ に、古いレンダリングは versions/ に配置します。スクラッチ画像、コンタクトシート、テストレンダリングなどは work/<slug>/ にのみ置きます。作業内容を会話内だけに残さないでください。
  • ElevenLabsのクレジットは音声ごとに1回だけ使用します(1テイク)。話す言葉が変わった場合、音声が使用不能な場合、または docs/new-video.md フェーズ3ステップ4のパフォーマンスチェックに合格しなかった場合(笑い声やオーバーアクティング)に限り、タグを減らしてもう一度だけ再生成します。
  • 自然さが表現力に勝ります。 ナレーターは決して笑いません。脚本全体で [laughs] や [chuckles] は使用禁止、タグは最大3つまで、音声テキストに感嘆符は使用禁止です。絵がコメディを担い、ナレーターが自分のジョークで笑うのはAI生成のテイクの最も明確な兆候です。
  • APIキーを印刷したり保存したりしないでください。 ElevenLabs MCPはユーザーがClaude Codeに追加するものであり、接続されているものとして使用します。
  • 動画を公開またはアップロードしないでください。 納品物は最終MP4、そのサムネイル、そして調査済みの publish.txt(タイトル、説明、ハッシュタグ、タグ)です。
  • 最終的な返信: 数行で(何を作成または変更したか、どこにあるか、重要な選択、次のステップを1つ)。ステップバイステップの要約は不要です。

プリフライト(毎回、静かに、全モードで実行)

  1. プロジェクトとフォルダ。 Remotionプロジェクト(package.json と src/ を含むフォルダ)を見つけます。videos/、videos/_ideas.md、work/ がなければ作成します。
  2. このスキルを最新に保つ。 このスキルフォルダがgitクローンの場合、静かに git pull --ff-only を実行し、CHANGELOG.md で変更点を読みます。変更があった場合のみ、最終返信で新しいバージョンに言及します。gitクローンでない場合はスキップします。
  3. ツール。 ffmpeg、Python 3、@remotion/three を確認します(不足している場合はプロジェクトに @remotion/three と three をインストールします)。ElevenLabs MCPツール(text_to_speech、generate_speech、creative_generate_speech、list_voices、speech_to_text、transcribe などの名前)を見つけます。遅延している場合はToolSearchでロードします。ツールがない場合は、音声作成までは進め、NEEDS_AUDIO.md を作成してElevenLabs MCPを接続する必要がある(または音声を提供する必要がある)ことを説明し、そこで停止します。
  4. 古い独立スキル。 .claude/skills/cartoon-3d-short/ または .claude/skills/new-video/ も存在する場合は、それらを使用しないでください。最終返信で、これらの2つのフォルダはこのスキルが置き換えるため削除できることをユーザーに一度だけ伝えます。
  5. レガシーヘルパーファイル。 video-ideas/SKILL-UPDATE.md(最初の行が「# Instructions for Claude Code」)と video-ideas/README.md(最初の行が「# video-ideas」)が存在する場合は削除します。他のファイルは絶対に削除しません。
  6. 古い公開ファイルの名前変更(一度だけ)。 公開ファイルは現在プレーンテキストです(Markdownではありません)。ユーザーはそこからコピーして使用するため、レンダリングされた状態で読みたくないからです。videos/<slug>/publish.md ごとに、videos/<slug>/publish.txt にコピーし、その過程でMarkdownを削除します(#、**、バッククォート、テーブルのパイプを削除し、見出しは大文字に変換し、内容は同一に保つ)。最終返信で、削除可能になった publish.md ファイルをユーザーに伝えます。自分では決して削除しません。
  7. 古いレイアウトの移行(一度だけ、移動のみ、削除はしない)。 古いバージョンから video-ideas/ または out/ が存在する場合:
    • video-ideas/_ideas.md は videos/_ideas.md になります。
    • video-ideas/<slug>/ の各フォルダについて:publish.md(または publish.txt)は videos/<slug>/publish.txt に移動します。その他のすべてのファイル(script.md、voiceover*.mp3、words.json、NOTES.md、REVIEW.md、CHANGES.md、NEEDS_AUDIO.md、レビューシート)は videos/<slug>/source/ に移動します。
    • out/ 内の各最終レンダリングを、ファイル名またはタイトル(out/<slug>.mp4、または The_Man_Who_... のような名前)でslugにマッチングします。最も新しいものを videos/<slug>/<slug>.mp4 に、古いものを日付順に videos/<slug>/versions/<slug>_v1.mp4、_v2.mp4 にします。
    • out/ 内のその他すべて(静止画、コンタクトシート、QA、テストレンダリング、動画ごとのスクラッチフォルダ)は work/legacy-out/ に移動し、上記の2つのヘルパーファイルは work/legacy/ に移動します。マッチングできないものはそこに残します。
    • 完了したら、何をどこに移動したかを最終返信で(短いリストで)一覧表示し、空になった video-ideas/ と out/ フォルダは削除できることをユーザーに伝えます。src/、public/、scripts/、audio/、backup/ には触れず、既に work/ にあるファイルはそのままにします。

フォルダ構成

videos/                        # 完了済みまたは進行中のすべての動画、動画ごとに1フォルダ
  _ideas.md                    # 使用または却下されたすべてのトピック(最初に読み、最後に追記)
  <slug>/
    <slug>.mp4                 # 最終動画:アップロードするファイル
    thumbnail.jpg              # 作成されたカバー画像、2160x3840(未加工のフレームではない)
    publish.txt                 # タイトル、説明、ハッシュタグ、タグ、カテゴリ、固定コメント + 調査ソース
    source/                    # script.md  voiceover.mp3  words.json  NOTES.md  REVIEW.md  CHANGES.md
    versions/                  # 以前のレンダリング: <slug>_v1.mp4 ...(更新モードで保持)
work/                          # スクラッチ、削除可能:静止画、コンタクトシート、QA、テストレンダリング、REMOTION_TMP(他にドライブがない場合)
  <slug>/

このスキルに含まれるもの

パス説明
docs/new-video.md新規および続行:アイデア、調査、脚本、音声、構築、レビュー、納品
docs/update-video.md更新:変更の分類、旧バージョンの保護、適用、再レンダリング、リグレッションチェック
docs/review.mdレビューループ(コンタクトシート、チェック、スコア、修正)
docs/engine.md動画の構築方法と見た目のルール:パイプライン、全動画のルール、フレーミング、照明、カメラワーク、キャプション、リアクション、品質ゲート
references/story_format.md6ビートのストーリーフォーマット、コメディツールボックス、テンポの数値
references/ (その他)スタイルバイブル、測定レポート、参照フレームとシート
templates/レンダラーソース(bridge/)、音声合成、スクリプト、ショット計画、脚本とレビューのテンプレート
docs/history/以前の2つのリポジトリのREADME、CHANGELOG、元の文言のアーカイブ。指示ではない。
tools/review_video.sh長さ、ハードカット、ラウドネスのチェックとコンタクトシート
tools/make_thumbnail.py2160x3840のShortsサムネイルをデザイン:キャラクターを切り抜き、作成した背景に配置し、テキストを重ねる
tools/check_scene.pyショットが物理的な真実を宣言していない、またはプロップテキストが適合していないレンダリングをブロックする
tools/check_voice.py音声テイクをチェック:速度、ポーズ、ラウドネス、配信が速すぎる秒数(笑い、早口)

関連スキル