Claude Code desktop vs terminal vs web: every surface compared

Claude Code is one engine behind five front ends. The question that decides which one you want is where the agent process runs, because every other difference follows from that.

By the Continuum team. We build a workbench that runs Claude Code, Codex, and their peers, so the model rates quoted here are the ones our own cost analytics ship with.

The short version

Claude Code ships as a terminal CLI, a desktop app (the Code tab in Claude for macOS, Windows, and Linux in beta), a web surface at claude.ai/code, the Claude mobile app, and VS Code and JetBrains extensions. The CLI, the desktop app, and the IDE extensions run the agent on your machine and see your uncommitted work. The web runs it in an Anthropic-managed VM that clones from GitHub. Mobile is a window into a session running somewhere else. All the local surfaces share CLAUDE.md, settings.json, MCP servers, hooks, and skills, and each keeps its own session history.

What you need to know
  • One engine, five front ends. Where the agent runs is the only structural difference.
  • CLI and desktop run on your machine and see uncommitted changes. The web does not.
  • Desktop gives you automatic git worktrees per session; the CLI needs --worktree.
  • Scripting, --print, the Agent SDK, and third-party providers are CLI only.
  • Config is shared across local surfaces. Session history is not.

The five surfaces

Anthropic runs the same agent loop behind all of them. What changes is the machine the loop executes on, what that machine can see, and which features the front end exposes.

Claude Code surfaces, as of August 2026.

SurfaceAgent runs onSees uncommitted workBuilt for
Terminal CLIYour machineYesEverything. The only complete surface.
Desktop app, Code tabYour machine, an SSH host, WSL, or the cloudYes for local sessionsVisual review and parallel sessions
Web, claude.ai/codeAn Anthropic-managed VMNo. It clones from GitHub.Long tasks that continue while you are away
Claude mobile appWhatever machine the session already usesThrough that machineStarting and steering, not authoring
VS Code, JetBrainsYour machineYesStaying inside the editor
Where each one comes from.
Terminal CLI     curl -fsSL https://claude.ai/install.sh | bash
Desktop          the Claude app for macOS (universal), Windows (x64 and ARM64),
                 or Linux beta via apt or .deb on Ubuntu and Debian
Web              claude.ai/code, nothing to install
Mobile           the Claude app for iOS and Android
IDE              the Claude Code extension for VS Code or JetBrains

Where the agent process runs

Read the middle column of that table again, because it decides everything people actually argue about: what the agent can see, what it can break, whether it keeps working when you shut the lid, and who pays for the compute.

If the agent runsIt can reachIt cannot reachIt stops when
On your machineYour working tree, your local database, your .env, your MCP serversNothing, unless you constrain itYou close the process
In an Anthropic VMA fresh clone of a GitHub branchYour disk, your uncommitted work, your local servicesThe VM idles out and is reclaimed
On your machine, driven remotelyEverything a local session reachesSame as localThe local process exits

Desktop against the terminal

Both run the same engine on the same machine and read the same configuration files. The differences are entirely about the front end, and they cut both ways.

What the desktop app adds

CapabilityCLIDesktop
Session isolation--worktree flagAutomatic worktrees, one per session
Multiple sessionsSeparate terminals or tmuxSidebar tabs, Ctrl+Tab to cycle
Diff reviewgit diff afterwardsDiff pane with inline comments
App previewRun the server yourselfBrowser pane, and Claude verifies its own changes in it
File attachmentsNot availableImages and PDFs, drag and drop
@mention filesText basedAutocomplete, local and SSH sessions only
Recurring workcron or CIScheduled tasks
iOS simulatorVia computer useDedicated simulator pane
From your phoneRemote ControlRemote Control, plus Dispatch
The desktop shortcuts worth learning first. Use Ctrl in place of Cmd on Windows.
Cmd  N          new session
Ctrl Tab        next session   (Ctrl Shift Tab for previous)
Cmd  Shift D    toggle the diff pane
Cmd  Shift B    toggle the Browser pane
Ctrl `          toggle the terminal pane
Cmd  ;          open a side chat that uses this session context
Ctrl O          cycle transcript view: Normal, Verbose, Summary
Cmd  Shift M    permission mode menu
Cmd  /          show every shortcut

What the terminal keeps

  • Scripting. --print and --output-format json do not exist in the desktop app. Desktop is interactive only.
  • The Agent SDK. Building on the loop is a CLI and library concern.
  • Third-party providers. Amazon Bedrock and Microsoft Foundry route through the CLI or the VS Code extension.
  • Agent teams. Coordinated teams with a lead assigning work are CLI only. Dynamic workflows do run in the desktop app.
  • dontAsk mode. The locked-down CI mode has no desktop equivalent.
  • Terminal-dialog commands. /permissions answers with is not available in this environment; edit the settings file instead.

Claude Code on the web

The web surface at claude.ai/code is a different proposition from a browser-based terminal. Every session gets its own Anthropic-managed VM with your repository cloned into it, a pre-configured environment, and limited network access. It keeps running after you close the tab.

Claude Code on the web, checked August 2026.

Detail
StatusResearch preview
PlansPro, Max, Team, and Enterprise with premium or Chat plus Claude Code seats
IsolationOne isolated VM per session
Git credentialsHandled by a proxy with scoped credentials; they never enter the sandbox
NetworkLimited by default, configurable per cloud environment
Repo hostingGitHub. GitLab and Bitbucket only as a one-way local bundle.
Compute chargeNone. It draws on the same rate limits as everything else on the account.

Running several cloud tasks in parallel is the reason to use it. Each --cloud invocation is an independent session, and they consume rate limits proportionately rather than queueing behind each other.

Three independent cloud sessions, then check on all of them.
claude --cloud "Fix the flaky test in auth.spec.ts"
claude --cloud "Update the API documentation"
claude --cloud "Refactor the logger to use structured output"

# progress for every background session
/tasks

Mobile, and the three ways to work away from the machine

The Claude mobile app does not run an agent on your phone. It is a client, and which thing it is a client for is the part worth getting straight.

ApproachAgent runs onYou start it withGood for
Cloud sessionAn Anthropic VMclaude --cloud, or the web UIWork with no local setup
Remote ControlYour machineclaude remote-controlSteering work already in progress
DispatchYour machine, via the desktop appMessaging Dispatch in the Cowork tabDelegating while away, minimal setup
Three ways in, depending on where you are standing.
# server mode: waits for connections, press space for a QR code
claude remote-control --name "My Project"

# an ordinary interactive session that is also reachable remotely
claude --remote-control

# already mid-session and want to carry on from the couch
/remote-control

Dispatch is the opposite direction: you message a task from the phone and it decides how to handle it, spawning a Code session on the desktop app when the work is development. Dispatch requires Pro or Max and is not available on Team or Enterprise plans.

Moving a session between surfaces

The handoffs that exist, and the one that does not.

FromToHow
TerminalDesktop/desktop. Saves the session, opens the app, exits the CLI.
TerminalWebclaude --cloud "task", which creates a new cloud session
WebTerminalclaude --teleport, /teleport, or t from /tasks
DesktopWebContinue in, then Claude Code on the Web
DesktopIDEContinue in, then Your IDE
Local sessionPhone or browser/remote-control
TerminalWeb, existing sessionNot possible. Handoff from the CLI is one way.
01

Check the four teleport requirements first

Teleport refuses rather than guessing. Your working tree must be clean, you must be in a checkout of the same repository rather than a fork, the cloud branch must have been pushed, and you must be signed in to the same claude.ai account.

02

Pull the session down

claude --teleport                  # interactive picker
claude --teleport session_01ABC...  # straight to one session

Claude verifies the repository, fetches and checks out the cloud branch, and loads the full conversation history into your terminal.

03

Know what you just did to the cloud copy

The terminal gets its own copy. New work stays local and does not appear back in the cloud session on claude.ai or in the phone app. If you still want to steer from your phone after teleporting, start /remote-control in the local session.

How a Claude Code session moves between the terminal, the desktop app and the web, and the one route that does not existMOVING A SESSION BETWEEN SURFACESdesktopyour machineterminalyour machineweban Anthropic VM/desktopContinue in--teleport, or /tasksclaude --cloud starts a NEW session; it cannot join an existing oneSettings, memory and permission rules follow you. Session history does not.

What is shared, and what is not

ThingShared across local surfaces
CLAUDE.md and CLAUDE.local.mdYes
~/.claude/settings.json and project settingsYes, including permission rules
MCP servers from ~/.claude.json and .mcp.jsonYes
Hooks and skillsYes
Available modelsYes
Session historyNo. Each surface keeps its own list.
claude_desktop_config.json MCP serversDesktop only; the standalone CLI never reads it
If a server works in the desktop app and not in your terminal, this is usually why.
# copy servers defined in claude_desktop_config.json into ~/.claude.json
claude mcp add-from-claude-desktop

# then confirm from the CLI
claude mcp list

Which one to use

If you areUse
Scripting, running in CI, or building on the loopCLI. Nothing else has --print.
Running three or four tasks at once and reviewing diffsDesktop. Worktrees are automatic there.
On Bedrock, Google Cloud, or FoundryCLI or the VS Code extension
Handing off a long task and closing the laptopWeb. The VM keeps going.
Working on a repo you have not clonedWeb
Mid-task and leaving the deskRemote Control from the phone
New to all of itDesktop if you want a GUI, CLI if you live in a terminal

Questions people ask

No. They are the same application. The Claude app has Chat, Cowork, and Code tabs, and the Code tab is Claude Code. Installing Claude for macOS, Windows, or Linux gets you all three.

Only for scripting, CI, the Agent SDK, third-party providers such as Bedrock and Foundry, agent teams, and dontAsk mode. Everything interactive works in the app. Most people keep both installed and run them on the same project.

No. There is no --print or --output-format, no inline code suggestions, no agent teams, and terminal-dialog commands such as /permissions reply that they are not available in that environment. In return you get automatic worktrees, a diff pane, an app preview browser, and file attachments.

No. A cloud session runs in an Anthropic-managed VM that clones your GitHub remote at your current branch, so it sees committed code and never your uncommitted changes or your local services. Push before you start one.

Run claude --teleport for a picker, or pass a session id to go straight to one. Your working tree must be clean, you must be in the same repository rather than a fork, the branch must have been pushed, and you must be on the same claude.ai account.

Not from the CLI. claude --cloud always creates a new cloud session. The desktop app can do it through the Continue in menu, which needs a clean working tree and is not available for SSH sessions.

No. It is a client. It either drives a cloud session running in an Anthropic VM, or connects to a Remote Control session that is still executing on your own machine.

The local ones do: CLAUDE.md, settings.json, MCP servers, hooks, and skills are all shared. Session history is not, so each surface shows only the conversations it started.

Sources

Every figure above was read from these pages on August 2026. Vendors reprice without notice; if you find a stale number, tell us.

  1. Claude Code desktop application
  2. Claude Code on the web
  3. Claude Code platforms and integrations
  4. Claude Code Remote Control
Try it

One list,
every surface.

Continuum puts your Mac, Linux, and cloud agent sessions in a single list you can drive from any device.

free app · your subscriptions · local-first