正在打开工具详情…
正在打开工具详情…
一个 prompt,让编码代理先读完代码再动手、能复用就不新写:官方基准里代码量 -53%、时间 -41%、token -45%。适合被过度实现烦到的人;代价是它会坚持砍掉你认为必要的抽象。
被代理的过度实现搞烦的人:引一堆不必要的库、为每个需求新写一套抽象、diff 里一半是可以不存在的代码。
需要大量样板代码的项目(严格的领域分层、必须的配置模板)——它的默认取向会和你的规范对着干;也不适合纯 Cursor / Cline 用户想要那几个命令的人,那边只加载规则。
Ponytail 的全部内容就是一个 prompt(skills/ponytail/SKILL.md,另有给规则文件用的精简版 AGENTS.md),仓库其余部分只是把这个 prompt 塞进不同 agent 的适配层。它的立场很简单:最好的代码是没写出来的代码。
README 举的例子很能说明问题:要一个日期选择器,不装的代理会引入一个日期选择器库或手搓整个日历(335 行);装了之后代理先看仓库里已有的 Input 组件,再想到浏览器自带 date picker,拼起来 10 行。
它不是无脑压 token。README 特意强调:规则从来不是「token 最少」,而是只写任务需要的,且校验、错误处理、安全、可访问性永不砍头。有分支、循环、解析器、金钱或安全逻辑的代码要留一个小测试;每条回复结尾要交代跳过了什么、没检查什么、有什么风险。
命令有 /ponytail lite|full|ultra|off 调强度、/ponytail-review 审当前 diff、/ponytail-audit 审整个仓库、/ponytail-debt 收集 shortcut: 注释。代价有两点:一是它会写 shortcut: 注释标记刻意偷懒的地方(不想要就在 CLAUDE.md 里换词);二是命令需要支持 skill 的宿主,纯规则文件适配的 Cursor / Windsurf / Cline 只能拿到常驻规则,没有命令。
上手步骤之外的具体做法:常见场景怎么配、命令怎么写、报错怎么处理。
按第一次用会卡在哪讲:它到底改了什么、四个命令分别什么时候用、为什么它写 shortcut 注释、以及纯规则文件模式下少了什么。
理解这一点,后面所有行为都能推出来。核心文件是 skills/ponytail/SKILL.md,AGENTS.md 是给「只读规则文件」的 agent 用的精简版,仓库里其他东西只是把这份 prompt 装进不同 agent 的适配层。
所以它不是插件、不是工具、不联网。它改的是代理的表达取向。
Input,再看浏览器原生 date picker,而不是引库或手搓日历。最后那条最实用:看结尾那段,就知道它这次偷了什么懒。
| 命令 | 什么时候用 | |||
|---|---|---|---|---|
| `/ponytail lite\ | full\ | ultra\ | off` | 调强度,或关掉。不带参数:关着就打开,开着就报当前档位 |
/ponytail-review | 审当前 diff,像那个「出事会被叫醒」的高级工程师 | |||
/ponytail-audit | 同样的检查跑整个仓库,按重要性排序 | |||
/ponytail-debt | 把你欠下的 shortcut: 注释收进一本账 |
review 和 audit 每一条发现都写清:代码在做什么、哪里会出问题、怎么修、不修会怎样。review 后面可以跟 uncommitted、staged、branch 或 PR 链接来收窄或放宽范围。
它会在刻意偷懒的地方写 shortcut: 注释,记下这是捷径以及什么时候该回来收拾,然后 /ponytail-debt 把它们汇总成账本——目的是让「以后再说」不会变成「永远不说」。
不想要这个词,在你项目的 CLAUDE.md 或 AGENTS.md 里说一声,然后跑 /ponytail-debt <你的词>。
命令需要支持 skill 的宿主:Claude Code、Codex、Devin CLI、OpenCode、Gemini、Antigravity CLI、Hermes Agent、Qoder、Grok Build 等都能用。
但在纯指令适配层(Cursor 的规则文件、Windsurf、Cline、Copilot、Kiro)里,只有常驻规则,没有命令。Cursor 配了 hooks 的话能用 /ponytail 切换档位,但也仅此而已。
别指望在这些环境里敲 /ponytail-audit 有反应。