Communitygithub.com

heyuxuan0209/watch-anything

見きれない動画をAIが代わりに理解:X/Twitter・YouTube・Bilibiliの動画 → 日本語カード形式で解説(read-anythingの姉妹品)

watch-anything とは?

このスキルは、X/Twitter上の動画付きツイート、YouTube動画、Bilibili動画を自動的に解析し、その内容を構造化された日本語カード形式で要約・解説します。元のプロジェクトは中国語向けですが、この翻訳版では日本語での出力を前提としています。対応プラットフォームはClaude Codeで、Node.js 18以上が必要です。処理の流れは、まず`PLAYBOOK.md`に従ってルーティングを行い、動画の種類に応じて最適な方法(字幕取得または音声認識)で文字起こしを実行します。文字起こしは、動画の字幕 → GroqクラウドWhisper(`GROQ_API_KEY`が必要)→ ローカルのfaster-whisper、というフォールバックチェーンで動作し、不足している段階は自動的にスキップします。長い動画の場合は処理前にユーザーに待ち時間を通知します。出力テンプレートは`templates/card.md`をデフォルトとし、ユーザーが任意の.mdファイルを指定することでカスタマイズ可能です。また、出力結果をFeishu(Lark)にプッシュする機能もオプションで利用できます。最も重要なのは「誠実ルール」で、取得できないツイートや文字起こしできない音声、解析不能な映像については、決して捏造せず、明示的にその旨を伝えます。

対応✓Claude Code~Codex CLI~Cursor
npx skills add heyuxuan0209/watch-anything

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

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

ドキュメント

動画を理解する(watch-anything)

このディレクトリの PLAYBOOK.md に従って実行してください。それが唯一の行動規範です(ルーティングテーブル、文字起こしフォールバックチェーン、カード形式、 誠実ルール、フォールバック時の話術はすべてそこに含まれています)。このファイルは Claude Code のトリガーエントリにすぎません。

重要な注意点

  1. 最初に PLAYBOOK.md を読み、リンクの種類に応じてルーティングを行います:X(Twitter)のツイートはまず scripts/fetch-x.mjs で本文+メディア一覧を取得し、 動画がある場合のみ scripts/transcribe-video.mjs で文字起こしします。YouTube / Bilibili は直接 transcribe-video.mjs を実行します (字幕が最優先、字幕がない場合のみ音声認識)。スクリプトは npm 依存関係ゼロ、Node 18+、JSON 入出力です。
  2. 文字起こしフォールバックチェーン:動画字幕 > GroqクラウドWhisper(GROQ_API_KEY が必要)> ローカル faster-whisper。 不足している段階は自動的にスキップされます。長い動画の文字起こし前にユーザーに「数分かかります」と伝えてください。
  3. 解説テンプレートは templates/ にあり、デフォルトは card.md(カード形式)です。ユーザーが一言で上書き可能で、 カスタムテンプレートはディレクトリ内の新しい .md ファイルとして指定します。 出力先は integrations/(オプション)です。環境変数に FEISHU_WEBHOOK / FEISHU_APP_ID が設定されている場合、 カード出力後にユーザーにFeishuへプッシュするかどうかを確認し、scripts/push-feishu.mjs を実行します。 設定がない場合は存在しないものとして扱い、ユーザーに設定を促さないでください。
  4. 誠実ルールが最優先です:取得できないツイート、文字起こしできない音声、解析できない映像については、正直にフォールバックし明示的に宣言し、 決して動画や画像の内容を捏造しないでください。

関連スキル