hive-runtime, hive-agent: model/effort picker for ACP agents from configOptions
An ACP agent's model and effort pickers now list what its session offers (its `model` and `thought_level` config options) instead of the claude model list and EFFORT_LEVELS. A pick goes through the same Bus::set_model / Bus::set_effort -> Config.model / Config.effort path as on claude; before each prompt the ACP runtime sets it with `session/set_config_option`, model first, and only when the session offers that value. Options are re-read from the set response and from `config_option_update`, so the effort picker disappears when the chosen model offers no effort levels, and is hidden while a newly picked model waits for the next turn. The session's options reach the web UI through a `Choices` handle from a new `Runtime::choices`, registered on the bus the way `canceller` is. /api/model and /api/effort accept only offered values on ACP. The claude path is unchanged. Refs #4391
This commit is contained in:
parent
abd547f600
commit
f189724a4c
13 changed files with 559 additions and 44 deletions
|
|
@ -53,7 +53,7 @@ hand-maintained per-file tree drifts out of sync with the code.
|
|||
launch-config layer (tool-group/capability → `--allowedTools`,
|
||||
`--mcp-config` render).
|
||||
- **`hive-runtime/`** — the runtime an agent's turns run on: one
|
||||
`Runtime` interface (`run`/`compact`/`archive`/`canceller`) with a `claude` backend
|
||||
`Runtime` interface (`run`/`compact`/`archive`/`canceller`/`choices`) with a `claude` backend
|
||||
(a pass-through to `hive-claude`) and an `acp` backend (any Agent Client
|
||||
Protocol agent, spawned from the command/args/env nix hands it — no agent
|
||||
is named in Rust). The ACP backend translates its stream into claude's
|
||||
|
|
|
|||
Loading…
Reference in a new issue