hermes - 💡(How to fix) Fix CLI /model picker only exposes first 50 models despite larger provider catalog

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

The interactive /model picker shows providers with total_models > 50, but only loads the first 50 model IDs into the selectable list. As a result, users cannot scroll/page to models after the first 50 even though the picker displays the larger total count.

Root Cause

The interactive /model picker shows providers with total_models > 50, but only loads the first 50 model IDs into the selectable list. As a result, users cannot scroll/page to models after the first 50 even though the picker displays the larger total count.

Fix Action

Fix / Workaround

A quick local mitigation would be to raise the CLI picker cap, but the cleaner fix is to separate display-preview limits from selectable model inventory.

Code Example

nous: shown=50 total=247 current=False source=hermes

---

# cli.py
providers = build_models_payload(ctx, max_models=50)["providers"]

---

# hermes_cli/inventory.py
rows = list_authenticated_providers(..., max_models=max_models)

---

# hermes_cli/model_switch.py
total = len(model_ids)
top = model_ids[:max_models]

---

HEAD: 6a72af044c44c9a05137bc448bc65ecf0ace5a89
branch: main
remote: git@github.com:NousResearch/hermes-agent.git
status: ## main...origin/main
RAW_BUFFERClick to expand / collapse

Summary

The interactive /model picker shows providers with total_models > 50, but only loads the first 50 model IDs into the selectable list. As a result, users cannot scroll/page to models after the first 50 even though the picker displays the larger total count.

Repro

  1. Configure a provider with more than 50 available models. In my current install this is Nous Portal.
  2. Run Hermes CLI.
  3. Enter /model.
  4. Select the provider.
  5. Try to navigate past the first 50 models.

Expected

All available models should be reachable from the interactive picker, either by scrolling through the full loaded list or by explicit pagination/search.

Actual

Only the first 50 models are selectable. The provider row may show the real total, but the model selection stage only has the first 50.

In my current install, Hermes reports:

nous: shown=50 total=247 current=False source=hermes

So the inventory knows there are 247 models, but the picker only receives 50.

Code pointers

The CLI picker hard-caps the payload here:

# cli.py
providers = build_models_payload(ctx, max_models=50)["providers"]

build_models_payload() forwards that to list_authenticated_providers():

# hermes_cli/inventory.py
rows = list_authenticated_providers(..., max_models=max_models)

Then list_authenticated_providers() slices the provider model list:

# hermes_cli/model_switch.py
total = len(model_ids)
top = model_ids[:max_models]

The picker viewport/scrolling code appears to work, but it can only scroll through the already-truncated model_list.

Related call sites with the same cap:

  • cli.py — CLI /model picker (max_models=50)
  • gateway/run.py — gateway model picker payload (max_models=50)
  • tui_gateway/server.py — TUI model options/provider rows (max_models=50)
  • hermes_cli/web_server.py — dashboard/API model options (max_models=50)

Environment checked

Current local install is clean and matches upstream origin/main:

HEAD: 6a72af044c44c9a05137bc448bc65ecf0ace5a89
branch: main
remote: [email protected]:NousResearch/hermes-agent.git
status: ## main...origin/main

No local diff in the relevant files.

Possible fixes

For interactive pickers, either:

  1. Load all models by passing a non-truncating value, e.g. support max_models=None and skip slicing when it is None; or
  2. Implement actual provider-model pagination/search so users can access models beyond the first 50.

A quick local mitigation would be to raise the CLI picker cap, but the cleaner fix is to separate display-preview limits from selectable model inventory.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - 💡(How to fix) Fix CLI /model picker only exposes first 50 models despite larger provider catalog