Hooks
What 0xwilliamortiz-ratchet runs automatically, and when. A hook is a command Claude Code fires at a fixed moment, without you asking for it.
$ npx -y skills add 0xwilliamortiz/ratchet --agent claude-codeShips with 0xwilliamortiz-ratchet. Installing the plugin gets these hooks.
What fires, and when
SessionStart
Fires once when a session begins, and again after a context compaction. It is where a plugin sets up its environment, or restores state the compaction dropped.
- Runs ratchet-session.js".
UserPromptSubmit
Fires before Claude sees each prompt you send. A plugin can use it to inject context, so the same instruction reaches the model every turn instead of only at session start.
- Runs ratchet-prompt.js".
PostToolUse
- Runs ratchet-guard.js".
SubagentStart
- Runs ratchet-subagent.js".
Stop
- Runs ratchet-report.js".
Where it lives
- hooks/ratchet-guard.jsGitHub
- hooks/ratchet-prompt.jsGitHub
- hooks/ratchet-report.jsGitHub
- hooks/ratchet-session.jsGitHub
- hooks/ratchet-subagent.jsGitHub
Read the script before you install anything that runs on your machine. This is the one part of a plugin that acts without being asked.
Your agent reads the rules. This checks whether it followed them. A ratchet turns one way. Complexity in your codebase goes down or stays flat, unless someone deliberately turns it the other way and writes down why.
Repo: 0xwilliamortiz/ratchet

