overview / faq / The gate is not firing — why?
Work through these in order:
rabadon status. In watch mode nothing is stopped — rules only record WOULD_BLOCK. Turn it on with rabadon on.0 before any rule runs and writes nothing to the ledger, no matter what mode says. They are checked before the mode, so they beat rabadon on. The full table, with the one command that lifts each, is the six silencers.
Run rabadon status first. Since 2026-08-26 it names the silencer that is in force, says where the silencer is, and prints the one command that lifts it. Corrected on 2026-08-26. This step used to open with "rabadon status will not tell you about these" and used to list three silencers. Both were measured false with bash native/docs_truth_test.sh: the screen reports the silencer, and the binary can report six of them. rabadon off is not a way out of RABADON_OFF=1, <project>/.rabadon/off, <project>/.rabadon/mode or RABADON_MODE=silent. It does lift $RABADON_DIR/silent and a $RABADON_DIR/mode that says silent.
rabadon drill fires a synthetic dangerous command through the real gate. If the drill refuses but your real command does not, the gate is healthy and your guard rule does not match the command — check the regex in .rabadon/guard.json (it is matched against the full command; run rabadon lint).rabadon doctor reports global hook health and names any hook command pointing at a missing path. If hooks are missing, re-run rabadon init in the project (or rabadon init --global).rabadon init merged the hooks and a .rabadon/guard.json exists.rabadon init · rabadon on | off | status | toggle · rabadon drill · rabadon lint · rabadon doctor