推送前先答题,Sphinx 逼你看懂 AI 代码
认识一个开源 Git 钩子,它在代码推送前考你一道题,检验你是否真看懂了 AI 写的改动,答对才放行,并给出安装步骤和三种别信的说法。
你让编码 agent 改了一堆代码,测试全绿,可没人说得清它在出错时会怎样。Sphinx 这个 Git 钩子要解决的就是这件事:思考可以外包,理解不能。它在推送前拦住你,就这次改动问一个问题,答不上来就别想合进去。
一、发生了什么
Sphinx 是一个免费开源的工具,专为配合编码 agent 的开发者设计。它作为 Git 钩子工作,代码被推送到受保护分支时会暂停,由一个从没看过你与 agent 对话的审阅者阅读本次 diff,就「改动出错时会怎样」提问。答对放行,答错会告诉你原因,再换个场景继续问。
它通过一条 npm 命令安装,环境要求 Node 22.19 以上,支持 macOS、Linux 和 WSL。审阅用的模型可以用你现有的编码 agent、OpenRouter,或任何兼容 OpenAI 接口的服务,设计上以极少的 token 运行。
官网给了一个示意对话:某个处理 Stripe 网络回调的函数,现在先保存事件 ID 再调用扣款。问题是 Stripe 超时后重发同一事件,重试时会发生什么。用户第一次答「会扣两次款」,被指出不对;追问后答对「会跳过扣款、客户永远不会被计费」,才继续推送到主分支。真实问题来自你自己的 diff。
二、跟你有什么关系
对重度依赖 AI 写代码的开发者,这相当于强制你做一次「看懂了吗」的自我检查,把理解变成门禁,而不是可有可无的流程。
对带团队的人,它补上了 linter 和测试覆盖不到的一环:那些检查语法和路径,这个钩子检查人能不能描述失败行为。
对只想快速交付的人,它有个放行口:用跳过命令可以强制推送,每次跳过都会被记录,留了条审计线索。
三、怎么用
读到这儿,可以顺路看 电脑操作 agent 干完活,谁来验货 读完能了解电脑操作型 agent 的任务完成度为何难自动核验:老办法只看局部画面,新思路让验证器自己动手探索取证,在线离线都能用,做 agent 数据与评测的人值得看。- 先确认环境有 Node 22.19 以上版本,然后全局安装 Sphinx。
- 运行安装命令,让它连上 Git 和你正在用的编码 agent,并选择由哪个模型来审阅。
- 之后照常推送即可。赶时间时可以用跳过命令放行,但要知道每次跳过都有日志。
四、三个别信的说法
错误说法。 Sphinx 能帮你检查代码有没有 bug。它不做质量判断,只判断你有没有看懂;它甚至不能保证代码正确,只保证推代码的人能复述出改动在出错时会发生什么。
错误说法。 装了它就要被卡住,改代码很麻烦。它有明确的旁路命令,跳过一次只会留一条记录,不会永久锁死你的流程。
错误说法。 它会把你的回答和代码喂给模型。官网说明里,你的回答不会传给编码 agent,.env 文件和密钥也不会被打开,审阅者是独立于你对话之外的另一个角色。
五、一句话结论
AI 替你写代码可以,但它不能替你在凌晨两点复述这段代码为什么这么写——Sphinx 逼你把这件事提前做了。
信息来源
- Sphinx Git Hook Quizzes You on AI-Written Code(AI Breaking Wire) · 2026-10-20
- Sphinx 推送前先考你一道题(完美教程资讯) · 2026-10-20
功能与价格以官方公告为准。本文写于 2026 年 10 月 21 日。
每周一封,只发新教程和可复制模板。不发广告,随时退订。