一个48行的缓存管理类,被AI代理的插件改成一行@lru_cache装饰器。这是Ponytail官网首页摆出来的招牌案例——一段cache.py代码对比图,左边红色删掉48行,右边绿色加1行,配文写着"行为不变,零bug,因为那段代码已经不存在了"。这张图确实好看,问题是它讲的是最理想的情况,不是平均水平。
Ponytail是开发者Dietrich Gebert做的一套AI编程代理插件,已经适配Claude Code、Codex、Copilot CLI等14个以上代理。核心逻辑是一份七级"阶梯":先问这功能是不是根本不用做(YAGNI),再看仓库里有没有现成的,再看标准库、原生平台特性、已装依赖能不能顶上,实在不行才写最少的代码。说白了,就是把资深工程师被夜里三点电话吵醒后练出的"能不写就不写"习惯,写成系统提示词,逼AI代理默认执行。
192次跑分,54%是怎么来的
官方基准测试用Claude Haiku 4.5配Claude Code 2.1.177,在tiangolo的full-stack-fastapi-template仓库(锁定某个commit版本)上跑12个功能任务,四组对照各重复4次,一共192次运行。无插件的基线组平均每个任务新增191行代码、消耗34.9万token、花费0.097美元、耗时69秒;装了Ponytail的组,代码行数、token、成本、耗时分别降了54%、22%、20%、27%,安全测试通过率保持100%。
这套方法论比大多数插件宣传页认真得多,值得先给个肯定。但54%这个数字是12个任务加总求出的平均值,不是每个任务的典型表现。真正把差距拉开的,是几个前端UI任务:日期选择器从404行砍到23行,颜色选择器从287行砍到23行,靠的都是换成原生HTML控件而不是自己写组件。后端任务因为基线本来就写得精简,几组之间差距很小。换句话说,54%更接近"这套方法对某几类任务特别有效",而不是"AI代码普遍多写了一半"。
安全承诺的边界,和一场恰好露馅的对照
官方最硬的一条宣传是"安全性未被牺牲",无插件基线和Ponytail组的安全测试都是20/20满分。但拿来对照的另一个方案——Scott Logic的Colin Eberhardt写的一句提示词"Follow YAGNI principles",表现是19/20,唯一失败的一项正好是路径穿越攻击测试。这个细节被Ponytail的营销页放大成了"简单提示词不安全,插件才安全"的证据。
但这套安全测试只覆盖5类确定性对抗输入,路径穿越、SQL注入这种,不是覆盖真实生产环境的全部攻击面。100%通过率听起来结实,细看是"5道确定的判断题都答对了",不等于"这套代码在任何场景下都安全"。企业采购方如果拿这个数字直接当生产环境的安全背书,风险不在插件本身,在把有限测试当成无限保证。
- 提醒.安全性"100%"只是5类固定对抗测试的满分,不是通用安全审计结论。
两把手术刀:换皮论,和三倍差距
Eberhardt测试的结论更扎心:一句"Follow YAGNI principles"就能拿到接近Ponytail的效果,加上"并给出一行方案"这半句,表现甚至更好。他的判断是,Ponytail本质是把YAGNI原则(You Aren't Gonna Need It,你不会需要它)重新包装成一个插件产品,而不是发明了新方法。孔子讲"温故而知新",这套阶梯温的是老工程师的直觉,新在哪里,值得打个问号。
JetBrains的独立复测给出更大的落差。他们用80组配对任务测试,平均只减少15.4%的代码、10.3%的成本,质量没有统计显著差异——是官方54%的三分之一都不到。任务集不同、模型不同,都可能是原因,但差距大到这个程度,说明官方基准对任务选择极度敏感,不能直接当成日常工作的普遍收益。
装了插件,但代理可能压根没理你
比数字落差更该被写进产品说明的,是JetBrains发现的一个操作层bug:如果只是把skill文件放进目录、不做特殊的钩子注入,Claude Code在10次会话里0次自动激活这个skill。真正起作用的前提,是插件在session-start阶段强制把规则塞进上下文。这件事Ponytail的落地页只字未提。
这意味着一部分用户可能"装了但没用上"——以为自己在享受YAGNI阶梯的好处,实际上代理从头到尾没读过那份规则。这比基准数字虚高更值得警惕,因为它不是统计口径的分歧,是一个能不能生效的开关问题。
装了插件不等于用上了插件,这条边界原文一个字没提。
Ponytail想解决的问题是真的:AI代理确实爱把简单需求写成小型框架,过度工程化是行业公认的通病,YAGNI这剂老药也确实对症。官方早期宣传的80%到94%的代码减少数字,后来被README自己承认方法有缺陷、单轮对话测试基线掺了大量对话性文字,54%是作者退一步给出的更可信版本——这种自我纠正值得记一笔,说明团队没有一路虚报到底。但从54%到15.4%,再到"装了可能没生效",这条链路提醒的是同一件事:AI工具的基准测试,谁跑的、拿什么任务跑的、有没有独立人重跑一遍,比宣传页上的百分比重要得多。对开发者更实际的建议是,把Ponytail当成一条有价值的建议,而不是一份权威承诺,装上之后,先确认它真的被激活了。
