Writing Hookify Rules — for Claude Code Writing Hookify Rules, ZOE-Solar-Accounting-OCR, community, for Claude Code, ide skills, warn-dangerous-rm, block-console-log, prompt, yaml event: bash pattern: rm\s+-rf, **Condition fields:**

v0.1.0

このスキルについて

適した場面: Ideal for AI agents that need writing hookify rules. ローカライズされた概要: ZOE Solar Accounting OCR # 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. This AI agent skill supports Claude Code, Cursor, and Windsurf workflows.

機能

Writing Hookify Rules
name: rule-identifier
event: bash file stop prompt all
pattern: regex-pattern-here
Message to show Claude when this rule triggers.

# 主なトピック

Delqhi-Projects Delqhi-Projects
[3]
[0]
更新日: 3/30/2026

Skill Overview

Start with fit, limitations, and setup before diving into the repository.

適した場面: Ideal for AI agents that need writing hookify rules. ローカライズされた概要: ZOE Solar Accounting OCR # 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. This AI agent skill supports Claude Code, Cursor, and Windsurf workflows.

このスキルを使用する理由

推奨ポイント: Writing Hookify Rules helps agents writing hookify rules. ZOE Solar Accounting OCR # Writing Hookify Rules Overview Hookify rules are markdown files with YAML frontmatter that define patterns to watch for and

おすすめ

適した場面: Ideal for AI agents that need writing hookify rules.

実現可能なユースケース for Writing Hookify Rules

ユースケース: Applying Writing Hookify Rules
ユースケース: Applying name: rule-identifier
ユースケース: Applying event: bash file stop prompt all

! セキュリティと制限

  • 制約事項: Start with verb: warn, prevent, block, require, check
  • 制約事項: not contains: Substring must NOT be present
  • 制約事項: All conditions must match for rule to trigger.

About The Source

The section below comes from the upstream repository. Use it as supporting material alongside the fit, use-case, and installation summary on this page.

Labs デモ

Browser Sandbox Environment

⚡️ Ready to unleash?

Experience this Agent in a zero-setup browser environment powered by WebContainers. No installation required.

Boot Container Sandbox

FAQ とインストール手順

These questions and steps mirror the structured data on this page for better search understanding.

? よくある質問

Writing Hookify Rules とは何ですか?

適した場面: Ideal for AI agents that need writing hookify rules. ローカライズされた概要: ZOE Solar Accounting OCR # 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. This AI agent skill supports Claude Code, Cursor, and Windsurf workflows.

Writing Hookify Rules はどうやって導入しますか?

次のコマンドを実行してください: npx killer-skills add Delqhi-Projects/ZOE-Solar-Accounting-OCR。Cursor、Windsurf、VS Code、Claude Code など19以上のIDEで使えます。

Writing Hookify Rules の主な用途は?

主な用途は次のとおりです: ユースケース: Applying Writing Hookify Rules, ユースケース: Applying name: rule-identifier, ユースケース: Applying event: bash file stop prompt all。

Writing Hookify Rules に対応するIDEは?

このスキルは Cursor, Windsurf, VS Code, Trae, Claude Code, OpenClaw, Aider, Codex, OpenCode, Goose, Cline, Roo Code, Kiro, Augment Code, Continue, GitHub Copilot, Sourcegraph Cody, and Amazon Q Developer に対応しています。統一された導入には Killer-Skills CLI を使えます。

Writing Hookify Rules に制限はありますか?

制約事項: Start with verb: warn, prevent, block, require, check. 制約事項: not contains: Substring must NOT be present. 制約事項: All conditions must match for rule to trigger..

このスキルの導入方法

  1. 1. ターミナルを開く

    プロジェクトディレクトリでターミナルまたはコマンドラインを開きます。

  2. 2. インストールコマンドを実行

    npx killer-skills add Delqhi-Projects/ZOE-Solar-Accounting-OCR を実行してください。CLI がIDEまたはエージェントを自動検出し、スキルを設定します。

  3. 3. スキルを使い始める

    このスキルはすぐに有効になります。現在のプロジェクトで Writing Hookify Rules をすぐ使えます。

! Source Notes

This page is still useful for installation and source reference. Before using it, compare the fit, limitations, and upstream repository notes above.

Upstream Repository Material

The section below comes from the upstream repository. Use it as supporting material alongside the fit, use-case, and installation summary on this page.

Upstream Source

Writing Hookify Rules

Install Writing Hookify Rules, an AI agent skill for AI agent workflows and automation. Explore features, use cases, limitations, and setup guidance.

SKILL.md
Readonly
Upstream Repository Material
The section below comes from the upstream repository. Use it as supporting material alongside the fit, use-case, and installation summary on this page.
Upstream Source

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

markdown
1--- 2name: rule-identifier 3enabled: true 4event: bash|file|stop|prompt|all 5pattern: regex-pattern-here 6--- 7 8Message to show Claude when this rule triggers. 9Can include markdown formatting, warnings, suggestions, etc.

Frontmatter Fields

name (required): Unique identifier for the rule

  • Use kebab-case: warn-dangerous-rm, block-console-log
  • Be descriptive and action-oriented
  • Start with verb: warn, prevent, block, require, check

enabled (required): Boolean to activate/deactivate

  • true: Rule is active
  • false: Rule is disabled (won't trigger)
  • Can toggle without deleting rule

event (required): Which hook event to trigger on

  • bash: Bash tool commands
  • file: Edit, Write, MultiEdit tools
  • stop: When agent wants to stop
  • prompt: When user submits a prompt
  • all: All events

action (optional): What to do when rule matches

  • warn: Show message but allow operation (default)
  • block: Prevent operation (PreToolUse) or stop session (Stop events)
  • If omitted, defaults to warn

pattern (simple format): Regex pattern to match

  • Used for simple single-condition rules
  • Matches against command (bash) or new_text (file)
  • Python regex syntax

Example:

yaml
1event: bash 2pattern: rm\s+-rf

Advanced Format (Multiple Conditions)

For complex rules with multiple conditions:

markdown
1--- 2name: warn-env-file-edits 3enabled: true 4event: file 5conditions: 6 - field: file_path 7 operator: regex_match 8 pattern: \.env$ 9 - field: new_text 10 operator: contains 11 pattern: API_KEY 12--- 13 14You're adding an API key to a .env file. Ensure this file is in .gitignore!

Condition fields:

  • field: Which field to check
    • For bash: command
    • For file: file_path, new_text, old_text, content
  • operator: How to match
    • regex_match: Regex pattern matching
    • contains: Substring check
    • equals: Exact match
    • not_contains: Substring must NOT be present
    • starts_with: Prefix check
    • ends_with: Suffix check
  • pattern: Pattern or string to match

All conditions must match for rule to trigger.

Message Body

The markdown content after frontmatter is shown to Claude when the rule triggers.

Good messages:

  • Explain what was detected
  • Explain why it's problematic
  • Suggest alternatives or best practices
  • Use formatting for clarity (bold, lists, etc.)

Example:

markdown
1⚠️ **Console.log detected!** 2 3You're adding console.log to production code. 4 5**Why this matters:** 6- Debug logs shouldn't ship to production 7- Console.log can expose sensitive data 8- Impacts browser performance 9 10**Alternatives:** 11- Use a proper logging library 12- Remove before committing 13- Use conditional debug builds

Event Type Guide

bash Events

Match Bash command patterns:

markdown
1--- 2event: bash 3pattern: sudo\s+|rm\s+-rf|chmod\s+777 4--- 5 6Dangerous command detected!

Common patterns:

  • Dangerous commands: rm\s+-rf, dd\s+if=, mkfs
  • Privilege escalation: sudo\s+, su\s+
  • Permission issues: chmod\s+777, chown\s+root

file Events

Match Edit/Write/MultiEdit operations:

markdown
1--- 2event: file 3pattern: console\.log\(|eval\(|innerHTML\s*= 4--- 5 6Potentially problematic code pattern detected!

Match on different fields:

markdown
1--- 2event: file 3conditions: 4 - field: file_path 5 operator: regex_match 6 pattern: \.tsx?$ 7 - field: new_text 8 operator: regex_match 9 pattern: console\.log\( 10--- 11 12Console.log in TypeScript file!

Common patterns:

  • Debug code: console\.log\(, debugger, print\(
  • Security risks: eval\(, innerHTML\s*=, dangerouslySetInnerHTML
  • Sensitive files: \.env$, credentials, \.pem$
  • Generated files: node_modules/, dist/, build/

stop Events

Match when agent wants to stop (completion checks):

markdown
1--- 2event: stop 3pattern: .* 4--- 5 6Before stopping, verify: 7- [ ] Tests were run 8- [ ] Build succeeded 9- [ ] Documentation updated

Use for:

  • Reminders about required steps
  • Completion checklists
  • Process enforcement

prompt Events

Match user prompt content (advanced):

markdown
1--- 2event: prompt 3conditions: 4 - field: user_prompt 5 operator: contains 6 pattern: deploy to production 7--- 8 9Production deployment checklist: 10- [ ] Tests passing? 11- [ ] Reviewed by team? 12- [ ] Monitoring ready?

Pattern Writing Tips

Regex Basics

Literal characters: Most characters match themselves

  • rm matches "rm"
  • console.log matches "console.log"

Special characters need escaping:

  • . (any char) → \. (literal dot)
  • ( )\( \) (literal parens)
  • [ ]\[ \] (literal brackets)

Common metacharacters:

  • \s - whitespace (space, tab, newline)
  • \d - digit (0-9)
  • \w - word character (a-z, A-Z, 0-9, _)
  • . - any character
  • + - one or more
  • * - zero or more
  • ? - zero or one
  • | - OR

Examples:

rm\s+-rf         Matches: rm -rf, rm  -rf
console\.log\(   Matches: console.log(
(eval|exec)\(    Matches: eval( or exec(
chmod\s+777      Matches: chmod 777, chmod  777
API_KEY\s*=      Matches: API_KEY=, API_KEY =

Testing Patterns

Test regex patterns before using:

bash
1python3 -c "import re; print(re.search(r'your_pattern', 'test text'))"

Or use online regex testers (regex101.com with Python flavor).

Common Pitfalls

Too broad:

yaml
1pattern: log # Matches "log", "login", "dialog", "catalog"

Better: console\.log\(|logger\.

Too specific:

yaml
1pattern: rm -rf /tmp # Only matches exact path

Better: rm\s+-rf

Escaping issues:

  • YAML quoted strings: "pattern" requires double backslashes \\s
  • YAML unquoted: pattern: \s works as-is
  • Recommendation: Use unquoted patterns in YAML

File Organization

Location: All rules in .claude/ directory Naming: .claude/hookify.{descriptive-name}.local.md Gitignore: Add .claude/*.local.md to .gitignore

Good names:

  • hookify.dangerous-rm.local.md
  • hookify.console-log.local.md
  • hookify.require-tests.local.md
  • hookify.sensitive-files.local.md

Bad names:

  • hookify.rule1.local.md (not descriptive)
  • hookify.md (missing .local)
  • danger.local.md (missing hookify prefix)

Workflow

Creating a Rule

  1. Identify unwanted behavior
  2. Determine which tool is involved (Bash, Edit, etc.)
  3. Choose event type (bash, file, stop, etc.)
  4. Write regex pattern
  5. Create .claude/hookify.{name}.local.md file in project root
  6. Test immediately - rules are read dynamically on next tool use

Refining a Rule

  1. Edit the .local.md file
  2. Adjust pattern or message
  3. Test immediately - changes take effect on next tool use

Disabling a Rule

Temporary: Set enabled: false in frontmatter Permanent: Delete the .local.md file

Examples

See ${CLAUDE_PLUGIN_ROOT}/examples/ for complete examples:

  • dangerous-rm.local.md - Block dangerous rm commands
  • console-log-warning.local.md - Warn about console.log
  • sensitive-files-warning.local.md - Warn about editing .env files

Quick Reference

Minimum viable rule:

markdown
1--- 2name: my-rule 3enabled: true 4event: bash 5pattern: dangerous_command 6--- 7 8Warning message here

Rule with conditions:

markdown
1--- 2name: my-rule 3enabled: true 4event: file 5conditions: 6 - field: file_path 7 operator: regex_match 8 pattern: \.ts$ 9 - field: new_text 10 operator: contains 11 pattern: any 12--- 13 14Warning message

Event types:

  • bash - Bash commands
  • file - File edits
  • stop - Completion checks
  • prompt - User input
  • all - All events

Field options:

  • Bash: command
  • File: file_path, new_text, old_text, content
  • Prompt: user_prompt

Operators:

  • regex_match, contains, equals, not_contains, starts_with, ends_with

関連スキル

Looking for an alternative to Writing Hookify Rules or another community skill for your workflow? Explore these related open-source skills.

すべて表示

openclaw-release-maintainer

Logo of openclaw
openclaw

ローカライズされた概要: 🦞 # OpenClaw Release Maintainer Use this skill for release and publish-time workflow. It covers ai, assistant, crustacean workflows. This AI agent skill supports Claude Code, Cursor, and Windsurf workflows.

333.8k
0
AI

widget-generator

Logo of f
f

ローカライズされた概要: Generate customizable widget plugins for the prompts.chat feed system # Widget Generator Skill This skill guides creation of widget plugins for prompts.chat . It covers ai, artificial-intelligence, awesome-list workflows. This AI agent skill supports Claude Code, Cursor, and Windsurf

149.6k
0
AI

flags

Logo of vercel
vercel

ローカライズされた概要: The React Framework # Feature Flags Use this skill when adding or changing framework feature flags in Next.js internals. It covers blog, browser, compiler workflows. This AI agent skill supports Claude Code, Cursor, and Windsurf workflows.

138.4k
0
ブラウザ

pr-review

Logo of pytorch
pytorch

ローカライズされた概要: Usage Modes No Argument If the user invokes /pr-review with no arguments, do not perform a review . It covers autograd, deep-learning, gpu workflows. This AI agent skill supports Claude Code, Cursor, and Windsurf workflows.

98.6k
0
開発者