SuperAPI AI 工具集

claude-hooks

智能体与模型

查看项目

更新于 10-16 09:49

技能介绍

用途:创建 Claude Code 事件钩子,实现工作流自动化、操作校验和事件响应。

主要能力:支持三种钩子类型——command(确定性检查、外部工具)、prompt(复杂推理、上下文感知校验)、agent(需工具访问的多步验证)。覆盖事件包括 PreToolUse(可阻断)、PostToolUse、PostToolUseFailure、PermissionRequest、UserPromptSubmit、Notification、Stop、SubagentStart、SubagentStop、Setup、PreCompact、SessionStart、SessionEnd。PreToolUse 可通过 updatedInput 修改工具输入并通过 permissionDecision 控制权限。

使用方式:在 .claude/settings.json、.claude/settings.local.json、~/.claude/settings.json 或插件 hooks/hooks.json 中配置。设置文件用直接结构,插件用带 description 的包装结构。matcher 区分大小写,支持精确匹配、多工具 OR(如 Edit|Write)、通配符 、文件模式(如 Write(.ts))及 MCP 工具。钩子从 stdin 接收 JSON,可用占位符 $ARGUMENTS、$TOOL_INPUT、$TOOL_RESULT、$USER_PROMPT;输出可用退出码(0 继续、2 阻断、1 警告)或 JSON。可用环境变量 $CLAUDE_PROJECT_DIR、$CLAUDE_PLUGIN_ROOT、$file、$CLAUDE_ENV_FILE、$CLAUDE_CODE_REMOTE。技能、代理和命令可在 frontmatter 中定义组件作用域钩子,仅支持 PreToolUse、PostToolUse、Stop。

调试与安全:用 claude --debug 查看调试输出,可手动管道测试钩子脚本。所有匹配钩子并行执行,无法看到彼此输出;修改钩子需重启 Claude Code。建议校验输入、引用 shell 变量、设置超时、使用绝对路径、在 bash 中使用 set -euo pipefail、避免记录敏感数据。

限制:具体配置行为以官方文档为准,本资料未提供收费、平台或效果信息。