
Hookify Rules
- 1.4k installs
- 238k repo stars
- Updated August 5, 2026
- affaan-m/ecc
This is a copy of hookify-rules by affaan-m - installs and ranking accrue to the original listing.
hookify-rules is a Claude Code skill that teaches creation and management of Hookify markdown rules with YAML frontmatter for developers who need event-driven warnings and blocks when specific code or command patterns ap
About
hookify-rules is an ECC skill for writing Hookify rules—markdown files with YAML frontmatter that define regex patterns to watch and messages to show when patterns match during Claude sessions. Rules are stored as .claude/hookify.{rule-name}.local.md files. Frontmatter fields include name, enabled, event (bash|file|stop|prompt|all), and pattern (regex), followed by the message body shown on trigger with markdown formatting, warnings, and suggestions. Developers reach for hookify-rules when they want automatic guardrails against dangerous bash commands, risky file edits, or stop/prompt patterns without building a full pre-commit hook stack. The skill covers rule file format, event types, and rule-driven workflows for event-driven execution inside Claude. Use when creating, editing, or managing custom Hookify rules that surface guidance the moment matching code or commands appear.
- Creates .claude/hookify.{rule-name}.local.md files with YAML frontmatter
- Supports 5 event types: bash, file, stop, prompt, all
- Two action modes: warn (default) and block
- Advanced conditions using field + operator + pattern arrays
- Verb-first naming convention (warn-*, block-*, require-*) for 70+ rule patterns
Hookify Rules by the numbers
- 1,352 all-time installs (skills.sh)
- +84 installs in the week ending Aug 4, 2026 (Skillselion tracking)
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/affaan-m/ecc --skill hookify-rulesAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 1.4k |
|---|---|
| repo stars | ★ 238k |
| Last updated | August 5, 2026 |
| Repository | affaan-m/ecc ↗ |
How do you write Claude Hookify rules for pattern warnings?
Create, edit, and manage custom Hookify rules that automatically surface warnings, blocks, or guidance inside Claude when specific code or command patterns appear.
Who is it for?
Developers customizing Claude Code with local guardrails who want regex-triggered warnings on bash commands, file edits, or prompt/stop events without external CI hooks.
Skip if: Repository-wide Git pre-commit hooks managed outside Claude, or teams not using Hookify-compatible .claude rule file conventions.
When should I use this skill?
A developer creates, edits, or manages Hookify rules, hookify.local.md files, or event-driven Claude warnings for bash, file, stop, or prompt patterns.
What you get
Hookify rule files with YAML frontmatter, regex patterns, event bindings, and trigger messages stored under .claude/hookify.*.local.md.
- hookify.{rule-name}.local.md rule files
- Regex-triggered warning messages
By the numbers
- Supports 5 Hookify event types: bash, file, stop, prompt, and all
Files
Writing Hookify Rules
Overview
Hookify rules are markdown files with YAML frontmatter that define patterns to watch for and messages to show when those patterns match. Rules are stored in .claude/hookify.{rule-name}.local.md files.
Rule File Format
Basic Structure
---
name: rule-identifier
enabled: true
event: bash|file|stop|prompt|all
pattern: regex-pattern-here
---
Message to show Claude when this rule triggers.
Can include markdown formatting, warnings, suggestions, etc.Frontmatter Fields
| Field | Required | Values | Description |
|---|---|---|---|
| name | Yes | kebab-case string | Unique identifier (verb-first: warn-, block-, require-*) |
| enabled | Yes | true/false | Toggle without deleting |
| event | Yes | bash/file/stop/prompt/all | Which hook event triggers this |
| action | No | warn/block | warn (default) shows message; block prevents operation |
| pattern | Yes* | regex string | Pattern to match (*or use conditions for complex rules) |
Advanced Format (Multiple Conditions)
---
name: warn-env-api-keys
enabled: true
event: file
conditions:
- field: file_path
operator: regex_match
pattern: \.env$
- field: new_text
operator: contains
pattern: API_KEY
---
You're adding an API key to a .env file. Ensure this file is in .gitignore!Condition fields by event:
- bash:
command - file:
file_path,new_text,old_text,content - prompt:
user_prompt
Operators: regex_match, contains, equals, not_contains, starts_with, ends_with
All conditions must match for rule to trigger.
Event Type Guide
bash Events
Match Bash command patterns:
- Dangerous commands:
rm\s+-rf,dd\s+if=,mkfs - Privilege escalation:
sudo\s+,su\s+ - Permission issues:
chmod\s+777
file Events
Match Edit/Write/MultiEdit operations:
- Debug code:
console\.log\(,debugger - Security risks:
eval\(,innerHTML\s*= - Sensitive files:
\.env$,credentials,\.pem$
stop Events
Completion checks and reminders. Pattern .* matches always.
prompt Events
Match user prompt content for workflow enforcement.
Pattern Writing Tips
Regex Basics
- Escape special chars:
.to\.,(to\( \swhitespace,\ddigit,\wword char+one or more,*zero or more,?optional|OR operator
Common Pitfalls
- Too broad:
logmatches "login", "dialog" — useconsole\.log\( - Too specific:
rm -rf /tmp— userm\s+-rf - YAML escaping: Use unquoted patterns; quoted strings need
\\s
Testing
python3 -c "import re; print(re.search(r'your_pattern', 'test text'))"File Organization
- Location:
.claude/directory in project root - Naming:
.claude/hookify.{descriptive-name}.local.md - Gitignore: Add
.claude/*.local.mdto.gitignore
Commands
/hookify [description]- Create new rules (auto-analyzes conversation if no args)/hookify-list- View all rules in table format/hookify-configure- Toggle rules on/off interactively/hookify-help- Full documentation
Quick Reference
Minimum viable rule:
---
name: my-rule
enabled: true
event: bash
pattern: dangerous_command
---
Warning message hereRelated skills
FAQ
Where are Hookify rules stored?
hookify-rules stores Hookify rules as .claude/hookify.{rule-name}.local.md markdown files with YAML frontmatter. Each file defines name, enabled, event type, regex pattern, and the message Claude shows when the pattern matches.
Which Hookify event types does hookify-rules support?
hookify-rules documents event values bash, file, stop, prompt, and all. Developers bind regex patterns to these events so Claude surfaces warnings or blocks when matching commands, file changes, or session stop/prompt conditions occur.