Skip to content

[All Platforms][Agent&Skills] Hermes Dashboard chat shows "Chat unavailable" — does not recognize NemoClaw OpenShell proxy inference route #4765

@mercl-lau

Description

@mercl-lau

Description

The Hermes Dashboard chat feature (port 9119) fails with "Chat unavailable: 1" and "No API key configured for provider 'custom'. First message will fail." when running inside a NemoClaw sandbox.

NemoClaw configures Hermes with provider: custom, base_url: https://inference.local/v1, and api_key: sk-OPENSHELL-PROXY-REWRITE. This is the OpenShell gateway proxy route that transparently forwards inference to the real provider (e.g. nvidia-prod). The Hermes gateway API on port 8642 works correctly through this proxy — chat completions succeed. However, the Dashboard frontend does not recognize this proxy setup and reports no API key configured.

Reproduced on both Brev (Ubuntu 22.04) and macOS local environments.

Environment

Device:        Brev n2d-standard-4 + macOS local
OS:            Ubuntu 22.04.5 LTS / macOS
Architecture:  x86_64 / arm64
Node.js:       v22.22.2
npm:           10.9.7
Docker:        29.1.3
OpenShell CLI: 0.0.44
NemoClaw:      v0.0.58
Hermes Agent:  v0.14.0 (2026.5.16)

Steps to Reproduce

  1. Install NemoClaw v0.0.58
  2. Onboard with Hermes agent: nemoclaw onboard --agent hermes
  3. Start Hermes dashboard: nemoclaw hermes exec -- hermes dashboard --no-open --skip-build
  4. Open dashboard in browser (http://127.0.0.1:9119)
  5. Click CHAT in the sidebar
  6. Observe "Chat unavailable: 1" and "No API key configured for provider 'custom'"

Expected Result

Dashboard chat uses the same OpenShell proxy inference route as the Hermes gateway API (port 8642) and allows interactive chat. The gateway API works correctly — chat completions via curl to http://127.0.0.1:8642/v1/chat/completions return valid responses.

Actual Result

Dashboard chat page shows:

  • MODEL: claude-opus-4-7~ (or nvidia/nemotron-3-super-120b-a12b depending on config)
  • "Chat unavailable: 1"
  • "No API key configured for provider 'custom'. First message will fail."

The Hermes config.yaml shows:

model:
  provider: custom
  base_url: "https://inference.local/v1"
  api_key: sk-OPENSHELL-PROXY-REWRITE

The api_key IS set (sk-OPENSHELL-PROXY-REWRITE) but the dashboard frontend does not read or recognize it. The inference.local proxy route works for the gateway API but not for the dashboard chat.

Logs

Not captured — the error is displayed in the dashboard frontend UI, not in server logs.


NVB#6268252

Metadata

Metadata

Assignees

Labels

NV QABugs found by the NVIDIA QA Teamarea: sandboxOpenShell sandbox lifecycle, runtime, config, or recoveryintegration: hermesHermes integration behaviorv0.0.65Release target

Type

No fields configured for Bug.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions