Sphinx:Git推送前强制验证代码理解

Sphinx强制开发者在Git推送前验证代码理解。该工具通过提问检查逻辑正确性,兼容主流编码代理,确保变更由人而非黑盒输出真正掌握,防止盲目提交错误代码。

  • Free
  • FOSS
你可以外包你的思维,但不能外包你的理解。

孙子

推送前需回答验证问题

Sphinx 是一款面向代理辅助开发的 Git 工具。其核心机制是在代码推送前,强制开发者确认对代码变更的实际理解。该工具支持从现有的编码代理、OpenRouter 或任何兼容 OpenAI 的终端运行。

$ npm install -g sphinx-understand

当用户执行 git push origin main 时,Sphinx 会触发理解检查。例如,针对包含 11 个文件变更(+5,012 −3,147)的差异,系统会提出具体问题以验证逻辑正确性。

在一个示例场景中,Sphinx 询问:“您的网络处理器现在将在调用充电之前保存事件 ID,然后再次发送相同的事件。在重试时会发生什么?”

若开发者回答“因此客户收取的费用是两倍”,Sphinx 将指出错误:“完全没有。重试会找到保存的 ID,并返回 200 无需充电。但是在指控成功之前,存储了身份证。如果充电失败了,下一次重试会做什么?”

当开发者修正回答为“客户从来没有收到账单”后,系统显示“✓ Understood. Pushing to origin/main.”,允许推送继续。

这一流程旨在确保真正的理解来自开发者本人,而非依赖代理的黑盒输出。具体工作流如下:

  1. 开发者或其代理尝试推送到受保护的分支。
  2. Sphinx 引入一个从未参与聊天记录的评论者视角,要求阅读差异并提问。
  3. 开发者需回答新问题或尝试新场景,只有答案正确,推送才会继续。

Sphinx 兼容 Codex、Claude Code、Cursor、OpenCode、Pi 以及普通 Git 环境。用户的回答不会发送给编码代理,且 .env 文件和密钥不会被打开。所有交互记录均被保留,以便后续审查。

快速开始

# Node 22.19+ · macOS, Linux, or WSL
npm install -g sphinx-understand
sphinx install

# then push as usual
git push

安装完成后,用户可以指定用于检查的模型,Sphinx 将读取其他相关文件并启动验证流程。

评论 0

0/500

评论需审核后展示,请文明发言

💬
还没有评论,来说两句

相关阅读