XingTu Hooks

September 4, 2026 · View on GitHub

开箱即用的 Agent 钩子(hooks),覆盖安全拦截 / 会话提醒 / 交付检视。

License Hooks Target

这是什么

xingtu-hooks 是行途开源矩阵的钩子资产仓。聚合 AI 工程实践中打磨的 Claude Code hooks,按场景开箱即用。市面鲜有系统开源的 hooks 集合,这是差异化资产。

🧩 DeepSeek Harness(DSH)兼容

本仓 hooks 遵循 Claude Code 标准 hook 事件协议,DeepSeek Harness 的插件模型可消费同一类生命周期钩子(PreToolUse / PostToolUse / Stop 等),用于安全拦截、会话提醒与交付检视,无需改写。

Hooks 清单

Hook说明触发时机
pre-tool-secret-guard拦截敏感文件(.env / 私钥 / 凭据)编辑PreToolUse(Edit|Write)
post-tool-bash-logBash 执行结果记录,失败提示PostToolUse(Bash)
session-start-reminder会话开始注入轻量工作提醒SessionStart
stop-review-check停止前提醒交付检视Stop

安装

# 复制到项目 .claude/hooks/
cp -r hooks/<hook-name> .claude/hooks/

# 注册到 settings.json(示例)
# "hooks": {
#   "PreToolUse": [ { "matcher": "Edit|Write", "hooks": [ { "type": "command", "command": "bash .claude/hooks/pre-tool-secret-guard/hook.sh" } ] } ],
#   "SessionStart": [ { "hooks": [ { "type": "command", "command": "bash .claude/hooks/session-start-reminder/hook.sh" } ] } ],
#   "Stop": [ { "hooks": [ { "type": "command", "command": "bash .claude/hooks/stop-review-check/hook.sh" } ] } ]
# }

Hook 协议

  • 输入:stdin JSON(含 tool_name / tool_input 等)
  • 输出:{"hookSpecificOutput": {"hookEventName": "...", "decision": "block|allow", "reason": "..."}}
  • PreToolUse 可 block/allow;SessionStart/Stop 用 additionalContext 注入轻量提醒(≤500B 克制)

设计原则

  • 确定性行为用 hook 强制:模型会忘指令,hook 由 harness 执行不依赖模型记忆
  • 克制注入:会话注入 ≤500B,不用 hook 做长文提醒
  • 安全第一:拦截优先于放行,敏感文件一律走环境变量

许可证

MIT License


📡 关于作者 · 行途

我是行途(Justin Li),一线技术经理 + 仍在写代码。

  • 🔔 公众号 「行途技术手记」:微信搜索关注,看 AI 工程化落地实战
  • 💬 微信:xingtu_note(备注"开源"优先通过)
  • 🌐 博客 / 作品集:https://xingtu1996.github.io

如果这份仓库对你有帮助,欢迎在公众号留言交流 🙌