SuperAPI AI 工具集

hook-creator

编程与开发

查看项目

更新于 10-15 21:11

技能介绍

用途:创建生产可用的 Claude Code 钩子,集成 RBAC 安全体系、遵循官方 schema,并满足性能要求(pre-hook 低于 20ms)。适用创建自动化钩子(前后操作)、安全校验钩子、审计/日志钩子、扩展 RBAC 权限系统、自定义会话管理钩子。

主要能力:提供 10 种钩子事件类型(阻塞类:UserPromptSubmit、SessionStart、PreToolUse、PermissionRequest;观察类:PostToolUse、Notification、Stop、SubagentStop、PreCompact、SessionEnd);定义输入/输出 schema;内置模板 pre-hook-template.js、post-hook-template.js、session-hook-template.js;提供模板生成命令 node hook-template-generator.js --type pre --name my-validator --event PreToolUse;支持 RBAC 身份校验与性能优化、测试与注册。

使用方式:采用八阶段流程——选择钩子类型、定义 schema、选择模板、实现核心逻辑、集成 RBAC、性能优化、测试、注册到 settings.json。钩子从 stdin 读取 JSON 输入,向 stdout 输出 JSON(阻塞输出含 continue、decision、reason、suppressOutput、updatedInput)。注册示例:"hooks": {"PreToolUse": [{"type": "command", "command": "node /path/to/your/hook.js", "timeout": 5000, "matcher": {"tool_name_regex": "^(Bash|Write|Edit)$"}}]}。

限制与注意:非安全钩子失败时应放行,安全钩子失败时应阻断;勿记录敏感数据;把钩子输入视为不可信;使用绝对路径。Shell 钩子须 set -euo pipefail、变量加引号、防御式 jq、预建目录、用环境变量而非硬编码路径;避免 grep -P、直接 sed -i、阻塞式 cat、静默失败。性能目标:pre-hook <20ms(上限 100ms),post-hook <100ms(上限 1000ms)。最后更新 2025-12-30。