cleat your instructions once, for any agent.
Keep a repo's instructions in one AGENTS.md that every agent reads, with
CLAUDE.md reduced to a pointer at it. cleat is hooks only: no slash commands,
no skills, nothing resident in session context.
Repo layout, the just targets, and the conventions this codebase holds itself
to are in AGENTS.md, the same file the agents read. Requirements
are in SPEC.md, their coverage in STATUS.md.
The CLI is the whole implementation; the hooks are three registrations pointing at it. Both halves run standalone.
Report a directory's findings:
scripts/cleat check ../some-repo
scripts/cleat check ../some-repo --jsonFeed it a hook payload the way Claude Code would:
printf '%s' '{
"hook_event_name": "PreToolUse",
"session_id": "local",
"tool_name": "Write",
"tool_input": {"file_path": "/tmp/demo/CLAUDE.md", "content": "# Demo\n\nRun `just test`.\n"}
}' | python3 scripts/cleat hookThe hooks produce no terminal output of their own. Launch with --debug and
look for the [DEBUG] Hook PreToolUse / Hook PostToolUse lines:
claude --debug