Default model: add Auto so routine agents run on a cheaper model and the office lasts longer on one plan
Maintainers usually reply within 2 days
@agentvivekkumar is already working on this.
Since Oct 10, 2026.
Assessment
This issue has not been assessed yet.
Description
Problem / motivation
I opened Settings on a fresh install (Windows 11, v0.1.5). Default agent model is one choice for every newly spawned agent, and mine is Opus 5.5 · 1M. The Circuit Breaker budget fields are empty by default, so nothing limits spend either. Every agent I add starts on that same top tier model, including ones that only do routine work.
In the code, the model is picked once when an agent's terminal starts (src/main/index.ts ~L3498-3504):
- an explicit per agent - model wins;
- otherwise Michael gets modelForRole(...) (his godModel);
- otherwise every other agent gets cfg.defaultModel ?? modelForRole(...).
So once defaultModel has a value (it is claude-fable-5 in config.ts, and a model is always highlighted in Settings), the role based tiers in modelForRole (config.ts ~L818) never run for non Michael agents. That function already maps narrow helpers (triage, routing, verify, summarise) to Haiku and general workers to Sonnet. A scheduled job such as "Inbox to zero" runs inside an agent's existing session, so it uses whatever model that agent started with.
A per agent model picker already exists in the Command Center, but it starts every agent on the same default, so an owner has to switch each agent by hand to save usage, and the app's own role based choice (modelForRole) is never used for them.
The office needs a Max plan to run all day, and TODOS.md lists plan-limit handling as P1, so cost per agent matters.
One detail to confirm the Settings text says "Michael included", but index.ts ~L3500 special cases Michael to godModel, so the default may not apply to him.
Proposed solution
- Add Auto as a choice in Settings > Default agent model, and make it the default for new offices.
- With Auto selected, skip cfg.defaultModel at index.ts ~L3503-3504, so non Michael agents use modelForRole (helpers on Haiku, workers on Sonnet). Michael keeps godModel.
- Keep the existing explicit choices working exactly as today, and keep a per agent model choice as the top priority.
- Show the resolved model next to each agent in the Command Center ("runs on Sonnet 4.6, from its role"), so the owner can see what Auto picked.
It costs no model usage, adds nothing to Michael's prompt, and only changes which model flag is passed at spawn.
Evidence first, as a separate first PR for each agent spawn, log which model was chosen and why (explicit, default, or role). A week of that shows how many agents run on a top tier model that modelForRole would have put on Sonnet or Haiku, before anything changes.
Plan: two PRs
- Measure: one log line per agent spawn with the chosen model and the reason. No behaviour change.
- Auto: the Auto choice in Settings, the one line skip of cfg.defaultModel in index.ts, the resolved model label in the Command Center, and node:test cases (helper -> Haiku, worker -> Sonnet, explicit per agent model wins, Michael keeps godModel).
Open question for the owner: a different model for each scheduled job would be more precise, but a job runs inside an existing agent session, so it would need a restart or an in session model switch per run. I'd leave that for later and ship Auto first.
Screenshot, mockup or recording
No response
Alternatives considered
- Tell owners to choose a cheaper default for everyone but this also downgrades agents that need a stronger model, and puts the tuning on the owner.
- Let Michael pick models per task and this spends usage on the decision and adds to his prompt.
- Only show usage numbers which explains the problem but does not reduce it.
Area
Onboarding / config
Pre-flight
- I attached a screenshot, mockup or recording above.
- I searched existing issues and discussions, and this isn't a duplicate.
- Dominant language
- TypeScript
- Stars
- 273
- Forks
- 211
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 385
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from agentvivekkumar/dontbemichael
-
auto-report
Difficulty 4/5 3-5 days Newbie friendliness 35/100
agentvivekkumar/dontbemichael#667 · 2 comments ·
Maintainers usually reply within 2 days
-
auto-report
Difficulty 4/5 3-5 days Newbie friendliness 35/100
agentvivekkumar/dontbemichael#665 · 2 comments ·
Maintainers usually reply within 2 days
-
auto-report
Difficulty 4/5 1-2 days Newbie friendliness 35/100
agentvivekkumar/dontbemichael#661 · 3 comments ·
Maintainers usually reply within 2 days
-
Difficulty 5/5 Over a week Newbie friendliness 28/100
agentvivekkumar/dontbemichael#607 · 1 comment ·
Maintainers usually reply within 2 days
-
Give Fable a tier and a pricePossibly taken @sahibsiddiqui claimed this 11 days ago. Openenhancement
Difficulty 2/5 1-3 hours Newbie friendliness 15/100
agentvivekkumar/dontbemichael#556 ·
Maintainers usually reply within 2 days
All issues in agentvivekkumar/dontbemichael
Similar issues
-
triage
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
🎙️ task - drop the raw `./node_modules/.bin/rhachet roles boot` line from bhuild's feedback templateOpen
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
ehmpathy/rhachet-roles-bhuild#639 ·
Maintainers usually reply within 1 day
-
e2e-failure ready-to-code
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
redhat-developer/rhdh-plugin-export-overlays#4650 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Maintainers usually reply within 13 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
omdsh-dev/DSH-better-sidebar#1098 ·
Maintainers usually reply within 2 days