Skip to content

Remote Control & Cross-Surface Work

Claude Code sessions aren't tied to a single surface. Start a task in your terminal, continue it from your phone, review the diffs in the Desktop app, and get notified on Slack when it's done. This lesson covers moving work between surfaces and the cross-platform ecosystem.

Owl mascot

What you'll learn

  • claude --cloud pushes a local session to the web, where you can continue from any device
  • Remote Control lets you drive a terminal session from your phone or browser
  • Claude Code runs on terminal, VS Code, JetBrains, Desktop app, Web, and mobile, same engine, same CLAUDE.md

The problem

You start a complex refactor in your terminal. Midway through, you need to leave your desk. You want to check progress from your phone, approve a decision, and let it keep running. Cross-surface work means you're never locked to one device.

Build it

Step 1: Push a session to the web

Use the --cloud flag to proxy your local terminal session to Anthropic's hosted infrastructure. This allows you to interact with the ongoing session securely from any web browser.

bash
claude --cloud

Your session is now accessible at claude.ai/code. Open it on any device.

Step 2: Remote Control

Launch the remote control server to expose your local CLI session to other devices on the same network. This is useful for monitoring or steering a long-running task from a mobile device or a secondary machine.

bash
claude remote-control

Starts a server. Open the URL on your phone or another device to drive the terminal session remotely.

Step 3: Move between surfaces

FromToCommand
TerminalDesktop app/desktop
TerminalWebclaude --cloud
WebMobileSame URL on the Claude app
TerminalVS CodeOpen the same project in VS Code with Claude Code extension

Step 4: Channels, external triggers

Channels let you push events from Telegram, Discord, iMessage, or webhooks into a Claude Code session. Configure in the web dashboard.

What goes wrong

MistakeHow you notice itThe fix
Session not syncing to webclaude --cloud hangs or times outCheck network connectivity. The session must be able to reach Anthropic's servers
Remote Control server unreachablePhone can't connectThe server binds to localhost by default. Use a tunnel (ngrok) or ensure the device is on the same network
Desktop app session doesn't match terminal/desktop opens a different session/desktop transfers the current session. If you started a new one, use /resume in the Desktop app

Confirm it worked

Start a session with the --cloud flag and open the provided URL in a web browser. Send a prompt from the web interface to verify that the local terminal correctly receives and processes the remote command.

bash
# 1. Start a session and push to cloud
claude --cloud

# 2. Open claude.ai/code in a browser
# You should see your active session

# 3. Send a message from the browser
# The terminal should reflect the response

Next: Slack, Channels & Beyond