mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-05-07 02:51:50 +00:00
fix(tui): first-run setup preflight + actionable no-provider panel
- tui_gateway: new `setup.status` RPC that reuses CLI's `_has_any_provider_configured()`, so the TUI can ask the same question the CLI bootstrap asks before launching a session - useSessionLifecycle: preflight `setup.status` before both `newSession` and `resumeById`, and render a clear "Setup Required" panel when no provider is configured instead of booting a session that immediately fails with `agent init failed` - createGatewayEventHandler: drop duplicate startup resume logic in favor of the preflighted `resumeById`, and special-case the no-provider agent-init error as a last-mile fallback to the same setup panel - add regression tests for both paths
This commit is contained in:
parent
5b386ced71
commit
0dd5055d59
9 changed files with 145 additions and 62 deletions
18
ui-tui/src/content/setup.ts
Normal file
18
ui-tui/src/content/setup.ts
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
import type { PanelSection } from '../types.js'
|
||||
|
||||
export const SETUP_REQUIRED_TITLE = 'Setup Required'
|
||||
|
||||
export const buildSetupRequiredSections = (): PanelSection[] => [
|
||||
{
|
||||
text: 'Hermes needs a model provider before the TUI can start a session.'
|
||||
},
|
||||
{
|
||||
rows: [
|
||||
['1.', 'Exit with Ctrl+C'],
|
||||
['2.', 'Run `hermes model` to choose a provider + model'],
|
||||
['3.', 'Or run `hermes setup` for full first-time setup'],
|
||||
['4.', 'Re-open `hermes --tui` when setup is done']
|
||||
],
|
||||
title: 'Next Steps'
|
||||
}
|
||||
]
|
||||
Loading…
Add table
Add a link
Reference in a new issue