WARSHALL
Docs/Agents/Subagents

Subagents

An agent can start subagents to work in parallel. Each one spends usage of its own, so one turn can quietly become several. Warshall lets a run start subagents only on models you have shortlisted, and counts them against a limit per turn.

The shortlist

Settings > AI Providers has a Subagents row on the Claude tab and on the Codex tab. It lists the models and reasoning levels that provider may start subagents on. The row appears once the provider’s command line tool is installed and an account for it is linked.

  • Add subagent opens a list of the provider’s models, each with its reasoning levels. Pick one and it appears as a chip showing the model and the level.
  • The x on a chip removes it from the list.

A model and level that is not on the list is never used as a subagent for that provider. An empty list allows nothing, so every subagent that provider tries to start is refused.

A fresh install starts with empty lists. Warshall fills them from its own recommended shortlist for your plan and keeps them current, until you edit a list yourself. From then on that provider’s list is yours, and the app leaves it alone.

How each provider is held to it

The rule is the same for every provider. How it is enforced differs, because the tools offer different controls.

Claude Code

When Claude asks for a subagent on a model that is not shortlisted, the request is not refused. The subagent runs on the first model of the shortlist instead, so the turn carries on.

A fork always runs on the same model as the agent that made it. So a fork is allowed only when that model is itself shortlisted. Otherwise it is refused, and the reason names the model.

Claude’s subagent tool takes no reasoning level, so the level on a Claude chip is for your reference only.

Codex

Every Codex run is started with the shortlist in its settings. The first shortlisted model and level become the default for its subagents, and the limit per turn becomes how many it may run at once. An empty shortlist switches Codex’s subagent tools off, so they are never offered.

A subagent that names a model or level that is not shortlisted is refused.

Local endpoint models

The loop that runs local endpoint models has no subagent tool, so they never start subagents.

How many per turn

Settings > Harness > Stop losses has Subagents per turn, 5 by default. It applies to every provider. When a turn goes over it, the stop loss card counts down with a Keep running button, the same as the other limits. Set it to 0 to turn this limit off.

Claude’s subagents are counted from the run’s own output. Codex does not report them there, so each one is counted as it passes the approval gate.

A refused subagent

A refused subagent shows in the terminal as a Blocked line marked not a shortlisted subagent. The agent is told which model it asked for and which models are shortlisted, so it can pick again. See Approvals for the rest of the gate.