docs(agent): document model quick-picker in overflow menu
This commit is contained in:
parent
6c74c6dafa
commit
df1ffdd504
1 changed files with 22 additions and 12 deletions
|
|
@ -63,18 +63,28 @@ through. Three flex columns:
|
|||
click opens the loose-ends flyout.
|
||||
- **Overflow button** (`⋯`): always visible. Opens a frosted popover
|
||||
(`#overflow-menu`, positioned outside the header to escape any
|
||||
stacking context) with four rows: `↑ dashboard` (link), `↻ rebuild
|
||||
container` (POST confirm, same action as the dashboard R3BU1LD
|
||||
button), `↻ new claude session` (POST confirm → `POST
|
||||
/api/new-session`; next turn drops `--continue`), `🔓 logout`
|
||||
(POST confirm → `POST /api/logout`; SIGINTs any in-flight turn,
|
||||
wipes OAuth credential files, flips the agent to `needs_login`
|
||||
— session history preserved). All destructive actions require
|
||||
one extra click to acknowledge — rare ops shouldn't live in the
|
||||
primary state strip. The popover's display rules are scoped to
|
||||
`:not([hidden])` so the `[hidden]` HTML attribute's UA `display:
|
||||
none` isn't overridden by the author CSS's `display: flex` —
|
||||
the popover stays hidden until JS removes the attribute.
|
||||
stacking context) with four management rows followed by a model
|
||||
quick-picker section: `↑ dashboard` (link), `↻ rebuild container`
|
||||
(POST confirm, same action as the dashboard R3BU1LD button),
|
||||
`↻ new claude session` (POST confirm → `POST /api/new-session`;
|
||||
next turn drops `--continue`), `🔓 logout` (POST confirm → `POST
|
||||
/api/logout`; SIGINTs any in-flight turn, wipes OAuth credential
|
||||
files, flips the agent to `needs_login` — session history
|
||||
preserved). All destructive actions require one extra click to
|
||||
acknowledge — rare ops shouldn't live in the primary state strip.
|
||||
Below a separator, a **model quick-picker** section labelled
|
||||
`model` renders three one-click shortcuts: `haiku (fast)`,
|
||||
`sonnet (balanced)`, `opus (powerful)`. Clicking a button POSTs
|
||||
`/api/model` with the alias (same path as the `/model <name>`
|
||||
slash command). The button for the currently-active model is
|
||||
highlighted via the `active` class; `renderModelChip` keeps the
|
||||
picker state in sync with live `model_changed` events so it stays
|
||||
accurate when the model is changed from another session. Clicking
|
||||
the already-active model closes the menu without an extra POST.
|
||||
The popover's display rules are scoped to `:not([hidden])` so the
|
||||
`[hidden]` HTML attribute's UA `display: none` isn't overridden by
|
||||
the author CSS's `display: flex` — the popover stays hidden until
|
||||
JS removes the attribute.
|
||||
|
||||
`/api/state` is fetched once on cold load (+ while
|
||||
`status === 'needs_login_in_progress'`); all other updates arrive via
|
||||
|
|
|
|||
Loading…
Reference in a new issue