Skip to content

feat(setup): thin out setup — Quick Setup via Nous Portal + Full Setup defaults#35723

Merged
teknium1 merged 2 commits into
mainfrom
hermes/hermes-ff03c776
May 31, 2026
Merged

feat(setup): thin out setup — Quick Setup via Nous Portal + Full Setup defaults#35723
teknium1 merged 2 commits into
mainfrom
hermes/hermes-ff03c776

Conversation

@teknium1

@teknium1 teknium1 commented May 31, 2026

Copy link
Copy Markdown
Contributor

Summary

Thins out hermes setup so users answer far fewer questions. Two parts:

  1. Quick Setup now routes straight through the Nous Portal provider — OAuth login, Nous model selection, then terminal + messaging.
  2. Full Setup drops every prompt that has an obvious default. Anything cut stays tunable via the per-section commands.

Changes

Quick Setup (Nous Portal)

Full Setup — thinned

  • Model section: drop the same-provider credential rotation pool, the vision-backend picker, and the TTS provider sub-flow. Vision auto-detects from the main provider; TTS defaults to Edge; rotation lives in hermes auth add.
  • Terminal section: keep the backend picker (Local default) and any required credentials (Modal token, SSH host/user/key, Daytona key). Stop prompting for container image, CPU/mem/disk resources, gateway cwd, and sudo password — all use defaults.
  • Agent Settings: removed from the wizard. First installs get recommended defaults silently; existing installs keep their tuned values untouched. Reachable via hermes setup agent.
  • New defaults: max_turns 90 → 150; session_reset.mode both → none (written explicitly, since the gateway treats absent session_reset as "both").

Validation

Before After
Quick step 1 full provider picker Nous Portal OAuth + model
Full Setup prompts (local user) ~35 provider+model, terminal pick, messaging, tools
max_turns default 90 150
session reset default both (1440 / 4:00) none
existing-install agent settings re-prompted untouched
  • Live E2E (isolated HERMES_HOME, mocked prompts): Quick path order model_flow_nous → terminal → defaults → messaging; model section fires zero rotation/vision/TTS prompts; local backend asks nothing (cwd defaulted); docker asks nothing (image defaulted); defaults write max_turns=150, session_reset.mode="none". All assertions passed.
  • Setup test suite: 44/44 pass. Updated 2 reconfigure tests (agent settings no longer prompted on existing installs); removed 3 tests covering the deleted in-setup rotation flow.
  • py_compile clean. Net −384 lines.

Infographic

hermes-setup-thinned

…messaging)

First-time quick setup now goes straight to the Nous Portal provider
instead of showing the full provider picker. Runs the device-code OAuth
login, selects a Nous model, configures the terminal backend, and offers
messaging setup — applying recommended defaults for everything else.

- Rename menu entry to 'Quick Setup (Nous Portal)'.
- _run_first_time_quick_setup now calls _model_flow_nous (handles both the
  logged-out OAuth+model-select path and the logged-in curated picker),
  then re-syncs config from disk to avoid the #4172 stale-overwrite.
- Terminal / defaults / messaging steps unchanged.
@github-actions

github-actions Bot commented May 31, 2026

Copy link
Copy Markdown
Contributor

🔎 Lint report: hermes/hermes-ff03c776 vs origin/main

ruff

Total: 0 on HEAD, 0 on base (➖ 0)

🆕 New issues: none

✅ Fixed issues: none

Unchanged: 0 pre-existing issues carried over.

ty (type checker)

Total: 9521 on HEAD, 9527 on base (✅ -6)

🆕 New issues: none

✅ Fixed issues (4):

Rule Count
invalid-argument-type 3
no-matching-overload 1
First entries
hermes_cli/setup.py:789: [invalid-argument-type] invalid-argument-type: Argument to function `load_pool` is incorrect: Expected `str`, found `None | Unknown`
hermes_cli/setup.py:741: [invalid-argument-type] invalid-argument-type: Argument to function `_supports_same_provider_pool_setup` is incorrect: Expected `str`, found `None | Unknown`
hermes_cli/setup.py:811: [invalid-argument-type] invalid-argument-type: Argument to function `_set_credential_pool_strategy` is incorrect: Expected `str`, found `None | Unknown`
hermes_cli/setup.py:845: [no-matching-overload] no-matching-overload: No overload of bound method `dict.get` matches arguments

Unchanged: 4943 pre-existing issues carried over.

Diagnostics are surfaced as warnings — this check never fails the build.

@alt-glitch alt-glitch added type/feature New feature or request comp/cli CLI entry point, hermes_cli/, setup wizard area/config Config system, migrations, profiles provider/nous Nous Research API (OAuth) P2 Medium — degraded but workaround exists labels May 31, 2026
Full Setup no longer asks for every config knob — anything with an
obvious default is applied silently and stays tunable via the per-section
commands (hermes setup agent|terminal|tts, hermes auth add).

- Model section: drop the same-provider rotation pool, vision-backend
  picker, and TTS provider sub-flows. Vision auto-detects from the main
  provider; TTS defaults to Edge; rotation lives in hermes auth add.
- Terminal section: keep the backend picker (Local default) and any
  required credentials (Modal token, SSH host/user/key, Daytona key),
  but stop prompting for container image, CPU/mem/disk resources, gateway
  cwd, and sudo password — all use defaults.
- Agent Settings: removed from the wizard. First installs get recommended
  defaults silently; existing installs keep their tuned values.
- New defaults: max_turns 90 -> 150, session_reset both -> none.
- Tests: reconfigure tests assert agent settings are no longer prompted
  on existing installs; drop 3 tests covering the deleted in-setup
  rotation flow.
@teknium1 teknium1 changed the title feat(setup): Quick Setup routes through Nous Portal feat(setup): thin out setup — Quick Setup via Nous Portal + Full Setup defaults May 31, 2026
@teknium1 teknium1 merged commit de4f40e into main May 31, 2026
23 checks passed
@teknium1 teknium1 deleted the hermes/hermes-ff03c776 branch May 31, 2026 16:13
KKT-OPT pushed a commit to KKT-OPT/hermes-agent that referenced this pull request May 31, 2026
…p defaults (NousResearch#35723)

* feat(setup): Quick Setup routes through Nous Portal (OAuth + model + messaging)

First-time quick setup now goes straight to the Nous Portal provider
instead of showing the full provider picker. Runs the device-code OAuth
login, selects a Nous model, configures the terminal backend, and offers
messaging setup — applying recommended defaults for everything else.

- Rename menu entry to 'Quick Setup (Nous Portal)'.
- _run_first_time_quick_setup now calls _model_flow_nous (handles both the
  logged-out OAuth+model-select path and the logged-in curated picker),
  then re-syncs config from disk to avoid the NousResearch#4172 stale-overwrite.
- Terminal / defaults / messaging steps unchanged.

* feat(setup): thin out Full Setup with happy defaults

Full Setup no longer asks for every config knob — anything with an
obvious default is applied silently and stays tunable via the per-section
commands (hermes setup agent|terminal|tts, hermes auth add).

- Model section: drop the same-provider rotation pool, vision-backend
  picker, and TTS provider sub-flows. Vision auto-detects from the main
  provider; TTS defaults to Edge; rotation lives in hermes auth add.
- Terminal section: keep the backend picker (Local default) and any
  required credentials (Modal token, SSH host/user/key, Daytona key),
  but stop prompting for container image, CPU/mem/disk resources, gateway
  cwd, and sudo password — all use defaults.
- Agent Settings: removed from the wizard. First installs get recommended
  defaults silently; existing installs keep their tuned values.
- New defaults: max_turns 90 -> 150, session_reset both -> none.
- Tests: reconfigure tests assert agent settings are no longer prompted
  on existing installs; drop 3 tests covering the deleted in-setup
  rotation flow.
JoeKowal pushed a commit to JoeKowal/hermes-agent that referenced this pull request Jun 4, 2026
…p defaults (NousResearch#35723)

* feat(setup): Quick Setup routes through Nous Portal (OAuth + model + messaging)

First-time quick setup now goes straight to the Nous Portal provider
instead of showing the full provider picker. Runs the device-code OAuth
login, selects a Nous model, configures the terminal backend, and offers
messaging setup — applying recommended defaults for everything else.

- Rename menu entry to 'Quick Setup (Nous Portal)'.
- _run_first_time_quick_setup now calls _model_flow_nous (handles both the
  logged-out OAuth+model-select path and the logged-in curated picker),
  then re-syncs config from disk to avoid the NousResearch#4172 stale-overwrite.
- Terminal / defaults / messaging steps unchanged.

* feat(setup): thin out Full Setup with happy defaults

Full Setup no longer asks for every config knob — anything with an
obvious default is applied silently and stays tunable via the per-section
commands (hermes setup agent|terminal|tts, hermes auth add).

- Model section: drop the same-provider rotation pool, vision-backend
  picker, and TTS provider sub-flows. Vision auto-detects from the main
  provider; TTS defaults to Edge; rotation lives in hermes auth add.
- Terminal section: keep the backend picker (Local default) and any
  required credentials (Modal token, SSH host/user/key, Daytona key),
  but stop prompting for container image, CPU/mem/disk resources, gateway
  cwd, and sudo password — all use defaults.
- Agent Settings: removed from the wizard. First installs get recommended
  defaults silently; existing installs keep their tuned values.
- New defaults: max_turns 90 -> 150, session_reset both -> none.
- Tests: reconfigure tests assert agent settings are no longer prompted
  on existing installs; drop 3 tests covering the deleted in-setup
  rotation flow.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/config Config system, migrations, profiles comp/cli CLI entry point, hermes_cli/, setup wizard P2 Medium — degraded but workaround exists provider/nous Nous Research API (OAuth) type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants