From recursio
Core principles for recursive multi-agent development — nesting, scope ownership, TDD, context flow, token economics.
How this skill is triggered — by the user, by Claude, or both
Slash command
/recursio:recursive-developmentThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Decompose work into waves of parallel nested subagents. Works for greenfield and existing codebases. Each wave completes before the next starts. Within a wave, independent modules run in parallel. No depth limit on nesting.
Decompose work into waves of parallel nested subagents. Works for greenfield and existing codebases. Each wave completes before the next starts. Within a wave, independent modules run in parallel. No depth limit on nesting.
For existing projects, Wave 0 extends established patterns rather than creating from scratch.
Default to nesting. Each nested agent has smaller context — faster and cheaper per-agent. A flat agent juggling 7 files costs more than 3 focused agents each handling 2-3 files.
Nest when a module contains distinct algorithms or domains. Stop when atomic (single concern, single file). Split by algorithm or domain, not by testability alone.
The same principle applies at every level of recursion:
Split (distinct algorithms or domains):
Don't split (steps in one operation, or trivial wrappers):
| Role | Scope | Spawns when... |
|---|---|---|
| Orchestrator | Shared files + wave sequencing | Always |
| Module agent | Directory scope | 2+ testable concerns |
| Component agent | File set scope | Separable sub-concerns |
| Leaf agent | Single file pair | Never — implements directly |
| Level | Recommended model |
|---|---|
| Orchestrator | opus — decomposition, contract design |
| Module/component | sonnet — focused, contract-constrained |
No two parallel subagents may touch the same file.
| Level | Typical scope |
|---|---|
| Wave | Directory (src/config/) |
| Module | Directory or file set |
| Sub-component | File set (['parser.ts', 'parser.test.ts']) |
Directory scope: agent creates any files under it. File set scope: agent touches only listed files. Shared files (types, index) owned by parent wave, read-only after.
Before dispatching: assign scopes, verify zero overlap, create shared files first.
At levels with multiple concerns, delegate steps 2-4 to child agents.
Down: contracts, ownership scope, dependency interfaces. Up: pass/fail, interface change requests, files created. Never down: full plan, other modules' code. Never up: internal decisions.
More agents with less context each > fewer agents with large context. Pass minimal context — contract and ownership only. The orchestrator is the most expensive agent; keep it thin.
Spawn recursive-implementer for all module agents. Children use the same type. Style contract propagates down the tree. Prompts stay minimal — the agent definition carries the rest.
npx claudepluginhub jartan-llc/grimoire --plugin recursioProvides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.