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. Recognized credential patterns in tool output are replaced before the model receives the hook result. 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 reported delegate_task children 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. Each observed turn receives the governance state available to the hook, so the model knows 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-livefor each reported 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. Each reported
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: when Hermes calls it and honors the result, it waits on the same server-side approval decision as Claude Code and Codex. - · Same policy packs. No Hermes-specific policies to write.
- · The
dashclaw-governanceskill is mirrored into the Hermes plugin from the same canonical source used by the Claude Code and global skill installs.
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.