From 3555cec4bc44cee1e8d681bd319ced57f6fa4d60 Mon Sep 17 00:00:00 2001 From: loveruncaged Date: Tue, 14 Jul 2026 12:13:43 +0000 Subject: [PATCH] fix(honcho): use profile_host_key in peers display hermes honcho peers showed (not set) for the user peer and the raw host key (e.g. hermes.kristi) for the AI peer on non-default profiles, because _all_profile_host_configs() built the host key with a dot separator (f"{HOST}.{p.name}") while the runtime resolver profile_host_key() uses an underscore + sanitization (hermes_kristi). The mismatched key missed the real config block and fell back to defaults. Use profile_host_key() so the display matches the runtime resolution. Cosmetic-only: workspace isolation, peer identity, and memory routing were always correct; only the peers summary view misreported. --- plugins/memory/honcho/cli.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/plugins/memory/honcho/cli.py b/plugins/memory/honcho/cli.py index 3db0cc3fd684f..39785c45d81cc 100644 --- a/plugins/memory/honcho/cli.py +++ b/plugins/memory/honcho/cli.py @@ -1007,7 +1007,12 @@ def _all_profile_host_configs() -> list[tuple[str, str, dict]]: for p in profiles: if p.name == "default": continue - h = f"{HOST}.{p.name}" + # Use the same resolver as the runtime (profile_host_key) so the + # display looks up the correct block. The runtime derives host keys + # with an underscore separator and sanitization (e.g. "hermes_kristi"), + # not a dot ("hermes.kristi"), so a naive f"{HOST}.{p.name}" misses + # the real block and falsely shows "(not set)" / the raw host key. + h = profile_host_key(p.name) results.append((p.name, h, hosts.get(h, {}))) return results