大家好,我是何三,独立开发者

AI 写代码越来越猛了,但有个问题——它太勤快了。

你要一个日期选择器,它反手装一个 flatpickr 库,写个 wrapper 组件再加个样式表,末了还要跟你聊两句时区问题。5 分钟过去了,你想要的其实就一行 <input type="date">

这种"过度编码"在 AI 编程里简直家常便饭。直到这个项目出现

Ponytail,6 天收割了近 3.5 万 Star(35,196⭐),让 AI 像房间里最懒的那个 Senior Dev 一样思考。测试数据很离谱:代码量减少 54%,成本降 20%,速度快 27%,而且 100% 安全。

ponytail_cover

你见过那种老程序员吧。扎个马尾辫,戴副圆框眼镜,在公司待得比版本控制系统还久。你给他看五十行代码,他看一眼,不说话,然后换成一行。

Ponytail 做的事,就是把这个人塞进你的 AI Agent 里。

它怎么让 AI "变懒"的

说白了,就是一个"六步决策阶梯"——AI 写代码前先问问自己:

ponytail_ladder

1. 这东西真的需要存在吗    不需要跳过YAGNI
2. 标准库能不能搞定        能用就用
3. 浏览器/平台自带功能     用原生的
4. 已安装的依赖有没有      别重复造轮子
5. 一行能搞定             就一行
6. 以上都不行             写最少能跑的代码

看到第 3 条我想起来一件事——之前有个项目做个颜色选择器,AI 吭哧吭哧写了一堆色板组件,结果原生 <input type="color"> 三行搞定。人类开发者可能会想"原生样式太丑了",但 Ponytail 的逻辑是:先跑起来,再谈好看。

这也是为什么它强调"懒,但不疏忽"。安全校验、错误处理、边界保护这些从来不砍。所谓"少写代码"不是让你牺牲质量,而是别写那些不该存在的东西。

有意思的是,这个决策阶梯和《程序员修炼之道》里的 DRY 原则本质上是同一件事——只是 Ponytail 把它做成了一套可执行的 Prompt。

真实测试数据,不是画饼

作者做了很严谨的基准测试:让 Claude Code 去改一个真实的 FastAPI + React 开源项目,跑了 12 个功能任务,每个任务测 4 轮。

ponytail_benchmark

方案 代码量 Token 成本 速度 安全
Ponytail -54% -22% -20% -27% 100%
caveman(纯简短控制) -20% +7% +3% +2% 100%
"YAGNI+一行代码" -33% -14% -21% -30% 95% ✗

对比组里有个叫 "caveman" 的纯简短 Prompt 控制,只省了 20% 代码行数,Token 反而多了 7%。还有一组 "YAGNI + 一行代码" 的纯文本提示,省了 33% 代码但安全评分掉到了 95%。

Ponytail 是唯一在所有维度上都正向优化、且安全保持 100% 的方案。

说实话,这个对比数据我一开始是不信的——怎么可能所有指标都变好了?仔细看完方法论才明白,它不是在"压缩代码",而是在"消除不必要的代码"。当你不再生成那些日期选择器、颜色选择器、自定义弹窗的时候,Token 和时间当然一起省了。

装一下试试

安装简单到离谱——取决于你用哪个 AI 编程工具。

Claude Code 用户

/plugin marketplace add DietrichGebert/ponytail
/plugin install ponytail@ponytail

Codex 用户

codex plugin marketplace add DietrichGebert/ponytail
codex

Copilot CLI 用户

copilot plugin marketplace add DietrichGebert/ponytail
copilot plugin install ponytail@ponytail

要是用 Cursor、Windsurf、Cline 或者 Aider,直接把仓库里的规则文件复制到对应目录就行。

装完之后,它就静默地在每个会话里工作了。你也可以用命令调整强度:

/ponytail lite      # 轻量模式
/ponytail full      # 完整模式(默认)
/ponytail ultra     # 狠人模式——代码库对你不好的时候用这个
/ponytail off       # 关掉

还有个 /ponytail-review 命令,能 review 你当前的 diff,找出过度设计的地方,返回一串"删除清单"。这个功能我觉得比主模式还实用——写完代码跑一下,让 AI 自己骂自己。

同类项目怎么看

和 Ponytail 思路类似的项目还有个叫 headroom(chopratejas/headroom)的,它主要做的是"在 AI 收到你上下文之前压缩内容"——压缩 60-95% 的 Token,还不影响回答质量。一个侧重输入端瘦身,一个侧重输出端精简,组合起来效果拉满。

另一个是 caveman,走的纯简短 Prompt 路线,但测试数据说明光喊"写短点"不太够,还得有 Ponytail 这种结构化决策。

觉得这玩意儿有意思?项目地址在这里:

https://github.com/DietrichGebert/ponytail

一点想法

Ponytail 火得这么快,我感觉不是因为它省了多少 Token——那点 Token 钱对大部分开发者来说根本不是事。

它火的真正原因,是它回应了很多人的一个隐痛:现在的 AI 编程工具太"啰嗦"了。你要一个螺丝,它给你造一辆车。你让它写个函数,它给你配个单元测试加文档加类型定义加错误处理——好是好,但很多时候你只需要那个函数。

装不装都行,看你自己。反正装了之后,你的 AI Agent 会变成一个话不多、活不多、但每行代码都管用的老程序员。

本文使用 MGO 编辑并发布

关注“何三笔记”,回复“mgo” 免费下载使用