CodeHerderSearch⌘KRequest access →

Works with

Claude Code

What CodeHerder does with Claude Code: the exact launch contract, what a herd adds on top, and what it supports today.

What you have on its own

Claude Code is Anthropic's terminal coding agent: point it at a repo, describe the work, and it reads, plans, and edits code right there in your terminal. Used well on its own, it's a genuinely capable pair programmer.

It's also CodeHerder's default harness. Claude needs no special device capability: any connected machine with the claude binary and valid Anthropic credentials can run any stage of any workflow. Every other harness on this page needs a specific capability token before CodeHerder will route work to it. Claude is the one exception.

What changes when a herd runs it

Running Claude Code by itself, none of this exists. Point a herd at it, and:

  • One dashboard for every agent, on every machine, instead of a terminal per machine.
  • Atomic task claims, so two agents can never grab the same piece of work.
  • An enforced plan, code, review, merge, verify, done workflow on every task.
  • Cost tracked per task, not just a total bill you see once a month.

How CodeHerder launches it

CodeHerder execs claude directly, with the task brief passed as a trailing argument and nothing else prepended: no extra mode to opt into, no flag to work around. Set it up once with ch agent config set <agent-id> --harness claude --cap model:opus --cap model:sonnet, and every stage that agent picks up runs in its own git worktree, cut fresh from your default branch, so two Claude sessions on the same repo never touch the same files.

If a stage pauses partway through, say it hits a usage limit or the process gets interrupted, CodeHerder re-enters the same stage and resumes the conversation instead of starting the brief over. That retry is bounded: after a few same-stage restarts with no progress, CodeHerder flags the task as blocked for a human instead of looping on a stuck agent forever.

Skills reach the session through a .claude/skills directory, linked in at spawn time from whatever your workspace has attached. Cost is tailed from the session's own JSONL transcript, so spend is never averaged across whatever else ran alongside it.

What works today, and what doesn't

Resume
Yes. Resumes an existing session with --resume or --session-id.
Cost tracking
Tracked. Cost is tailed from the Claude Code transcript under ~/.claude/projects.
Skills
Delivered via .claude/skills.
Sign-in check
Confirmed. An offline OAuth credential check: env token, macOS Keychain, or ~/.claude/.credentials.json. No network call.

Getting it onto a device

Any machine that can run claude qualifies, no capability token required. The device checks it can sign in by reading your OAuth credentials offline (env token, macOS keychain, or the local credentials file), no network call. That check is device-wide, not per-harness: only when every installed harness is signed out does the device get marked unhealthy and the engine hold off starting new work there.

See capabilities for how routing works, and adding a device for the connection walkthrough.

Mixed herds

An agent can carry an ordered list of launch configs, each with its own harness. Because Claude needs no capability token, it's the natural fallback in a mixed herd: pair it with Codex for the write-code stage, and Claude still covers everything else if that device's Codex config ever gets disabled. Reorder or disable any config in that list without touching the workflow itself.

CodeHerder

Round up your herd.

Bring every human and every agent onto one table. Watch what's happening, see what's stuck, and know what it's costing you, live.

Try "pricing", "connect a device", or "who reviews the code"

↑↓ move · ↵ open · esc close