预提交 hook 可信不等于代码可信:agent 可借 package.json 执行恶意改动
izgorodin · reddit · 2026-10-31
在 DEV 讨论串「Your repo is not trusted context」中,有人提出如何让 agent 在没有共享 Git 配置写权限的情况下提交代码,讨论却暴露出另一个问题:选中可信的 hook 文件,不代表它启动的代码可信。
- pre-commit hook 可以放在 checkout 之外,但它执行的 npm test 会从 checkout 里的 package.json 读取 test 脚本——而 agent 可能已经改过脚本和测试本身。
- 也就是说,把提交动作移出 agent 环境,等于把这些改动的执行也一并移出了受控范围。
- 作者用原生 Git for Windows 2.52.0 与 2.56.0 复现了这一点(测试脚本代替 agent,未测编码 agent 沙箱);讨论还纠正了此前「使用 main 的 hooks 可解决问题」的说法。
- 结论:审查 agent 的 diff 时,不能只验证 hook 文件本身,要一路追踪它调用的 package 脚本和可执行配置。
「编程与Agent」频道最新
- Lean 4 推导 C 代码登顶 12 美元服务器挑战赛,CPU 降 19% — hargup13 · 2026-10-31
- Factory 舍弃 .ai 域名启用 factory.com,主打自主智能体软件开发 — matanSF · 2026-10-31
- 把真实工作变成 AI 流程:Bytebot 工作坊分享流程图思维方法论 — bytebot · 2026-10-31
- 独立开发者新品:P2P 直连 Claude 的社交应用 Wild 送审 App Store — nathanborror · 2026-10-31
- Replit autofix 让应用「自我维护」:监控 Agent 自动修 bug 并部署 — cem2ran · 2026-10-31
- vibe coding 工具没人维护?创业者盯上代管新生意 — AccBalanced · 2026-10-31