Skip to content

feat(hermes): add chat model picker - #777

Open
turingcat wants to merge 1 commit into
xintaofei:mainfrom
turingcat:feat/hermes-chat-model-picker
Open

turingcat wants to merge 1 commit into
xintaofei:mainfrom
turingcat:feat/hermes-chat-model-picker

Conversation

@turingcat

Copy link
Copy Markdown
Contributor

Summary

  • add a model picker to both chat composer surfaces for built-in Hermes and custom Hermes profiles
  • resolve each profile's actual HERMES_HOME, current model, provider endpoint, and model catalogue without falling back to the default profile
  • persist model selections to model.default while preserving provider credentials, endpoint settings, and unrelated YAML sections
  • defer reconnects until an active turn finishes and mark other sessions on the same launch-time config as stale
  • keep Tauri and server transports in parity, with localized feedback and focused regression coverage

The picker is synthetic only while Hermes does not advertise its own ACP model option. If a future adapter provides one, the agent-owned option takes precedence.

Closes #776

Verification

  • vitest run src/hooks/use-hermes-model-option.test.tsx src/components/chat/hermes-model-option-wiring.test.ts — 13 passed
  • eslint on all changed TypeScript/TSX files
  • tsc --noEmit --pretty false
  • cargo test --features test-utils --lib commands::acp::tests — 246 passed
  • cargo check
  • cargo check --no-default-features --bin codeg-server
  • cargo clippy --all-targets --features test-utils -- -D warnings
  • cargo clippy --no-default-features --bin codeg-server --lib -- -D warnings

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Hermes sessions have no model picker in the chat composer

1 participant