← Back to list

hook-creator
by teren-papercutlabs
⭐ 0🍴 0📅 Jan 15, 2026
SKILL.md
name: hook-creator description: Help me create a Claude Code hook. Interviews about what to catch, then generates PreToolUse or PostToolUse hook.
Hook Creator
Use the interview skill protocol to understand what guardrail they want, then create the hook.
Questions to Ask
-
"What do you want to catch or check?"
- Get the core concern
-
"Describe a scenario where this should fire."
- Helps determine Pre vs Post
-
"What should happen when it fires?"
- Block, warn, remind, validate
Pre vs Post Heuristic
Based on their answers, determine:
PreToolUse (fires BEFORE action):
- Catch wrong approach before it happens
- "Don't do X directly, do Y instead"
- "Pause and consider before acting"
- Can BLOCK the action
PostToolUse (fires AFTER action):
- Validate output (lint-like)
- "Check the result follows pattern X"
- Deterministic checks on what was written
- Cannot block (already happened), but can warn
Tool Matching
Common patterns:
Bashwithdb:migrate- catches migration runsEditwithapp/models/- catches model editsWritewithdb/migrate/- catches migration file creationBashwithrmordelete- catches destructive commands
After the Interview
Create:
1. Hook Script
Create .claude/hooks/<hook-name>.sh (or .py):
#!/bin/bash
# Hook: <name>
# Fires: <Pre|Post>ToolUse on <tool>
echo "Reminder: <message>"
exit 0
For blocking hooks, exit non-zero:
echo "Blocked: <reason>"
exit 1
2. Settings Entry
Add to .claude/settings.json:
{
"hooks": {
"<Pre|Post>ToolUse": [
{
"matcher": {
"tool": "<Bash|Edit|Write>",
"<command|file_path>": "<pattern>"
},
"hooks": [
{
"type": "command",
"command": ".claude/hooks/<hook-name>.sh"
}
]
}
]
}
}
Matcher Patterns
command: regex match on Bash command (e.g.,"db:migrate")file_path: glob match on file path (e.g.,"app/models/**")
Example Hooks
Pre-migrate reminder:
{
"matcher": { "tool": "Bash", "command": "db:migrate" },
"hooks": [{ "type": "command", "command": "echo 'Did you review the migration?'" }]
}
Post-model edit lint:
{
"matcher": { "tool": "Edit", "file_path": "app/models/**" },
"hooks": [{ "type": "command", "command": ".claude/hooks/check-model.sh" }]
}
Score
Total Score
50/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon