Every Surface — Desktop, Web, Chrome, and Slack
Claude Code runs everywhere — not just your terminal. Desktop app, browser, Chrome DevTools, even Slack. Know which surface fits which workflow.
The terminal is just one way in. The same engine runs in a desktop app, your browser, a Chrome extension, Slack, your phone. Eight surfaces total. It's a lot, and you definitely don't need all of them, but knowing they exist helps you pick the right one for each situation.
The Full Surface Map
Every place Claude Code lives right now:
- Terminal CLI. The original.
claudein your shell. Full local file access, piping, scripting. - VS Code extension. Embedded in your editor. Inline diffs, sidebar chat,
@browserfor automating browser tasks. - JetBrains plugin. Same idea, different IDE. IntelliJ, WebStorm, PyCharm, the whole JetBrains family.
- Desktop app. Standalone for macOS and Windows. Visual diff review, multiple sessions side by side, scheduled recurring tasks. Download from claude.ai.
- Web (claude.ai/code). Zero local setup. Runs in an isolated cloud VM. Great for long-running tasks or repos you don't have cloned.
- Chrome extension. Debug live web apps. Claude sees your browser, inspects elements, reads console errors. Pairs with
@browserin VS Code. - Slack. Someone drops a bug report, tags
@Claude, a PR shows up. Nobody opened a terminal. - iOS app. Mobile access to web sessions. Start on your laptop, check progress from your phone.
They all share CLAUDE.md files, settings, and MCP servers. No reconfiguration when you switch.
Moving Between Surfaces
Sessions aren't locked to one surface. Start in your terminal, finish on your phone. Three commands make this work.
Remote Control
Deep in a terminal session and need to step away from your desk? Run this:
claude remote-controlOr /remote-control inside an active session. Claude Code gives you a URL. Open it on your phone or any device. You now have a web interface controlling your local machine. The session keeps running on your computer, you're just steering remotely.
Try it: Start a session, type /remote-control, open the link on your phone. Send a message from your phone and watch it execute on your laptop. It's pretty satisfying.
Teleport
Started a cloud session on claude.ai/code and now you want full local file system access?
/teleportResumes the web session locally. Conversation history, files, everything comes with it.
Desktop Handoff
Working in the terminal but want visual diff review?
/desktopHands the session to the Desktop app. Useful when you want to review a big set of changes visually before committing.
Picking the Right Surface
Quick reference:
| I want to... | Best surface |
|---|---|
| Write code with full local file access | Terminal CLI or IDE extension |
| Review diffs visually | Desktop app |
| Run a long task I do not want to babysit | Web (cloud session) |
| Continue a session from my phone | Remote Control |
| Start a task without cloning the repo | Web (cloud session) |
| Debug a live web app | Chrome extension |
| Turn a Slack bug report into a PR | Slack |
| Run multiple tasks in parallel | Desktop app or Web |
| Automate PR reviews in CI | GitHub Actions or GitLab CI/CD |
A few patterns that have clicked for me:
Cloud sessions are sandboxed. Each one runs in its own isolated VM with network controls, credential protection, branch restrictions. Good for tasks where you want guardrails.
Desktop app is the multitasking surface. Multiple sessions side by side, scheduled recurring tasks. If you're juggling terminal windows, the Desktop app cleans that up.
Chrome plus VS Code is gnarly for frontend work. @browser in VS Code automates browser interactions. The Chrome extension lets Claude see what's actually rendering, read console output, inspect the DOM. Together they're extremely powerful.
Slack is pure async. Bug report in a channel, tag @Claude, PR shows up. Nobody had to context-switch.
Practical advice
Start where you're comfortable. If you live in the terminal, stay there. You don't need every surface. Add new ones only when you hit actual friction.
Cloud sessions for risky experiments. Isolated VM means you can't accidentally trash your local environment. Spin one up, try something wild, teleport it locally if it works out.
Remote Control is underrated. Kicked off a big refactor and need to grab lunch? /remote-control on your phone. Monitor progress, answer permission prompts, course-correct from anywhere.
The main thing: don't overthink surface choice. Terminal for coding, Desktop for review, Chrome for debugging, Slack for async. /remote-control, /teleport, and /desktop move sessions between them without losing context.
Mastering Claude Code
Lesson 7 of 70