面向 Codex、Claude Code、OpenCode 等编码 Agent 的开源插件与 Skill 集合。它会先判断需求是否必要、代码库是否已有能力、标准库或平台原生能力能否解决,再决定是否新增代码,帮助减少过度设计;但不会删减安全校验、数据保护、错误处理和无障碍要求。
## 什么时候用 用于编码、修 Bug、重构、代码评审、依赖选择和技术方案设计,尤其适合约束 AI 的过度开发倾向。它不用于一般知识、文案、翻译或其他非编码任务。 ## 它解决什么问题 Ponytail 不以“代码越少越好”为目标,而是要求 Agent 在理解真实代码路径后,优先复用仓库现有能力、标准库、平台原生能力和已安装依赖,最后才新增最小代码。安全校验、数据保护、错误处理和无障碍不能为了短而删掉。 ## Codex 安装 ```bash codex plugin marketplace add DietrichGebert/ponytail codex plugin add ponytail@ponytail ``` 安装后启动 Codex,打开 /hooks,阅读并信任两项生命周期 Hook,再新建任务。Codex 桌面版需要重启后加载。Hook 依赖 Node.js 位于非交互 shell 的 PATH;若不可用,Skill 仍可手动触发,但不会自动常驻注入。 ## 最短使用路径 1. 安装插件并审查 Hook。 2. 默认使用 full 模式处理编码任务。 3. 让 Agent 先理解真实调用路径,再走最小实现阶梯。 4. 完成修改后运行 ponytail-review 复核当前 diff。 5. 用真实行为和必要测试验收,不以行数减少代替正确性。 ## 可用命令 - ponytail:切换 lite、full、ultra 或 off。 - ponytail-review:检查当前 diff 并给出删除/简化清单。 - ponytail-audit:审计整个仓库的过度设计。 - ponytail-debt:汇总延期的简化项。 - ponytail-gain:查看项目自带基准结果。 - ponytail-help:查看命令帮助。 在 Codex 中,这些命令以 Skill 方式调用,具体前缀以当前客户端展示为准。 ## 完成标准 - 修改直接解决当前真实问题,没有扩大范围。 - 没有重复仓库已有能力,也没有为单一实现创建多余抽象。 - 新依赖确有必要,无法由标准库、平台原生或现有依赖替代。 - 信任边界校验、错误处理、数据保护、安全和无障碍没有被删减。 - 非平凡逻辑至少留下一个能捕获回归的可运行检查。 ## 风险和边界 插件的生命周期 Hook 会向编码任务和子代理持续注入规则;安装后应在 /hooks 中检查具体脚本,并使用 lite/full/ultra/off 控制影响范围。它不是安全扫描器,也不能替代真实需求判断、架构评审和测试。官方基准只证明其列明环境中的结果,不能保证所有模型、任务都节省相同比例的代码、成本或时间。升级前应查看版本变化;卸载时按官方说明同时清理模式配置和状态文件。 来源:https://github.com/DietrichGebert/ponytail 许可证:MIT