SuperAPI AI 工具集

hooks

编程与开发

查看项目

更新于 10-16 03:15

技能介绍

用途:为 Claude 项目中的钩子(hooks)开发提供规则,适用于 .claude/hooks/ 目录下的文件。

主要能力与模式:采用 Shell 包装脚本(.sh)通过 npx tsx 调用 TypeScript(.ts)处理器的模式。Shell 包装模板为:#!/bin/bash、set -e、cd "$CLAUDE_PROJECT_DIR/.claude/hooks"、cat | npx tsx <handler>.ts。TypeScript 处理器定义 HookInput 接口,通过 readStdin() 读取并 JSON.parse 输入,处理后输出 JSON,其中 result 可为 'continue' 或 'block',message 为可选系统提醒,最后用 console.log(JSON.stringify(output)) 输出。

钩子事件:PreToolUse(工具执行前,可阻断)、PostToolUse(工具执行后)、UserPromptSubmit(处理用户提示前)、PreCompact(上下文压缩前)、SessionStart(会话开始/恢复/压缩时)、Stop(智能体结束时)。

测试:可手动测试钩子,例如 echo '{"type": "resume"}' | .claude/hooks/session-start-continuity.sh。

注册:在 .claude/settings.json 中添加 hooks,结构包含 EventName、可选 matcher 模式数组,以及 type 为 command、command 指向 $CLAUDE_PROJECT_DIR/.claude/hooks/hook.sh 的钩子项。

限制:资料未提供更多关于错误处理、性能、兼容版本或安全注意事项的说明。