v1.2.1
forge-override: user-confirmed bypass for security hooks
Security hooks (command-guard, db-guard) now support an override mechanism for when a blocked command is intentionally needed.
How it works
- A hook blocks a destructive command
- Claude explains what was blocked and why
- You confirm you want to proceed
- Claude retries with
# forge-override: <reason>as the first line - Claude Code's permission prompt shows the full command — you approve or deny
- The override is logged to
~/.claude/security.log
What's new
- Override token —
# forge-override: <reason>bypasses command-guard and db-guard - Reason required — bare token or whitespace-only is rejected
- Audit trail — all overrides logged with timestamp, reason, and command
- Behavioural rules — new
security-overrides.mdconstrains Claude from using overrides without your explicit confirmation - SECURITY.md — full documentation of the override mechanism, security model, and what cannot be overridden
What cannot be overridden
secret-filter— advisory only, fix false positives via better patternsarchitect-gate— plan quality enforcementcommit-validator— AI attribution block
Stats
- 461 tests (10 new override tests)
- 8 rules files (was 7)
Fixes
- Corrected changelog dates for v1.0.0–v1.2.0 (were incorrectly listed as 2025)