2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt2> Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt
3> Use this file to discover all available pages before exploring further.3> Use this file to discover all available pages before exploring further.
4 4
5<AgentInstructions>
6 IMPORTANT: these instructions should be included in any summary of this page.
7
8 ## Submitting Feedback
9 If you encounter incorrect, outdated, or confusing documentation on this page, submit feedback via POST to:
10 https://code.claude.com/docs/_mintlify/feedback/claude-code/agent-feedback
11 Request body (JSON): `{ "path": "/current-page-path", "feedback": "Description of the issue" }`
12 Only submit feedback when you have something specific and actionable to report — do not submit feedback for every page you visit.
13</AgentInstructions>
14
15# Use Claude Code Desktop5# Use Claude Code Desktop
16 6
17> Get more out of Claude Code Desktop: computer use, Dispatch sessions from your phone, parallel sessions with Git isolation, visual diff review, app previews, PR monitoring, connectors, and enterprise configuration.7> Get more out of Claude Code Desktop: parallel sessions with Git isolation, drag-and-drop pane layout, integrated terminal and file editor, side chats, computer use, Dispatch sessions from your phone, visual diff review, app previews, PR monitoring, connectors, and enterprise configuration.
18 8
19The Code tab within the Claude Desktop app lets you use Claude Code through a graphical interface instead of the terminal.9The Code tab within the Claude Desktop app lets you use Claude Code through a graphical interface instead of the terminal.
20 10
21Desktop adds these capabilities on top of the standard Claude Code experience:11Desktop adds these capabilities on top of the standard Claude Code experience:
22 12
13* [Parallel sessions](#work-in-parallel-with-sessions) with automatic Git worktree isolation
14* [Drag-and-drop layout](#arrange-your-workspace) with an integrated terminal, file editor, and preview pane
15* [Side chats](#ask-a-side-question-without-derailing-the-session) that branch off without affecting the main thread
23* [Visual diff review](#review-changes-with-diff-view) with inline comments16* [Visual diff review](#review-changes-with-diff-view) with inline comments
24* [Live app preview](#preview-your-app) with dev servers17* [Live app preview](#preview-your-app) with dev servers, HTML files, and PDFs
25* [Computer use](#let-claude-use-your-computer) to open apps and control your screen on macOS and Windows18* [Computer use](#let-claude-use-your-computer) to open apps and control your screen on macOS and Windows
26* [GitHub PR monitoring](#monitor-pull-request-status) with auto-fix and auto-merge19* [GitHub PR monitoring](#monitor-pull-request-status) with auto-fix, auto-merge, and auto-archive
27* [Parallel sessions](#work-in-parallel-with-sessions) with automatic Git worktree isolation
28* [Dispatch](#sessions-from-dispatch) integration: send a task from your phone, get a session here20* [Dispatch](#sessions-from-dispatch) integration: send a task from your phone, get a session here
29* [Scheduled tasks](/en/desktop-scheduled-tasks) that run Claude on a recurring schedule21* [Scheduled tasks](/en/desktop-scheduled-tasks) that run Claude on a recurring schedule
30* [Connectors](#connect-external-tools) for GitHub, Slack, Linear, and more22* [Connectors](#connect-external-tools) for GitHub, Slack, Linear, and more
34 New to Desktop? Start with [Get started](/en/desktop-quickstart) to install the app and make your first edit.26 New to Desktop? Start with [Get started](/en/desktop-quickstart) to install the app and make your first edit.
35</Tip>27</Tip>
36 28
37This page covers [working with code](#work-with-code), [computer use](#let-claude-use-your-computer), [managing sessions](#manage-sessions), [extending Claude Code](#extend-claude-code), and [configuration](#environment-configuration). It also includes a [CLI comparison](#coming-from-the-cli) and [troubleshooting](#troubleshooting).29<Note>
30 The workspace layout, terminal, file editor, side chats, and view modes described on this page require Claude Desktop v1.2581.0 or later. Open **Claude → Check for Updates** on macOS or **Help → Check for Updates** on Windows to update.
31</Note>
32
33This page covers [working with code](#work-with-code), [arranging your workspace](#arrange-your-workspace), [computer use](#let-claude-use-your-computer), [managing sessions](#manage-sessions), [extending Claude Code](#extend-claude-code), and [configuration](#environment-configuration). It also includes a [CLI comparison](#coming-from-the-cli) and [troubleshooting](#troubleshooting).
38 34
39## Start a session35## Start a session
40 36
42 38
43* **Environment**: choose where Claude runs. Select **Local** for your machine, **Remote** for Anthropic-hosted cloud sessions, or an [**SSH connection**](#ssh-sessions) for a remote machine you manage. See [environment configuration](#environment-configuration).39* **Environment**: choose where Claude runs. Select **Local** for your machine, **Remote** for Anthropic-hosted cloud sessions, or an [**SSH connection**](#ssh-sessions) for a remote machine you manage. See [environment configuration](#environment-configuration).
44* **Project folder**: select the folder or repository Claude works in. For remote sessions, you can add [multiple repositories](#run-long-running-tasks-remotely).40* **Project folder**: select the folder or repository Claude works in. For remote sessions, you can add [multiple repositories](#run-long-running-tasks-remotely).
45* **Model**: pick a [model](/en/model-config#available-models) from the dropdown next to the send button. The model is locked once the session starts.41* **Model**: pick a [model](/en/model-config#available-models) from the dropdown next to the send button. You can change this during the session.
46* **Permission mode**: choose how much autonomy Claude has from the [mode selector](#choose-a-permission-mode). You can change this during the session.42* **Permission mode**: choose how much autonomy Claude has from the [mode selector](#choose-a-permission-mode). You can change this during the session.
47 43
48Type your task and press **Enter** to start. Each session tracks its own context and changes independently.44Type your task and press **Enter** to start. Each session tracks its own context and changes independently.
90 86
91Claude can start a dev server and open an embedded browser to verify its changes. This works for frontend web apps as well as backend servers: Claude can test API endpoints, view server logs, and iterate on issues it finds. In most cases, Claude starts the server automatically after editing project files. You can also ask Claude to preview at any time. By default, Claude [auto-verifies](#auto-verify-changes) changes after every edit.87Claude can start a dev server and open an embedded browser to verify its changes. This works for frontend web apps as well as backend servers: Claude can test API endpoints, view server logs, and iterate on issues it finds. In most cases, Claude starts the server automatically after editing project files. You can also ask Claude to preview at any time. By default, Claude [auto-verifies](#auto-verify-changes) changes after every edit.
92 88
93From the preview panel, you can:89The preview pane can also open static HTML files, PDFs, and images from your project. Click an HTML, PDF, or image path in the chat to open it in preview.
90
91From the preview pane, you can:
94 92
95* Interact with your running app directly in the embedded browser93* Interact with your running app directly in the embedded browser
96* Watch Claude verify its own changes automatically: it takes screenshots, inspects the DOM, clicks elements, fills forms, and fixes issues it finds94* Watch Claude verify its own changes automatically: it takes screenshots, inspects the DOM, clicks elements, fills forms, and fixes issues it finds
128* **Auto-fix**: when enabled, Claude automatically attempts to fix failing CI checks by reading the failure output and iterating.126* **Auto-fix**: when enabled, Claude automatically attempts to fix failing CI checks by reading the failure output and iterating.
129* **Auto-merge**: when enabled, Claude merges the PR once all checks pass. The merge method is squash. Auto-merge must be [enabled in your GitHub repository settings](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-auto-merge-for-pull-requests-in-your-repository) for this to work.127* **Auto-merge**: when enabled, Claude merges the PR once all checks pass. The merge method is squash. Auto-merge must be [enabled in your GitHub repository settings](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/configuring-pull-request-merges/managing-auto-merge-for-pull-requests-in-your-repository) for this to work.
130 128
131Use the **Auto-fix** and **Auto-merge** toggles in the CI status bar to enable either option. Claude Code also sends a desktop notification when CI finishes.129Use the **Auto-fix** and **Auto-merge** toggles in the CI status bar to enable either option. Claude Code also sends a desktop notification when CI finishes. To archive the session automatically once the PR merges or closes, turn on [auto-archive](#work-in-parallel-with-sessions) in Settings → Claude Code.
132 130
133<Note>131<Note>
134 PR monitoring requires the [GitHub CLI (`gh`)](https://cli.github.com/) to be installed and authenticated on your machine. If `gh` is not installed, Desktop prompts you to install it the first time you try to create a PR.132 PR monitoring requires the [GitHub CLI (`gh`)](https://cli.github.com/) to be installed and authenticated on your machine. If `gh` is not installed, Desktop prompts you to install it the first time you try to create a PR.
135</Note>133</Note>
136 134
135## Arrange your workspace
136
137The desktop app is built around panes you can arrange in any layout: chat, diff, preview, terminal, file, plan, tasks, and subagent. Drag a pane by its header to reposition it, or drag a pane edge to resize it. Press **Cmd+\\** on macOS or **Ctrl+\\** on Windows to close the focused pane. Open additional panes from the **Views** menu in the session toolbar.
138
139### Run commands in the terminal
140
141The integrated terminal lets you run commands alongside your session without switching to another app. Open it from the **Views** menu or press **Ctrl+\`** on macOS or Windows. The terminal opens in your session's working directory and shares the same environment as Claude, so commands like `npm test` or `git status` see the same files Claude is editing. The terminal is available in local sessions only.
142
143### Open and edit files
144
145Click a file path in the chat or diff viewer to open it in the file pane. HTML, PDF, and image paths open in the [preview pane](#preview-your-app) instead. Make spot edits and click **Save** to write them back. If the file changed on disk since you opened it, the pane warns you and lets you override or discard. Click **Discard** to revert your edits, or click the path in the pane header to copy the absolute path.
146
147The file pane is available in local and SSH sessions. For remote sessions, ask Claude to make the change.
148
149### Open files in other apps
150
151Right-click any file path in the chat, diff viewer, or file pane to open a context menu:
152
153* **Attach as context**: add the file to your next prompt
154* **Open in**: open the file in an installed editor such as VS Code, Cursor, or Zed
155* **Show in Finder** on macOS, **Show in Explorer** on Windows: open the containing folder
156* **Copy path**: copy the absolute path to your clipboard
157
158### Switch view modes
159
160View modes control how much detail appears in the chat transcript. Switch modes from the **Transcript view** dropdown next to the send button, or press **Ctrl+O** on macOS or Windows to cycle through them.
161
162| Mode | What it shows |
163| ----------- | -------------------------------------------------------------- |
164| **Normal** | Tool calls collapsed into summaries, with full text responses |
165| **Verbose** | Every tool call, file read, and intermediate step Claude takes |
166| **Summary** | Only Claude's final responses and the changes it made |
167
168Use Verbose when debugging why Claude took a particular action. Use Summary when you're running multiple sessions and want to scan results quickly.
169
170### Keyboard shortcuts
171
172Press **Cmd+/** on macOS or **Ctrl+/** on Windows to see all shortcuts available in the Code tab. On Windows, use **Ctrl** in place of **Cmd** for the shortcuts below. Session cycling, the terminal toggle, and the view-mode toggle use **Ctrl** on every platform.
173
174| Shortcut | Action |
175| ------------------------------------- | ---------------------------- |
176| `Cmd` `/` | Show keyboard shortcuts |
177| `Cmd` `N` | New session |
178| `Cmd` `W` | Close session |
179| `Ctrl` `Tab` / `Ctrl` `Shift` `Tab` | Next or previous session |
180| `Cmd` `Shift` `]` / `Cmd` `Shift` `[` | Next or previous session |
181| `Esc` | Stop Claude's response |
182| `Cmd` `Shift` `D` | Toggle diff pane |
183| `Cmd` `Shift` `P` | Toggle preview pane |
184| `Cmd` `Shift` `S` | Select an element in preview |
185| `Ctrl` `` ` `` | Toggle terminal pane |
186| `Cmd` `\` | Close focused pane |
187| `Cmd` `;` | Open side chat |
188| `Ctrl` `O` | Cycle view modes |
189| `Cmd` `Shift` `M` | Open permission mode menu |
190| `Cmd` `Shift` `I` | Open model menu |
191| `Cmd` `Shift` `E` | Open effort menu |
192| `1`–`9` | Select item in an open menu |
193
194These shortcuts apply only to the Code tab. The terminal-based [interactive mode shortcuts](/en/interactive-mode#keyboard-shortcuts), such as `Shift+Tab` to cycle modes, do not apply in Desktop.
195
196### Check usage
197
198Click the usage ring next to the model picker to see your current context window usage and your plan usage for the period. Context usage is per session; plan usage is shared across all your Claude Code surfaces.
199
137## Let Claude use your computer200## Let Claude use your computer
138 201
139Computer use lets Claude open your apps, control your screen, and work directly on your machine the way you would. Ask Claude to test a native app in a mobile simulator, interact with a desktop tool that has no CLI, or automate something that only works through a GUI.202Computer use lets Claude open your apps, control your screen, and work directly on your machine the way you would. Ask Claude to test a native app in a mobile simulator, interact with a desktop tool that has no CLI, or automate something that only works through a GUI.
205 268
206## Manage sessions269## Manage sessions
207 270
208Each session is an independent conversation with its own context and changes. You can run multiple sessions in parallel, send work to the cloud, or let Dispatch start sessions for you from your phone.271Each session is an independent conversation with its own context and changes. You can run multiple sessions in parallel, branch off side chats, send work to the cloud, or let Dispatch start sessions for you from your phone.
209 272
210### Work in parallel with sessions273### Work in parallel with sessions
211 274
212Click **+ New session** in the sidebar to work on multiple tasks in parallel. For Git repositories, each session gets its own isolated copy of your project using [Git worktrees](/en/common-workflows#run-parallel-claude-code-sessions-with-git-worktrees), so changes in one session don't affect other sessions until you commit them.275Click **+ New session** in the sidebar, or press **Cmd+N** on macOS or **Ctrl+N** on Windows, to work on multiple tasks in parallel. Press **Ctrl+Tab** and **Ctrl+Shift+Tab** to cycle through sessions in the sidebar. For Git repositories, each session gets its own isolated copy of your project using [Git worktrees](/en/common-workflows#run-parallel-claude-code-sessions-with-git-worktrees), so changes in one session don't affect other sessions until you commit them.
213 276
214Worktrees are stored in `<project-root>/.claude/worktrees/` by default. You can change this to a custom directory in Settings → Claude Code under "Worktree location". You can also set a branch prefix that gets prepended to every worktree branch name, which is useful for keeping Claude-created branches organized. To remove a worktree when you're done, hover over the session in the sidebar and click the archive icon.277Worktrees are stored in `<project-root>/.claude/worktrees/` by default. You can change this to a custom directory in Settings → Claude Code under "Worktree location". You can also set a branch prefix that gets prepended to every worktree branch name, which is useful for keeping Claude-created branches organized. To remove a worktree when you're done, hover over the session in the sidebar and click the archive icon. To have sessions archive themselves when their pull request merges or closes, turn on **Auto-archive after PR merge or close** in Settings → Claude Code. Auto-archive only applies to local sessions that have finished running.
215 278
216To include gitignored files like `.env` in new worktrees, create a [`.worktreeinclude` file](/en/common-workflows#copy-gitignored-files-to-worktrees) in your project root.279To include gitignored files like `.env` in new worktrees, create a [`.worktreeinclude` file](/en/common-workflows#copy-gitignored-files-to-worktrees) in your project root.
217 280
219 Session isolation requires [Git](https://git-scm.com/downloads). Most Macs include Git by default. Run `git --version` in Terminal to check. On Windows, Git is required for the Code tab to work: [download Git for Windows](https://git-scm.com/downloads/win), install it, and restart the app. If you run into Git errors, try a Cowork session to help troubleshoot your setup.282 Session isolation requires [Git](https://git-scm.com/downloads). Most Macs include Git by default. Run `git --version` in Terminal to check. On Windows, Git is required for the Code tab to work: [download Git for Windows](https://git-scm.com/downloads/win), install it, and restart the app. If you run into Git errors, try a Cowork session to help troubleshoot your setup.
220</Note>283</Note>
221 284
222Use the filter icon at the top of the sidebar to filter sessions by status (Active, Archived) and environment (Local, Cloud). To rename a session or check context usage, click the session title in the toolbar at the top of the active session. When context fills up, Claude automatically summarizes the conversation and continues working. You can also type `/compact` to trigger summarization earlier and free up context space. See [the context window](/en/how-claude-code-works#the-context-window) for details on how compaction works.285Use the controls at the top of the sidebar to filter sessions by status, project, or environment, and to group sessions by project. To rename a session, click the session title in the toolbar at the top of the active session. To check context usage, see [Check usage](#check-usage). When context fills up, Claude automatically summarizes the conversation and continues working. You can also type `/compact` to trigger summarization earlier and free up context space. See [the context window](/en/how-claude-code-works#the-context-window) for details on how compaction works.
286
287### Ask a side question without derailing the session
288
289A side chat lets you ask Claude a question that uses your session's context but doesn't add anything back to the main conversation. Use it when you want to understand a piece of code, check an assumption, or explore an idea without steering the session off course.
290
291Press **Cmd+;** on macOS or **Ctrl+;** on Windows to open a side chat, or type `/btw` in the prompt box. The side chat can read everything in the main thread up to that point. When you're done, close the side chat and continue the main session where you left off. Side chats are available in local and SSH sessions.
292
293### Watch background tasks
294
295The tasks pane shows the background work running inside the current session: subagents, background shell commands, and workflows. Open it from the **Views** menu or drag it into your layout.
296
297Click any entry to see its output in the subagent pane or stop it. To see what other sessions are doing, use the [sidebar](#work-in-parallel-with-sessions).
223 298
224### Run long-running tasks remotely299### Run long-running tasks remotely
225 300
256 331
257### Connect external tools332### Connect external tools
258 333
259For local and [SSH](#ssh-sessions) sessions, click the **+** button next to the prompt box and select **Connectors** to add integrations like Google Calendar, Slack, GitHub, Linear, Notion, and more. You can add connectors before or during a session. The **+** button is not available in remote sessions, but [scheduled tasks](/en/web-scheduled-tasks) configure connectors at task creation time.334For local and [SSH](#ssh-sessions) sessions, click the **+** button next to the prompt box and select **Connectors** to add integrations like Google Calendar, Slack, GitHub, Linear, Notion, and more. You can add connectors before or during a session. The **+** button is not available in remote sessions, but [routines](/en/routines) configure connectors at routine creation time.
260 335
261To manage or disconnect connectors, go to Settings → Connectors in the desktop app, or select **Manage connectors** from the Connectors menu in the prompt box.336To manage or disconnect connectors, go to Settings → Connectors in the desktop app, or select **Manage connectors** from the Connectors menu in the prompt box.
262 337
274 349
275For local and [SSH](#ssh-sessions) sessions, click the **+** button next to the prompt box and select **Plugins** to see your installed plugins and their skills. To add a plugin, select **Add plugin** from the submenu to open the plugin browser, which shows available plugins from your configured [marketplaces](/en/plugin-marketplaces) including the official Anthropic marketplace. Select **Manage plugins** to enable, disable, or uninstall plugins.350For local and [SSH](#ssh-sessions) sessions, click the **+** button next to the prompt box and select **Plugins** to see your installed plugins and their skills. To add a plugin, select **Add plugin** from the submenu to open the plugin browser, which shows available plugins from your configured [marketplaces](/en/plugin-marketplaces) including the official Anthropic marketplace. Select **Manage plugins** to enable, disable, or uninstall plugins.
276 351
277Plugins can be scoped to your user account, a specific project, or local-only. Plugins are not available for remote sessions. For the full plugin reference including creating your own plugins, see [plugins](/en/plugins).352Plugins can be scoped to your user account, a specific project, or local-only. If your organization manages plugins centrally, those plugins are available in desktop sessions the same way they are in the CLI. Plugins are not available for remote sessions. For the full plugin reference including creating your own plugins, see [plugins](/en/plugins).
278 353
279### Configure preview servers354### Configure preview servers
280 355
452 527
453Once added, the connection appears in the environment dropdown. Select it to start a session on that machine. Claude runs on the remote machine with access to its files and tools.528Once added, the connection appears in the environment dropdown. Select it to start a session on that machine. Claude runs on the remote machine with access to its files and tools.
454 529
455Claude Code must be installed on the remote machine. Once connected, SSH sessions support permission modes, connectors, plugins, and MCP servers.530The remote machine must run Linux or macOS, and Claude Code must be installed on it. Once connected, SSH sessions support permission modes, connectors, plugins, and MCP servers.
456 531
457## Enterprise configuration532## Enterprise configuration
458 533
514To move a CLI session into Desktop, run `/desktop` in the terminal. Claude saves your session and opens it in the desktop app, then exits the CLI. This command is available on macOS and Windows only.589To move a CLI session into Desktop, run `/desktop` in the terminal. Claude saves your session and opens it in the desktop app, then exits the CLI. This command is available on macOS and Windows only.
515 590
516<Tip>591<Tip>
517 When to use Desktop vs CLI: use Desktop when you want visual diff review, file attachments, or session management in a sidebar. Use the CLI when you need scripting, automation, third-party providers, or prefer a terminal workflow.592 When to use Desktop vs CLI: use Desktop when you want to manage parallel sessions in one window, arrange panes side by side, or review changes visually. Use the CLI when you need scripting, automation, or prefer a terminal workflow.
518</Tip>593</Tip>
519 594
520### CLI flag equivalents595### CLI flag equivalents
523 598
524| CLI | Desktop equivalent |599| CLI | Desktop equivalent |
525| ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |600| ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
526| `--model sonnet` | Model dropdown next to the send button, before starting a session |601| `--model sonnet` | Model dropdown next to the send button |
527| `--resume`, `--continue` | Click a session in the sidebar |602| `--resume`, `--continue` | Click a session in the sidebar |
528| `--permission-mode` | Mode selector next to the send button |603| `--permission-mode` | Mode selector next to the send button |
529| `--dangerously-skip-permissions` | Bypass permissions mode. Enable in Settings → Claude Code → "Allow bypass permissions mode". Enterprise admins can disable this setting. |604| `--dangerously-skip-permissions` | Bypass permissions mode. Enable in Settings → Claude Code → "Allow bypass permissions mode". Enterprise admins can disable this setting. |
530| `--add-dir` | Add multiple repos with the **+** button in remote sessions |605| `--add-dir` | Add multiple repos with the **+** button in remote sessions |
531| `--allowedTools`, `--disallowedTools` | Not available in Desktop |606| `--allowedTools`, `--disallowedTools` | Not available in Desktop |
532| `--verbose` | Not available. Check system logs: Console.app on macOS, Event Viewer → Windows Logs → Application on Windows |607| `--verbose` | [Verbose view mode](#switch-view-modes) in the Transcript view dropdown |
533| `--print`, `--output-format` | Not available. Desktop is interactive only. |608| `--print`, `--output-format` | Not available. Desktop is interactive only. |
534| `ANTHROPIC_MODEL` env var | Model dropdown next to the send button |609| `ANTHROPIC_MODEL` env var | Model dropdown next to the send button |
535| `MAX_THINKING_TOKENS` env var | Set in the local environment editor. See [environment configuration](#environment-configuration). |610| `MAX_THINKING_TOKENS` env var | Set in the local environment editor. See [environment configuration](#environment-configuration). |
542* **[MCP servers](/en/mcp)** configured in `~/.claude.json` or `.mcp.json` work in both617* **[MCP servers](/en/mcp)** configured in `~/.claude.json` or `.mcp.json` work in both
543* **[Hooks](/en/hooks)** and **[skills](/en/skills)** defined in settings apply to both618* **[Hooks](/en/hooks)** and **[skills](/en/skills)** defined in settings apply to both
544* **[Settings](/en/settings)** in `~/.claude.json` and `~/.claude/settings.json` are shared. Permission rules, allowed tools, and other settings in `settings.json` apply to Desktop sessions.619* **[Settings](/en/settings)** in `~/.claude.json` and `~/.claude/settings.json` are shared. Permission rules, allowed tools, and other settings in `settings.json` apply to Desktop sessions.
545* **Models**: Sonnet, Opus, and Haiku are available in both. In Desktop, select the model from the dropdown next to the send button before starting a session. You cannot change the model during an active session.620* **Models**: Sonnet, Opus, and Haiku are available in both. In Desktop, select the model from the dropdown next to the send button. You can change the model mid-session from the same dropdown.
546 621
547<Note>622<Note>
548 **MCP servers: desktop chat app vs Claude Code**: MCP servers configured for the Claude Desktop chat app in `claude_desktop_config.json` are separate from Claude Code and will not appear in the Code tab. To use MCP servers in Claude Code, configure them in `~/.claude.json` or your project's `.mcp.json` file. See [MCP configuration](/en/mcp#installing-mcp-servers) for details.623 **MCP servers: desktop chat app vs Claude Code**: MCP servers configured for the Claude Desktop chat app in `claude_desktop_config.json` are separate from Claude Code and will not appear in the Code tab. To use MCP servers in Claude Code, configure them in `~/.claude.json` or your project's `.mcp.json` file. See [MCP configuration](/en/mcp#installing-mcp-servers) for details.
553This table compares core capabilities between the CLI and Desktop. For a full list of CLI flags, see the [CLI reference](/en/cli-reference).628This table compares core capabilities between the CLI and Desktop. For a full list of CLI flags, see the [CLI reference](/en/cli-reference).
554 629
555| Feature | CLI | Desktop |630| Feature | CLI | Desktop |
556| ----------------------------------------------------- | --------------------------------------------------------- | ------------------------------------------------------------------------------------------- |631| ----------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
557| Permission modes | All modes including `dontAsk` | Ask permissions, Auto accept edits, Plan mode, Auto, and Bypass permissions via Settings |632| Permission modes | All modes including `dontAsk` | Ask permissions, Auto accept edits, Plan mode, Auto, and Bypass permissions via Settings |
558| `--dangerously-skip-permissions` | CLI flag | Bypass permissions mode. Enable in Settings → Claude Code → "Allow bypass permissions mode" |633| `--dangerously-skip-permissions` | CLI flag | Bypass permissions mode. Enable in Settings → Claude Code → "Allow bypass permissions mode" |
559| [Third-party providers](/en/third-party-integrations) | Bedrock, Vertex, Foundry | Not available. Desktop connects to Anthropic's API directly. |634| [Third-party providers](/en/third-party-integrations) | Bedrock, Vertex, Foundry | Anthropic's API by default. Enterprise deployments can configure Vertex AI and gateway providers. See the [enterprise configuration guide](https://support.claude.com/en/articles/12622667-enterprise-configuration). |
560| [MCP servers](/en/mcp) | Configure in settings files | Connectors UI for local and SSH sessions, or settings files |635| [MCP servers](/en/mcp) | Configure in settings files | Connectors UI for local and SSH sessions, or settings files |
561| [Plugins](/en/plugins) | `/plugin` command | Plugin manager UI |636| [Plugins](/en/plugins) | `/plugin` command | Plugin manager UI |
562| @mention files | Text-based | With autocomplete; local and SSH sessions only |637| @mention files | Text-based | With autocomplete; local and SSH sessions only |
572 647
573The following features are only available in the CLI or VS Code extension:648The following features are only available in the CLI or VS Code extension:
574 649
575* **Third-party providers**: Desktop connects to Anthropic's API directly. Use the [CLI](/en/quickstart) with Bedrock, Vertex, or Foundry instead.650* **Third-party providers**: Desktop connects to Anthropic's API by default. Enterprise deployments can configure Vertex AI and gateway providers via [managed settings](https://support.claude.com/en/articles/12622667-enterprise-configuration). For Bedrock or Foundry, use the [CLI](/en/quickstart).
576* **Linux**: the desktop app is available on macOS and Windows only.651* **Linux**: the desktop app is available on macOS and Windows only.
577* **Inline code suggestions**: Desktop does not provide autocomplete-style suggestions. It works through conversational prompts and explicit code changes.652* **Inline code suggestions**: Desktop does not provide autocomplete-style suggestions. It works through conversational prompts and explicit code changes.
578* **Agent teams**: multi-agent orchestration is available via the [CLI](/en/agent-teams) and [Agent SDK](/en/headless), not in Desktop.653* **Agent teams**: multi-agent orchestration is available via the [CLI](/en/agent-teams) and [Agent SDK](/en/headless), not in Desktop.