Claude Code for VS Codeは、AnthropicがVisual Studio Code向けに出している公式拡張機能です。2026年10月19日に確認した時点で、Visual Studio Marketplaceの掲載版は10月15日公開のv2.1.301、インストール数は2,810万件を超えています。この記事では、導入に必要なものと手順、差分承認と権限モードの設定、タブ補完が無い点を公式ドキュメントに沿って整理します。後半では、よく混同される「Visual Studio 2022・2026でC#を書きながらClaude Codeを使う方法」を、公式の対応状況と手元での実行結果を根拠に説明します。
まとめ
- 拡張機能の入手は無料ですが、使うには有料プラン(Pro、Max、Team、Enterprise)かClaude Consoleアカウントが要ります。無料プランでは動きません。
- 要件はVS Code 1.94.0以上。拡張機能ビューで「Claude Code」を検索して入れます。統合ターミナルで
claudeを打つには、CLIを別にインストールします。 - v2.1.283以降は開始モードがAutoで、確認なしで編集が進みます。新しい会話をManualで始めたいなら
claudeCode.initialPermissionModeをdefaultに指定します。 - Copilotのようなタブ補完はありません。補完が必要ならCopilotなどと併用します。
- Visual Studio 2022向けの公式統合は無いと、Anthropic自身がFAQで明言しています。C#ソリューションでは、Visual Studioのターミナルでソリューションのルートから
claudeを起動し、dotnet buildとdotnet testを回させるのが現実的です。
Claude Code for VS Codeの導入要件とインストール手順
前提条件:VS Code 1.94.0以上と有料プランかConsoleアカウント
公式のVS Codeページが挙げる前提条件は2つです。VS Code 1.94.0以上と、Anthropicのアカウント(有料のClaudeサブスクリプションかClaude Consoleアカウント。APIキーは不要)。10月19日にMarketplaceとOpen VSXのAPIで取得した拡張機能のマニフェストも、どちらもengines.vscodeは^1.94.0でした。Marketplaceの掲載文だけは「1.98.0以上」と書いていますが、インストールの可否を決めるのはマニフェスト側です。
無料で使えるかについては、セットアップのページに「無料のClaude.aiプランにはClaude Codeのアクセスが含まれない」と書かれています。無料なのはインストールまでで、プロンプトを1回送る時点で有料プランかConsoleの従量課金が必要です。Consoleを選ぶ場合、公式のコスト管理ページは企業導入の平均を1人あたりアクティブ日で約13ドル、月150〜250ドルとしています。Amazon Bedrock、Google CloudのAgent Platform、Microsoft Foundry経由で使う組織は、設定の「Disable Login Prompt」をオンにし、各プロバイダーの手順で~/.claude/settings.jsonを書きます。
拡張機能ビュー・codeコマンドによるインストール
Cmd+Shift+X(Mac)かCtrl+Shift+X(Windows・Linux)で拡張機能ビューを開き、「Claude Code」を検索して発行者がAnthropicのものを入れます。識別子はanthropic.claude-codeです。CursorやKiroなどのVS Codeフォークにも同じ拡張機能が入り、拡張機能ビューかOpen VSXから導入できます。複数台へ同じ手順で入れるなら、VS Codeのコマンドラインを使います。
# インストール
code --install-extension anthropic.claude-code
# 入っている版を確認(PowerShellなら findstr claude-code)
code --list-extensions --show-versions | grep claude-code
拡張機能の版番号は同梱しているClaude Code本体の版番号と同じです。公式ドキュメントに「Requires Claude Code v2.1.275 or later」とあれば、拡張機能もv2.1.275以上が必要という意味になります。Open VSXのAPIでは10月18日公開のv2.1.303が確認でき、Marketplaceの2.1.301から3日で2版進んでいました。手元の画面が解説記事と違うときは、まず版を確かめてください。
統合ターミナル用CLIの追加インストール
拡張機能はチャットパネル用のCLIを内部に同梱していますが、シェルのPATHには追加しません。統合ターミナルでclaudeやclaude mcp addを使うには、スタンドアロンのCLIを1回インストールします。公式が推奨するのはネイティブインストーラです。
# macOS / Linux / WSL
curl -fsSL https://claude.ai/install.sh | bash
# Windows PowerShell
irm https://claude.ai/install.ps1 | iex
claude --version
Windowsの要件はWindows 10 1809以上かWindows Server 2019以上です。Git for Windowsは任意で、入っていればGit Bash経由でBashツールが動き、入っていなければClaude CodeはPowerShellでコマンドを実行します。
初回サインインで止まるときの確認点
パネルを初めて開くとサインイン画面が出るので、Sign inを押してブラウザで認可します。よくある詰まりは、シェルにANTHROPIC_API_KEYを設定しているのにサインインを求められるケースです。VS Codeがシェルの環境変数を引き継いでいない可能性があるため、ターミナルからcode .でVS Codeを起動し直します。サインイン後にAPI Error: 403 Request not allowedが出たら、公式のトラブルシュートの「403 Forbidden after login」の項を見てください。
Claude Codeパネルの起動とコードの共有
Claude Codeの目印はSparkアイコンです。いちばん速いのはエディタ右上のアイコンですが、ファイルを開いていないと表示されません。ほかに、左のアクティビティバー(セッション一覧)、コマンドパレットで「Claude Code」と入力する方法、ウィンドウ右下のステータスバーの「✻ Claude Code」があり、ステータスバーはファイルを開いていなくても使えます。パネルはドラッグで右サイドバー、左サイドバー、エディタタブのどこへでも動かせます。
コードの渡し方は3通りあります。エディタで選択したテキストは自動で渡り、開いているファイルの名前も既定で添えられます(止めるならclaudeCode.attachOpenFileをfalse)。Option+K(Mac)かAlt+K(Windows・Linux)を押すと@app.ts#5-10のような行範囲つきの参照が入ります。プロンプトに@authと打てばauth.jsやAuthService.tsにあいまい一致し、@src/components/のように末尾にスラッシュを付ければフォルダ単位です。ビルドのエラーを見せたいときは、@terminal:名前でターミナルの出力を参照させると貼り付けが要りません。
会話はコマンドパレットの「Open in New Tab」「Open in New Window」で増やせ、会話ごとに履歴とコンテキストが分かれます。タブのSparkアイコンに付く青いドットは許可待ち、橙のドットは裏で処理が終わったことを示します。
Claude Codeの差分承認と権限モード設定
4つの権限モードとManualでの差分レビュー
プロンプト欄の下のモード表示をクリックすると、権限モードを切り替えられます。差分を並べて表示し、承認を求めてくるのはManualだけです。AutoとEdit automaticallyでは、ワークスペース内の多くのファイルを確認なしで編集します。
| 表示名 | 設定値 | 確認なしで通る範囲 |
|---|---|---|
| Manual | default | 読み取りのみ |
| Edit automatically | acceptEdits | 読み取り・編集・mkdirなど |
| Plan | plan | 計画を出して承認待ち |
| Auto | auto | 分類器が審査して実行 |
Manualでは元のコードと提案を並べた差分が開き、受け入れる前に提案を手で直すこともできます。v2.1.275以降は変更ごとにAccept this changeとReject this changeのボタンが付き、1か所ずつ採否を決められます。ただし変更が100か所を超える差分ではボタンが出ず、ファイル単位のレビューになります。Edit automaticallyが確認なしで通すのは編集とmkdirなどのファイル操作までで、任意のシェルコマンドは含みません。Planを選ぶと計画がMarkdownの文書として開き、行にコメントを付けて差し戻せます。
initialPermissionModeによる開始モードの指定
権限モードのドキュメントによると、v2.1.283以降はターミナルとVS Codeの対話セッションがAutoで始まります。新しい会話をManualで始めるには、VS Codeのユーザー設定で開始モードを指定します。ただし、この設定だけでは作業中のモード変更や既存の許可ルールを制限できず、すべての差分の承認を強制するものではありません。この設定はdefault、manual、acceptEdits、plan、bypassPermissionsを受け付け、autoは受け付けません。ワークスペースの設定値は無視され、ユーザー設定だけが読まれます。
{
"claudeCode.initialPermissionMode": "default",
"claudeCode.preferredLocation": "sidebar",
"claudeCode.respectGitIgnore": true
}
設定しない場合は、前回モード表示で選んだモード、managed settingsか~/.claude/settings.jsonのdefaultMode、組み込みの既定(Auto)の順で決まります。拡張機能はプロジェクトの.claude/settings.jsonを開始モードの決定に使わないので、リポジトリに書いても効きません。モードごとの違いはClaude Codeのパーミッションモードの違いと設定方法で詳しく比べています。
チェックポイントによる会話の分岐とコードの復元
メッセージにマウスを重ねると巻き戻しボタンが出て、「会話をここから分岐(コードは保持)」「コードだけここまで戻す」「分岐してコードも戻す」の3つから選べます。コミット前でも、会話のやり直しとファイルの復元を別々に決められます。過去の会話はパネル上部のSession historyから検索して再開でき、14日間操作の無いセッションは自動でアーカイブされます(期間はarchiveInactiveSessionsで変更)。
タブ補完の非対応とCopilot併用の選択肢
公式ドキュメントのCLIと拡張機能の比較表は、タブ補完を「CLIはYes、VS Code拡張機能はNo」としています。この表のタブ補完はターミナルでの入力補完のことです。エディタ上にゴーストテキストを出すインライン補完を求めたIssue #69312は、2026年7月30日に長期未更新を理由としてbotが自動クローズしました。終了区分はnot plannedですが、開発者が実装予定を否定した回答ではありません。
| 機能 | CLI | VS Code拡張機能 |
|---|---|---|
| コマンドとskills | すべて | 一部 |
| MCPサーバーの設定 | 可 | 可(パネルの/mcp) |
| チェックポイント | 可 | 可 |
| !によるBashショートカット | 可 | 不可 |
| タブ補完 | 可 | 不可 |
Claude Codeは1文字ずつ先回りして補う道具ではなく、指示を受けて複数ファイルの変更を計画して実行する道具です。タイピング中の補完が欲しいなら、補完はGitHub Copilot、まとまった変更はClaude Codeと分けて併用するのが答えになります。Copilot側の導入はVS CodeでGitHub Copilotを使う手順を参照してください。公式のトラブルシュートは、Sparkアイコンが出ないときにClineやContinueなど他のAI拡張機能を一時的に止めて切り分けるよう案内しています。
拡張機能とCLIの使い分け
拡張機能とCLIは会話履歴を共有します。パネルで始めた会話は、ターミナルでclaude --resumeを実行すれば続きから再開できます。外部のターミナルで動かしているCLIは、/ideでVS Codeにつなぐと差分がVS Codeの差分ビューアで開き、「問題」パネルの診断も読めるようになります。MCPサーバーはパネルで/mcpと打って追加でき、ターミナルのclaude mcp addと同じ設定に保存されます。
よく変える拡張機能の設定は次のとおりです。CLIと同じ見た目で使いたいならuseTerminalをtrueにします。
| 設定キー(claudeCode.) | 既定値 | 効果 |
|---|---|---|
| useTerminal | false | CLI表示で起動 |
| initialPermissionMode | 未設定 | 新しい会話の開始モード |
| preferredLocation | panel | sidebarかpanelか |
| attachOpenFile | true | 開いているファイルを添付 |
| respectGitIgnore | true | .gitignore対象を検索から除外 |
| allowDangerouslySkipPermissions | false | Bypass permissionsを選択肢に追加 |
プロジェクトのルールはCLAUDE.mdに書き、拡張機能とCLIの両方が読みます。CLI側の導入から権限設定までの流れはClaude Codeの使い方|導入から権限とCLAUDE.md設定までにまとめています。
Visual Studio 2022・2026とC#でClaude Codeを使う方法
Visual Studio向け公式統合の対応状況
「claude code visual studio」で探している人がまず知っておくべきなのは、Visual Studio(VS Codeではない方)向けの公式拡張が無いことです。AnthropicのClaude Code FAQは、Visual Studio IDEとの統合について「No current Visual Studio 2022 integration exists.」と答え、対応先をVS Code、Cursorなどのフォーク、IntelliJやPyCharmなどのJetBrains IDEとしています。公式ドキュメントのIDE向けページもVS CodeとJetBrainsの2本だけで、Marketplaceで発行者がAnthropicの拡張機能もVS Code用だけでした。VS Code用の拡張機能はVisual Studioには入りません。
Visual StudioのターミナルとソリューションルートでのCLI起動
現実的な方法は、Visual Studioの「表示」メニューからターミナルを開き、スタンドアロンでインストールしたclaudeをソリューションのルートで起動することです。Claude Codeは起動したフォルダを基点にファイルを探すので、プロジェクトのフォルダで起動すると、隣のテストプロジェクトや共有ライブラリは初期の作業範囲外になります。必要なら--add-dirや/add-dirで追加できます。差分ビューアとの連携は付きませんが、ファイルの読み書きとコマンドの実行はCLIだけで完結します。
cd C:\src\MySolution
claude --permission-mode plan
# 起動後の依頼例
# @Services/OrderService.cs の割引計算を別クラスに切り出す計画を出して。影響するテストも挙げて
エディタとの統合が無い分、最初はPlanモードで影響範囲を出させてから編集に進む方が手戻りが減ります。Visual Studioが作る.vs/フォルダやbin・objは、dotnet new gitignoreが生成する.gitignoreに最初から入っています。.gitignoreを置いておけば、Claude Codeがファイルを検索するときにビルド成果物を拾いにくくなります。
Claude Codeによるdotnet buildエラーの修正実測
CLIはVisual Studioのエラー一覧を読めません。代わりにdotnet buildを実行させ、その出力からエラーを拾わせます。2026年10月19日に、.NET SDK 10.0.401とClaude Code 2.1.302(macOS)で、コンソールアプリとxUnitのテストプロジェクトを含むソリューションを作って試しました。.NET 10のSDKではdotnet new slnがDemo.slnではなくDemo.slnxを作ったので、指示ではファイル名まで指定しています。
# macOSのBash/Zshで実行した例。以下の行継続はPowerShell用ではありません。
# 変数名の打ち間違いを入れた状態でビルド
dotnet build Demo.slnx
# App/Program.cs(2,19): error CS0103: 現在のコンテキストに 'totl' という名前は存在しません
# ビルドとテストのコマンドを事前許可し、acceptEditsでファイル編集も許可する
claude -p "dotnet build Demo.slnx を実行し、出たコンパイルエラーを修正してから、もう一度 dotnet build Demo.slnx と dotnet test Demo.slnx を実行して結果を報告して" \
--model haiku --permission-mode acceptEdits \
--allowedTools "Bash(dotnet build *)" "Bash(dotnet test *)"
この1回の実行結果は6ターン、約40秒、ログ上のAPI換算費用は0.0058ドルでした。変更はProgram.csの1行(totlをtotalへ)だけで、再ビルドはエラー0でした。テストは1件合格しましたが、テンプレートの空のテストであり、割引計算の正しさを検証したものではありません。許可していないコマンドで止まることもありませんでした。エラー行にはファイル名(行,列)とエラー番号が入るため、Visual Studioのエラー一覧を貼り付けなくてもClaude Codeは修正箇所を特定できます。毎回の許可を省くなら、リポジトリの.claude/settings.jsonに許可ルールを置きます。
{
"permissions": {
"allow": [
"Bash(dotnet build *)",
"Bash(dotnet test *)"
]
}
}
Git for Windowsを入れていないWindowsでは、Claude CodeはBashではなくPowerShellツールでコマンドを実行します。その場合の許可ルールはPowerShell(dotnet build *)のようにBashと同じ形で書きます。上のclaude -pの例はmacOSのzshで実行したもので、PowerShellでは行末の\を使わず1行で入力します。
CLAUDE.mdには、ビルドとテストのコマンド(dotnet build MySolution.slnxなど)と、テストフレームワーク名、編集してはいけない生成コードの場所を書いておくと、毎回の説明が要りません。.NETのSDKの選び方は.NET 10(LTS)とは?SDKの選び方と入手で扱っています。
Visual Studio 2026のCopilotとClaudeモデル・Skillsの共有
Claude Codeそのものではありませんが、Visual Studioの中でClaudeのモデルを使う公式の道もあります。MicrosoftのCopilot Chatのドキュメントによると、Visual Studio 2026 18.10からBYOK(自分のAPIキーを使う機能)がプレビューで既定有効になり、接続先にMicrosoft Foundry、OpenAI、Ollamaと並んでAnthropicが入りました。BYOKで使うのはAgent(Preview)です。課金はAnthropic側のAPI利用料で、Claude Codeのプランとは別になります。Copilot経由でClaudeを選ぶ方法はGitHub CopilotでClaudeを使う方法で整理しています。
もう1つの接点がAgent Skillsです。Visual StudioのAgent Skillsのドキュメントは、18.5以降のCopilotが.claude/skills/と~/.claude/skills/からもskillを読み込むと書いています。Claude Code用のSKILL.mdを同じ場所から読み込めます。ただし、手順が前提とするツールや実行環境がCopilot側でも使えるかは確認が必要です。skillの書き方はClaude SkillsとSKILL.mdの書き方を見てください。Visual Studio 2026自体の変更点はVisual Studio 2026の新機能にあります。
コミュニティ製のVisual Studio拡張を選ぶときの基準
MarketplaceにはClaude CodeをVisual Studioに組み込むコミュニティ製の拡張が複数あり、検索語「claude code extension for visual studio」で探されているのはこちらです。2026年10月19日にMarketplaceのAPI(extensionquery)で取った数字は次のとおりで、各製品はMarketplaceで発行者名と拡張機能名から検索できます。
| 拡張機能(発行者) | 版 | インストール数 |
|---|---|---|
| Claude Code Extension for Visual Studio(dliedke) | 248.0 | 331,742 |
| ClaudeVS(GlassBeaver) | 5.0 | 16,026 |
| Claude Code for Visual Studio(firish) | 1.21.0 | 9,315 |
| Claude Code Studio(wluisdev) | 1.1.7 | 2,883 |
表の4製品でインストール数が最も多いdliedke版はGitHubでMITライセンスのもと公開され、Visual Studio 2022と2026(x64・ARM64)に対応します。ツールウィンドウでClaude Code、Codex、Cursor Agentなどを動かし、「Send Build Errors to Agent」でビルドエラーをエージェントへ送る機能を持ちます。どれもAnthropic公式ではなく、中身は手元のCLIを呼び出す作りです。セキュリティ審査が必要な組織では、ターミナルでのCLI運用を標準にし、拡張は操作性が欲しい人の任意導入にとどめる方が無難です。版を固定して審査する組織では、採用版の配布物と変更履歴を保存し、更新時の再審査手順を決めてから導入してください。
組織で導入する前に決める3つの設定
1つ目は開始モードです。新しい会話をManualで始めるにはinitialPermissionModeをdefaultにするか、managed settingsでdefaultModeを配ります。VS Codeではユーザー設定のinitialPermissionModeと前回選んだモードがmanaged settingsより先に効くため、配布だけでは全員の開始モードはそろいません。2つ目は秘匿ファイルの除外です。拡張機能が動いている間、CLIはプロンプトのたびに選択範囲と開いているファイルのパスを添えます。.envなどはReadのdenyルールで除外します。ただし、PythonやNodeのスクリプトによる間接的な読み取りまでは遮断しないため、OSのレベルで止めるならサンドボックスを有効にします。また、「問題」パネルを読む診断ツールを止めたい場合は名前で指定します。
{
"permissions": {
"deny": [
"Read(.env)",
"Read(./secrets/**)",
"mcp__ide__getDiagnostics",
"mcp__claude-vscode__getDiagnostics"
]
}
}
3つ目は学習利用の扱いです。Data usageのページによると、Free・Pro・Maxのアカウントは設定がオンのときにClaude Codeでの利用も学習に使われます。Team・Enterprise・APIなどの商用条件では、顧客が提供を選ばない限りコードやプロンプトを学習に使いません。社内コードを扱うなら、個人のProではなくTeamかEnterprise、またはConsoleでの契約にそろえます。生成AIを組み込んだ開発の進め方から相談したい場合は、一創の生成AI開発・AI受託開発でお受けしています。
導入直後のトラブルと対処
- Sparkアイコンが出ない:ファイルを1つ開く、VS Codeが1.94.0以上か確認、「Developer: Reload Window」、ほかのAI拡張を一時停止、制限モード(Restricted Mode)でないか確認、の順に切り分けます。
- macOSでCmd+Escが効かない:macOS Tahoe以降はゲームオーバーレイが
Cmd+Escを使っています。システム設定のキーボード、キーボードショートカット、ゲームコントローラーでゲームオーバーレイを外すか、「Claude Code: Focus input」を別のキーに割り当てます。 - アンインストールしても戻ってくる:統合ターミナルで
claudeを実行すると拡張機能が自動で再インストールされます。/configで「Auto-install IDE extension」をオフにするか、環境変数CLAUDE_CODE_IDE_SKIP_AUTO_INSTALLを1にします。 - 統合ターミナルでclaudeが見つからない:拡張機能はPATHに追加しません。スタンドアロンCLIをインストールし、それでも見つからなければPATHを確認します。
よくある質問
Claude Code for VS Codeは日本語で使えますか?
日本語で指示を書けば日本語で返ってきます。公式ドキュメントにも日本語版があり、2026年10月時点では要件の数値やタブ名が英語版と一致しています。拡張機能の画面の表記(Open in New Tab、Session historyなど)は英語のままです。
Cursorでも同じ拡張機能を使えますか?
使えます。公式にCursor向けのインストールリンクがあり、手順はVS Codeと同じです。Cursorで使う場合の費用の考え方と併用設定はCursorとClaude Codeの違い|料金・併用設定と拡張機能の入れ方で扱っています。KiroやDevin Desktopなどほかのフォークでは、拡張機能ビューの検索かOpen VSXから入れます。
VS CodeのCopilot ChatにあるClaudeとは何が違いますか?
別の仕組みです。VS Codeのドキュメントによると、Copilot Chatのサードパーティエージェントとして組み込まれたClaudeはClaude Agent SDKで動き、Copilotの契約で使う場合の課金はCopilot側です。オンオフはgithub.copilot.chat.claudeAgent.enabledで切り替えます。Claude Code for VS CodeはAnthropicのプランかConsoleで動きます。詳しくはVS Code v1.109の新機能とClaude連携を参照してください。
WindowsではWSLとネイティブのどちらに入れるべきですか?
コードを置いている側に入れます。C#やVisual Studioのソリューションのように、Windows上のツールでビルドするならネイティブWindowsです。Linux向けのツールチェーンを使う場合や、Bashのサンドボックス実行が必要な場合はWSL 2を選びます。ネイティブWindowsでのサンドボックスは非対応です。
claude.aiのWeb版で始めた作業をVS Codeで続けられますか?
Session historyの「Web」タブから、claude.aiのクラウドセッションを選んでローカルに読み込めます。Claude.aiのサブスクリプションでサインインしている必要があり、Consoleアカウントでは使えません。読み込んだ後の変更はclaude.aiへ同期されません。