Skip to content
All Docs pages

Squads

Roles

The editable half of a squad member's system prompt. Fleet owns the wiring, you own the working style.


Every squad member's system prompt is built from three parts:

Claude Code preset  +  Fleet's protocol for the role  +  your role file

The protocol is not editable

Fleet's half names the mcp__fleet__* tools and states the invariants: one round is one feature, work reaches the orchestrator only through a merge, an agent that requested review is stopped until it is answered.

That half is fixed because a role file which renamed a tool or dropped the merge rule would break the machinery rather than change the behaviour. It would not produce a differently opinionated squad, it would produce a squad that does not work.

The role file is yours

Everything about how an agent should work, and who it answers to, lives in a markdown file you own. Fleet ships defaults, writes them to disk on first run, and lets you edit them in Settings. There is a reset to default if you go too far.

Role files are read fresh at every query start, so an edit applies to the next session without restarting the app.

What the defaults say

The orchestrator role covers reading the repository before choosing agents, choosing the agent count from the work rather than from habit, writing briefs that stand alone, establishing shared contracts before parallel work, asking you what is genuinely yours to decide, reviewing on evidence rather than on an agent's own claim, merging as work lands, and verifying the combined result.

The worker role covers staying inside the brief, honouring interfaces the orchestrator fixed, committing, leaving the tree building, and handing back with an honest summary of what was and was not finished.

What is worth changing

Good candidates:

  • Your team's conventions: commit message style, test expectations, what "done" means.
  • How aggressively to split work. Some codebases have clean seams, most do not.
  • The tone and length of briefs.
  • When the orchestrator should ask you rather than decide.

Less good: anything that tries to work around an invariant. If the role file and the protocol disagree, you will get an agent that keeps trying something Fleet keeps refusing.