feat(model-router): wave 4-B — prompt classifier
Plain composer prompts with no route in force get a turn-scoped effort from $.model.classify (design/analysis/coding/bookkeeping/chat → phase effort, effort only, never the model). Bounded by a 3 s clock race, a user interrupt neither counts nor writes, three failures in a row pause it for cooldownMinutes (one toast, status marker, cleared by /route reload). No dialog, no routing.json write on a classified route. New Config key `classify` (default on, pickSwitch), `/route classify on|off` session toggle, `/route show` line and argumentHint. An explicit user /effort beats the guess (engineBase check). Docs: README classifier paragraph, USAGE row + sentence, CHANGELOG, effort-shift.md. Kit suite 428 tests.
This commit is contained in:
@@ -47,6 +47,8 @@ Builtin `/effort` is NOT a lever inside a run: rows and routes outrank it.
|
||||
- A skill typed while a background agent is live routes only through the
|
||||
typed marker (unverified live 2026-10-10).
|
||||
- Headless (`-p`, SDK) runs the hooks, so routing works there too.
|
||||
- A plain typed prompt with no route in force gets its turn effort from a
|
||||
small-model classifier (effort only; `/route classify off`; never `-p`).
|
||||
- Mod off: typed agents fall back to their `model:`/`effort:` frontmatter.
|
||||
- First use of a row asks once, with context (Later, Keep or Change: model,
|
||||
then effort, then Everywhere or this project only); the answer is kept in
|
||||
|
||||
Reference in New Issue
Block a user