前回の記事では、NotebookLM を使って「20人の専門家チーム」を構築する方法を紹介しました。この記事では、同じ考え方を Claude Code や Cowork で実現する方法を解説します。

NotebookLM と Claude Code の発想の違い

NotebookLM は「入れた資料だけを根拠に回答する」ことが強みです。テーマごとにノートブックを分けることで、各ノートブックが「専門家」として機能します。

Claude Code でも同じアプローチが取れます。さらに、コード実行・ファイル編集・外部ツール連携ができるため、「相談する」だけでなく「調査して、コードを書いて、PR を作成する」ところまで一気通貫で任せられます。

観点NotebookLMClaude Code
専門家の定義ノートブック + ソース.claude/agents/ + ナレッジ
知識の投入PDF / Web / Fast ResearchMCP / ローカルファイル / WebSearch
同時相談手動で切替Cowork / Agent Teams で並行実行
引用元表示自動リンクファイルパス・行番号
強み非技術者でも簡単コード実行・ファイル編集が可能

方法1: カスタムエージェント(.claude/agents/

最もシンプルで NotebookLM の「専門家ノート」に直接対応する方法です。

カスタムエージェントの仕組み

.claude/agents/ ディレクトリに Markdown ファイルを置くだけで、専門エージェントが定義できます。各ファイルにはそのドメインの専門知識・指示・参照先を書きます。

1
2
3
4
5
.claude/agents/
├── marketing-expert.md      # マーケティング専門家
├── legal-advisor.md          # 法務アドバイザー
├── seo-advisor.md            # SEO アドバイザー
└── fact-checker.md           # ファクトチェッカー

エージェント定義ファイルの書き方

Markdown ファイルの先頭に YAML フロントマターでメタ情報を定義し、本文にシステムプロンプトを書きます。詳細は 公式ドキュメント を参照してください。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
---
name: マーケティングコンサルタント
description: マーケティング戦略、SNS運用、競合分析の専門家
tools: [WebSearch, Read, Grep, Glob]
---

あなたはマーケティングの専門家です。
以下のナレッジに基づいて回答してください。

## 参照ソース
- docs/marketing/ 配下のドキュメント
- 競合分析レポート: docs/competitors/

## 専門領域
- デジタルマーケティング戦略
- SNS運用・コンテンツ戦略
- KPI設計と効果測定

## 回答のルール
- 根拠を示すこと(参照ファイル名・行番号)
- 実行可能なアクションアイテムを含めること

ポイント:

  • tools で使えるツールを制限できる(読み取り専用にもできる)
  • ユーザーレベル(~/.claude/agents/)に置けば全プロジェクトで共有できる
  • プロジェクトレベル(.claude/agents/)に置けばチームで共有できる

カスタムエージェントの呼び出し方

Claude Code はタスクの内容から自動的にマッチするエージェントを選択します。Agent ツールの subagent_type にエージェント名を指定して明示的に呼び出すこともできます。

1
2
3
4
5
# Claude Code の対話中に、Agent ツールで明示的に呼び出す例
# subagent_type: "marketing-expert" を指定

# CLI から直接指定する場合
claude "マーケティング戦略を分析して" --agent marketing-expert

また、別の Claude Code セッション(メインの会話)から Agent ツールを使ってサブエージェントとして起動することも可能です。この場合、サブエージェントは独自のコンテキストウィンドウで動作し、結果だけがメインに返されます。

方法2: Cowork / Agent Teams — 複数の専門家を同時に動かす

NotebookLM ではノートブックを手動で切り替える必要がありましたが、Claude Code の Agent Teams では複数の専門家を並行して動かせます

Agent Teams の構成例

1
2
3
4
5
チームリード(メインの Claude Code セッション)
├── marketing-agent  — マーケティング戦略を調査
├── legal-agent      — 法的リスクを分析
├── finance-agent    — 財務面を評価
└── tech-agent       — 技術的実現可能性を調査

例えば「新サービスの立ち上げ計画」のような複合的な課題に対して、4人の専門家が同時に調査し、チームリードが結果を統合します。Agent Teams の詳細は 公式ドキュメント を参照してください(現在は実験的機能)。

Agent Teams の実績:10万行の C コンパイラ構築

Anthropic のエンジニアリングチームは、16のエージェントを並行して稼働させ、約2,000セッションで10万行の Rust 製 C コンパイラを構築しました(事例記事)。

Claude Cowork(デスクトップ版)

Claude Code がターミナルベースの開発者向けツールであるのに対し、Cowork はデスクトップ UI のナレッジワーカー向けツールです。ローカルファイルやアプリケーションに接続し、マルチステップのタスクを実行できます。Cowork の基本的な使い方はこちらの記事も参考になります。

方法3: MCP サーバーでナレッジを接続

NotebookLM の強みは「入れた資料だけを根拠に回答する」点でした。Claude Code で同等のことを実現するのが、MCP(Model Context Protocol)サーバーによる外部ナレッジの接続です。

.mcp.json の設定例

.mcp.json でプロジェクト単位の MCP サーバーを定義できます。以下は構成の例です(実際の MCP サーバーの構築方法は 公式ドキュメント を参照)。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
{
  "mcpServers": {
    "knowledge": {
      "command": "node",
      "args": ["./mcp-servers/knowledge/index.js"],
      "env": {
        "DOCS_DIR": "./docs"
      }
    }
  }
}

MCP サーバーの活用パターン

  • Notion MCP サーバー: 社内ドキュメントを直接参照
  • データベース MCP: 業務データに基づいた回答
  • カスタム MCP: 自社のナレッジベースを検索可能にする

エージェント定義で tools: [mcp__knowledge__search] のように接続先を指定すれば、そのエージェントは特定のナレッジソースだけを参照して回答します。MCP の実践例として、freee MCP × Claude Code の連携記事も参考になります。

実践例: Hugo ブログに Claude Code 専門家チームを構築する

この技術ブログ自体を例に、どんな専門家エージェントが有用かを考えてみます。

テクニカルライター エージェント

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
---
name: テクニカルライター
description: ブログ記事の構成・読みやすさを改善する編集者
tools: [Read, Grep, Glob, WebSearch]
---

あなたはテクニカルライティングの専門家です。
以下の観点で記事をレビューしてください:

- 見出しの階層構造が適切か
- 冒頭で記事の価値が伝わるか
- コード例にシンタックスハイライトが付いているか
- 専門用語に適切な説明があるか

SEO アドバイザー エージェント

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
---
name: SEO アドバイザー
description: ブログ記事のタイトル・タグ・メタデータを最適化する
tools: [Read, Grep, Glob, WebSearch]
---

あなたは SEO の専門家です。
Hugo ブログの記事に対して以下を提案してください:

- 検索されやすいタイトルの改善案
- 適切なタグとカテゴリの提案
- メタディスクリプションの作成

トレンドリサーチャー エージェント

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
---
name: トレンドリサーチャー
description: 最新の技術動向を調査してブログ記事のネタを提案する
tools: [WebSearch, Read]
---

あなたは技術トレンドのリサーチャーです。
以下の分野の最新動向を調査し、ブログ記事のネタを提案してください:

- AI/LLM の新機能・新サービス
- 開発ツールのアップデート
- セキュリティの最新脅威と対策

実践レポート: この記事自体をエージェントでレビューした結果

ここまで紹介した方法を、実際にこのブログプロジェクトで実装しました。4つのカスタムエージェントを作成し、この記事自体を SEO アドバイザーとテクニカルライターの2つのエージェントで同時にレビューした経緯と結果を報告します。

実装したエージェント

Hugo ブログの運用に必要な4つの専門家を .claude/agents/ に定義しました。

エージェント役割主な tools
fact-checkerツール名・コマンド・URL・バージョンの事実検証WebSearch, Bash, Read
seo-advisorタイトル改善、タグ提案、内部リンク分析WebSearch, Read, Grep
tech-writer構成・読みやすさ・日本語品質のレビューRead, Grep, Glob
trend-researcher技術トレンド調査と記事ネタ提案WebSearch, Read

2つのエージェントを並行実行してレビュー

記事の初稿を書いた後、SEO アドバイザーとテクニカルライターを Agent ツールで並行起動しました。

1
2
3
メインセッション
├── seo-advisor(バックグラウンド)→ SEO分析レポートを返却
└── tech-writer(バックグラウンド) → ライティングレビューを返却

2つのエージェントが独立したコンテキストウィンドウでそれぞれ分析を行い、結果がメインセッションに自動で通知されます。所要時間はそれぞれ約2分で、合計ではなく並行で処理されました。

SEO アドバイザーの指摘(抜粋)

SEO アドバイザーは以下のような分析レポートを返しました。

タイトル(65/100点):

タイトルが39文字で、Google 検索結果の表示上限(約32文字)を超えている。末尾の「活用法」が切れる可能性が高い。

見出し構造(60/100点):

H3 レベルの見出しが「仕組み」「呼び出し方」「設定例」のように汎用的すぎる。「カスタムエージェントの仕組み」のようにキーワードを含めるべき。

内部リンク(30/100点):

関連する既存記事(Cowork スターターパック、freee MCP 連携、AI チーフ・オブ・スタッフ等)への相互リンクがゼロ。リンク追加で回遊率と SEO 評価を改善できる。

タグ最適化:

prompt タグより claudeanthropic の方が検索クエリとの一致度が高い。

テクニカルライターの指摘(抜粋)

テクニカルライターは総合評価 4/5 で、以下を指摘しました。

最大の改善ポイント — 「呼び出し方」セクション:

本文が1文のみで具体的なコマンド例がない。読者が「どうやって使うのか」が分からないまま次のセクションに進んでしまう。これは記事全体で最も大きな欠落点。

読みやすさ:

「NotebookLM が『入れた資料だけを根拠に回答する』のに相当するのが」は一文が長く、主語と述語の距離が遠い。文を分割すべき。

日本語品質:

「NotebookLM は情報提供まで。」が体言止めで、前後の「です・ます」調と不整合。

コードブロック:

ディレクトリツリーのコードブロックに言語指定がない。text または plaintext を指定すべき。

指摘を反映した改善内容

両エージェントの指摘をもとに、以下を修正しました。

指摘元修正内容
SEOH3 見出し5箇所にキーワード追加(「仕組み」→「カスタムエージェントの仕組み」等)
SEOタグを ["claude-code", "claude", "anthropic", "agent", "mcp"] に変更
SEO内部リンク5件追加(Cowork、MCP、Chief of Staff 記事等)
SEO公式ドキュメントへの外部リンク追加
Tech Writer「呼び出し方」にコマンド例とサブエージェント起動の説明を追加
Tech Writer長文を分割(MCP セクションの冒頭等)
Tech Writer体言止めを修正(「情報提供まで。」→「情報提供までですが」)
Tech Writerコードブロックに text 言語指定を追加

実装で得られた知見

うまくいったこと:

  • 2つのエージェントの並行実行により、異なる専門性の観点から同時にレビューを受けられた
  • SEO とライティングで指摘が重複せず、補完的な改善ができた
  • エージェント定義ファイルを Git 管理することで、レビュー基準がチームで共有可能になった

注意が必要だったこと:

  • ファイルパスの制約: サブエージェントはメインセッションとは独立した権限で動作するため、/tmp 配下のファイルにアクセスできなかった。レビュー対象ファイルはプロジェクトディレクトリ内に配置する必要がある
  • ブランチ上のファイル: PR ブランチにしか存在しないファイルは、main をチェックアウトしているサブエージェントからは見えない。git show で一時的にエクスポートするか、worktree 内のパスを指定する必要がある
  • セッション起動タイミング: .claude/agents/ に定義したカスタムエージェントは、セッション起動時に読み込まれる。同一セッション中に作成した場合は general-purpose エージェントにプロンプトを渡す形で代用できる

NotebookLM から Claude Code に移行するメリット

  1. 「調べる」から「実行する」へ: NotebookLM は情報提供までですが、Claude Code は調査結果をもとにコードを書き、ファイルを編集し、PR を作成するところまで自動化できる
  2. バージョン管理: エージェント定義を .claude/agents/ に置けば Git で管理でき、チームで共有できる
  3. 並行実行: Agent Teams で複数の専門家を同時に動かし、結果を統合できる
  4. ツール連携: MCP でデータベース、API、社内ツールに直接接続できる

まとめ

NotebookLM の「テーマごとにノートブックを分けて専門家を作る」というアイデアは、Claude Code ではカスタムエージェント(.claude/agents/)として実装できます。さらに Cowork / Agent Teams で並行実行、MCP でナレッジ接続と、より強力な専門家チームを構築できます。

まずは1つのエージェント定義ファイルを作るところから始めてみてください。AI チーフ・オブ・スタッフの構築記事も、実践の参考になります。