Split out from #54 (sub-ask 2), confirmed by @cndjonno.
Goal: let little-coder use a different model per phase — e.g. a big model for planning, a small one for implementation — instead of inheriting one active model across everything. @cndjonno's framing:
Plan is one model (or hook) and implementation is another, both could point to the same model if the user desires, or auto-default the Plan model as the Action model if only one is defined.
Where it stands today
Plan Mode's explorer sub-coders inherit the parent's active model (currentModelId(ctx) in subagent/index.ts). You can already do this manually — set the parent to your big model with ctrl+P, run Plan Mode, switch the parent to your small model, then "Approve & implement". The ask here is to make that split automatic/declarative.
Design questions to settle
- Phases that could each take a model: Plan Mode's research sub-coders, the synthesis (plan-writing) turn, the implementation turn, and (later) individual dispatch sub-coders. Which deserve their own knob vs. collapsing into just "plan model" + "action model"?
- Configuration surface: env vars (
LITTLE_CODER_PLAN_MODEL / LITTLE_CODER_ACTION_MODEL) vs. an annotation in models.json vs. a /-command picker with autocompletion over the configured models.
- Default: if only one model is defined, the plan model auto-defaults to the action model (good for new-user setup).
- Out of scope (for now): per-subagent model assignment (OCR task → tiny model, web review → vision model, etc.) — noted as a future consideration, not part of the first cut.
Stretch (from the thread, explicitly future)
Action model → multiple sub-agent models, e.g. a tiny model for OCR, a vision model for "review this website", a general model for most skills.
Not committing to a shape yet — opening this to collect interest and converge on the config surface before building. Thoughts welcome.
Split out from #54 (sub-ask 2), confirmed by @cndjonno.
Goal: let little-coder use a different model per phase — e.g. a big model for planning, a small one for implementation — instead of inheriting one active model across everything. @cndjonno's framing:
Where it stands today
Plan Mode's explorer sub-coders inherit the parent's active model (
currentModelId(ctx)insubagent/index.ts). You can already do this manually — set the parent to your big model with ctrl+P, run Plan Mode, switch the parent to your small model, then "Approve & implement". The ask here is to make that split automatic/declarative.Design questions to settle
LITTLE_CODER_PLAN_MODEL/LITTLE_CODER_ACTION_MODEL) vs. an annotation inmodels.jsonvs. a/-command picker with autocompletion over the configured models.Stretch (from the thread, explicitly future)
Action model → multiple sub-agent models, e.g. a tiny model for OCR, a vision model for "review this website", a general model for most skills.
Not committing to a shape yet — opening this to collect interest and converge on the config surface before building. Thoughts welcome.