Open subagent definitions
generated, not hand-written
The subagentjobs
monorepo does not hand-edit its Claude Code sub-agent files. Every YAML under
.claude/agents/ is generated from one typed Rust source of truth — so an agent's
model, tools, and prompt are compiler-checked data, not free-form markdown that drifts.
The 10 generated agents
| agent | model |
|---|---|
a2a-bridge | claude-sonnet-4-6 |
cargo-check | claude-haiku-4-5-20251001 |
crawl-manager | claude-haiku-4-5-20251001 |
crawler | claude-haiku-4-5-20251001 |
deployer | claude-haiku-4-5-20251001 |
design-coworker | claude-sonnet-4-6 |
engineering-coworker | claude-fable-5 |
indexer | claude-haiku-4-5-20251001 |
migrator | claude-haiku-4-5-20251001 |
vendor-sync | claude-haiku-4-5-20251001 |
Baked 2026-07-09 from the real generated files:
grep -E '^(name|model):' .claude/agents/*.yaml. Static page — regenerate the
agents and this table drifts until the next authoring pass; the live, queryable catalog is
subagentcode.com.
The generation chain
crates/schema/src/agent.rs— typedAgentConfig/AgentModel/AgentToolenums withvalidate()andto_yaml(). A model id that isn't an enum variant does not compile.cargo run -p agent-gen—crates/agent-gen/src/agents.rs'sall_agents()declares the 10 agents and regenerates every YAML..claude/agents/*.yaml— the generated output Claude Code actually loads.
One real consequence of the typing: when Claude Fable 5 access was restored (2026-07-01),
adding it meant adding a Fable5 variant to the enum — and exactly one agent,
engineering-coworker (the one that executes deploys, git pushes, and D1 writes
on a real Mac), was upgraded to it. The other agents deliberately stayed on Haiku/Sonnet.
That decision is visible in the table above.
What "open" means here
Honestly scoped: open means the definitions are public in the repo —
readable source (agents.rs), readable output (.claude/agents/*.yaml),
and a public JSON API over the catalog at
subagentcode.com (GET /api/agent-definitions).
It is not a registry accepting outside submissions, and the agents themselves run against this
repo's own infrastructure.