Writing Hookify Rules — AIエージェント规则开发 Writing Hookify Rules, musicscheduler, community, AIエージェント规则开发, ide skills, Hookify规则设置, YAML前置内容, 正则表达式模式, Markdown文件, 事件触发, Claude Code

v0.1.0

关于此技能

非常适合需要自定义事件处理和模式匹配功能的 AI 代理,如 Claude、AutoGPT 和 LangChain。 Hookify规则是AIエージェント中用于定义特定模式和显示消息的配置文件

功能特性

支持YAML前置内容
正则表达式模式匹配
自定义消息显示
Markdown格式支持
多种事件触发支持

# 核心主题

jackzerby jackzerby
[0]
[0]
更新于: 3/3/2026

Killer-Skills Review

Decision support comes first. Repository text comes second.

Reference-Only Page Review Score: 8/11

This page remains useful for operators, but Killer-Skills treats it as reference material instead of a primary organic landing page.

Concrete use-case guidance Explicit limitations and caution Quality floor passed for review
Review Score
8/11
Quality Score
65
Canonical Locale
en
Detected Body Locale
en

非常适合需要自定义事件处理和模式匹配功能的 AI 代理,如 Claude、AutoGPT 和 LangChain。 Hookify规则是AIエージェント中用于定义特定模式和显示消息的配置文件

核心价值

赋予代理定义使用 markdown 文件和 YAML 前置内容自定义模式和消息的能力,实现高级事件处理和使用 bash 事件和 Hookify 规则的自动化。

适用 Agent 类型

非常适合需要自定义事件处理和模式匹配功能的 AI 代理,如 Claude、AutoGPT 和 LangChain。

赋予的主要能力 · Writing Hookify Rules

为 bash 事件定义自定义模式
使用 YAML 前置内容自动化消息响应
使用 markdown 格式生成自定义通知

! 使用限制与门槛

  • 需要 Hookify 安装
  • 仅限于使用 YAML 前置内容的 markdown 文件
  • 依赖于 bash 事件和 Hookify 规则

Why this page is reference-only

  • - Current locale does not satisfy the locale-governance contract.
  • - The page lacks a strong recommendation layer.

Source Boundary

The section below is supporting source material from the upstream repository. Use the Killer-Skills review above as the primary decision layer.

实验室 Demo

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

Writing Hookify Rules 是什么?

非常适合需要自定义事件处理和模式匹配功能的 AI 代理,如 Claude、AutoGPT 和 LangChain。 Hookify规则是AIエージェント中用于定义特定模式和显示消息的配置文件

如何安装 Writing Hookify Rules?

运行命令:npx killer-skills add jackzerby/musicscheduler/Writing Hookify Rules。支持 Cursor、Windsurf、VS Code、Claude Code 等 19+ IDE/Agent。

Writing Hookify Rules 适用于哪些场景?

典型场景包括:为 bash 事件定义自定义模式、使用 YAML 前置内容自动化消息响应、使用 markdown 格式生成自定义通知。

Writing Hookify Rules 支持哪些 IDE 或 Agent?

该技能兼容 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 有哪些限制?

需要 Hookify 安装;仅限于使用 YAML 前置内容的 markdown 文件;依赖于 bash 事件和 Hookify 规则。

安装步骤

  1. 1. 打开终端

    在你的项目目录中打开终端或命令行。

  2. 2. 执行安装命令

    运行:npx killer-skills add jackzerby/musicscheduler/Writing Hookify Rules。CLI 会自动识别 IDE 或 AI Agent 并完成配置。

  3. 3. 开始使用技能

    Writing Hookify Rules 已启用,可立即在当前项目中调用。

! 参考页模式

此页面仍可作为安装与查阅参考,但 Killer-Skills 不再把它视为主要可索引落地页。请优先阅读上方评审结论,再决定是否继续查看上游仓库说明。

Imported Repository Instructions

The section below is supporting source material from the upstream repository. Use the Killer-Skills review above as the primary decision layer.

Supporting Evidence

Writing Hookify Rules

安装 Writing Hookify Rules,这是一款面向AI agent workflows and automation的 AI Agent Skill。支持 Claude Code、Cursor、Windsurf,一键安装。

SKILL.md
Readonly
Imported Repository Instructions
The section below is supporting source material from the upstream repository. Use the Killer-Skills review above as the primary decision layer.
Supporting Evidence

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

相关技能

寻找 Writing Hookify Rules 的替代方案 (Alternative) 或可搭配使用的同类 community Skill?探索以下相关开源技能。

查看全部

openclaw-release-maintainer

Logo of openclaw
openclaw

Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞

333.8k
0
AI

widget-generator

Logo of f
f

为prompts.chat的信息反馈系统生成可定制的插件小部件

149.6k
0
AI

flags

Logo of vercel
vercel

React 框架

138.4k
0
浏览器

pr-review

Logo of pytorch
pytorch

Python中具有强大GPU加速的张量和动态神经网络

98.6k
0
开发者工具