SpyBara
Go Premium

Documentation 2026-01-22 21:03 UTC to 2026-01-23 21:01 UTC

16 files changed +167 −23. View all changes and history on the product overview
2026
Sat 31 03:42 Fri 30 18:07 Thu 29 21:03 Wed 28 15:06 Tue 27 21:01 Mon 26 21:03 Sun 25 03:34 Sat 24 03:29 Fri 23 21:01 Thu 22 21:03 Wed 21 21:05 Tue 20 21:03 Mon 19 21:01 Fri 16 21:01 Wed 14 06:02 Mon 12 21:02 Sun 11 18:02 Sat 10 21:01 Fri 9 21:01 Thu 8 21:02 Wed 7 21:01 Tue 6 21:01 Sat 3 18:02
Details

316 Run `/plugin` to browse the marketplace. Plugins add skills, tools, and integrations without configuration.316 Run `/plugin` to browse the marketplace. Plugins add skills, tools, and integrations without configuration.

317</Tip>317</Tip>

318 318 

319[Plugins](/en/plugins) bundle skills, hooks, subagents, and MCP servers into a single installable unit from the community and Anthropic.319[Plugins](/en/plugins) bundle skills, hooks, subagents, and MCP servers into a single installable unit from the community and Anthropic. If you work with a typed language, install a [code intelligence plugin](/en/discover-plugins#code-intelligence) to give Claude precise symbol navigation and automatic error detection after edits.

320 320 

321For guidance on choosing between skills, subagents, hooks, and MCP, see [Extend Claude Code](/en/features-overview#match-features-to-your-goal).321For guidance on choosing between skills, subagents, hooks, and MCP, see [Extend Claude Code](/en/features-overview#match-features-to-your-goal).

322 322 

Details

81 81 

82 * Be specific about what you're looking for82 * Be specific about what you're looking for

83 * Use domain language from the project83 * Use domain language from the project

84 * Install a [code intelligence plugin](/en/discover-plugins#code-intelligence) for your language to give Claude precise "go to definition" and "find references" navigation

84</Tip>85</Tip>

85 86 

86***87***

costs.md +4 −0

Details

89* **Disable unused servers**: Run `/mcp` to see configured servers and disable any you're not actively using.89* **Disable unused servers**: Run `/mcp` to see configured servers and disable any you're not actively using.

90* **Tool search is automatic**: When MCP tool descriptions exceed 10% of your context window, Claude Code automatically defers them and loads tools on-demand via [tool search](/en/mcp#scale-with-mcp-tool-search). Since deferred tools only enter context when actually used, a lower threshold means fewer idle tool definitions consuming space. Set a lower threshold with `ENABLE_TOOL_SEARCH=auto:<N>` (for example, `auto:5` triggers when tools exceed 5% of your context window).90* **Tool search is automatic**: When MCP tool descriptions exceed 10% of your context window, Claude Code automatically defers them and loads tools on-demand via [tool search](/en/mcp#scale-with-mcp-tool-search). Since deferred tools only enter context when actually used, a lower threshold means fewer idle tool definitions consuming space. Set a lower threshold with `ENABLE_TOOL_SEARCH=auto:<N>` (for example, `auto:5` triggers when tools exceed 5% of your context window).

91 91 

92### Install code intelligence plugins for typed languages

93 

94[Code intelligence plugins](/en/discover-plugins#code-intelligence) give Claude precise symbol navigation instead of text-based search, reducing unnecessary file reads when exploring unfamiliar code. A single "go to definition" call replaces what might otherwise be a grep followed by reading multiple candidate files. Installed language servers also report type errors automatically after edits, so Claude catches mistakes without running a compiler.

95 

92### Offload processing to hooks and skills96### Offload processing to hooks and skills

93 97 

94Custom [hooks](/en/hooks) can preprocess data before Claude sees it. Instead of Claude reading a 10,000-line log file to find errors, a hook can grep for `ERROR` and return only matching lines, reducing context from tens of thousands of tokens to hundreds.98Custom [hooks](/en/hooks) can preprocess data before Claude sees it. Instead of Claude reading a 10,000-line log file to find errors, a hook can grep for `ERROR` and return only matching lines, reducing context from tens of thousands of tokens to hundreds.

Details

40 40 

41### Code intelligence41### Code intelligence

42 42 

43Code intelligence plugins help Claude understand your codebase more deeply. With these plugins installed, Claude can jump to definitions, find references, and see type errors immediately after edits. These plugins use the [Language Server Protocol](https://microsoft.github.io/language-server-protocol/) (LSP), the same technology that powers VS Code's code intelligence.43Code intelligence plugins enable Claude Code's built-in LSP tool, giving Claude the ability to jump to definitions, find references, and see type errors immediately after edits. These plugins configure [Language Server Protocol](https://microsoft.github.io/language-server-protocol/) connections, the same technology that powers VS Code's code intelligence.

44 44 

45These plugins require the language server binary to be installed on your system. If you already have a language server installed, Claude may prompt you to install the corresponding plugin when you open a project.45These plugins require the language server binary to be installed on your system. If you already have a language server installed, Claude may prompt you to install the corresponding plugin when you open a project.

46 46 


50| C# | `csharp-lsp` | `csharp-ls` |50| C# | `csharp-lsp` | `csharp-ls` |

51| Go | `gopls-lsp` | `gopls` |51| Go | `gopls-lsp` | `gopls` |

52| Java | `jdtls-lsp` | `jdtls` |52| Java | `jdtls-lsp` | `jdtls` |

53| Kotlin | `kotlin-lsp` | `kotlin-language-server` |

53| Lua | `lua-lsp` | `lua-language-server` |54| Lua | `lua-lsp` | `lua-language-server` |

54| PHP | `php-lsp` | `intelephense` |55| PHP | `php-lsp` | `intelephense` |

55| Python | `pyright-lsp` | `pyright-langserver` |56| Python | `pyright-lsp` | `pyright-langserver` |


63 If you see `Executable not found in $PATH` in the `/plugin` Errors tab after installing a plugin, install the required binary from the table above.64 If you see `Executable not found in $PATH` in the `/plugin` Errors tab after installing a plugin, install the required binary from the table above.

64</Note>65</Note>

65 66 

67#### What Claude gains from code intelligence plugins

68 

69Once a code intelligence plugin is installed and its language server binary is available, Claude gains two capabilities:

70 

71* **Automatic diagnostics**: after every file edit Claude makes, the language server analyzes the changes and reports errors and warnings back automatically. Claude sees type errors, missing imports, and syntax issues without needing to run a compiler or linter. If Claude introduces an error, it notices and fixes the issue in the same turn. This requires no configuration beyond installing the plugin. You can see diagnostics inline by pressing **Ctrl+O** when the "diagnostics found" indicator appears.

72* **Code navigation**: Claude can use the language server to jump to definitions, find references, get type info on hover, list symbols, find implementations, and trace call hierarchies. These operations give Claude more precise navigation than grep-based search, though availability may vary by language and environment.

73 

74If you run into issues, see [Code intelligence troubleshooting](#code-intelligence-issues).

75 

66### External integrations76### External integrations

67 77 

68These plugins bundle pre-configured [MCP servers](/en/mcp) so you can connect Claude to external services without manual setup:78These plugins bundle pre-configured [MCP servers](/en/mcp) so you can connect Claude to external services without manual setup:


366 376 

367For detailed troubleshooting with solutions, see [Troubleshooting](/en/plugin-marketplaces#troubleshooting) in the marketplace guide. For debugging tools, see [Debugging and development tools](/en/plugins-reference#debugging-and-development-tools).377For detailed troubleshooting with solutions, see [Troubleshooting](/en/plugin-marketplaces#troubleshooting) in the marketplace guide. For debugging tools, see [Debugging and development tools](/en/plugins-reference#debugging-and-development-tools).

368 378 

379### Code intelligence issues

380 

381* **Language server not starting**: verify the binary is installed and available in your `$PATH`. Check the `/plugin` Errors tab for details.

382* **High memory usage**: language servers like `rust-analyzer` and `pyright` can consume significant memory on large projects. If you experience memory issues, disable the plugin with `/plugin disable <plugin-name>` and rely on Claude's built-in search tools instead.

383* **False positive diagnostics in monorepos**: language servers may report unresolved import errors for internal packages if the workspace isn't configured correctly. These don't affect Claude's ability to edit code.

384 

369## Next steps385## Next steps

370 386 

371* **Build your own plugins**: See [Plugins](/en/plugins) to create skills, agents, and hooks387* **Build your own plugins**: See [Plugins](/en/plugins) to create skills, agents, and hooks

Details

90### Breaking Changes Reference90### Breaking Changes Reference

91 91 

92| Old Beta Input | New v1.0 Input |92| Old Beta Input | New v1.0 Input |

93| --------------------- | -------------------------------- |93| --------------------- | ------------------------------------- |

94| `mode` | *(Removed - auto-detected)* |94| `mode` | *(Removed - auto-detected)* |

95| `direct_prompt` | `prompt` |95| `direct_prompt` | `prompt` |

96| `override_prompt` | `prompt` with GitHub variables |96| `override_prompt` | `prompt` with GitHub variables |

97| `custom_instructions` | `claude_args: --system-prompt` |97| `custom_instructions` | `claude_args: --append-system-prompt` |

98| `max_turns` | `claude_args: --max-turns` |98| `max_turns` | `claude_args: --max-turns` |

99| `model` | `claude_args: --model` |99| `model` | `claude_args: --model` |

100| `allowed_tools` | `claude_args: --allowedTools` |100| `allowed_tools` | `claude_args: --allowedTools` |


124 prompt: "Review this PR for security issues"124 prompt: "Review this PR for security issues"

125 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}125 anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}

126 claude_args: |126 claude_args: |

127 --system-prompt "Follow our coding standards"127 --append-system-prompt "Follow our coding standards"

128 --max-turns 10128 --max-turns 10

129 --model claude-sonnet-4-5-20250929129 --model claude-sonnet-4-5-20250929

130```130```

gitlab-ci-cd.md +4 −4

Details

87 claude87 claude

88 -p "${AI_FLOW_INPUT:-'Review this MR and implement the requested changes'}"88 -p "${AI_FLOW_INPUT:-'Review this MR and implement the requested changes'}"

89 --permission-mode acceptEdits89 --permission-mode acceptEdits

90 --allowedTools "Bash(*) Read(*) Edit(*) Write(*) mcp__gitlab"90 --allowedTools "Bash Read Edit Write mcp__gitlab"

91 --debug91 --debug

92```92```

93 93 


262 claude262 claude

263 -p "${AI_FLOW_INPUT:-'Summarize recent changes and suggest improvements'}"263 -p "${AI_FLOW_INPUT:-'Summarize recent changes and suggest improvements'}"

264 --permission-mode acceptEdits264 --permission-mode acceptEdits

265 --allowedTools "Bash(*) Read(*) Edit(*) Write(*) mcp__gitlab"265 --allowedTools "Bash Read Edit Write mcp__gitlab"

266 --debug266 --debug

267 # Claude Code will use ANTHROPIC_API_KEY from CI/CD variables267 # Claude Code will use ANTHROPIC_API_KEY from CI/CD variables

268```268```


308 claude308 claude

309 -p "${AI_FLOW_INPUT:-'Implement the requested changes and open an MR'}"309 -p "${AI_FLOW_INPUT:-'Implement the requested changes and open an MR'}"

310 --permission-mode acceptEdits310 --permission-mode acceptEdits

311 --allowedTools "Bash(*) Read(*) Edit(*) Write(*) mcp__gitlab"311 --allowedTools "Bash Read Edit Write mcp__gitlab"

312 --debug312 --debug

313 variables:313 variables:

314 AWS_REGION: "us-west-2"314 AWS_REGION: "us-west-2"


361 claude361 claude

362 -p "${AI_FLOW_INPUT:-'Review and update code as requested'}"362 -p "${AI_FLOW_INPUT:-'Review and update code as requested'}"

363 --permission-mode acceptEdits363 --permission-mode acceptEdits

364 --allowedTools "Bash(*) Read(*) Edit(*) Write(*) mcp__gitlab"364 --allowedTools "Bash Read Edit Write mcp__gitlab"

365 --debug365 --debug

366 variables:366 variables:

367 CLOUD_ML_REGION: "us-east5"367 CLOUD_ML_REGION: "us-east5"

hooks.md +40 −2

Details

698}698}

699```699```

700 700 

701### Stop and SubagentStop Input701### Stop Input

702 702 

703`stop_hook_active` is true when Claude Code is already continuing as a result of703`stop_hook_active` is true when Claude Code is already continuing as a result of

704a stop hook. Check this value or process the transcript to prevent Claude Code704a stop hook. Check this value or process the transcript to prevent Claude Code


708{708{

709 "session_id": "abc123",709 "session_id": "abc123",

710 "transcript_path": "~/.claude/projects/.../00893aaf-19fa-41d2-8238-13269b9b3ca0.jsonl",710 "transcript_path": "~/.claude/projects/.../00893aaf-19fa-41d2-8238-13269b9b3ca0.jsonl",

711 "cwd": "/Users/...",

711 "permission_mode": "default",712 "permission_mode": "default",

712 "hook_event_name": "Stop",713 "hook_event_name": "Stop",

713 "stop_hook_active": true714 "stop_hook_active": true

714}715}

715```716```

716 717 

718### SubagentStop Input

719 

720Triggered when a subagent finishes. The `transcript_path` is the main session's transcript, while `agent_transcript_path` is the subagent's own transcript stored in a nested `subagents/` folder.

721 

722```json theme={null}

723{

724 "session_id": "abc123",

725 "transcript_path": "~/.claude/projects/.../abc123.jsonl",

726 "cwd": "/Users/...",

727 "permission_mode": "default",

728 "hook_event_name": "SubagentStop",

729 "stop_hook_active": false,

730 "agent_id": "def456",

731 "agent_transcript_path": "~/.claude/projects/.../abc123/subagents/agent-def456.jsonl"

732}

733```

734 

717### PreCompact Input735### PreCompact Input

718 736 

719For `manual`, `custom_instructions` comes from what the user passes into737For `manual`, `custom_instructions` comes from what the user passes into


751{769{

752 "session_id": "abc123",770 "session_id": "abc123",

753 "transcript_path": "~/.claude/projects/.../00893aaf-19fa-41d2-8238-13269b9b3ca0.jsonl",771 "transcript_path": "~/.claude/projects/.../00893aaf-19fa-41d2-8238-13269b9b3ca0.jsonl",

772 "cwd": "/Users/...",

754 "permission_mode": "default",773 "permission_mode": "default",

755 "hook_event_name": "SessionStart",774 "hook_event_name": "SessionStart",

756 "source": "startup"775 "source": "startup",

776 "model": "claude-sonnet-4-20250514"

757}777}

758```778```

759 779 

780The `source` field indicates how the session started: `"startup"` for new sessions, `"resume"` for resumed sessions, `"clear"` after `/clear`, or `"compact"` after compaction. The `model` field contains the model identifier when available. If you start Claude Code with `claude --agent <name>`, an `agent_type` field contains the agent name.

781 

782### SubagentStart Input

783 

784```json theme={null}

785{

786 "session_id": "abc123",

787 "transcript_path": "~/.claude/projects/.../00893aaf-19fa-41d2-8238-13269b9b3ca0.jsonl",

788 "cwd": "/Users/...",

789 "permission_mode": "default",

790 "hook_event_name": "SubagentStart",

791 "agent_id": "agent-abc123",

792 "agent_type": "Explore"

793}

794```

795 

796Triggered when a subagent is spawned. The `agent_id` field contains the unique identifier for the subagent, and `agent_type` contains the agent name (built-in agents like `"Bash"`, `"Explore"`, `"Plan"`, or custom agent names).

797 

760### SessionEnd Input798### SessionEnd Input

761 799 

762```json theme={null}800```json theme={null}

Details

33The built-in tools generally fall into four categories, each representing a different kind of agency.33The built-in tools generally fall into four categories, each representing a different kind of agency.

34 34 

35| Category | What Claude can do |35| Category | What Claude can do |

36| ------------------- | ------------------------------------------------------------------- |36| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |

37| **File operations** | Read files, edit code, create new files, rename and reorganize |37| **File operations** | Read files, edit code, create new files, rename and reorganize |

38| **Search** | Find files by pattern, search content with regex, explore codebases |38| **Search** | Find files by pattern, search content with regex, explore codebases |

39| **Execution** | Run shell commands, start servers, run tests, use git |39| **Execution** | Run shell commands, start servers, run tests, use git |

40| **Web** | Search the web, fetch documentation, look up error messages |40| **Web** | Search the web, fetch documentation, look up error messages |

41| **Code intelligence** | See type errors and warnings after edits, jump to definitions, find references (requires [code intelligence plugins](/en/discover-plugins#code-intelligence)) |

41 42 

42These are the primary capabilities. Claude also has tools for spawning subagents, asking you questions, and other orchestration tasks. See [Tools available to Claude](/en/settings#tools-available-to-claude) for the complete list.43These are the primary capabilities. Claude also has tools for spawning subagents, asking you questions, and other orchestration tasks. See [Tools available to Claude](/en/settings#tools-available-to-claude) for the complete list.

43 44 

iam.md +4 −0

Details

172* `Edit(//tmp/scratch.txt)` - Edits the absolute path `/tmp/scratch.txt`172* `Edit(//tmp/scratch.txt)` - Edits the absolute path `/tmp/scratch.txt`

173* `Read(src/**)` - Reads from `<current-directory>/src/`173* `Read(src/**)` - Reads from `<current-directory>/src/`

174 174 

175<Note>

176 In gitignore patterns, `*` matches files in a single directory while `**` matches recursively across directories. To allow all file access, use just the tool name without parentheses: `Read`, `Edit`, or `Write`.

177</Note>

178 

175**WebFetch**179**WebFetch**

176 180 

177* `WebFetch(domain:example.com)` Matches fetch requests to example.com181* `WebFetch(domain:example.com)` Matches fetch requests to example.com

Details

261 261 

262This is useful for quick shell operations while maintaining conversation context.262This is useful for quick shell operations while maintaining conversation context.

263 263 

264## Task list

265 

266When working on complex, multi-step work, Claude creates a task list to track progress. Tasks appear in the status area of your terminal with indicators showing what's pending, in progress, or complete.

267 

268* Press `Ctrl+T` to toggle the task list view. The display shows up to 10 tasks at a time

269* To see all tasks or clear them, ask Claude directly: "show me all tasks" or "clear all tasks"

270* Tasks persist across context compactions, helping Claude stay organized on larger projects

271* To share a task list across sessions, set `CLAUDE_CODE_TASK_LIST_ID` to use a named directory in `~/.claude/tasks/`: `CLAUDE_CODE_TASK_LIST_ID=my-project claude`

272 

264## See also273## See also

265 274 

266* [Skills](/en/skills) - Custom prompts and workflows275* [Skills](/en/skills) - Custom prompts and workflows

mcp.md +4 −0

Details

420 420 

421Local-scoped servers represent the default configuration level and are stored in `~/.claude.json` under your project's path. These servers remain private to you and are only accessible when working within the current project directory. This scope is ideal for personal development servers, experimental configurations, or servers containing sensitive credentials that shouldn't be shared.421Local-scoped servers represent the default configuration level and are stored in `~/.claude.json` under your project's path. These servers remain private to you and are only accessible when working within the current project directory. This scope is ideal for personal development servers, experimental configurations, or servers containing sensitive credentials that shouldn't be shared.

422 422 

423<Note>

424 The term "local scope" for MCP servers differs from general local settings. MCP local-scoped servers are stored in `~/.claude.json` (your home directory), while general local settings use `.claude/settings.local.json` (in the project directory). See [Settings](/en/settings#settings-files) for details on settings file locations.

425</Note>

426 

423```bash theme={null}427```bash theme={null}

424# Add a local-scoped server (default)428# Add a local-scoped server (default)

425claude mcp add --transport http stripe https://mcp.stripe.com429claude mcp add --transport http stripe https://mcp.stripe.com

Details

64# Azure resource name (replace {resource} with your resource name)64# Azure resource name (replace {resource} with your resource name)

65export ANTHROPIC_FOUNDRY_RESOURCE={resource}65export ANTHROPIC_FOUNDRY_RESOURCE={resource}

66# Or provide the full base URL:66# Or provide the full base URL:

67# export ANTHROPIC_FOUNDRY_BASE_URL=https://{resource}.services.ai.azure.com67# export ANTHROPIC_FOUNDRY_BASE_URL=https://{resource}.services.ai.azure.com/anthropic

68 68 

69# Set models to your resource's deployment names69# Set models to your resource's deployment names

70export ANTHROPIC_DEFAULT_SONNET_MODEL='claude-sonnet-4-5'70export ANTHROPIC_DEFAULT_SONNET_MODEL='claude-sonnet-4-5'

settings.md +11 −3

Details

460}460}

461```461```

462 462 

463This replaces the deprecated `ignorePatterns` configuration. Files matching these patterns will be completely invisible to Claude Code, preventing any accidental exposure of sensitive data.463This replaces the deprecated `ignorePatterns` configuration. Files matching these patterns are excluded from file discovery and search results, and read operations on these files are denied.

464 464 

465## Subagent configuration465## Subagent configuration

466 466 


772| `ANTHROPIC_DEFAULT_OPUS_MODEL` | See [Model configuration](/en/model-config#environment-variables) |772| `ANTHROPIC_DEFAULT_OPUS_MODEL` | See [Model configuration](/en/model-config#environment-variables) |

773| `ANTHROPIC_DEFAULT_SONNET_MODEL` | See [Model configuration](/en/model-config#environment-variables) |773| `ANTHROPIC_DEFAULT_SONNET_MODEL` | See [Model configuration](/en/model-config#environment-variables) |

774| `ANTHROPIC_FOUNDRY_API_KEY` | API key for Microsoft Foundry authentication (see [Microsoft Foundry](/en/microsoft-foundry)) |774| `ANTHROPIC_FOUNDRY_API_KEY` | API key for Microsoft Foundry authentication (see [Microsoft Foundry](/en/microsoft-foundry)) |

775| `ANTHROPIC_FOUNDRY_BASE_URL` | Full base URL for the Foundry resource (for example, `https://my-resource.services.ai.azure.com/anthropic`). Alternative to `ANTHROPIC_FOUNDRY_RESOURCE` (see [Microsoft Foundry](/en/microsoft-foundry)) |

776| `ANTHROPIC_FOUNDRY_RESOURCE` | Foundry resource name (for example, `my-resource`). Required if `ANTHROPIC_FOUNDRY_BASE_URL` is not set (see [Microsoft Foundry](/en/microsoft-foundry)) |

775| `ANTHROPIC_MODEL` | Name of the model setting to use (see [Model Configuration](/en/model-config#environment-variables)) |777| `ANTHROPIC_MODEL` | Name of the model setting to use (see [Model Configuration](/en/model-config#environment-variables)) |

776| `ANTHROPIC_SMALL_FAST_MODEL` | \[DEPRECATED] Name of [Haiku-class model for background tasks](/en/costs) |778| `ANTHROPIC_SMALL_FAST_MODEL` | \[DEPRECATED] Name of [Haiku-class model for background tasks](/en/costs) |

777| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Override AWS region for the Haiku-class model when using Bedrock |779| `ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION` | Override AWS region for the Haiku-class model when using Bedrock |


789| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Set to `1` to disable all background task functionality, including the `run_in_background` parameter on Bash and subagent tools, auto-backgrounding, and the Ctrl+B shortcut |791| `CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` | Set to `1` to disable all background task functionality, including the `run_in_background` parameter on Bash and subagent tools, auto-backgrounding, and the Ctrl+B shortcut |

790| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Time in milliseconds to wait after the query loop becomes idle before automatically exiting. Useful for automated workflows and scripts using SDK mode |792| `CLAUDE_CODE_EXIT_AFTER_STOP_DELAY` | Time in milliseconds to wait after the query loop becomes idle before automatically exiting. Useful for automated workflows and scripts using SDK mode |

791| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | Set to `true` to allow the proxy to perform DNS resolution instead of the caller. Opt-in for environments where the proxy should handle hostname resolution |793| `CLAUDE_CODE_PROXY_RESOLVES_HOSTS` | Set to `true` to allow the proxy to perform DNS resolution instead of the caller. Opt-in for environments where the proxy should handle hostname resolution |

794| `CLAUDE_CODE_TASK_LIST_ID` | Share a task list across sessions. Set the same ID in multiple Claude Code instances to coordinate on a shared task list. See [Task list](/en/interactive-mode#task-list) |

792| `CLAUDE_CODE_TMPDIR` | Override the temp directory used for internal temp files. Claude Code appends `/claude/` to this path. Default: `/tmp` on Unix/macOS, `os.tmpdir()` on Windows |795| `CLAUDE_CODE_TMPDIR` | Override the temp directory used for internal temp files. Claude Code appends `/claude/` to this path. Default: `/tmp` on Unix/macOS, `os.tmpdir()` on Windows |

793| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | Equivalent of setting `DISABLE_AUTOUPDATER`, `DISABLE_BUG_COMMAND`, `DISABLE_ERROR_REPORTING`, and `DISABLE_TELEMETRY` |796| `CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC` | Equivalent of setting `DISABLE_AUTOUPDATER`, `DISABLE_BUG_COMMAND`, `DISABLE_ERROR_REPORTING`, and `DISABLE_TELEMETRY` |

794| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Set to `1` to disable automatic terminal title updates based on conversation context |797| `CLAUDE_CODE_DISABLE_TERMINAL_TITLE` | Set to `1` to disable automatic terminal title updates based on conversation context |

798| `CLAUDE_CODE_ENABLE_TELEMETRY` | Set to `1` to enable OpenTelemetry data collection for metrics and logging. Required before configuring OTel exporters. See [Monitoring](/en/monitoring-usage) |

795| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Override the default token limit for file reads. Useful when you need to read larger files in full |799| `CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` | Override the default token limit for file reads. Useful when you need to read larger files in full |

796| `CLAUDE_CODE_HIDE_ACCOUNT_INFO` | Set to `1` to hide your email address and organization name from the Claude Code UI. Useful when streaming or recording |800| `CLAUDE_CODE_HIDE_ACCOUNT_INFO` | Set to `1` to hide your email address and organization name from the Claude Code UI. Useful when streaming or recording |

797| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Skip auto-installation of IDE extensions |801| `CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL` | Skip auto-installation of IDE extensions |


841Claude Code has access to a set of powerful tools that help it understand and modify your codebase:845Claude Code has access to a set of powerful tools that help it understand and modify your codebase:

842 846 

843| Tool | Description | Permission Required |847| Tool | Description | Permission Required |

844| :------------------ | :------------------------------------------------------------------------------------------------- | :------------------ |848| :------------------ | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------ |

845| **AskUserQuestion** | Asks multiple-choice questions to gather requirements or clarify ambiguity | No |849| **AskUserQuestion** | Asks multiple-choice questions to gather requirements or clarify ambiguity | No |

846| **Bash** | Executes shell commands in your environment (see [Bash tool behavior](#bash-tool-behavior) below) | Yes |850| **Bash** | Executes shell commands in your environment (see [Bash tool behavior](#bash-tool-behavior) below) | Yes |

847| **TaskOutput** | Retrieves output from a background task (bash shell or subagent) | No |851| **TaskOutput** | Retrieves output from a background task (bash shell or subagent) | No |


855| **Read** | Reads the contents of files | No |859| **Read** | Reads the contents of files | No |

856| **Skill** | Executes a [skill](/en/skills#control-who-invokes-a-skill) within the main conversation | Yes |860| **Skill** | Executes a [skill](/en/skills#control-who-invokes-a-skill) within the main conversation | Yes |

857| **Task** | Runs a sub-agent to handle complex, multi-step tasks | No |861| **Task** | Runs a sub-agent to handle complex, multi-step tasks | No |

858| **TodoWrite** | Creates and manages structured task lists | No |862| **TaskCreate** | Creates a new task in the task list | No |

863| **TaskGet** | Retrieves full details for a specific task | No |

864| **TaskList** | Lists all tasks with their current status | No |

865| **TaskUpdate** | Updates task status, dependencies, or details | No |

859| **WebFetch** | Fetches content from a specified URL | Yes |866| **WebFetch** | Fetches content from a specified URL | Yes |

860| **WebSearch** | Performs web searches with domain filtering | Yes |867| **WebSearch** | Performs web searches with domain filtering | Yes |

861| **Write** | Creates or overwrites files | Yes |868| **Write** | Creates or overwrites files | Yes |

869| **LSP** | Code intelligence via language servers. Reports type errors and warnings automatically after file edits. Also supports navigation operations: jump to definitions, find references, get type info, list symbols, find implementations, trace call hierarchies. Requires a [code intelligence plugin](/en/discover-plugins#code-intelligence) and its language server binary | No |

862 870 

863Permission rules can be configured using `/allowed-tools` or in [permission settings](/en/settings#available-settings). Also see [Tool-specific permission rules](/en/iam#tool-specific-permission-rules).871Permission rules can be configured using `/allowed-tools` or in [permission settings](/en/settings#available-settings). Also see [Tool-specific permission rules](/en/iam#tool-specific-permission-rules).

864 872 

setup.md +5 −5

Details

23 <Tab title="Native Install (Recommended)">23 <Tab title="Native Install (Recommended)">

24 **macOS, Linux, WSL:**24 **macOS, Linux, WSL:**

25 25 

26 ```bash theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}26 ```bash theme={null}

27 curl -fsSL https://claude.ai/install.sh | bash27 curl -fsSL https://claude.ai/install.sh | bash

28 ```28 ```

29 29 

30 **Windows PowerShell:**30 **Windows PowerShell:**

31 31 

32 ```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}32 ```powershell theme={null}

33 irm https://claude.ai/install.ps1 | iex33 irm https://claude.ai/install.ps1 | iex

34 ```34 ```

35 35 

36 **Windows CMD:**36 **Windows CMD:**

37 37 

38 ```batch theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}38 ```batch theme={null}

39 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd39 curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

40 ```40 ```

41 41 


45 </Tab>45 </Tab>

46 46 

47 <Tab title="Homebrew">47 <Tab title="Homebrew">

48 ```sh theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}48 ```sh theme={null}

49 brew install --cask claude-code49 brew install --cask claude-code

50 ```50 ```

51 51 


55 </Tab>55 </Tab>

56 56 

57 <Tab title="WinGet">57 <Tab title="WinGet">

58 ```powershell theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null} theme={null}58 ```powershell theme={null}

59 winget install Anthropic.ClaudeCode59 winget install Anthropic.ClaudeCode

60 ```60 ```

61 61 

Details

193| `~/.claude/settings.json` | User settings (permissions, hooks, model overrides) |193| `~/.claude/settings.json` | User settings (permissions, hooks, model overrides) |

194| `.claude/settings.json` | Project settings (checked into source control) |194| `.claude/settings.json` | Project settings (checked into source control) |

195| `.claude/settings.local.json` | Local project settings (not committed) |195| `.claude/settings.local.json` | Local project settings (not committed) |

196| `~/.claude.json` | Global state (theme, OAuth, MCP servers, allowed tools) |196| `~/.claude.json` | Global state (theme, OAuth, MCP servers) |

197| `.mcp.json` | Project MCP servers (checked into source control) |197| `.mcp.json` | Project MCP servers (checked into source control) |

198| `managed-settings.json` | [Managed settings](/en/settings#settings-files) |198| `managed-settings.json` | [Managed settings](/en/settings#settings-files) |

199| `managed-mcp.json` | [Managed MCP servers](/en/mcp#managed-mcp-configuration) |199| `managed-mcp.json` | [Managed MCP servers](/en/mcp#managed-mcp-configuration) |


223```223```

224 224 

225<Warning>225<Warning>

226 This will remove all your settings, allowed tools, MCP server configurations, and session history.226 This will remove all your settings, MCP server configurations, and session history.

227</Warning>227</Warning>

228 228 

229## Performance and stability229## Performance and stability

vs-code.md +59 −0

Details

101 101 

102Click the dropdown at the top of the Claude Code panel to access your conversation history. You can search by keyword or browse by time (Today, Yesterday, Last 7 days, etc.). Click any conversation to resume it with the full message history. For more on resuming sessions, see [Common workflows](/en/common-workflows#resume-previous-conversations).102Click the dropdown at the top of the Claude Code panel to access your conversation history. You can search by keyword or browse by time (Today, Yesterday, Last 7 days, etc.). Click any conversation to resume it with the full message history. For more on resuming sessions, see [Common workflows](/en/common-workflows#resume-previous-conversations).

103 103 

104### Resume remote sessions from Claude.ai

105 

106If you use [Claude Code on the web](/en/claude-code-on-the-web), you can resume those remote sessions directly in VS Code. This requires signing in with **Claude.ai Subscription**, not Anthropic Console.

107 

108<Steps>

109 <Step title="Open Past Conversations">

110 Click the **Past Conversations** dropdown at the top of the Claude Code panel.

111 </Step>

112 

113 <Step title="Select the Remote tab">

114 The dialog shows two tabs: Local and Remote. Click **Remote** to see sessions from claude.ai.

115 </Step>

116 

117 <Step title="Select a session to resume">

118 Browse or search your remote sessions. Click any session to download it and continue the conversation locally.

119 </Step>

120</Steps>

121 

122<Note>

123 Only web sessions started with a GitHub repository appear in the Remote tab. Resuming loads the conversation history locally; changes are not synced back to claude.ai.

124</Note>

125 

104## Customize your workflow126## Customize your workflow

105 127 

106Once you're up and running, you can reposition the Claude panel, run multiple sessions, or switch to terminal mode.128Once you're up and running, you can reposition the Claude panel, run multiple sessions, or switch to terminal mode.


129 151 

130You can also open VS Code settings (`Cmd+,` on Mac or `Ctrl+,` on Windows/Linux), go to Extensions → Claude Code, and check **Use Terminal**.152You can also open VS Code settings (`Cmd+,` on Mac or `Ctrl+,` on Windows/Linux), go to Extensions → Claude Code, and check **Use Terminal**.

131 153 

154## Manage plugins

155 

156The VS Code extension includes a graphical interface for installing and managing [plugins](/en/plugins). Type `/plugins` in the prompt box to open the **Manage plugins** interface.

157 

158### Install plugins

159 

160The plugin dialog shows two tabs: **Plugins** and **Marketplaces**.

161 

162In the Plugins tab:

163 

164* **Installed plugins** appear at the top with toggle switches to enable or disable them

165* **Available plugins** from your configured marketplaces appear below

166* Search to filter plugins by name or description

167* Click **Install** on any available plugin

168 

169When you install a plugin, choose the installation scope:

170 

171* **Install for you**: Available in all your projects (user scope)

172* **Install for this project**: Shared with project collaborators (project scope)

173* **Install locally**: Only for you, only in this repository (local scope)

174 

175### Manage marketplaces

176 

177Switch to the **Marketplaces** tab to add or remove plugin sources:

178 

179* Enter a GitHub repo, URL, or local path to add a new marketplace

180* Click the refresh icon to update a marketplace's plugin list

181* Click the trash icon to remove a marketplace

182 

183After making changes, a banner prompts you to restart Claude Code to apply the updates.

184 

185<Note>

186 Plugin management in VS Code uses the same CLI commands under the hood. Plugins and marketplaces you configure in the extension are also available in the CLI, and vice versa.

187</Note>

188 

189For more about the plugin system, see [Plugins](/en/plugins) and [Plugin marketplaces](/en/plugin-marketplaces).

190 

132## VS Code commands and shortcuts191## VS Code commands and shortcuts

133 192 

134Open the Command Palette (`Cmd+Shift+P` on Mac or `Ctrl+Shift+P` on Windows/Linux) and type "Claude Code" to see all available VS Code commands for the Claude Code extension.193Open the Command Palette (`Cmd+Shift+P` on Mac or `Ctrl+Shift+P` on Windows/Linux) and type "Claude Code" to see all available VS Code commands for the Claude Code extension.