Claude Harness is a self-hosted platform that gives each user a private AI coding assistant — Claude Code — running in an isolated Docker container, reachable over Discord, with one-click publishing to Cloudflare Pages.

A single operator deploys the shared infrastructure once. Each new user gets a VM URL, opens the setup wizard, and is coding in minutes — no terminal, no credentials to manage, no operator involvement.

How it fits together

┌──────────────────────────────────────────────────┐ │ Hub VM │ │ │ │ ┌─────────────────┐ ┌──────────────────────┐ │ │ │ Publish Server │ │ Messaging Router │ │ │ │ (port 3002) │ │ (port 3923) │ │ │ │ │ │ │ │ │ │ Cloudflare │ │ Discord Gateway │ │ │ │ Pages deploy │ │ → per-VM relay │ │ │ └─────────────────┘ └──────────────────────┘ │ └──────────────────────────────────────────────────┘ ↑ ↑ │ HTTPS │ SSE relay ┌──────────┴────────────────────────┴─────────────┐ │ User VM (exe.dev) │ │ │ │ ┌─────────────┐ ┌──────────────────────────┐ │ │ │ Harness │ │ Project Container │ │ │ │ Dashboard │ │ (Docker) │ │ │ │ (port 443) │ │ │ │ │ │ │ │ Claude Code │ │ │ │ Setup │ │ + Messaging Plugin │ │ │ │ Wizard │ │ + User's code │ │ │ └─────────────┘ └──────────────────────────┘ │ └─────────────────────────────────────────────────┘ ↕ Discord DMs User's phone / desktop

Components

ComponentWhere it runsWhat it does
Harness User VM Dashboard UI, project management, setup wizard, preview proxy
Project Container User VM (Docker) Isolated workspace per project; Claude Code runs here
Messaging Plugin Inside each container MCP server that connects Claude Code to the messaging router
Messaging Router Hub VM (shared) Single Discord bot connection; routes DMs to the right container
Publish Server Hub VM (shared) Accepts build archives from harness VMs; deploys to Cloudflare Pages

What a user experiences

  1. Open the wizard Visit the VM URL — the setup wizard appears automatically on first access.
  2. Authenticate Claude Click "Connect Claude", open the Anthropic sign-in link, paste the token back. Done.
  3. Connect Discord DM the bot the pairing code shown on screen. The dashboard confirms within seconds.
  4. Start building Claude messages you on Discord saying it's online. Chat naturally — describe what you want to build, ask questions, request changes.
  5. Publish Click Publish in the dashboard. The harness builds the project and sends you the *.pages.dev URL on Discord.