Claude Code Desktop is the Code tab of the Claude desktop app: the same engine as the CLI with a graphical interface. It adds sidebar sessions isolated in Git worktrees, a diff viewer you can comment on, a Browser pane that previews your app, PR and CI monitoring, scheduled tasks and Dispatch. Keep the CLI for scripting, the Agent SDK and agent teams.
Claude Code Desktop is the Code tab inside the Claude desktop app, and it runs the same engine as the Claude Code CLI behind a graphical interface. What it adds over the terminal is visual: several sessions side by side in one window, each in its own Git worktree, a diff viewer you can comment on line by line, a Browser pane that previews your running app, and pull request monitoring, while the CLI keeps scripting, the Agent SDK and agent teams.
Checked October 2026 against Anthropic's Desktop application docs, the desktop quickstart, the platforms comparison and the VS Code extension docs. The desktop app updates often; where a menu label differs, the docs are the reference.
This guide is for people who already know what Claude Code is and want to decide where to run it. If you are starting from zero, our Claude Code complete guide covers the agent itself. Here we stick to the surface question: what the desktop app does that the CLI and the VS Code extension do not, and which workflows are worth switching for.
Claude Desktop vs Claude Code: what is the difference?
The names overlap, which causes most of the confusion. Claude Code is Anthropic's coding agent: it reads your codebase, edits files and runs commands. It ships on several surfaces, including a terminal CLI, extensions for VS Code and JetBrains, the web at claude.ai/code, the mobile app, and the desktop app. Claude Desktop is the app you install on macOS, Windows or Linux. According to the quickstart, it has three tabs:
- Chat: general conversation with no file access, similar to claude.ai.
- Cowork: an agent for longer, background work, including Dispatch tasks from your phone.
- Code: Claude Code with direct access to the files in a project folder you choose.
So "Claude Code Desktop" means the Code tab. If you have only used the Chat tab, you have used Claude Desktop without using Claude Code. The Code tab does not need a separate install: the docs say the app includes Claude Code, so you do not need Node.js or the CLI to use it.
What the Claude Code desktop app adds over the CLI
Anthropic's own one-line advice in the docs is to use Desktop when you want to manage parallel sessions in one window, arrange panes side by side or review changes visually, and to use the CLI for scripting, automation or a terminal workflow. The features below are the reasons that advice holds.
- 01Start a session
Pick environment (Local, Cloud, SSH or WSL), project folder, model and permission mode.
- 02Isolate it
Choose the worktree option so the session gets its own copy of the repo.
- 03Let Claude build and verify
Claude edits, starts the dev server and checks its work in the Browser pane.
- 04Review the diff
Open the diff viewer, comment on lines and send the comments back in one batch.
- 05Open the PR and watch CI
The CI status bar polls checks; auto-fix and auto-merge are optional.
Parallel sessions with Git isolation
In the Code tab, each conversation is a session with its own history and project folder, listed in the sidebar. You start another with + New session (Cmd+N on macOS, Ctrl+N on Windows). For Git repositories, the worktree option next to the branch name gives a session its own isolated copy of the project using Git worktrees, so changes in one session do not affect another until you commit them. Worktrees live in .claude/worktrees/ under the project root by default, and you can set a branch prefix so Claude-created branches are easy to spot. Hold Cmd or Ctrl and click a session to view two at once.
The CLI can do the same isolation with the --worktree flag, but you manage each session in its own terminal. The desktop difference is that you see every session's status in one sidebar, get an OS notification when a session you are not viewing finishes, and can archive a session (and remove its worktree) with one click, or automatically after its PR merges.
A diff viewer that talks back
When Claude changes files, a stats indicator such as +12 -1 appears. Clicking it opens a diff viewer with the file list on the left. Click any line to leave a comment, add comments on several lines, then submit them together (Cmd+Enter or Ctrl+Enter). Claude reads them and responds with a new diff. Typing /code-review asks Claude to review the changes before you commit; in local sessions the findings appear as a card where you can step through each one in the diff or apply fixes. This is the closest thing to a pull request review loop with the agent before any pull request exists.
App preview with self-checking
Claude can start your dev server and open it in the Browser pane. Per the docs, it then verifies its own changes by taking screenshots, inspecting the DOM, clicking elements and filling forms, and fixes issues it finds. Auto-verify is on by default. If your project uses a custom dev command, you set it in .claude/launch.json. On macOS, an iOS Simulator pane does the same for iOS apps.
Pull request and CI monitoring
After you open a pull request, a CI status bar appears in the session and polls check results through the GitHub CLI, which must be installed and signed in. Two switches sit behind it: Auto-fix CI & address comments, where Claude reads failing checks and iterates, and Auto-merge when ready, which squash-merges once checks pass if auto-merge is enabled in your GitHub repository settings.
Panes, terminal and side chats
The window is built from panes you can drag and resize: chat, diff, browser, terminal, file editor, plan, tasks and subagent. The integrated terminal opens in the session's working directory with the same environment as Claude, so npm test sees the files Claude is editing. A side chat (Cmd+; or Ctrl+;, or /btw) lets you ask a question about the session without adding anything to the main conversation.
Scheduling, cloud hand-off and Dispatch
Desktop scheduled tasks start a new session at a time you choose, for jobs like a daily code review or dependency check; the scheduling docs note that local tasks fire only while the app is open and your computer is awake. Choosing Cloud instead of Local runs a session on Anthropic-managed infrastructure that continues after you close the app. And with Dispatch on Pro or Max, a task you message from the Claude mobile app can become a Code session that shows up in the sidebar with a Dispatch badge.
Claude Code desktop vs CLI vs VS Code extension
Anthropic's platforms page sums it up as: CLI for terminal workflows, scripting and remote servers; Desktop for visual review, parallel sessions and managed setup; VS Code for working inside the editor without switching to a terminal. The table below expands that from the Desktop feature comparison and the VS Code docs (checked October 2026).
| Capability | CLI | VS Code extension | Desktop (Code tab) |
|---|---|---|---|
| Interface | Terminal | Panel inside VS Code or Cursor | Code tab in a standalone app with panes |
| Parallel sessions | Separate terminals, --worktree flag | Multiple conversations in tabs or windows | Sidebar sessions, worktree option per session |
| Reviewing changes | Diffs in the terminal | Inline diffs in the editor | Diff viewer with line comments sent back to Claude |
| Running your app | You run it yourself | Integrated terminal | Browser pane preview with auto-verify |
| Pull requests | Through gh and git commands | Through gh and git commands | CI status bar, auto-fix and auto-merge options |
| Scheduling | Cron, CI or /loop | Not listed | Scheduled tasks while the app is open |
| Scripting and SDK | Yes: print mode and Agent SDK | No | No, interactive only |
| Third-party providers | Bedrock, Agent Platform, Foundry | Supported | Anthropic API by default; gateway and 3P setups documented |
The VS Code extension is the middle ground. It gives you inline diffs, plan review, @-mentions with line ranges and multiple conversations in tabs, all without leaving the editor, and it bundles its own copy of the CLI. If you live in VS Code or Cursor, our Claude Code in VS Code setup guide covers it. Desktop makes more sense when you run several agent sessions at once and want to supervise them rather than type code alongside them.
What carries over from the CLI, and what does not
Moving to Desktop does not mean rebuilding your setup. The docs say Desktop and the CLI read the same configuration: CLAUDE.md and CLAUDE.local.md files, MCP servers in ~/.claude.json or .mcp.json, hooks, skills and the settings files including permission rules. The same models are available in both. You can even run both on the same project at once; each keeps its own session list.
To move a live terminal session into the app, run /desktop in the CLI. Claude saves the session, opens it in Desktop and exits the CLI. The docs say this works on macOS and x64 Windows when you are signed in with a Claude subscription, not with API key authentication or cloud providers. Going the other way, typing /resume in the Desktop prompt box lists sessions you started from the CLI on that computer.
What stays behind:
- Scripting. Print mode, output formats and the Agent SDK are CLI-only. Desktop is interactive only.
- Some permission modes. Desktop offers Manual, Accept edits, Plan and Auto, plus Bypass permissions once enabled; the
dontAskmode is CLI-only. - Agent teams. Coordinated teams with a lead and teammates run in the CLI, not in Desktop.
- Inline suggestions. Desktop has no autocomplete; it works through prompts and explicit changes.
- Panel commands. Commands that open interactive terminal panels, such as
/permissions, are not available in the Code tab; edit settings files instead.
- Scripts, CI jobs and print mode
- Agent SDK projects
- Agent teams
- Machines where you only have a terminal
- Bedrock, Agent Platform or Foundry setups
- Several sessions you supervise at once
- Commenting on diffs before you commit
- Previewing the app while Claude checks it
- Watching PRs through CI
- Scheduled local tasks and Dispatch
How to set up Claude Code Desktop
Claude Code needs a paid plan: the quickstart lists Pro, Max, Team or Enterprise, and clicking the Code tab on a free account prompts you to upgrade. Pro is $17 per month billed annually or $20 billed monthly on claude.com/pricing (checked October 2026). If you are still deciding whether to pay at all, our guide to the realistic ways to use Claude Code for free lays out the options.
- 1Install the Claude desktop app
macOS universal build, Windows x64 or ARM64 installer, or apt/.deb on Ubuntu and Debian (beta).
- 2Sign in and open the Code tab
If it prompts you to sign in online, finish that and restart the app.
- 3Pick the environment
Local for your machine; Cloud, SSH or WSL when the code lives elsewhere.
- 4Choose the project folder
For a Git repo, tick the worktree option if you plan to run more than one session.
- 5Set model and permission mode
Start complex work in Plan, then switch to Accept edits or Manual to execute.
- 6Describe the task and press Enter
Expected result: Claude works, and a +/- diff indicator appears when files change.
Two setup details trip people up. First, the app does not always inherit your shell environment: on macOS, launched from the Dock, it reads PATH and a fixed set of Claude Code variables from your shell profile, but not every variable you export. Use the local environment editor (gear icon next to Local) to set variables for sessions and preview servers. Second, session isolation and PR monitoring need Git and the GitHub CLI installed; the docs suggest running git --version to confirm Git is present. If you also want the terminal version for scripting, our step-by-step CLI install guide covers Mac, Windows and Linux.
- Git installed and the project is a Git repository
- GitHub CLI (gh) installed and authenticated if you want PR monitoring
- A .worktreeinclude file if new worktrees need gitignored files such as .env
- Dev command set in .claude/launch.json if the preview does not start on its own
- Environment variables added in the local environment editor
- A default permission mode chosen, with Plan for anything risky
- CLAUDE.md up to date, since Desktop reads the same one as the CLI
The desktop-only workflows worth switching for
If you already like the CLI, these are the patterns where the Code tab saves real effort, based on what the docs describe:
- Fan-out on independent tasks. Start three sessions in separate worktrees, for example a bug fix, a test backfill and a docs update, and watch all three from the sidebar. You can also ask Claude in one session to check on or message another, which the docs describe as working across sessions.
- Review-first loop. Let Claude build in Accept edits mode, then batch your line comments in the diff viewer instead of steering turn by turn.
- Front-end iteration. Keep the Browser pane open while Claude edits, so it checks the page it changed and you see the same page.
- PR shepherding. Open the PR from the session and turn on auto-fix so failing checks get attention while you work on something else.
- Off-machine work. Send a long refactor to a Cloud session from the same app, then check it from the phone later.
The point of all five is the same: you spend less time typing to the agent and more time supervising its output. That is the skill that matters once you start shipping real products with these tools. If you want a structured path from idea to a launched app using Claude Code and similar agents, our AI SaaS Builder program walks through it end to end. For the plumbing that connects Claude to outside tools in either surface, see our guide to the Model Context Protocol.
Claude Code Desktop: FAQ
What is Claude Code Desktop?
Claude Code Desktop is the Code tab inside the Claude desktop app for macOS, Windows and Linux (beta). It runs the same engine as the Claude Code CLI behind a graphical interface, so you pick a project folder, give Claude a task and review its changes in a diff viewer instead of a terminal. The app bundles Claude Code, so you do not need Node.js or a separate CLI install to use it.
Is Claude Desktop the same as Claude Code?
Not quite. Claude Desktop is the app; Claude Code is the coding agent. The desktop app has a Chat tab for general conversation without file access, a Cowork tab for longer agentic work and a Code tab that is Claude Code. Claude Code also runs as a terminal CLI, as VS Code and JetBrains extensions, on the web at claude.ai/code and on mobile, all on the same engine.
Do I need a paid plan for Claude Code Desktop?
Yes. Anthropic's desktop quickstart says Claude Code requires a Pro, Max, Team or Enterprise subscription, and clicking the Code tab on a free account prompts you to upgrade. Pro is $17 per month billed annually or $20 monthly on claude.com/pricing, checked October 2026. Some Desktop features, such as Dispatch and computer use, are listed for Pro and Max plans specifically.
Can I use the CLI and the desktop app on the same project?
Yes. Anthropic's docs say you can run both at the same time on the same machine and even the same project. They share CLAUDE.md files, MCP servers in ~/.claude.json or .mcp.json, hooks, skills and settings. Each keeps its own session list, but you can move a terminal session into Desktop with /desktop, or pick it up from inside Desktop with /resume.
What can the CLI do that Claude Code Desktop cannot?
The CLI keeps scripting and automation: print mode, output formats and the Agent SDK have no Desktop equivalent, and the dontAsk permission mode is CLI-only. Agent teams also run only in the CLI. Desktop does not offer inline autocomplete suggestions, and some terminal commands that open interactive panels, such as /permissions, are not available in the Code tab.
Does Claude Code Desktop work on Linux?
Yes, as a beta. Anthropic publishes apt and .deb installs for Ubuntu and Debian on its Claude Desktop on Linux page. The docs note that computer use is not yet available in the Linux desktop app. On Windows you can also run Code sessions inside a WSL 2 distribution, and over SSH Desktop can run sessions on a remote Linux or macOS machine.
Shipping with AI agents? Learn the build, not just the buttons.
AI SaaS Builder, included in All Access, covers planning, building and launching an app with AI coding tools, with the other three programs, live coaching and the private community in one subscription.
Compare setups with other builders
Join the free Discord to swap Claude Code setups, desktop or terminal, with other creators building apps.