hermes-agent/web/src/components
Teknium 3c27efbb91
feat(dashboard): configure main + auxiliary models from Models page (#17802)
Dashboard Models page was analytics-only — no way to pick a model as main
for new sessions or override an auxiliary task slot without hand-editing
config.yaml or running a /model slash command inside a chat.

Changes:
- hermes_cli/web_server.py: three REST endpoints (GET /api/model/options,
  GET /api/model/auxiliary, POST /api/model/set). Reuses
  list_authenticated_providers() from model_switch.py so the REST path
  surfaces the same curated model lists as the TUI-gateway model.options
  JSON-RPC. POST /api/model/set writes model.provider + model.default for
  scope=main, and auxiliary.<task>.{provider,model} for scope=auxiliary
  (with task="" meaning 'all 8 slots' and task="__reset__" resetting them
  to auto).
- web/src/components/ModelPickerDialog.tsx: accepts an optional loader +
  onApply pair so it works without an open chat PTY. ChatSidebar's
  gw-WebSocket path still works unchanged (back-compat).
- web/src/pages/ModelsPage.tsx: Model Settings panel at the top showing
  main model + collapsible list of 8 auxiliary tasks with per-row Change
  buttons and Reset all to auto. Every existing model card gets a
  'Use as' dropdown for one-click assignment to main or any aux slot.
  Cards badged 'main' or 'aux · <task>' when currently assigned.
- website/docs/user-guide/configuring-models.md: new docs page walking
  through both UI paths, aux task override patterns, troubleshooting,
  plus REST/CLI alternatives.
- Screenshots under website/static/img/docs/dashboard-models/.

Applies to new sessions only — running sessions keep their model (use
/model slash command to hot-swap a live session). No prompt-cache
invalidation on existing sessions.
2026-04-29 23:53:12 -07:00
..
ui fix(components): refactor to use design system 2026-04-28 13:03:05 -04:00
AutoField.tsx fix(components): refactor to use design system 2026-04-28 13:03:05 -04:00
Backdrop.tsx chore: remove comments 2026-04-28 12:28:08 -04:00
ChatSidebar.tsx fix: button sizes 2026-04-28 13:11:47 -04:00
DeleteConfirmDialog.tsx feat: add sidebar 2026-04-24 00:56:19 -04:00
LanguageSwitcher.tsx fix(components): refactor to use design system 2026-04-28 13:03:05 -04:00
Markdown.tsx feat(web): add /api/pty WebSocket bridge to embed TUI in dashboard 2026-04-24 10:51:49 -04:00
ModelInfoCard.tsx feat: add spinner, lowercase version 2026-04-28 13:59:33 -04:00
ModelPickerDialog.tsx feat(dashboard): configure main + auxiliary models from Models page (#17802) 2026-04-29 23:53:12 -07:00
OAuthLoginModal.tsx feat: add spinner, lowercase version 2026-04-28 13:59:33 -04:00
OAuthProvidersCard.tsx feat: add spinner, lowercase version 2026-04-28 13:59:33 -04:00
PlatformsCard.tsx fix: badges 2026-04-28 11:24:08 -04:00
SidebarFooter.tsx feat: add spinner, lowercase version 2026-04-28 13:59:33 -04:00
SidebarStatusStrip.tsx feat: add sidebar 2026-04-24 00:56:19 -04:00
SlashPopover.tsx fix(components): refactor to use design system 2026-04-28 13:03:05 -04:00
ThemeSwitcher.tsx fix(components): refactor to use design system 2026-04-28 13:03:05 -04:00
Toast.tsx feat: dashboard OAuth provider management 2026-04-13 11:18:18 -07:00
ToolCall.tsx fix(components): refactor to use design system 2026-04-28 13:03:05 -04:00