关于 hooks
hooks 是用于管理 Claude Code 中 asciinema-tools 自动化钩子的技能,可安装、移除并查看钩子配置,也可设置会话结束时备份或转换。
主要功能
- 01安装或移除钩子
- 02查看当前钩子状态
- 03配置会话结束时备份
- 04配置会话结束时转换
- 05验证设置变更
适用场景
- 01为录制内容启用自动备份
- 02检查或移除已安装的钩子
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ terrylica/ cc-skills --skill hooks安装后在 Claude Code 中输入/hooks确认已加载。
附带文件references/evolution-log.md
详细介绍
/asciinema-tools:hooks
管理 asciinema-tools 自动化的 Claude Code hooks。
自我演进技能:此技能会在使用过程中不断改进。如果说明有误、参数发生变化,或需要采用变通方法,请立即修复此文件,不要拖延。仅针对真实且可复现的问题进行更新。
参数
| 参数 | 说明 |
|---|---|
install | 将 hooks 添加到 settings.json |
uninstall | 移除 asciinema-tools hooks |
status | 显示当前 hook 配置 |
--backup-on-stop | 会话结束时自动备份 |
--convert-on-stop | 会话结束时自动转换 |
-y, --yes | 跳过确认提示 |
Hook 定义
PostToolUse Hook(backup-on-stop)
{
"hooks": {
"PostToolUse": [
{
"matcher": "Bash",
"command": "asciinema-backup-if-active"
}
]
}
}
执行
跳过逻辑
- 如果提供了操作 -> 直接执行
- 如果提供了 hook 类型标志 -> 使用指定的 hooks
工作流
- 状态:读取当前的 ~/.claude/settings.json
- 操作:通过 AskUserQuestion 询问操作类型
- Hooks:通过 AskUserQuestion 询问 hook 选择
- 执行:修改 settings.json
- 验证:确认已应用更改
示例
# Check current hook status
/asciinema-tools:hooks status
# Install auto-backup hook
/asciinema-tools:hooks install --backup-on-stop
# Install without prompts
/asciinema-tools:hooks install -y
# Remove all asciinema hooks
/asciinema-tools:hooks uninstall
故障排除
| 问题 | 原因 | 解决方案 |
|---|---|---|
| 找不到 jq | 未安装 jq | brew install jq |
| 找不到设置文件 | ~/.claude/ 不存在 | 使用 mkdir -p ~/.claude 创建 |
| Hooks 无法运行 | 会话未重启 | 重启 Claude Code 会话 |
| 未触发备份 | 没有活动录制 | 先使用 daemon 开始录制 |
执行后反思
此技能完成后,请在结束前检查:
- 命令是否成功? — 如果没有,请修复导致失败的说明或错误表。
- 参数或输出是否发生变化? — 如果底层工具的接口发生变化,请相应更新用法示例和参数表。
- 是否需要采用变通方法? — 如果你不得不临时变通(使用不同的标志、增加额外步骤),请更新此 SKILL.md,避免下次调用时重复采用相同的变通方法。
仅在问题真实且可复现时进行更新,不要臆测。
评论
支持 Markdown