你给AI编码代理下了一条指令:修复一个漏洞,15行代码应该够了。结果它哗啦啦吐出了整整500行的大翻新,顺带重构了不相干的模块。这不是偶发事故,而是AI辅助编程的日常——代理几乎不理解现有架构,一动手就是一场没有约束的冒险。
Boffin想补上的正是这道“约束缺口”。它充当一个直接作用于AI编码代理的资深工程师控制层,在代理触碰代码之前,把那一份文件当前适用的架构约束喂给它;修改完成后,再强制它一步步验证结果。它既不是又一个AGENTS.md,也不是事后靠lint或CI门禁来兜底。
传统的AGENTS.md之类做法,通常是把全仓库的规则拍成一块静态文本,不管编辑的是工具函数还是前端样式,代理看到的指令都一样。Boffin不一样:它只根据当前编辑的文件,动态路由真正相关的约束。一个脚本如何组织,一个API端点如何互操作,都有各自单独的蓝图。
除此之外,Boffin还要求验证粒度与改动量成正比——改两行就核对两行规模的一致性,动接口就核对整条边界。公开的DuckDB案例研究显示,在Boffin引导下,一次重构最终落在+17行、-17行的精确打击上,剩下的2,104项断言全部通过。不是全仓库大动干戈,而是把改动牢牢锁在最小必要范围内。
这不是提速工具。Boffin的设计重心就是审查安全,而不是让代理码得更快。它不充当新的提示词魔法,也不取代linter或CI流程,只做两件事:动手前给定界,完成后要验证。你在一个npm包里就能拿到,同时支持Cursor、Claude Code、Codex和OpenCode环境,交付的约束包有签名、可移植,底层由ParselFire Core驱动。
和那些静态规则文件放在一起对比就很清楚:交付方式上,Boffin是编辑感知的动态路由,而静态文件永远是整个仓库同吃一块;验证上,Boffin的格式强制要求验证,静态文件没有这一层;证据上,Boffin提供了带具体数字的可复现案例,而不是只靠一句话的承诺。仓库里已经放出了在多个真实开源代码上完成的引导重构案例,数字在,过程可复刻。
当一种工具不再靠“应该能行”,而是能够交出“+17/-17,2104断言全过”的导检记录时,它就不再只是一个想法,而是可以放进日常流水线里认真评估的东西。
热门跟贴