DietrichGebert/ponytail 保姆级部署教程:让 AI 学会最懒资深工程师的编码哲学
一句话定位:GitHub 开源项目
DietrichGebert/ponytail是一个给 AI 编码智能体装上的「懒资深工程师」技能——它把「最好的代码是你不写的代码」这门老工程师手艺写进一段提示词,让 Claude Code、Codex、Cursor、Copilot、Gemini、OpenCode 等智能体在写代码之前先停下来问自己:这事到底需不需要写、仓库里是不是已经有了、标准库/浏览器原生能不能直接顶上来。slogan:He says nothing. He writes one line. It works.(他什么都不说,只写一行,然后跑起来了。)
仓库地址:https://github.com/DietrichGebert/ponytail · 许可证:MIT · ⭐ 181,505 · npm 包名
@dietrichgebert/ponytail

▲ 图 1:Ponytail 官方主 Logo(浅色模式),来自仓库 assets/logo.png,官方 README 顶部展示图

▲ 图 2:Ponytail 官方主 Logo(深色模式),来自仓库 assets/logo-dark.png,随系统主题自动切换的版本
▲ 图 3:Ponytail 官方 README 顶部的一排徽章——Trendshift 仓库入口徽章、GitHub Stars、最新 Release、npm 版本、Works with 20 agents、MIT License,均为官方 shields.io / trendshift.io 徽章

▲ 图 4:Ponytail 5 官方主视觉(assets/v5/hero.jpg),官方用 Claude Code 同一智能体、39 个任务(含真实 FastAPI + React 仓库)、Opus 5.5、每任务 5 次跑出来的对比结论
▲ 图 5:Ponytail 官方 README 中的 Trendshift 日榜、周榜、月度 JavaScript 榜三枚官方徽章
一、项目简介
你一定认识他:长马尾、椭圆眼镜、在公司待得比版本控制系统还久。你给他看 50 行代码,他看两眼,什么也不说,把它们换成一行。Ponytail 就是把这位「懒资深工程师」搬进你的 AI 编码智能体里。
它的本质不是另一个代码框架,而是一段提示词技能(SKILL.md)——仓库里所有的安装方式、所有适配(Claude Code、Codex、Cursor、Copilot、Gemini、OpenCode、Devin CLI、Antigravity CLI、pi、Hermes Agent、Qoder、Grok Build 等),做的事都是把这一段提示词喂给智能体,让它每次写代码之前先过一遍「懒工程师梯子」。
最新版 Ponytail 5 是从零重写的。官方在 Claude Code 上用同一智能体、同一组 39 个任务(含一个真实 FastAPI + React 仓库)、Opus 5.5、每任务 5 次跑出来的对比结论是:-53% 代码、-41% 时间、-26% 成本、-45% Token,同时风险逻辑带测试的比例从 68% 提升到 98%。方法、逐任务表格与边界都列在仓库 benchmarks/results/2026-10-07-agentic.md 里。
它强调的「懒」从来不是「少写几个 Token」,而是:只写这个任务真正需要的代码,绝不砍掉校验、错误处理、安全和无障碍。代码之所以小,是因为它必要,而不是因为在打高尔夫。更便宜、更慢是附带结果。
二、功能特点 / 核心能力
| 能力 | 说明 |
|---|---|
| 🪜 懒工程师梯子(Ladder) | 写代码前逐级停在第一个撑得住的横档:这事到底需不需要存在 → 仓库里是不是已经有了 → 标准库能不能做 → 平台原生功能能不能做 → 已装依赖能不能做 → 能不能一行写完 → 最后才写最小可工作版本,并附一个小测试 |
| 🧠 先读懂再动手 | 梯子跑在「读懂问题之后」,而不是代替读代码:它会读你改动触达的代码、追踪真实数据流,然后才选横档。对方案懒,对读代码绝不懒 |
| 🛡️ 懒,不是玩忽职守 | 信任边界校验、数据丢失处理、安全、无障碍永远不在砍单清单上;有分支/循环/解析器/钱/安全的逻辑必留一个小测试 |
| 🔍 /ponytail-review 重写 | 像被呼来救场的老工程师一样 review:不只看 diff,读你改动触达的代码,查 bug、安全、真实负载、缺测试、慢路径、能砍的地方;每条结论都说清代码在干嘛、会出什么错、怎么修、不修会怎样 |
| 🗂️ /ponytail-audit 重写 | 对整个仓库跑同一套检查,先画地图(入口、数据流、预期负载),再按优先级排序告诉你先修哪一个;老版只列删什么,新版给修复顺序 |
| 🎸 Band 成本带(5.3 新) | Claude Code 输入框上方显示当前任务成本、Token、智能体时间、复用率、上一次改动后测试是否通过;按钮切档位、跑 review/audit、复制任务 Markdown、折成一行 |
| 📊 Board 本地看板 | 一个本地页面,跨项目汇总所有任务:成本/智能体时间/Token 曲线、每个会话的测试结果、工作天数;默认全留本机,在 ~/.config/ponytail/band/ |
| 🪙 档位可调 | /ponytail lite | full | ultra | off 切换强度;ultra 留给「这个仓库对不起你」的时刻 |
| 📒 shortcut: 注释账本 | 智能体故意走捷径时写下 shortcut: 注释,/ponytail-debt 把它们收成台账,让「以后再说」不会变成「永远不说」 |
| 🏅 Impact 记分牌 | /ponytail-gain 展示官方基准里少写的代码、少花的成本、多跑出来的速度 |
| 🔌 20+ 智能体适配 | Claude Code、Codex、Devin CLI、OpenCode、Gemini、Antigravity CLI、pi、Hermes Agent、Qoder、Grok Build 走完整技能;Cursor、Windsurf、Cline、Copilot、Kiro 走规则文件/AGENTS.md 指令模式 |

▲ 图 6:官方 Numbers 对比图(assets/v5/chart.png),纵轴为「无技能基线的占比」——Ponytail v4.13 代码 52%、Ponytail 5 代码 47%;输出 Token 57%/55%;成本 84%/74%;时间 62%/59%

▲ 图 7:官方测试对比图(assets/v5/tests.png)——代码砍一半,测试反而更牢

▲ 图 8:官方 Before/After 示例(assets/v5/beforeafter.png)——你要加一个日期选择器,无技能时智能体装库或手撸日历(335 行);Ponytail 5 先看仓库里已有 Input 组件,再看浏览器自带 date picker,两者一拼,10 行

▲ 图 9:官方 /ponytail-review 真实输出(assets/v5/review.png)——100% 植入问题被找到(无技能 87%)、100% diff 之外的问题被找到(无技能 78%)

▲ 图 10:官方 /ponytail-audit 真实输出(assets/v5/audit.png)——在一个仓库库存项目上给出 1 条 must fix、2 条 must fix、3 条 must fix、4 条 should fix、5 条 nice to have,并直接说「先修第 1 条」
三、环境要求
- 宿主智能体:任意一种支持技能(SKILL.md)或规则文件(AGENTS.md / CLAUDE.md / .cursorrules)的 AI 编码智能体;官方完整适配清单 20+,包括 Claude Code、Codex、Devin CLI、OpenCode、Gemini、Antigravity CLI、pi、Hermes Agent、Qoder、Grok Build、Cursor、Windsurf、Cline、Copilot、Kiro 等。
- Band / Board 专属要求:成本带需要 Claude Code 2.1.290 或更新版本,终端或桌面应用均可;VS Code 聊天面板、云端会话、
claude -p不显示。 - 运行时:技能本体就是一段 Markdown 提示词,本身不需要 Node/Python/任何运行时;npm 包
@dietrichgebert/ponytail仅作为分发通道。 - 配置文件:可选。不写任何配置就能跑;要改默认档位可写
~/.config/ponytail/config.json或设环境变量PONYTAIL_DEFAULT_MODE。 - 网络:从 GitHub 仓库或 npm 拉取技能即可;Band/Board 默认完全本地化,不发任何数据出去。
四、保姆级部署步骤
4.1 Claude Code 安装(官方推荐路径)
在 Claude Code 里依次执行两条命令:
/plugin marketplace add DietrichGebert/ponytail
/plugin install ponytail@ponytail装完即生效。每次新会话启动时会看到当前模式提示;输入 /ponytail 不带参数会报告当前档位,/ponytail lite|full|ultra|off 切换强度。
4.2 Codex CLI 安装
codex plugin marketplace add DietrichGebert/ponytail
codex plugin add ponytail@ponytail然后在 Codex 里打开 /hooks,信任它带的两个生命周期钩子,开一个新线程即可。在 Codex CLI 与 IDE 扩展里命令以技能命名空间形式出现,例如 $ponytail:ponytail-review。
4.3 其他智能体(Cursor / Copilot / OpenCode / Gemini 等)
对任意智能体,最通用的做法是:把仓库里的 AGENTS.md 复制到你项目根目录;或者让你的智能体把 skills/ponytail/SKILL.md 作为技能装上。Copilot、Cursor、OpenCode、Gemini 等逐家的步骤见官方 INSTALL.md。
Cursor 走 hooks 路线时只能拿到 /ponytail 档位切换(作为普通消息输入);Cursor 的规则文件、Windsurf、Cline、Copilot、Kiro、Antigravity 的 AGENTS.md 回退路径则加载常驻规则集,但不带命令。
4.4 安全校验
官方明确:只从 GitHub 的 DietrichGebert/ponytail 或 npm 的 @dietrichgebert/ponytail 安装。它从来不发布 .exe 或 .dll 文件——如果你拿到的副本带这俩后缀,那不是官方的。
五、配置说明
- 默认档位:不配置即可,默认档位由官方设定;要改可写
~/.config/ponytail/config.json,或设环境变量PONYTAIL_DEFAULT_MODE。 - shortcut 关键词:智能体故意走捷径时会写
shortcut:注释。想换成别的词(或不要),在项目的CLAUDE.md或AGENTS.md里写明,然后跑一次/ponytail-debt <你的词>。 - Band 显隐:
/ponytail band切换成本带显示,档位保留;/ponytail band import把你过去的 Claude Code 会话导入 Board,连同成本、智能体时间、Token 一起算。 - Board 数据位置:默认
~/.config/ponytail/band/,全在本机,不上传。

▲ 图 11:官方 Band 成本带截图(assets/band/band.png)——详情模式显示成本 $23.80、最近一轮 $1.14、平均 $0.72/轮、56.7M Token、168k 输出、33 轮、智能体时间 52m14s、复用率 71%、上次改动后测试通过;紧凑模式折成一行

▲ 图 12:官方 Board 本地看板截图(assets/band/board.png)——按项目的智能体时间曲线、最近会话及其测试、活跃天数与连续天数

▲ 图 13:官方 Ladder 梯子示意图(assets/v5/ladder.png)——1 这事需不需要存在 → 2 仓库里是不是已经有 → 3 标准库 → 4 平台原生 → 5 已装依赖 → 6 能不能一行 → 7 写最小可工作版本,有逻辑再加一个小测试
六、使用方法
装好之后不需要任何启动动作。它会在每个会话里常驻生效,你照常提需求即可。常用命令如下:
| 命令 | 作用 |
|---|---|
/ponytail [lite|full|ultra|off] | 设置强度或关闭;不带参数时,如果关着就用默认档位打开,否则报告当前档位 |
/ponytail band [on|off] | 仅 Claude Code:显隐输入框上方的成本带,不带参数切换;档位不变 |
/ponytail band import | 仅 Claude Code:把过去的会话导入 Board |
/ponytail-review | 像被呼来救场的老工程师一样 review 当前 diff;可用 uncommitted、staged、branch 或一个 PR 链接缩小/扩大范围 |
/ponytail-audit | 对整个仓库跑同一套检查,按优先级排序 |
/ponytail-debt | 把 shortcut: 注释收成台账 |
/ponytail-gain | 展示官方基准里的影响记分牌 |
/ponytail-help | 以上命令的快速参考 |
每次回答末尾,Ponytail 都会主动说明它跳过了什么、没检查什么、有什么风险你应该知道——这是它作为「懒但不玩忽职守」的一部分。
七、常见问题 FAQ
问一:它需要配置文件吗?
答:不需要。可选的 ~/.config/ponytail/config.json 或环境变量 PONYTAIL_DEFAULT_MODE 只能用来设默认档位;除此之外什么都不用配。
问二:为什么它会写 shortcut: 注释?
答:那是在标记「这是故意走的捷径、什么时候该回头看」,/ponytail-debt 把这些收成台账。想换词或不要,在项目 CLAUDE.md/AGENTS.md 里写明,再跑一次 /ponytail-debt <你的词>。
问三:我真的需要那个 120 行的缓存类怎么办?
答:你不需要。但你要是坚持,他会写——慢慢地、正确地、一边看着你一边写。
问四:它能扛规模吗?
答:你没写的代码可以无限扩展:零 bug、零 CVE、从一开始就是 100% 可用。这就是它的笑话,也是它的论点。
问五:为什么叫 Ponytail(马尾辫)?
答:你知道为什么。
问六:怎么避免装到山寨?
答:只认 GitHub 的 DietrichGebert/ponytail 与 npm 的 @dietrichgebert/ponytail;官方不发 .exe/.dll,见到带这俩后缀的副本直接丢弃。

▲ 图 14:官方用户故事横幅(assets/stories-banner.png),链接到 ponytail.dev/stories

▲ 图 15:官方 Waitlist 横幅(assets/waitlist-banner.png),链接到 ponytail.dev/soon
已用 Ponytail 做出来的产品(官方 README「Already built with Ponytail」展示位):
▲ 图 16:官方 README 展示的两个已用 Ponytail 做出来的产品——Retriever 与 PhotoReunion(浅色/深色两套 Logo,均来自仓库 assets/ 目录)
相关链接
- 项目仓库:DietrichGebert/ponytail
- 发布下载:Releases 页面
- npm 包:@dietrichgebert/ponytail
- 核心提示词:skills/ponytail/SKILL.md
- 精简规则文件:AGENTS.md
- 分智能体安装指南:INSTALL.md
- 基准报告:benchmarks/results/2026-10-07-agentic.md
- 多语言 README:简体中文 · Español · 한국어 · 日本語
- 用户故事:ponytail.dev/stories
- 等候列表:ponytail.dev/soon
- Star History:star-history.com/dietrichgebert/ponytail
▲ 图 17:Ponytail 官方 Star History 曲线,来自 star-history.com,官方 README 末尾展示图