fix(tui): keep default personality neutral

This commit is contained in:
Brooklyn Nicholson
2026-04-24 16:19:23 -05:00
parent 93ddff53e3
commit 53fc10fc9a
2 changed files with 39 additions and 27 deletions

View File

@@ -1143,30 +1143,6 @@ def _wire_callbacks(sid: str):
set_secret_capture_callback(secret_cb)
def _resolve_personality_prompt(cfg: dict) -> str:
"""Resolve the active personality into a system prompt string."""
name = ((cfg.get("display") or {}).get("personality", "") or "").strip().lower()
if not name or name in ("default", "none", "neutral"):
return ""
try:
from cli import load_cli_config
personalities = (load_cli_config().get("agent") or {}).get("personalities", {}) or {}
except Exception:
try:
from hermes_cli.config import load_config as _load_full_cfg
personalities = (
(_load_full_cfg().get("agent") or {}).get("personalities", {}) or {}
)
except Exception:
personalities = (cfg.get("agent") or {}).get("personalities", {}) or {}
pval = personalities.get(name)
if pval is None:
return ""
return _render_personality_prompt(pval)
def _render_personality_prompt(value) -> str:
if isinstance(value, dict):
parts = [value.get("system_prompt", "")]
@@ -1300,9 +1276,7 @@ def _make_agent(sid: str, key: str, session_id: str | None = None):
from hermes_cli.runtime_provider import resolve_runtime_provider
cfg = _load_cfg()
system_prompt = (cfg.get("agent") or {}).get("system_prompt", "") or ""
if not system_prompt:
system_prompt = _resolve_personality_prompt(cfg)
system_prompt = ((cfg.get("agent") or {}).get("system_prompt", "") or "").strip()
runtime = resolve_runtime_provider(requested=None)
return AIAgent(
model=_resolve_model(),