The self-hosted workspace for coding agents

Garcon

One workspace. All your machines.

Run coding agents on Local and remote executors. Keep conversations, files, terminals and Git together, with control over where the work happens.

Open source. Self-hosted. Your existing agent logins and API keys.

Garcon example workspace with a chat list, conversation and Chat Map showing delegated conversations side by side.
Workspace example from an earlier build, with demo content. Current multi-machine capture is pending.

Bring the agents you already use

  • Claude Code
  • Codex
  • Cursor Agent
  • OpenCode
  • Amp
  • Factory Droid
  • Pi

01 / Execution

Your projects don't all live
on the same machine.

Neither should your workflow. Keep a local checkout, a remote development machine and a model host in one workspace. Select an executor; its files, credentials and tools stay on that machine.

Meet controllers and executors →
Your browserOne workspace
HTTPS + WebSocket
Garcon controllerAccount, chats, tickets, schedules
Local executorRuns on the controller's machine
Encrypted executor connections
Development machineAgents · Files · Git · Terminals
Build or GPU machineAgents · Files · Git · Terminals
The controller coordinates. Each executor uses its own filesystem, credentials and tools.

One controller

A single place for conversations, tickets, schedules and configuration.

Explicit placement

Choose the machine and project. Work never silently falls back to Local.

Two connection directions

Let workers connect outward, or connect the controller to a worker listener.

03 / Coordination

Automation you can inspect.

CLI starts become ordinary visible chats. Add companion skills for delegation, messages, schedules and specialist review. Inspect the transcript, intervene when needed, and keep the result connected to its source.

Explore Garcon Skills →

Start work on a selected machine

bun cli/main.ts start-async \
  --executor <executor-id> \
  --cwd /srv/project \
  --agent codex --model <model-id> \
  'Review the changes without editing files.'
Read the CLI manual →

Start with one machine

A workspace that runs
where you do.

Install a controller. Connect an agent. Add remote executors when the work calls for them.

Open the quickstart →
git clone https://github.com/cfal/garcon.git
cd garcon
bun run setup
bun run start

Tracks main. Bun and Git required. Prefer Docker?