Communitygithub.com

AnyToManim — ナレーション付き3b1bスタイル動画のCLIツールチェーン

あらゆるトピック、論文、テキスト、リポジトリから、ナレーション付きの3Blue1Brown形式の解説動画を生成します。音声ファーストのパイプラインにより、ナレーションがアニメーションのタイミングを制御し、音声と映像がビート単位で同期します。

AnyToManim — ナレーション付き3b1bスタイル動画のCLIツールチェーン とは?

AnyToManimは、3Blue1Brownスタイルのナレーション付き解説動画を生成するためのCLIツールチェーンです。エージェントは、パッケージに含まれる仕様ファイル(WORKFLOW.md、DIGEST.md、SCRIPT.md、SCENE_GUIDE.mdなど)に従って、ブリーフ、ビートシート、ストーリーボード、シーンコードを作成します。CLIはテキスト読み上げ(TTS)、時間計測、レンダリング、結合など決定論的な処理を実行します。音声ファーストの同期方式を採用しており、まずナレーションを合成してその長さを計測し、アニメーションのrun_timeはすべてこの実測値から導出されます。これにより、音声とアニメーションがビート単位で正確に同期します。対応プラットフォームはCLIであり、pipxでインストールできます。日本語と中国語を含む複数の音声をサポートし、ローカル音声によるコストゼロの反復が可能です。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/RayMorTwinkle/AnyToManim/tree/HEAD/skills/anytomanim

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

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

ドキュメント

AnyToManim — ナレーション付き3b1bスタイル動画のCLIツールチェーン は何をしますか?

この製品はCLIであり、APIラッパーではありません。あなた(ホストエージェント)は、パッケージに同梱されている仕様ファイルに従い、ブリーフ、ビートシート、ストーリーボード、シーンコードといったクリエイティブな段階を担当します。CLIはすべての決定論的な処理(TTS、時間計測、レンダリング、結合)を行います。

インストールと確認

pipx install anytomanim          # または:仮想環境内で pip install -e .
anytomanim doctor                # 不足している依存関係を報告し、修正ヒントを表示

ワークフロー — 仕様をエクスポートし、それに従う

anytomanim export-guides ./guides   # WORKFLOW/DIGEST/SCRIPT/SCENE_GUIDE + スキーマ

次に guides/WORKFLOW.md に従います:

  1. DIGEST.md に従って brief.md を書く
  2. SCRIPT.md に従って beats.json を書く( beats-schema.json を使用)。最初に SCRIPT.md を読むこと:ナレーションはリストではなくチェーン形式にする必要があります。
  3. ORCHESTRATION.md を読み、 STORYBOARD.md に従って storyboard.json を書く。選択したカードの実行可能なレシピを開く。 anytomanim storyboard storyboard.json --beats beats.json を実行し、修正する。
  4. anytomanim tts --beats beats.json — すべてのビートを合成し、実際の audio_file と audio_seconds を書き戻す(編集後は変更されたビートのみ再実行)。
  5. SCENE_GUIDE.md に従って scenes/*.py を書く( NarratedScene + MiMoService(beats_file=...) 、 with self.voiceover(beat="b01") as tr )。ストーリーボードに従い、対応する recipes/ から開始する。
  6. anytomanim render scenes/X.py --quality ql — エラー時は修正して再試行
  7. anytomanim preview <mp4> — sheet.png とビートごとのレポート(重なり、オーバーラン、フリーズしたビート、小さなコンテンツ、空のバンド、固定ヘッダー、ストーリーボードに記載されていないステージ変更)を読み、問題がなくなるまで修正して再レンダリング
  8. --quality qh でレンダリング、 anytomanim assemble a.mp4 b.mp4 -o final.mp4 、 anytomanim subtitles beats.json --mux final.mp4

キー不要/コストゼロで反復するには: ANYTOMANIM_TTS=draft (ローカル音声)。

anytomanim run "<トピック>" も存在します — 自動バッチ評価のための組み込みLLM参照ドライバーです(LLM APIキーが必要。インタラクティブエージェントは代わりにガイド駆動フローを使用してください)。

契約

  • beats.json がインターフェースです — 公開IR(ナレーション + ビジュアル + audio_seconds)。
  • 音声ファーストの同期:合成 → 計測 → すべての run_time は tr.duration から導出され、レンダリングはそれらのwavを正確に再生します。決して時間をでっち上げてはいけません。
  • きれいにレンダリングされたからといって完了ではありません — 毎回プレビューシートを確認してください。
  • 連続性が最優先です。オブジェクトが画面から消える前に、それが次のものに変化できないかどうかを検討してください。フェードアウトして再描画するのは最後の手段です。
  • ラベルとして書くよりも、可能な限り関係性を図示してください。
  • 音声: --voice baihua|moli|milo 、 assets/voice/<name>.mp3 + voices.jsonエントリで自分の声をクローン可能。zh + en対応。
  • エンドツーエンドの完成例については、リポジトリ内の examples/ を参照してください。

関連スキル