Update · Hermes plugin

DashClaw now ships a Hermes plugin

One install script. Eight lifecycle hooks. Per-turn governance context injection so the model knows what is pending and what is policied. Secret redaction in tool output so keys never reach the model. Live session ingest so /code-sessions shows turn-by-turn token counts as the agent runs, not after.

Why Hermes gets a richer surface

Claude Code and Codex expose three lifecycle events DashClaw cares about: pre_tool_call, post_tool_call, stop. Useful, but coarse. Hermes Agent exposes eight, and four of them unlock workflows the others cannot: pre_llm_call (inject context every turn), post_llm_call (live ingest), transform_tool_result (redact secrets before the model sees them), and subagent_stop (record every delegate_task child for ROI tracking). The existing Claude Code Python hooks still run unchanged for the pre/post tool path — Hermes shares the same stdin JSON shape.

The four new capabilities

  1. Per-turn governance context. pre_llm_call injects active policies, pending approvals, and today's action count via Hermes's context-injection contract. The model walks into every turn already knowing what governance state it is in. Cached for 5 minutes so the hot path stays cheap.
  2. Live session ingest. post_llm_call pushes turn structure to /api/code-sessions/ingest-live every turn. No more waiting for a Stop hook to flush a transcript — token costs and tool calls land in /code-sessions as the agent runs.
  3. Secret redaction. transform_tool_result substitutes Anthropic / OpenAI / AWS / GitHub / Slack / Stripe API keys, JWTs, PEM private-key blocks, and DashClaw keys themselves in tool output before the model sees them. Never blocks; just substitutes — the model gets a redacted string with a token-shaped placeholder.
  4. Subagent ROI. Every delegate_task child exits through subagent_stop, which records a DashClaw action with action_type=subagent and the child's outcome. Powers the subagent-ROI dashboard — which delegated tasks paid off vs. burned tokens without making progress.

What stays the same

  • · Same /decisions ledger. Hermes actions land alongside Claude Code and Codex with agent_id = "hermes".
  • · Same Discord and Telegram approval bridges.
  • · Same dashclaw_wait_for_approval MCP tool — Hermes blocks on it the same way Claude Code and Codex do.
  • · Same policy packs. No Hermes-specific policies to write.
  • · The dashclaw-platform-intelligence skill is mirrored into the Hermes plugin from the same livingcode-derived canonical source the Claude Code and global skill installs use — never edited by hand, never drifts.

Try it

# macOS / Linux
bash scripts/install-hermes-plugin.sh

# Windows
powershell -File scripts/install-hermes-plugin.ps1

# Sanity check
hermes dashclaw doctor

Full step-by-step at /guides/hermes. If something breaks, open an issue on GitHub.