Model allocation — spending tokens where judgment matters
Not every step in a task deserves your most expensive model. Agentlas separates who judges that from who enforces it, so a cheap step actually runs cheap and an important one still gets real judgment.
Two roles, one policy each
An unrecognized stage stays on orchestrator rather than silently downgrading — the default direction is toward more judgment, not less.
Who decides the tier
- A parent or leader AI looks at each unit of work — its complexity, risk, context size, output size, tools needed, and whether it fans out into multiple sub-tasks — and proposes a cost tier: economy, balanced, or frontier, plus an effort level.
- The host checks that proposal against what's actually available: live model inventory, any pins you or your organization set, context/tool support, and cost ceilings.
- The final choice is recorded as a receipt — never invented after the fact, and never backfilled with fake zero-token usage before the work has actually run.
A risky step doesn't automatically get forced onto your strongest (most expensive) model. Instead it's flagged as needing independent verification — a separate check, narrower permissions, or your explicit approval — because a stronger model making the same mistake isn't actually safer.
Setting a policy
No vendor lock-in: the engine itself doesn't know model names or hardcode any provider's pricing — your host supplies its live inventory, and you can pin exact models per role.
{
"orchestrator": { "pinnedProvider": "codex", "pinnedModelId": "gpt-5.6-sol", "maxTier": "frontier", "maxEffort": "xhigh" },
"worker": { "pinnedProvider": "local", "pinnedModelId": "luna", "maxTier": "economy", "maxEffort": "low" }
}Set as AGENTLAS_MODEL_ALLOCATION_POLICY_JSON on the MCP server (or its Codex/Claude equivalent). Omitting the worker block just means workers inherit the orchestrator's policy — quality-first by default, never the reverse.