Makoto banner
Clear-Sights Clear-Sights

Makoto

Development community

Description

When Claude says “tests pass”, makoto checks the record — every claim held against the agent's own logged deeds; fakes blocked, not warned. Each check ships at measured zero false positives. 誠

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

Makoto

[![CI](https://github.com/Clear-Sights/Makoto/actions/workflows/ci.yml/badge.svg)](https://github.com/Clear-Sights/Makoto/actions/workflows/ci.yml)

**An integrity hook for Claude Code that watches the agent's _own_ tool calls and blocks the ones that fake a check.** When Claude says it did something — ran the tests, cited a paper, committed the fix, verified the certificate — makoto holds that word against its record. If the deed isn't there, or the verification was quietly disabled, makoto blocks the tool call (or the end-of-turn) and hands the agent a one-line correction to retry against.

That publication claim is deliberately bounded: Shipped plugin — installable and versioned. The dispatcher is replay-tested against authored sessions; its effect on a live session's outcome is unmeasured.

It judges the agent against its _own_ utterances and record — never the world's truth. It holds no facts ("France doesn't exist to it"); it only checks that a claimed word is kept, whole, and honored in deed. A word it lets through becomes spendable: trustworthy tender a reviewer or another agent can accept without re-deriving it.

What it catches

makoto fires on mechanical hook events — every `PreToolUse`, `PostToolUse`, and `Stop` — and **blocks** on pre-check findings and blocking end-of-turn gate findings. The live inventory is:

  • 15 pre-checks (all blocking)
  • Pre-check ids grouped by dotted prefix — content: 12, event: 2, gate: 1
  • 21 Stop checks (all checks registered at the Stop edge)
  • 19 end-of-turn gates (may_block=True)
  • 15 blocking end-of-turn gates (not advisory-allowlisted)
  • 4 advisory end-of-turn gates (advisory-allowlisted)

Every pre-check and every non-advisory end-of-turn gate blocks; there is no silent "warning" tier for those (see [Fire level](