🌐Claude Code on Web & Desktop
Run Claude Code from your browser or the standalone app — no terminal needed
Claude Code on Web & Desktop
Not everyone wants to live in a terminal. Claude Code is also available through the web interface at claude.ai/code and through a standalone Desktop application. These interfaces provide the same powerful coding capabilities with a graphical, visual-first experience.
This lesson covers both platforms, their unique features, and when to choose each one.
1. Claude Code on the Web (claude.ai/code)
Getting Started
- Open your browser and navigate to claude.ai/code.
- Sign in with your Anthropic account.
- You land on a dashboard showing your recent sessions and projects.
The Web Interface Layout
The web interface has a clean, focused layout:
| Area | Description |
|---|---|
| Left sidebar | Project list, session history, settings |
| Main panel | Active conversation with Claude |
| Right panel | File tree, diff viewer, output console |
| Top bar | Model selector, session name, share options |
| Bottom input | Prompt input with file attachment and @-mention |
Creating a New Session
- Click "New Session" in the sidebar.
- Choose a project or start fresh.
- Optionally connect a GitHub repository for direct access to your codebase.
- Start chatting with Claude about your code.
Connecting a Repository
The web interface can connect to your GitHub repositories:
Steps:
1. Click "Connect Repository" in the sidebar
2. Authorize GitHub access (first time only)
3. Select the repository from the list
4. Choose the branch you want to work on
5. Claude now has full read access to the codebase
Once connected, Claude can:
- Read any file in the repository.
- Propose changes as visual diffs.
- Create pull requests directly from the interface.
2. Visual Diff Review on the Web
The web interface excels at visual diff review. When Claude proposes changes, you see a side-by-side or unified diff view that is richer than what a terminal can display.
Side-by-Side View
The default diff view shows the original file on the left and the proposed changes on the right:
Original (left) | Proposed (right)
-----------------------------|------------------------------
function getUser(id) { | function getUser(id) {
return db.find(id); | if (!id) {
} | throw new Error("ID required");
| }
| return db.find(id);
| }
Unified View
Toggle to unified view to see changes inline, similar to a Git diff:
function getUser(id) {
+ if (!id) {
+ throw new Error("ID required");
+ }
return db.find(id);
}Review Actions
Each file in the diff has actions:
| Action | Description |
|---|---|
| Accept | Apply changes to this file |
| Reject | Discard changes to this file |
| Edit | Manually modify the proposed changes before accepting |
| Comment | Leave a comment for Claude to address |
| View Full File | See the complete file with changes in context |
3. Managing Multiple Sessions
The web interface supports multiple concurrent sessions, each with its own context and conversation history.
Session List
The sidebar shows all your sessions:
- Active sessions are highlighted with a green dot.
- Paused sessions are grayed out but retain their full state.
- Completed sessions are archived but accessible.
Switching Between Sessions
Click any session in the sidebar to switch. Each session remembers:
- The full conversation history.
- All files that were referenced.
- Any pending diffs that have not been accepted or rejected.
- The connected repository and branch.
Session Organization
- Pin important sessions to the top of the list.
- Tag sessions with labels like "bug-fix", "feature", "refactor".
- Search across all sessions by keyword.
- Archive completed sessions to keep the sidebar clean.
4. The Desktop Application
The Claude Code Desktop application is a standalone app that runs natively on macOS, Windows, and Linux. It provides all the features of the web interface plus some desktop-specific capabilities.
Installation
macOS:
brew install --cask claude-codeWindows: Download the installer from claude.ai/download or use:
winget install Anthropic.ClaudeCodeLinux:
# Debian/Ubuntu
sudo apt install claude-code
# Arch
yay -S claude-codeDesktop-Specific Features
The desktop app includes features not available on the web:
| Feature | Description |
|---|---|
| Local file access | Read and write files on your machine directly |
| Native notifications | OS-level notifications when tasks complete |
| System tray | Quick access from the system tray / menu bar |
| Offline queue | Queue prompts while offline, send when reconnected |
| Keyboard shortcuts | Global hotkeys (e.g., summon Claude from any app) |
| Drag-and-drop | Drag files from Finder/Explorer into the conversation |
| Multi-window | Open multiple Claude windows for different projects |
Local File Access
Unlike the web interface, the desktop app can read files directly from your computer:
You: "Review the file at /Users/me/project/src/auth.ts"
Claude reads the file directly from your filesystem and responds.
You can also drag and drop files into the conversation.
5. Scheduled Tasks
Both the web and desktop interfaces support scheduling tasks to run at specific times or on a recurring basis.
Creating a Scheduled Task
Steps:
1. Open the "Tasks" panel from the sidebar
2. Click "New Scheduled Task"
3. Define the task (e.g., "Run tests and report failures")
4. Set the schedule (e.g., "Every day at 9:00 AM")
5. Choose notifications (email, desktop, or both)
6. Save the task
Example Scheduled Tasks
| Task | Schedule | Notification |
|---|---|---|
| Run test suite | Every push to main | Email + desktop |
| Review open PRs | Daily at 9 AM | Desktop |
| Check for dependency updates | Weekly on Monday | |
| Generate weekly code summary | Friday at 5 PM |
Task Results
When a scheduled task runs, the results appear in:
- Your session history (as a new session).
- Email (if configured).
- Desktop notification (if using the desktop app).
6. Remote Control
Remote Control allows you to trigger Claude Code sessions from external tools and services via API.
How It Works
External Tool -> API Call -> Claude Code Session -> Result
Use Cases
- CI/CD Integration: Trigger a code review session when a PR is opened.
- Slack Bot: Ask Claude to review code by posting in a Slack channel.
- Webhooks: Run tasks automatically when events occur in your workflow.
API Example
curl -X POST https://api.claude.ai/code/remote \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"repo": "github.com/myorg/myrepo",
"branch": "feature/auth",
"prompt": "Review all changes in this branch for security issues",
"notify": "email"
}'7. Teleport
Teleport is a feature that lets you move a conversation seamlessly between interfaces. Start a conversation on the web, continue it on the desktop app, and finish it in the terminal — all without losing context.
How to Teleport
- In your current interface, click the share or teleport icon.
- Choose the target: Web, Desktop, or Terminal.
- A link or session ID is generated.
- Open the target interface and use the link/ID to resume.
What Transfers
- Full conversation history.
- All referenced files and their contents.
- Pending diffs and plan state.
- Session settings and preferences.
What Does Not Transfer
- Local file system access (terminal-specific).
- Active file watchers.
- Interface-specific settings (e.g., window size, panel layout).
8. Dispatch
Dispatch allows you to run multiple Claude Code sessions in parallel, each working on a different task, and collect the results.
Creating a Dispatch
Steps:
1. Open the "Dispatch" panel
2. Define multiple tasks:
- Task 1: "Add input validation to all API endpoints"
- Task 2: "Write unit tests for the auth module"
- Task 3: "Update API documentation"
3. Set constraints (e.g., "Do not modify existing tests")
4. Click "Dispatch All"
5. Monitor progress in the dispatch dashboard
Dispatch Dashboard
The dashboard shows:
| Column | Description |
|---|---|
| Task | The task description |
| Status | Running / Completed / Failed |
| Duration | How long the task has been running |
| Files Changed | Number of files modified |
| Actions | Review / Accept / Reject / Re-run |
Merging Dispatch Results
After all tasks complete, you can:
- Review each task's changes independently.
- Accept or reject changes per task.
- Merge all accepted changes into a single commit or PR.
- Resolve any conflicts between tasks.
9. When to Use Web vs Desktop vs Terminal
This is the key decision framework:
Comparison Table
| Feature / Need | Web | Desktop | Terminal |
|---|---|---|---|
| No installation needed | Yes | No | No |
| Works from any device | Yes | No | No |
| Local file access | No | Yes | Yes |
| Visual diff review | Best | Best | Basic |
| Multiple sessions | Yes | Yes | Manual |
| Scheduled tasks | Yes | Yes | Cron |
| Remote Control / API | Yes | Yes | Yes |
| Teleport between interfaces | Yes | Yes | Yes |
| Dispatch (parallel tasks) | Yes | Yes | Scripts |
| Offline capability | No | Partial | No |
| Native OS integration | No | Yes | Partial |
| Git integration | GitHub | Local+Git | Full Git |
| Scripting and automation | Limited | Limited | Best |
| Pipe input/output | No | No | Yes |
| SSH / remote server | Browser OK | No | Best |
| Keyboard-driven workflow | Moderate | Moderate | Best |
Decision Guide
Use the Web when:
- You are on a shared or public computer.
- You want the quickest start with zero setup.
- You need to share a session link with a colleague.
- You are reviewing code on a tablet or phone.
Use the Desktop app when:
- You want local file access without a terminal.
- You prefer a dedicated app over a browser tab.
- You need native notifications and system tray access.
- You work with drag-and-drop workflows.
- You want offline queuing of prompts.
Use the Terminal when:
- You are already in a terminal-first workflow (Vim, tmux, etc.).
- You need to pipe Claude's output to other commands.
- You want maximum scripting and automation control.
- You are working on a remote server via SSH.
- You want the deepest Git integration.
10. Tips and Best Practices
Tip 1: Start on Web, Graduate to Desktop
If you are new to Claude Code, start with the web interface. It requires no installation and gives you the full visual experience. Once you find yourself using it daily, install the desktop app for a faster, more integrated experience.
Tip 2: Use Dispatch for Large Tasks
Instead of asking Claude to do five things sequentially, use Dispatch to run them in parallel. This saves significant time, especially for independent tasks like writing tests, updating docs, and fixing linting errors.
Tip 3: Schedule Recurring Reviews
Set up a scheduled task to review your open pull requests every morning. This ensures you start each day with Claude's feedback already waiting.
Tip 4: Teleport for Context Switching
If you start debugging on your laptop (desktop app) but need to continue on the go (web), use Teleport to move the session seamlessly.
Tip 5: Organize Sessions by Project
Use tags and pins to keep your sessions organized. A cluttered session list makes it hard to find what you need.
Tip 6: Leverage Remote Control for CI/CD
Integrate Claude Code into your CI pipeline. Automatic code reviews on every PR catch issues before human reviewers even look at the code.
Tip 7: Use the Right Interface for the Task
Do not force one interface for everything. Use the comparison table above to pick the best tool for each scenario. The ability to Teleport between them makes switching painless.
Summary
Claude Code is not limited to the terminal. The web interface at claude.ai/code gives you a visual, no-install experience. The desktop app adds local file access, native notifications, and offline queuing.
Key capabilities across both platforms:
- Visual diff review with side-by-side and unified views.
- Multiple sessions running concurrently.
- Scheduled tasks for recurring automation.
- Remote Control for API-driven sessions.
- Teleport for seamless movement between interfaces.
- Dispatch for parallel task execution.
Choose the interface that fits your workflow, and remember: you can always Teleport between them.