Development
/hookify-help
Get help with the hookify system
> /plugin marketplace add affaan-m/ECC> /plugin install ecc@ecc
Command definition
hookify-help.mddescription: Get help with the hookify system
Display comprehensive hookify documentation.
Hook System Overview
Hookify creates rule files that integrate with Claude Code's hook system to prevent unwanted behaviors. ECC's built-in runtime loads these rules automatically while plugin hooks are enabled; installing a separate Hookify plugin is not required.
Event Types
- `bash`: triggers on Bash tool use and matches command patterns
- `file`: triggers on Write/Edit tool use and matches file paths
- `stop`: triggers after each Claude response
- `prompt`: triggers on user message submission and matches input patterns
- `all`: triggers on all events
Rule File Format
Files are stored as `.claude/hookify.{name}.local.md`:
---
name: descriptive-name
enabled: true
event: bash|file|stop|prompt|all
action: block|warn
pattern: "regex pattern to match"
---
Message to display when rule triggers.
Supports multiple lines.
Commands
- `/hookify [description]` creates new rules and auto-analyzes the conversation when no description is given
- `/hookify-list` lists configured rules
- `/hookify-configure` toggles rules on or off
Pattern Tips
- use regex syntax
- for `bash`, match against the full command string
- for `file`, match against the file path
- test patterns before deploying
- avoid nested quantifiers such as `(a+)+`; the runtime rejects unsafe regexes
- every regex evaluation also has a 25 ms hard timeout
- malformed or oversized rules fail open with a diagnostic so one bad local rule cannot disable all hooks
- Git-tracked local rules require explicit `ECC_HOOKIFY_ALLOW_TRACKED=1` approval
Action Behavior
- `warn` adds the rule message to Claude's context and allows processing to continue
- `block` denies matching shell/file actions before execution
- `block` on prompt, post-tool, or stop events uses that event's structured block decision
- stop rules are skipped when `stop_hook_active` is already true to prevent loops
Read more
description: Get help with the hookify system
Display comprehensive hookify documentation.
Hook System Overview
Hookify creates rule files that integrate with Claude Code's hook system to prevent unwanted behaviors. ECC's built-in runtime loads these rules automatically while plugin hooks are enabled; installing a separate Hookify plugin is not required.
Event Types
- `bash`: triggers on Bash tool use and matches command patterns
- `file`: triggers on Write/Edit tool use and matches file paths
- `stop`: triggers after each Claude response
- `prompt`: triggers on user message submission and matches input patterns
- `all`: triggers on all events
Rule File Format
Files are stored as `.claude/hookify.{name}.local.md`:
--- name: descriptive-name enabled: true event: bash|file|stop|prompt|all action: block|warn pattern: "regex pattern to match" --- Message to display when rule triggers. Supports multiple lines.
Commands
- `/hookify [description]` creates new rules and auto-analyzes the conversation when no description is given
- `/hookify-list` lists configured rules
- `/hookify-configure` toggles rules on or off
Pattern Tips
- use regex syntax
- for `bash`, match against the full command string
- for `file`, match against the file path
- test patterns before deploying
- avoid nested quantifiers such as `(a+)+`; the runtime rejects unsafe regexes
- every regex evaluation also has a 25 ms hard timeout
- malformed or oversized rules fail open with a diagnostic so one bad local rule cannot disable all hooks
- Git-tracked local rules require explicit `ECC_HOOKIFY_ALLOW_TRACKED=1` approval
Action Behavior
- `warn` adds the rule message to Claude's context and allows processing to continue
- `block` denies matching shell/file actions before execution
- `block` on prompt, post-tool, or stop events uses that event's structured block decision
- stop rules are skipped when `stop_hook_active` is already true to prevent loops
Stats
300,817
Stars
44,393
Forks
Active
Maintenance
JavaScript
Language
MIT
License
Last commit
Created
Ships withecc
Your agent can write code, but ECC gives it a coordinated engineering system and toolbox: it plans before it builds, verifies changes with tests, reviews its own work from a fresh context, remembers what matters, and turns repeated wins into reusable skills
302k200 skills71 agents1 MCP
Other commands on ecc.
Auto-invoked
Auto-invoked
Auto-invoked
Auto-invoked
Auto-invoked
Auto-invoked
More commands from other plugins.
Auto-invoked
build
CommandImplement tasks incrementally — build, test, verify, commit. Add "auto" to run the whole plan in one approved pass.

