Claude Code や Codex, GitHub Copilot を三国志で理解する

に公開

Mastra で作るAI エージェント というシリーズでAIエージェントの作り方を解説しています。

そのシリーズの第1回で、AIエージェントを説明するのに三国志を用いた例え話」をしました。そこで、「Mastra で作るAIエージェントの世界観は分かりましたが、ではGitHub Copilotとはどう違うのですか?」とか「Claudeは?」、「Codexは?」という質問をいただきました。そこで、今回は同じ三国志の例え話を使って、GitHub Copilot、Claude、Codexを説明してみたいと思います。

もともとの例え話

Mastra で作るAI エージェント(1) はじめてのAIエージェント という記事の中で、AIエージェントを三国志の世界観で説明しましたので、該当部分だけ抽出してご紹介します。


私はAIエージェントを「三国志」の劉備・孔明・そして関羽などの将軍たち、という構成で理解しています。

若くして六韜三略を諳んじ天文・地理など多方面に通じていた天才軍師・諸葛孔明はLLMです。特に 2022年11月に出てきたばかりのChatGPTを思い出してください。「物理学、社会学から芸能、風俗まであらゆることを知悉したスーパーマン」なんだけど「学習していないことは分からないから、最新のニュースは知らないし、うちの会社のことは何も知らない」というあの頃のChatGPTです。

このLLMの弱点を補う工夫が「AIエージェント」だと言ってよいでしょう。

こちらが、先ほど作った「お天気AIエージェント」です。

人徳にあふれたカリスマ・劉備はチームのリーダーでありエージェントです。ユーザーとメッセージをやり取りするのは必ず劉備であり、劉備を差し置いていきなり孔明が受付をする、ということは(三国志の世界はともかく)AIエージェントの世界では絶対ありません。

いま、ユーザーが「東京」と言ってきました。このとき、劉備は必ず軍師孔明に相談します。「ユーザーが『東京』の今の天気を知りたいと言ってきたぞ、どうする孔明」と。孔明に相談しないで劉備が勝手に動くと痛い目にあいます、夷陵の戦いです。また、このとき合わせて「わしの部下にはお天気APIの関羽という将軍がおる」ということもあわせて伝えます。AIエージェント的に言えば、LLMに手持ちのツールのリストを渡す、ということです。

軍師・孔明LLMは、それらの情報すべてを受けて「では関羽将軍のAPIを呼びなされ、パラメータは『Tokyo』ですぞ」と劉備に伝えます。孔明は天才LLMですが、「現在の天気」は学習外なので単独で答えることはできないのです。そして劉備はそれを受けて、配下の関羽というツールを使うのです。この際、孔明が直接的に関羽を呼ぶことは、(三国志の世界はともかく)AIエージェントの世界では絶対ありません。関羽は劉備が呼びます。孔明が関羽を呼ぶのは越権行為です。

ツールの関羽は、Meteo-APIを呼んだその結果を劉備に返します。{ "temperature": 3.7, "feelsLike": 0.5, "humidity": 59, "windSpeed": 3.4, "windGust": 7.9, "conditions": "Clear sky", "location": "Tokyo"}。 いや、そのまま過ぎじゃろ、関羽。劉備はそのJSONをそのまま華麗にスルーパスです。「孔明よ、関羽がこのようなJSONを返してきたが、どうする」。

軍師・孔明、JSONを読み解き「殿、ユーザーにはこのようにお返事なさるとよいでしょう」と回答をゴーストライトします。劉備はそれを受けて「現在の東京の気温は3.7℃」などと回答するのです。


これは、Mastra という AIエージェント構築フレームワークを使って、最もシンプルな構成のAIエージェントを作ったときの例え話でした。では、GitHub Copilot、Claude、Codexはこの三国志の世界観でいうとどこに位置するのでしょうか? 次の章から見ていきましょう。

GitHub Copilot の場合

GitHub Copilotは、GitHubOpenAIの共同開発によるAIコーディングアシスタントです。2021年6月にプレビュー版がリリースされ、2022年6月に正式版が公開されました。GitHub Copilotは、コードの自動補完やコード生成を行うツールであり、主にソフトウェア開発者向けに提供されています。GitHub Copilotは、OpenAIのCodexモデルをベースにしており、自然言語の説明からコードを生成する能力を持っています。GitHub Copilotは、Visual Studio Codeなどの統合開発環境(IDE)で利用でき、コードの自動補完やコードスニペットの提案を行うほか、「Agentモード」では、ユーザーの指示に基づいて複数のコードファイルを生成することもできます。

三国志の例で言えば、GitHub Copilot の Agentモードは「劉備」と言ってよいでしょう。ユーザーと直接やり取りし、ユーザーの指示を受けてコードを生成する役割を担っています。GitHub Copilot 自体はLLMを内包しておらず、ユーザーが画面上から好きなLLMを選んで接続することができます。つまり、軍師を都度「孔明」にしようか「司馬懿」にしようか選べる、ということです。

一方で、GitHub Copilotはいくつかのツールをビルトインで提供しています。ファイルを読んだり書いたり検索したり、あるいはスクリプトを実行して結果を確認したり、Webから情報を取得したり。または大きいタスクに対応する場合は複数のサブタスクに分割してToDoリスト管理をしながら対応することもできます。つまり、GitHub Copilotは「関羽」や「張飛」などの将軍をビルトインとして最初からいくつも抱えているわけです。これは、歴史的に VS Codeに深く統合しており、またGitHubとネイティブ連携している部分もあります。

このように、ビルトインの「劉備」、ユーザーが都度選べる「軍師」、そしてビルトインの「将軍たち」という構成が、GitHub CopilotのAgentモードの最初の状態です。これに加えて、ユーザーは「殿=エージェントをカスタマイズしたり、「将軍たちを追加したりすることができます。

例えば「本プロジェクトの定める規約に従って TypeScript のコードを生成するのに特化したエージェント」、「本プロジェクトの定める様式に従って 設計書などのドキュメントを作成するのに特化したエージェント」、「コードレビュー特化エージェント」、「テストコード作成エージェント」などのように、ユーザがいくつものカスタムエージェントを定義して、それを切り替えて使うことができます。

さらに、ユーザーは「将軍たちを追加することもできます。例えば、プロジェクトのコードベースを分析して、開発中のモジュール同士の依存関係を調査するツールを「馬超」として追加したり、AWS(Amazon Web Services)の提供する最新ドキュメントを提供するツールを「黄忠」として追加したり、Webブラウザを操作してテストを自動化するツールを「趙雲」として追加することができます。

Claude の場合

Claudeは、そもそも「Claude Code」というコーディングエージェントと「Claude Opus/ Claude Sonnet」というモデルの両方で使われている用語なので、使い分けが重要です。Claude Codeは、Anthropicが開発したAIコーディングエージェントで、2025年にリリースされました。Claude Opus/ Claude Sonnetは、Anthropicが開発したLLMで、2024年にリリースされました。

Claude Codeは、GitHub CopilotのAgentモードと同様に、ユーザーの指示に基づいてコードを生成するエージェントです。GitHub Copilotがユーザーが選んだLLMを使うのに対して、Claude CodeはAnthropicのClaude Opus/ Claude Sonnetを内包している点が異なります。また、Claude Codeは、コード生成だけでなく、コードの説明やコードレビューなども行うことができます。

三国志の例で言えば、Claude Codeは「劉備」と言ってよいでしょう。ユーザーと直接やり取りし、ユーザーの指示を受けてコードを生成する役割を担っています。Claude CodeはAnthropicのClaude Opus/ Claude Sonnetを内包しているため、軍師は常に孔明」(司馬仲達や周瑜に浮気できない)ということになります。

一方で、Claude CodeはGitHub CopilotのAgentモードと同様に、ファイルの読み書き・ディレクトリ探索・コマンド実行などのビルトインのツールを提供しています。もちろん、ユーザーが必要に応じてツールを追加することができます。つまり、ユーザーが「関羽」や「張飛」などの将軍を必要に応じて追加することができるわけです。が、GitHub CopilotがVSCodeと深く統合しているのに比べると、Claude Codeは特定のIDEと統合するよりもむしろ「ターミナルで動く」ことで「IDEを選ばない」という戦略であり、よりまっすぐ「ローカルエージェント」として位置づけられる印象です。

Codex の場合

Codexも、Claude とよく似ていて、ClaudeのOpenAI版と考えればよいです。「Codex CLI」というコーディングエージェントと、「GPT-xx-Codex」というモデルの両方で使われている用語なので、使い分けが重要です。Codex CLIは、OpenAIが開発したAIコーディングエージェントで、2025年にリリースされました。gpt-xx-Codexは、OpenAIが開発したLLMで、2025年にリリースされました。

※ 厳密に言うと、初期の Codexモデルは2021年にリリースされました。これは GitHubなどで大量の公開コードを学習したコード生成モデルで、研究者や開発者向けに限定提供されました。この技術がAPIとして公開され、GitHub Copilotなどの補完ツールの基盤となりました。その後、一度Codexは非推奨扱いとなりましたが、2025年にAIエージェントとしてのCodexがまずCodex CLIとして登場し、次いでChatGPTの一部としてアナウンスされ、そして Codex-1 を皮切りとしたCodexエージェント向けモデルとしてリリースされました。さらに2026年にはCodexアプリがリリースされています。このように、Codexは元来は「GPT-3をコード生成に特化させたモデル名」でしたが、その後「OpenAI の AIコーディング全般のブランド名」に意味合いが変化しています。

Codex CLIは、Claude CodeやGitHub Copilto 同様に、ユーザーの指示に基づいてコードを生成するエージェントです。三国志の例で言えば「劉備」です。この場合、LLMは「GPT」シリーズのみを選択できます。軍師は常に孔明」ということになります。(GPTシリーズであれば、Codexシリーズでなくても選べます。)

またCodex CLIは、Claude Codeと同様に、ファイルの読み書き・ディレクトリ探索・コマンド実行などのビルトインのツールを提供しています。やはり、ユーザーが必要に応じてツールを追加することができます。Codex CLIも、特定のIDEと統合するよりもむしろ「ターミナルで動く」ことで「IDEを選ばない」という戦略であり、Claude Codeと同じ路線です。

AIエージェントの中身を想像する

正直、GitHub Copilot も Claude Code も Codex も、その中身は公開されておらず、ブラックボックスです。ただ、AIエージェントであることには変わりはなく、大雑把な構成は上記の「殿・劉備-軍師・孔明-将軍たち」なモデルです。

最近「Claude Codeで**を作った!」、「Codexで**を実現した!」といった技術ブログが多く出ていますが、それらを読む際にもAIエージェントの構成や内部の役割分担が分かっていると解像度が違って理解できるのではないでしょうか。

また、Claude Code を使って何か作業をするときも、意図しない挙動をしたときに「んもう! ちゃんと動かないなあ」と「劉備チーム全体に対して漠然と不満を持つのではなく、「孔明の身に何が起きているのか」「それはどうしてか、劉備の振る舞いに何があったのか」という視点で一歩解決に近い視点で考察することができるはずです。

さらに、自分でAIエージェントを作ってみると(Mastraなどを使って)、GitHub Copilot や Claude Code はこのように素敵に振る舞うのに、どうして自分のエージェントはそのように動かないのだろう? と相対化して評価し、「内部でどんな風に制御しているのかな」と想像を巡らすことでより理解が深まると思います。

2026年は「AIエージェントの民主化」か

それにしても、Claude Code というか Anthropic は 2024年からAIエージェントの業界をリードしてきました。 MCP(Model Context Protocol)の規格を公開し、コンテキスト・エンジニアリングの重要性を喚起する記事を公開し、Agent Skills を発表するなど常に新コンセプトを発信してきました。モデルも Claude Opus と Claude Sonnet が一貫してプログラミングの世界で優位を保ってきました。一方でそれはまだITのエンジニアの中の世界の話であって、一般には「ChatGPT」と「Copilot」と「Gemini」こそが有名でした。

それが2026年の2月くらいから急速に「一般の方」の知るところとなり、非エンジニアの方々がClaude Codeで実務を大規模に活用する時代に突入したのを感じています。

もともとAIエージェントは「システムのエンジニア向けの開発エージェント」が先行的に進歩していて、つまりエンジニアはエンジニアのためのエージェントを真っ先に作ってきたのです。それは、利用者のニーズが分かりやすいから(利用者=自分だから)でもあり、また「AIでAIを作る」環境を整えることが優先されたからでもあります。

その結果として、「コードを自動で生成する」だけだったエージェントが、開発をより一層ラクにするために「Officeファイルを読み書きできる」「API経由で外部システムと会話できる」「ブラウザ操作ができる」と「ツール」の種類を継続的に拡充したことで、「プログラミングに限らない、汎用的な便利エージェント」になり、それが2026年2月に一気に非エンジニアの方々の気づくところとなった。 --そのように理解しています。

SIerとしては大きな変化ですが、価値提供の機会でもあります。AIエージェントの中身について本稿のように解説しつつ、お客様にとってより便利なエージェントを提供したい、と勉強する次第です。

Discussion