Claude CodeとCopilot agent modeの違い — 実行環境と承認を比較
Claude CodeにCopilotのagent modeに当たる機能はあるのか。実行環境・権限承認・モデル選択・料金の違いと、VS Code内でClaudeを動かす方法を比べます。
GitHub Copilotのagent modeは、VS Codeなどのエディタのチャット欄から呼び出すエディタ内蔵のエージェントです。Claude Codeは、ターミナルに常駐して動くCLIネイティブのエージェントです。どちらも高レベルの指示からファイル編集とコマンド実行までを自律的にこなしますが、動く場所と呼び出し方が違います。
- Claude Codeにagent modeはあるか: 同名の機能はありません。権限モードは
default・acceptEdits・plan・auto・dontAsk・bypassPermissionsの6つです。 - VS CodeでClaudeは使えるか: 使えます。Claude Code自身のVS Code拡張を入れる方法と、Copilotのチャットで選ぶ方法(ClaudeモデルかClaudeセッションターゲット)があります。
この違いは、CI/CDへの組み込みやリモートサーバーのようにエディタを開けない場面で、そのまま使い勝手の差になります。さらに今は、VS Codeのエージェント機能の中でClaude自身を動かせるようになり、「どちらか一方を選ぶ」という見方が成り立ちにくくなっています。
agent modeという名前は今どこを指すのか
agent modeは、チャット欄でAgentを選ぶと有効になる機能です。ゴールを渡すと、コードベースの文脈を集め、計画を立て、ファイルを編集し、ターミナルコマンドを実行し、結果を見ながら反復します。料金ページでは、agent modeはVS Code・Visual Studio・JetBrains・Eclipse・Xcodeで使えると書かれています。
VS Codeの公式ドキュメントでは、この機能は「セッションターゲット」の1つとして説明されています。どの実行基盤で動かすかを選び、その中でAsk・Agent・Planというロールを切り替える構成です。名前が似ているcoding agentもあり、区別が要ります。
VS Codeのセッションターゲット
Local
VS Codeの拡張ホストで動き、現在のワークスペースを直接編集します。VS Codeの組み込みツール、拡張機能が提供するツール、VS Code側で設定したモデルを使えます。エディタの診断や選択範囲に即応したい対話作業向けです。
Copilot
マシン上、接続先ホスト、またはDev ContainerのAgent Hostで動きます。コード分離は現在のフォルダか、Git worktreeを選べます。
Claude
AnthropicのClaude Agent SDKを使うセッションです。ツールは手元のマシンで動き、VS Codeがセッション管理と差分レビューを受け持ちます。
Codex
OpenAI Codexのセッションです。Copilot Pro+のモデルかChatGPTのサブスクリプションで使います。
Cloud
プロバイダーのリモート基盤で動き、GitHubリポジトリに対してブランチとPull Requestを作ります。ローカルのエディタ文脈やターミナル出力にはアクセスできません。
同期と非同期の線引きは、GitHubの2025年6月のブログが説明しています。agent modeはエディタ内で一緒に作業する同期型で、coding agentはIssueを渡して待つ非同期型です。今のドキュメントでは、後者はCloudターゲットの「Copilot cloud agent」に当たります。Claude側のクラウド実行との起動経路・権限の違いはClaude Code on the webとCopilot cloud agentの違いで比べています。
VS Codeの中でClaudeが動くとき、Claude Codeとは何が違うか
Claudeターゲットを選ぶと、VS Codeの中でClaudeのエージェントを動かせます。認証と課金は2通りで、GitHub Copilotのサブスクリプション経由か、Claude APIキーなどのBYOK(自前のキー持ち込み)です。モデルピッカーにはAnthropicとCopilotがグループ分けされ、選んだモデルで次のターンの課金先が決まります。
ここで混同しやすいのが、これがClaude CodeのCLIそのものではない点です。ドキュメント上のClaudeターゲットは、Claude Agent SDKをVS Codeに組み込んだ形です。Claudeターゲットがclaudeコマンドと同じ機能を持つとは、ドキュメントに書かれていません。
同じClaudeでも入口で変わること
VS CodeのClaudeターゲット
起動はチャット欄のセッションターゲット選択です。権限モードは「Edit automatically」「Request approval」「Plan」の3つで、請求はCopilotかBYOKで選びます。Claudeのクラウド実行はCloudターゲットで選び、Copilotアカウントで第三者エージェントを有効にした場合に限られます(プレビュー)。
Claude Code(CLI)
起動はclaudeコマンドで、エディタを必要としません。権限モードは6つで、--permission-modeで起動時に指定できます。認証はClaudeの有料プランかConsoleアカウントなどで、Copilotの契約は関係しません。
Claude Code自身のVS Code拡張も別に存在します。拡張は自前のCLIを同梱していて、統合ターミナルでclaudeを使うにはCLIの単体インストールが別に必要です。つまりVS Codeの中でClaudeを使う道は、Claude Code拡張を入れる方法と、Copilotのチャットで選ぶ方法(ClaudeモデルかClaudeセッションターゲット)の2本あります。
エディタを開けない場所で使うなら
agent modeは、VS Codeなどのエディタが起動していることが前提です。Copilotの側にもターミナルの入口はあり、VS Codeのドキュメントは統合ターミナルでcopilotと入力する方法やCopilot CLIのセッション再開を案内しています。ただしこれはagent modeとは別の入口で、位置づけはCopilot CLIの領域です。Copilotのharnessでは/remote onで、実行中のセッションをGitHub.comやGitHub Mobileから見守り、操作することもできます。
Claude Codeは、ターミナルがあればローカルでもSSH先でもコンテナでも同じコマンドで動きます。インストールの経路はネイティブインストールスクリプト、Homebrew、WinGet、npm、Linuxのapt・dnf・apkです。どれもエディタの導入を前提にしません。
非対話実行は-p(--print)フラグで使います。claude --help(v2.1.289)では、出力形式は3種類です。
claude --help | grep -A5 -- "--output-format" --output-format <format> Output format (only works with --print):
"text" (default), "json" (single
result), or "stream-json" (realtime
streaming) (choices: "text", "json",
"stream-json")成功すれば終了コード0、失敗すれば非ゼロで終わるので、シェルスクリプトやCIの分岐にそのまま使えます。--output-format jsonのレスポンスにはtotal_cost_usdとモデル別の内訳が含まれます。CIでの呼び出しは、起動時の自動読み込みを減らす--bareを付ける使い方が推奨されています。--bareなしの-pでは、作業ディレクトリのフックや.mcp.jsonのサーバーも読み込まれ、信頼ダイアログは出ません。
-pを使わず、画面の外で走らせる手段もあります。claude --bgはセッションをバックグラウンドで始めてIDを返し、claude attachで自分のターミナルに戻れます。claude agentsで一覧、claude logsで出力、claude stopで停止まで揃っています。
並行作業の分離は、両者とも名前の付いたGit worktreeで行います。Claude Codeはclaude -w(--worktree)でセッション用のworktreeを作ります。Copilotのharnessはエージェントウィンドウで「New Worktree」を選びます。Copilotのworktreeはコードの変更を分けるだけで、コマンドやネットワークの制限にはなりません。Claude Codeはworktree内のセッションがメインのチェックアウトを編集したり、そこをカレントにしてコマンドを実行したりするのを止めますが、ネットワークまでは制限しません。ネットワークやファイルシステムの制限は、どちらもサンドボックスの設定が担います。
承認の設計はどこが違うか
自律的にファイルを編集しコマンドを実行する以上、どこまで自動承認するかは両者とも設計の中心です。
agent modeの権限レベルは3つです。
- Manual permissions: 既定。自動承認の設定に当たらない操作は、毎回確認します。
- Assisted permissions: LLMの審査役が各ツール呼び出しを判定し、通らないものだけ確認します。設定で有効にする機能で、Agent Host上のセッションに限られます。
- Allow all: 確認なしで全操作を実行します。
Copilot harnessには制約があります。worktreeでの実行は常にAllow allで、変更できません。権限レベルを選べるのはフォルダ実行のときです。AutopilotはAllow allと同じく全ツールを自動承認し、エラーでの再試行や、止まりそうな質問への自動応答までする「エージェントモード」で、権限レベルの1つではありません。Preview段階のAdvanced Autopilotは、完了の判断を別のモデルに任せます。
Claude Codeのモードは6つです。ツール初回使用時に確認するdefault(CLIの表示名はManual)、ファイル編集とmkdir・mvなどを自動承認するacceptEdits、読み取り専用のplanがあります。残りは、バックグラウンドで分類器の安全チェックを走らせるauto、事前許可以外を拒否するdontAsk、確認をスキップするbypassPermissionsです。Shift+Tabで切り替えられますが、dontAskは循環に入らず、--permission-modeで指定します。bypassPermissionsとautoも、有効にしたときだけ循環に入ります。
起動時の既定はv2.1.283以降、ターミナルとVS Code拡張ではautoです。claude -pの既定は、機能フラグを取得するセッションではdefaultです。サードパーティプロバイダーやテレメトリ無効のセッションでは、v2.1.285以降はauto、それ以前はdefaultになります。dontAskは、プロンプトが出るはずの操作をすべて拒否するので、CIのように人が答えない場所に向いています。
claude --help | grep -A5 -- "--permission-mode" --permission-mode <mode> Permission mode to use for the session
(choices: "acceptEdits", "auto",
"bypassPermissions", "manual",
"dontAsk", "plan")選択肢の表記がdefaultではなくmanualになっているのは、v2.1.200以降のManualという呼び名に合わせた形で、設定値のdefaultは変わりません。bypassPermissionsは.gitや.claudeのような保護パスへの書き込みも通すため、コンテナやVMのような隔離環境専用として案内されています。
-pで人が答えられないとき、誰が許可プロンプトに答えるかを--permission-promptsで指定できます。hostはSDKを呼び出した側、noneは答える者がおらず、プロンプトが出るはずの操作はすべて自動で拒否されます。
粒度の違いはここに出ます。Claude Codeはツール単位・パス単位の許可/拒否ルール(Bash、Read、WebFetchのドメイン指定など)を重ねられます。agent modeの3段階は、セッション全体にかかる大づかみな制御で、細かい制限はツール・URL・ターミナルの個別の自動承認設定が担います。Copilot・Claude Code以外を含めた比較はAIコーディングエージェントの権限モデル比較で扱っています。
モデルとMCPの選び方
agent modeは呼び出すモデルを選べます。Autoのほか、速度・推論力・コストの特性で個別モデルを指定でき、Copilotのモデル一覧にはAnthropicのClaudeシリーズも並びます。料金ページの一覧には、Fable 5.1、Opus 5.5、Sonnet 5.5、Haiku 4.5などが載っています。VS Codeには自前のAPIキー(BYOK)を持ち込む道もあります。
Claude Codeが動かすのはAnthropicのClaudeに限られます。その代わり、Claudeの中での制御は細かく、--modelはfableやopus、sonnetなどのエイリアスを受け付けます。--fallback-modelは過負荷のときの切り替え先を順に並べられ、--effortは思考量をlow・medium・high・xhigh・maxの5段階で指定できます。
MCP(Model Context Protocol)は両者とも対応しますが、条件が違います。Claude Codeは.mcp.jsonや設定ファイルで構成します。Copilot harnessのセッションは、現状では認証が不要なローカルMCPサーバーにしか届かないと公式ドキュメントにあります。OAuthが要るリモートサーバーを使うなら、この差が効きます。実装差はAIコーディングエージェントのMCP対応状況比較にまとめています。
料金は「契約」より「消費の単位」が違う
GitHub Copilotの個別プランはFree($0)、Pro($10/月)、Pro+($39/月)、Max($100/月)です。agent modeやCopilot CLI、cloud agentは、いずれも「GitHub AI Credits」を消費します。1クレジットは0.01ドルで、月ごとの枠が付いてきます。
Copilot個別プランの月間クレジット枠
Pro
$15
基本$10 + 変動$5
Pro+
$70
基本$39 + 変動$31
Max
$200
基本$100 + 変動$100
Freeは「限定的なチャットとagent利用」で、プラン比較表にはCLIとagent modeが使えると書かれています。同じ料金ページのFAQには「2,000 completionsと50 chat requests」という上限の説明があり、クレジット制の表と並んで残っています。第三者のコーディングエージェント(ClaudeやCodex)へのタスク委任は、プレビューで、Pro+とMaxのみです。
プラン別の違いは次のとおりです。Claude CodeはPro以上が条件です。
| プラン | GitHub Copilot | Claude Code |
|---|---|---|
| 無料枠 | GitHub CopilotFree($0)。限定的な利用 | Claude Codeなし |
| 最小の有料プラン | GitHub CopilotPro($10/月) | Claude CodeClaude Pro($17/月の年払い、月払いは$20) |
| 上位プラン | GitHub CopilotPro+($39/月)、Max($100/月) | Claude CodeMax(月$100から、Proの5倍または20倍の使用量) |
Claudeの金額は税抜の表示価格で、居住地に応じた税が加わります。Copilotは月の枠をドルで持ち、Claudeはプランごとの使用量の上限で管理します。「無料で試せる」点では、Copilotに分があります。
状況別の選び方
状況ごとに向く構成は次のとおりです。
| 状況 | 向く構成 | 理由 |
|---|---|---|
| VS Codeで画面を見ながら細かく指示したい | 向く構成agent mode(Copilotターゲット) | 理由チャットでの対話と差分確認が一体化している |
| CIで自動修正やレビューを回したい | 向く構成Claude Code(-p) | 理由終了コードと--output-format jsonでスクリプトに組み込める |
| SSH先やコンテナで作業したい | 向く構成Claude Code | 理由ターミナルがあればエディタ非依存で動く |
| すでにCopilotを契約している | 向く構成agent mode、またはVS CodeのClaudeターゲット | 理由既存の契約の枠内でClaudeのエージェントにも触れる |
| ツール・パス単位で承認ルールを管理したい | 向く構成Claude Code | 理由6つのモードと許可/拒否ルールを組み合わせられる |
まとめ
分かれ目は、人が画面を見ながら同期で進めるか、人のいない場所で動かすかです。契約済みのCopilotがあるなら、VS CodeのClaudeターゲットがCLIを入れる前の入口になります。
参照した一次ソース
この記事の記述は、次の一次ソースと照合しています。更新時に参照先が変わった場合は一覧も更新します。
- github.com/features/copilot
- github.com/features/copilot/plans
- code.visualstudio.com/docs/agents/overview
- code.visualstudio.com/docs/agents/run/agent-harnesses
- code.visualstudio.com/docs/agents/run/approvals
- github.blog/developer-skills/github/less-todo-more-done-the-difference…
- code.claude.com/docs/en/permissions
- code.claude.com/docs/en/permission-modes
- code.claude.com/docs/en/headless
- code.claude.com/docs/en/setup
- code.claude.com/docs/en/vs-code
- claude.com/pricing