Claude Code is Anthropic's terminal-based AI coding agent. It reads your codebase, writes code, runs commands, and manages git. Most guides tell you to set up a VPS, install Node, configure SSH, harden the firewall, and then install Claude Code. On Zo, it's already there.
Why run Claude Code on Zo
Your Zo is a full Linux server in the cloud. Claude Code is pre-installed. That means:
- No VPS setup. No provisioning, no firewall rules, no OS hardening.
- No installation. Claude Code is already at
/usr/bin/claude, ready to go. - Zo's AI works alongside it. Your Zo has its own AI with web search, Gmail, Calendar, file management, image generation, and 100+ other tools. Claude Code handles the coding. Zo handles everything else.
- SSH access from any IDE. Connect VS Code, Cursor, or Windsurf to your Zo and run Claude Code inside the remote terminal.
What you'll need
- A Zo Computer account (any tier)
- A Claude Pro, Max, or Team subscription (for OAuth login), or an Anthropic API key
Step 1: Open Zo's terminal
Click the terminal icon in the left sidebar of your Zo workspace. You're now on your cloud machine.
Step 2: Launch Claude Code
claudeThat's it. First launch will prompt you to authenticate.
Step 3: Authenticate
You have two options:
Option A: OAuth login (Claude subscription)
When Claude Code prompts you, select "Sign in with Claude." It opens a browser link. Click it, log in with your Anthropic account, and you're authenticated.
Option B: API key
If you prefer using an API key, go to Settings > Advanced in Zo and add a secret:
ANTHROPIC_API_KEY = your key from console.anthropic.com
Then launch Claude Code. It picks up the key automatically.
Don't paste the key into chat. Use the Secrets panel.
Step 4: Start coding
Navigate to your project directory and run claude. It reads your codebase and you're pair-programming.
cd /home/workspace/my-project
claudeCommon things to try:
- "Read this codebase and explain the architecture"
- "Fix the failing test in src/auth.test.ts"
- "Add a REST endpoint for user profiles"
- "Refactor this file to use async/await"
Claude Code writes the code, runs it, checks the output, and iterates until it works.
Step 5: Connect your IDE (optional)
If you prefer coding in your local IDE while Claude Code runs on your Zo, set up SSH:
Your Zo configures SSH and gives you a public address like ts1.zocomputer.io:10991. Add it as a remote host in VS Code, Cursor, or Windsurf.
Now you can edit files in your IDE while Claude Code runs in the remote terminal. Same machine, same filesystem.
For the full IDE setup, see How to Connect Your IDE to a Remote Server.
Using Claude Code and Zo together
This is the part that matters. Claude Code is good at coding. It's not good at sending emails, managing your calendar, searching the web, generating images, or hosting websites. Your Zo does all of that natively.
A typical workflow:
- Ask Claude Code to build a feature
- Ask your Zo to deploy it to zo.space
- Ask your Zo to text you when it's live
- Ask Claude Code to write tests for it
- Ask your Zo to set up a daily agent that monitors the deployed service
Two AI systems, one machine, no context-switching. For a deeper look at running multiple coding agents (including Codex CLI and Gemini CLI), see How Zo Runs AI Coding Agents.
Run Claude Code headless
Claude Code supports a headless mode (claude -p) where it runs non-interactively. That means your Zo can launch and control Claude Code sessions on your behalf, with no terminal interaction needed.
The simplest version:
Run Claude Code headlessly with the prompt "Read the codebase in /home/workspace/my-project and fix any failing tests"
Your Zo starts a Claude Code session, passes the prompt, and reports the results when it's done.
Headless mode with worktrees and PRs
The real power is combining headless Claude Code with git worktrees so it works in an isolated copy of your repo, then opens a PR when it's done. Here's a prompt you can paste directly:
Run Claude Code headlessly in an isolated git worktree, then create a PR.
Task: [describe what Claude should do] Repo: /home/workspace/Code/zorepo1
Instructions:
- Create a worktree from origin/main with a timestamped branch name under /tmp/worktrees/
- Run
claude -pwith my task in that worktree directory - If there are changes, commit, push, and create a PR with
gh pr create - Clean up the worktree when done, whether it succeeded or failed
- Return the PR URL
Your Zo handles the git orchestration: creating the worktree, running Claude Code inside it, committing the result, and opening the PR. Claude Code does the coding in a clean, isolated branch. You get a PR link back.
This makes powerful automations possible:
Create an agent that runs every morning at 6am. Have it launch Claude Code in a worktree to pull the latest changes, run the test suite, and text me if anything fails. If tests fail, have Claude Code fix them and open a PR.
Run Claude Code headlessly in a worktree on zorepo1: "Refactor src/api/routes.ts to use the new middleware pattern from src/middleware/auth.ts." Open a PR when done.
Your Zo orchestrates the session. Claude Code writes the code. The PR appears in GitHub. You review it from your phone — or get a text or Telegram message with the PR link.
Give Claude Code access to Zo's tools
By connecting Claude Code to the Zo MCP server or the Zo/Ask API, Claude Code gains access to everything your Zo can do: web search, email, calendar, file management, image generation, and 100+ other tools.
Set up the connection:
Once connected, Claude Code can do things it normally can't:
- Search the web for documentation while coding
- Send you an email when a long-running task finishes
- Pull context from your Google Drive
- Generate images for a frontend component
- Deploy the project to zo.space when it's ready
Claude Code handles the code. Your Zo handles everything around it. Connected via MCP, they work as one system.
Troubleshooting
- "claude: command not found": This shouldn't happen on Zo. If it does, run
which claudeto check. If missing, runnpm install -g @anthropic-ai/claude-code. - Authentication fails: Make sure your
ANTHROPIC_API_KEYis saved in Settings > Advanced, not pasted in chat. Or use OAuth login instead. - Session disconnects: If you close the terminal, Claude Code stops. For persistent sessions, use
tmux: runtmux, thenclaudeinside it. Detach withCtrl+B, D. Reattach later withtmux attach. - Want to use a different model: Run
/modelinside Claude Code to switch between Claude models. - Conflicts with Zo's AI: There are none. They're separate processes. Zo's AI operates through the chat interface and scheduled agents. Claude Code operates through the terminal. They share the same filesystem but don't interfere with each other.
- Want other agent frameworks? You can also run OpenClaw or Hermes Agent on the same machine alongside Claude Code.
More tutorials
How Zo Runs AI Coding Agents for You
Zo can launch and orchestrate Claude Code, Codex CLI, and Gemini CLI in headless mode. Your Zo handles the git, the scheduling, and the delivery. The coding agent handles the code.
How to Run Hermes Agent on Zo
Run Hermes Agent on Zo Computer. Install the self-improving AI agent framework, connect it to Telegram or Discord, and bridge Zo's 50+ tools into Hermes.
How to Run OpenClaw on Zo
Run OpenClaw on Zo Computer. Install, configure Tailscale access, connect 50+ tools, and get your AI agent live on Telegram, Discord, or WhatsApp.
How to Connect Your IDE to a Remote Server
Set up SSH access to your Zo Computer and connect VS Code, Cursor, or any IDE for remote development. Code on a powerful server from anywhere.
How to Run VS Code in Your Browser
Set up VS Code Server on your own cloud server and access your development environment from any browser. A self-hosted alternative to GitHub Codespaces and Gitpod.
GitHub for Vibe Coders
A plain-English guide to GitHub for non-technical builders shipping AI projects. Ask your Zo to connect, commit, and roll back without learning Git.