diff --git a/hermes_cli/tools_config.py b/hermes_cli/tools_config.py index ae97dbf54a2..f76c56e667f 100644 --- a/hermes_cli/tools_config.py +++ b/hermes_cli/tools_config.py @@ -1437,6 +1437,10 @@ def _get_platform_tools( continue if ts_def.get("includes"): continue + # Posture toolsets (e.g. ``coding``) are session-level selections made + # by agent/coding_context.py — not per-platform capabilities to recover. + if ts_def.get("posture"): + continue ts_tools = set(resolve_toolset(ts_key)) if not ts_tools or not ts_tools.issubset(platform_tool_universe): continue diff --git a/toolsets.py b/toolsets.py index 41c035b23f2..5c67bfb2114 100644 --- a/toolsets.py +++ b/toolsets.py @@ -360,7 +360,11 @@ TOOLSETS = { "session_search", "clarify", "execute_code", "delegate_task", ], - "includes": [] + "includes": [], + # Posture toolset: selected per-session by agent/coding_context.py, + # never auto-recovered into per-platform tool config (see the + # non-configurable-toolset recovery loop in hermes_cli/tools_config.py). + "posture": True, }, # ==========================================================================