Skip to content

fix(honcho): support base_url-only config in cmd_identity for local instances - #13439

Closed
ygd58 wants to merge 1 commit into
NousResearch:mainfrom
ygd58:fix/honcho-base-url-local-instance-v2
Closed

fix(honcho): support base_url-only config in cmd_identity for local instances#13439
ygd58 wants to merge 1 commit into
NousResearch:mainfrom
ygd58:fix/honcho-base-url-local-instance-v2

Conversation

@ygd58

@ygd58 ygd58 commented Apr 21, 2026

Copy link
Copy Markdown
Contributor

Problem

Local Honcho instances using base_url instead of an API key could not use hermes honcho identity — it required an API key and exited early with "No API key configured".

Fix

Adds to plugins/memory/honcho/cli.py:

  • _resolve_base_url() helper: reads baseUrl/base_url from host block and root level (camelCase + snake_case)
  • _is_configured() helper: returns True if either api_key OR base_url is set
  • cmd_identity(): uses _is_configured() instead of _resolve_api_key() only

Note

Rebased from #2619 to target the current plugins/memory/honcho/ layout after honcho_integration/ was moved in the pluggable memory provider refactor (#4623).

Fixes #2613

…nstances

cmd_identity() only checked _resolve_api_key(), blocking local Honcho
instances that use base_url instead of an API key (issue NousResearch#2613).

Changes to plugins/memory/honcho/cli.py:
- Add _resolve_base_url() helper: reads baseUrl/base_url from host
  block and root level (camelCase + snake_case)
- Add _is_configured() helper: returns True if api_key OR base_url
  is set — any valid auth method suffices
- cmd_identity(): use _is_configured() instead of _resolve_api_key()
  so local no-auth instances can use the command

Rebased from NousResearch#2619 to target current plugins/memory/honcho/ layout
after honcho_integration/ was moved in refactor NousResearch#4623.

Fixes NousResearch#2613
@alt-glitch alt-glitch added type/bug Something isn't working P2 Medium — degraded but workaround exists comp/plugins Plugin system and bundled plugins tool/memory Memory tool and memory providers labels Apr 22, 2026
@alt-glitch

Copy link
Copy Markdown
Collaborator

Rebased from #2619 (closed) onto current plugins/memory/honcho/ layout after pluggable memory refactor.

@Bartok9

Bartok9 commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Re-verified against current origin/main (27c486e3b): this appears resolved by a broader fix already on main. _resolve_api_key (plugins/memory/honcho/cli.py:278) now returns the sentinel "local" whenever a scheme-validated baseUrl/base_url (or HONCHO_BASE_URL) is present and no API key is set, with schemeless host:port forms also let through. Every credential guard in the CLI — including cmd_identity's if not _resolve_api_key(cfg) gate — therefore already accepts base_url-only configs, which is exactly what this PR set out to fix (and a bit more, since it covers all the guards rather than just cmd_identity).

Recommend closing as superseded — happy to be corrected if I've misread the current state.

@teknium1

Copy link
Copy Markdown
Contributor

Thanks for rebasing and preserving the local-instance use case. This is now implemented on main; this is an automated hermes-sweeper review.

  • Commit 36d6b643f6dd6ece5b6a1eada243ae4cb7d26551 (fix(honcho): CLI credential guard rejects self-hosted baseUrl configs) updated plugins/memory/honcho/cli.py so _resolve_api_key() returns the local sentinel for baseUrl / base_url and HONCHO_BASE_URL configurations without an API key.
  • cmd_identity() already uses that resolver at plugins/memory/honcho/cli.py:1418-1423, so base_url-only configurations pass its existing guard.
  • Regression coverage is present at tests/honcho_plugin/test_cli.py:23-36 for config and environment base URLs, with additional legacy URL coverage at tests/honcho_plugin/test_cli.py:86-101.
  • This confirms the later verification in the PR discussion: fix(honcho): support base_url-only config in cmd_identity for local instances #13439 (comment)

@teknium1 teknium1 closed this Jul 12, 2026
@teknium1 teknium1 added the sweeper:implemented-on-main Sweeper: behavior already present on current main label Jul 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/plugins Plugin system and bundled plugins P2 Medium — degraded but workaround exists sweeper:implemented-on-main Sweeper: behavior already present on current main tool/memory Memory tool and memory providers type/bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Local Honcho "base_url" instead of api key does not work

4 participants