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
- Per-turn governance context.
pre_llm_callinjects 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. - Live session ingest.
post_llm_callpushes turn structure to/api/code-sessions/ingest-liveevery turn. No more waiting for a Stop hook to flush a transcript — token costs and tool calls land in/code-sessionsas the agent runs. - Secret redaction.
transform_tool_resultsubstitutes 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. - Subagent ROI. Every
delegate_taskchild exits throughsubagent_stop, which records a DashClaw action withaction_type=subagentand 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
/decisionsledger. Hermes actions land alongside Claude Code and Codex withagent_id = "hermes". - · Same Discord and Telegram approval bridges.
- · Same
dashclaw_wait_for_approvalMCP 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-intelligenceskill 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 doctorFull step-by-step at /guides/hermes. If something breaks, open an issue on GitHub.