hermes-agent/website/docs/user-guide
Brooklyn Nicholson d6b0c23f87 feat(cli): configurable default interface (cli vs tui)
Add `display.interface` config key so users can make the modern TUI the
default for bare `hermes` / `hermes chat` without exporting HERMES_TUI=1 in
every shell. Default stays "cli" to preserve current behavior.

Add a `--cli` flag (mirrors `--tui`) so an explicit invocation can force the
classic prompt_toolkit REPL even when `display.interface: tui` is configured.

Precedence (highest first): `--cli` > `--tui`/`HERMES_TUI=1` > config
`display.interface` > classic REPL. Two resolvers enforce it:

  * `_resolve_use_tui(args)` — the args-aware resolver used by `cmd_chat`
    and the Termux fast-TUI path (uses full load_config()).
  * `_wants_tui_early(argv)` — a dependency-free early resolver used by
    mouse-residue suppression and the Termux fast paths, which run before
    argparse / hermes_cli.config are importable (minimal cached YAML read).

Both `--cli` and `--tui` are registered via `_inherited_flag`, so they are
carried across self-relaunch automatically.

- config: add display.interface ("cli" default), bump _config_version 25->26.
  The generic missing-field migration + load_config() deep-merge seed the key
  for existing configs; no bespoke migration block needed.
- docs: document --cli flag and display.interface in cli-commands.md and
  the TUI user guide.
- tests: new test_default_interface_resolution.py covering resolver
  precedence at every layer, early resolver edge cases (missing/garbage
  config), parser flags, and relaunch inheritance.
2026-06-02 20:49:44 -05:00
..
features feat(dashboard): Channels page — set up every gateway messaging channel from the browser (#37211) 2026-06-01 23:41:35 -07:00
messaging feat(bluebubbles): support group mention gating 2026-06-01 18:52:05 -07:00
secrets feat(secrets/bitwarden): EU Cloud + self-hosted server URL support (#31378) 2026-05-24 02:19:57 -07:00
skills docs(config): deprecate MESSAGING_CWD guidance 2026-05-29 12:06:22 -07:00
_category_.json feat: add documentation website (Docusaurus) 2026-03-05 05:24:55 -08:00
checkpoints-and-rollback.md feat(checkpoints): v2 single-store rewrite with real pruning + disk guardrails (#20709) 2026-05-06 05:44:35 -07:00
cli.md fix(docs): add baseUrl prefix to SVG image paths in sessions and CLI pages 2026-05-29 12:06:22 -07:00
configuration.md fix(docs): align fallback provider config examples 2026-05-29 12:06:22 -07:00
configuring-models.md docs: replace invalid 'hermes config get <key>' with 'hermes config show' 2026-05-29 12:06:22 -07:00
desktop.md feat(desktop): content-hash build stamp with --build-only and --force-build flags 2026-06-02 15:45:30 -04:00
docker.md fix(docker): accept PUID/PGID as aliases for HERMES_UID/HERMES_GID (#25872) (#34401) 2026-05-29 16:07:15 +10:00
git-worktrees.md docs(config): deprecate MESSAGING_CWD guidance 2026-05-29 12:06:22 -07:00
multi-profile-gateways.md docs(gateway): add multi-profile gateways operations guide 2026-05-29 04:11:10 -07:00
profile-distributions.md docs(profiles): full user guide for profile distributions (#22017) 2026-05-08 11:13:45 -07:00
profiles.md docs: 30-day overhaul — correctness audit, PR coverage, Nous Portal weave, sidebar reorg (#33782) 2026-05-28 02:41:36 -07:00
security.md docs(config): deprecate MESSAGING_CWD guidance 2026-05-29 12:06:22 -07:00
sessions.md docs: fix session recap image baseUrl 2026-05-29 12:06:22 -07:00
tui.md feat(cli): configurable default interface (cli vs tui) 2026-06-02 20:49:44 -05:00
windows-native.md docs: drop early-beta framing for native Windows support (#36093) 2026-05-31 15:33:18 -07:00
windows-wsl-quickstart.md docs(windows): add WSL desktop shortcut guide 2026-05-29 04:00:57 -07:00