parthh01/sphinx 是一个 Git 钩子,用于在代理辅助开发中,于向受保护分支 push 之前检查你是否理解了变更内容。README 中介绍的方式是:暂时暂停 push,由与编写代码的对话相互分离的审查模型读取提交 diff,然后提出问题。回答通过后,被中断的 push 继续进行。该仓库未提供最新发行信息,因此无法将其描述为某个特定版本的变化。
审查者使用只读 Git 工具查看已提交的变更,并针对代码的行为、可能失败的情况以及必须遵守的条件提出问题。如果回答有误,它会说明依据并提出另一种场景。编写代码的对话记录不会传递给审查者,因此它与依赖同一上下文的自我验证相互分离。问题的重点也在于实际代码如何运作,而不是延迟或不一致之类的通用概念。因此,该工具的目的不是阻止代码生成,而是确认你是否理解了变更内容。
不过 README 将其限定为练习工具,而非安全门。使用它会产生费用,凭据也可能暴露,并且还存在钩子被绕过以及审查模型出错的可能。push 最多可能暂停 25 分钟,因此工作流程也可能因 shell 超时或误判而中断。因此,不能把是否通过视为代码安全性的保证;更准确的说法是,这是一次要求你解释变更内容的理解度检查。