YouTube70本以上を要約し、専用の相談チャットを作った話

よく見ているYouTubeチャンネルの内容を、あとから相談相手として使えたら便利だと思ったことはないでしょうか。私にはそういうAI系のチャンネルがあり、「あの人ならこの場面をどう考えるか」を知りたくなるたびに動画を見返すのが手間でした。そこで、そのチャンネルの要約ノートを参照し、ノートにない内容には答えないよう指示したチャットボットを作りました。仕組みはClaude Codeで組み、途中で「動画の全文はそのまま残さない」「チャットボットのアプリは自作しない」という2つの線引きをしています。この記事では、作った仕組みの流れと、その2つの判断の理由を実例をもとにまとめます。

以前、Obsidianの点検を定期実行にした話を書きましたが(Obsidian Vaultの点検をスケジュールタスク化した実例)、今回もClaude Codeのスケジュール機能を使っています。

欲しかったのは「そのチャンネルのノートをもとに答える相談相手」

私がよく見ているAI系のYouTubeチャンネルは、動画が70本以上あります。AIの使い方や考え方について、自分の判断基準を持って話している人です。

困っていたのは、見返す手間でした。「この場面、あの人ならどう考えるか」と思ったとき、どの動画で話していたかを探し、その部分を見直す。動画が増えるほど、この時間が積み上がります。

欲しかったのは、そのチャンネルの内容だけを根拠にして答えてくれる相談相手です。一般論を混ぜて答えられると、そのチャンネルの考え方を聞きたいという目的から外れてしまいます。「ノートにないことは答えない」という縛りがある方が、用途には合っていました。そこで、Claude Codeで仕組みを作ることにしました。

作った仕組み:新着検出から要約ノート作成までを毎週自動で回す

処理の流れ

流れは次の4段階です。

  • チャンネルの動画一覧を取得し、処理済みの台帳(動画IDの一覧)と突き合わせて新着だけを拾う
  • 新着動画の字幕を取得する。字幕がない動画は、音声から文字起こしをする
  • 取得したテキストをもとに、1本につき1ファイルの要約ノートを作る
  • 処理済みとして台帳に記録する

YouTubeチャンネルの新着動画を検出し、字幕取得(なければ音声から文字起こし)→要約ノート作成→処理済み台帳の更新、という4段階が左から右へ並ぶ横一列のフロー図。右端に「毎週火曜9時に自動実行」のラベル。日本語ラベル、ゴシック体、落ち着いたブランドカラー

定期実行と過去分の処理

これをClaude Codeのスケジュール機能で、毎週火曜の朝9時に自動実行しています。過去に公開されていた動画も、数回に分けて全部処理しました。以降は新着だけが対象になるので、1回あたりの処理は数本で済みます。

要約ノートに書く内容

要約ノートに書くのは、その動画で扱っているトピック、話している人の見解や判断基準、紹介しているツール、といった整理した内容です。引用は出典付きで短いものに限っています。要約から意図的に外した部分(私生活の雑談など)は、ノートに一言「外した」と書いておき、あとから「なぜこの話がないのか」と混乱しないようにしています。

線引き①:動画の全文をそのまま溜める設計をやめた

ここは正直に書いておきます。最初に組んだ版は、取得した字幕をそのまま整形して保存する設計でした。

試しに1本流してみたところ、出てきたファイルは改行を整えただけの、実質フルコピーでした。文字数は2万6千字を超えています。文字起こしとしては正しく動いているのですが、これを70本以上ぶん、しかも今後も自動で溜め続ける仕組みにする、と考えたときに手が止まりました。

個人で使うだけで公開はしない、という前提はあります。それでも、他の人が作ったコンテンツをシステム的に保存し続ける設計には抵抗がありました。ここは線を引いたほうがいいと判断し、そのファイルは削除して設計を変えました。

変更後の方針は次の3つです。

  • 保存するのは、要約と構造化した内容だけ。逐語の文字起こしはノートとして残さない
  • 引用は短く、出典(どの動画か)を付ける
  • 要約から外した部分は、ノートに一言書いておく

字幕や文字起こしの生テキストは、要約ノートを作るときの入力としてその場で使うだけにしました。

線引き②:チャットボットは自作せず、Claude.aiの「Projects」で足りた

ノートが溜まったので、次はチャットボットです。ここでも一度、方向転換をしています。

最初はAPIでアプリを自作するつもりだった

当初は「このノートだけをソースにして、それ以外は拾わないチャットボット」をアプリとして自作する予定でした。その場合はAPIを使うことになります。APIは月額のサブスクとは別の従量課金で、試算では月に数百円程度でした。大きな額ではないのですが、「使うたびにお金が動く」という点が用途に対して重く感じられました。

欲しい体験を言葉にし直したら、既存機能で足りた

そこで、欲しかった体験をあらためて言葉にしてみました。「ソースを登録して、そこだけを参照して答えてくれるチャット」。GoogleのNotebookLMのような使い方です。

それなら、Claude.aiの「Projects」機能で足ります。Projectに要約ノートのファイルをアップロードし、カスタム指示に次の内容を書きました。

  • 回答はアップロードされたノートの内容だけを根拠にする
  • ノートにない一般知識や推測で補わない
  • 該当する情報が見つからなければ「見つかりませんでした」と答える
  • できれば根拠になった動画のタイトルや日付を添える

すでに使っているClaude.aiの有料プランの範囲内で済み、APIの従量課金は使っていません。実際にいくつか質問してみると、ノートにある話はそのチャンネルの言い回しに近い形で返ってきて、ノートにない話は「見つかりませんでした」と返ってきます。欲しかった答え方そのものでした。

左に「専用アプリを自作(API・従量課金)」、右に「Claude.aiのProjects機能(既存の有料プラン内・API課金なし)」を並べた2列の比較図。右側に「ノートをアップロード」「ノートのみを根拠に回答するよう指示」の2項目。日本語ラベル、ゴシック体、落ち着いたブランドカラー

残った手作業:Projectへのアップロードはリマインドで対応

自動化しきれなかった部分もあります。新しい要約ノートができても、Projectへのアップロードは手動です。ここは仕組みで解決できなかったので、週次の自動処理の最後に「新しいノートがあるので、Projectにアップロードしてください」というリマインドを出すようにしました。

週に1回、数ファイルをアップロードするだけなので、手作業として残しても負担にはなっていません。全部を自動化しようとして仕組みを複雑にするより、残す手作業をはっきりさせておく方が運用は安定します。

よくある質問(FAQ)

Q. 字幕がない動画はどうしていますか?

A. 音声から文字起こしをする処理に切り替わります。ただし、文字起こしの結果も要約ノートを作るための入力としてその場で使うだけで、そのまま保存はしていません。

Q. 要約だけで、チャットボットの答えは十分ですか?

A. 用途が「その人ならどう考えるか」を知ることなので、判断基準や見解が整理されていれば足りています。一言一句の再現が必要な用途には向きません。

Q. Projects機能で「ノートにない話は答えない」は守られますか?

A. 私が試した範囲では、ノートにない質問には「見つかりませんでした」と返ってきています。ただし完全に保証されるものではないので、答えの根拠として動画タイトルを添えてもらい、確認できる形にしています。

Q. Claude Code以外でも同じ仕組みは作れますか?

A. 字幕取得と文字起こしは一般的なツールで可能です。要約ノートの作成と定期実行の部分をどのAIエージェントに任せるかで構成は変わりますが、流れ自体は同じです。

まとめ

よく見ているYouTubeチャンネル70本以上の内容を、Claude Codeで要約ノートとして自動蓄積し、Claude.aiのProjects機能で「そのノートを参照し、ノートにない内容には答えない」チャットボットにしました。新着の検出から要約ノート作成までは毎週火曜の朝に自動で回り、Projectへのアップロードだけが手作業として残っています。

今回の本体は、仕組みそのものより2つの線引きでした。ひとつは、どこまで残すか。自動で溜められるからといって全文を溜めるのではなく、要約と構造化した内容だけを残す。もうひとつは、どこを既存機能で済ませるか。「チャットボットを作る」と決めてしまうと自作に進みがちですが、欲しい体験から逆算したら、手元にある機能でそのまま足りました。

Xでフォローしよう

おすすめの記事