Claude Code in VS Code: setup, models, and verification
Install the Claude Code extension in VS Code, point it at AI in IDE with one API key, and verify the first request without an Anthropic subscription.
The whole setup is one extension, one key, and one JSON block. For the complete reference — including proxy, TLS, Remote SSH, and WSL cases — read Claude Code in VS Code. This page is the condensed path.
Setup at a glance
- Install the extension. Use VS Code 1.94.0 or later. Install Claude Code from the Extensions view, from the Visual Studio Marketplace, or with Install from VSIX… when the marketplace is blocked. Run Developer: Reload Window if the panel does not appear.
- Create the API key. Open API Keys, create a key, and choose the AWSQ or CCMAX channel. Those are the Claude Code channels; a Codex or Gemini key is rejected here.
- Write the connection settings. Create or merge
~/.claude/settings.json(macOS/Linux) orC:/Users/<UserName>/.claude/settings.json(Windows):
1 {2 "$schema": "https://json.schemastore.org/claude-code-settings.json",3 "env": {4 "ANTHROPIC_BASE_URL": "https://api.aiinide.com",5 "ANTHROPIC_AUTH_TOKEN": "YOUR_DASHBOARD_API_KEY",6 "API_TIMEOUT_MS": "600000",7 "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"8 }9 }
Keep ANTHROPIC_BASE_URL at the bare host. Claude Code appends /v1/messages; a base URL ending in /v1 produces /v1/v1/messages and a 404. If the file already exists, merge the env object so permission rules and hooks survive.
- Skip the Anthropic sign-in prompt. Add
"claudeCode.disableLoginPrompt": trueto VS Code user settings, or search for "Claude Code login" in Settings. - Verify. Call
GET /v1/modelswith your key and theanthropic-version: 2023-06-01header. HTTP 200 lists the channel's models; 401 means a missing or invalid key; 400 means the key belongs to another channel. Then open a file, click the Spark icon or ✻ Claude Code, run/status, and send a short prompt. A successful prompt appears in Usage.
Supported models
| Model | Channel | Best for |
|---|---|---|
claude-opus-5-5 (alias claude-opus-5.5) | AWSQ, CCMAX | hard refactors, long agent runs |
claude-sonnet-5-5 (alias claude-sonnet-5.5) | AWSQ, CCMAX | everyday coding, the default choice |
claude-haiku-4-5-20251001 | AWSQ, CCMAX | fast edits, cheap verification calls |
Leave model out of settings.json to use the extension's picker, or switch during a session with /model. Use an exact ID from GET /v1/models; a mistyped claude-* name can resolve to the configured default Claude model and incur charges at that model's rate. Plans, quota, and current rates are on pricing.
Workflow notes
- The extension bundles Claude Code. Installing it does not add
claudeto your PATH; install the standalone CLI only for terminal sessions orclaude mcp add. - VS Code launched from the Dock or Start menu does not inherit your shell profile. Put connection values in
~/.claude/settings.json, which both the extension and the CLI read. - In Remote SSH, WSL, or a dev container, the settings file must exist inside the remote environment. Editing the local file has no effect on remote sessions.
- An exported
ANTHROPIC_API_KEYcan take precedence overANTHROPIC_AUTH_TOKEN. Keep one source of truth.
Troubleshooting essentials
API Error: 404—ANTHROPIC_BASE_URLincludes/v1. Usehttps://api.aiinide.com.API Error: 400— the key is from another channel, orsettings.jsonis unparsable. Recreate the key with AWSQ or CCMAX and validate the JSON.- No Spark icon — open a file first; the icon only appears with an open file, and VS Code must be 1.94.0 or later.
- Panel silent — run Claude Code: Show Logs from the Command Palette; the extension may have failed to launch its bundled CLI.
FAQ
Do I need an Anthropic subscription?
No. ANTHROPIC_AUTH_TOKEN plus the AI in IDE base URL replaces the claude.ai login, and claudeCode.disableLoginPrompt stops the extension asking for one.
Can I use the same key in Cursor?
Yes. Cursor runs the same extension, so the same settings.json and claudeCode.* settings apply. See Claude Code in Cursor.
Does the extension install the claude CLI?
No. The extension bundles its own CLI but does not put claude on your PATH. Install the standalone CLI only when you need terminal sessions or claude mcp add.
Where do I change the model?
Set model in ~/.claude/settings.json, or use /model in the panel. Both are documented in the full VS Code guide.