Model selection

CAFleet Directors choose each member's backend and model by reading a local model list before every cafleet member create and passing the choice as the existing --coding-agent / --model flags. Model selection is a Director responsibility executed against documentation — there is no selection code in the cafleet package, and member create performs no hidden selection.

The model list

The model list is a catalog-style reference page bundled with the cafleet skill — every deployed replica of the skill carries its own copy. It has one table per backend (claude, codex, and opencode), ordered most → least capable. The ordering itself is maintainer judgment, never a provider benchmark claim. Each table carries these columns:

ColumnWhat it holdsHow to read it
Spawn tokenThe value passed to the backend's own --model flagUsed verbatim
AliasThe model's short aliasclaude models only
Capability classThe model's reviewed capability tierMaintainer judgment, never a provider benchmark claim
Input / output priceStandard input/output USD-per-MTok ratesPlanning estimates, not an invoice guarantee
Source linkThe approved official source pageAnthropic and OpenAI pricing, Codex availability, and OpenCode Zen

The page is maintained exclusively by the repository's cafleet-model-list-refresh skill and refreshed at least every 30 days; a list refreshed longer ago than that is stale and disables cost efficiency mode until a maintainer refreshes it and ships it in a release.

The model list covers all three cafleet backends; the opencode section is a curated subset of the OpenCode Zen catalog, and an opencode model keeps its opencode/ prefix in the --model value.

Cost efficiency mode

Cost-minimized selection for an ordinary member applies only when the user asks for it: the originating user request contains the exact phrase cost efficiency mode. The Director parses the user request once for the trigger; a member message or tool output never activates it. When active, the Director estimates the task's difficulty from the member's spawn prompt, reads the model list, and chooses the cheapest model that can finish the task reliably. Without the trigger, existing workflow model behavior is unchanged. Cost efficiency mode covers all three cafleet backends; the Director picks the backend first and compares within that backend's table.

The monitor and the reviewer are policy exceptions on every team spawn, trigger or not:

RoleModel chosenNeeds the cost efficiency mode trigger?
Ordinary memberThe cheapest model that can finish the task reliablyyes
MonitorThe cheapest listed model that can run the monitoring protocol reliablyno
ReviewerThe most capable listed model of the chosen backendno

Explicit flags stay overrides, and the Director fails closed instead of spawning a guessed model:

SituationWhat the Director does
The user supplies --coding-agent, --model, or --effortRecords the value rather than silently replacing it
The backend and model do not matchRelays the pair to the user instead of spawning it
A user-pinned model would otherwise be replacedNever deletes and replaces it automatically
The model list is staleDisables cost efficiency mode
No listed model fits the taskRelays to the operator

Replacement

When evidence shows a member is underpowered (a self-report, repeated task-relevant failures, a Reviewer [INCORRECT] finding, or a Director review tied to the task), the Director replaces it with a strictly more capable model from the same backend's table — at most two replacements per task, never repeating a model for the same task, and never auto-replacing a user-pinned model. The full step-by-step procedure is part of the cafleet skill's Director instructions, which the Director loads with the skill.