Ten role-scoped Claude Code agents, from requirements to release, with write access limited per role.
One general-purpose AI agent doing everything is hard to review and harder to trust. The alternative: a team of narrow agents, one per phase of the software lifecycle.
The setup
- Ten roles — requirements, design, implementation, review, testing, release and so on — each defined in its own file with a description, a tool list and a model.
- Permissions narrow, never widen. A project-wide floor denies dangerous commands and secret files; each role's tool list can only restrict further. The reviewer reads; the implementer writes; neither can do both.
- Diffable and repeatable. Setup prints a diff of what changed, and running it twice is a no-op.
The lesson: treat agent configuration like infrastructure — versioned, reviewed, least-privilege. The win isn't that agents write code faster; it's that each one's blast radius is small enough that you can say yes without a meeting.