Skip to content

v0.3.12 — Hard Governance Enforcement

Choose a tag to compare

@Keesan12 Keesan12 released this 24 Jun 23:01

The Fix

MartinLoop was promising governance but letting agents bypass it. This release makes governance mechanically enforced — not a suggestion.

What changed

martin estimate now writes a receipt

Running martin estimate "..." writes a timestamped receipt to workflow-state.json. This is the evidence trail that governance actually happened.

martin gate requires estimate

The gate now checks for both martin doctor AND martin estimate before returning exit 0. No estimate = BLOCKED. This is what the Claude Code PreToolUse hook calls — meaning Bash, Edit, and Write tool calls are blocked until governance is complete.

martin_run MCP tool blocks until estimate exists

The MCP server's run gate now includes estimate as a required step alongside doctor, plan, and preflight. Agents cannot call martin_run without first calling martin_estimate.

martin mcp install --host claude auto-installs hooks

Running martin mcp install --host claude now writes governance hooks directly into ~/.claude/settings.json. No manual copy-paste needed. The hooks install martin gate as a PreToolUse blocker for Bash/Edit/Write.

MartinLoop Memory Store

New _martin/memory.jsonl — append-only, never overwrites. Records user preferences, consent signals, budget patterns, and behavioral observations across sessions. Accessible via martin://agent/memory-summary MCP resource.

Install

npm install -g martin-loop@0.3.12

After install, wire governance into Claude Code:

martin mcp install --host claude