DietrichGebert/ponytail
一套让AI编程助手先想清楚再动手写代码的规则
ponytail是一套注入给Claude Code、Codex等AI编程助手的规则(以插件或技能形式提供),让它们在写代码之前先判断这段代码是否真的需要存在。它要求助手按顺序优先考虑复用现有代码、标准库、系统原生功能,而不是一上来就装新依赖、写新组件。在FastAPI+React真实仓库上的测试中,同一个助手开启ponytail后代码量平均减少54%,同时保留了全部安全检查(校验、错误处理、安全性、无障碍访问)。
它做什么
- 问题所在:让AI助手实现一个日期选择器,它会去装第三方库(flatpickr),写一个封装组件、加一份样式表,甚至开始纠结时区问题。
- 解决办法:在写代码前先按固定顺序自问——这功能真的需要吗、代码库里是否已有、标准库能不能做到、系统原生功能能不能做到、已装的依赖能不能做到、能不能写成一行——都不行时才写出能work的最少代码。
- 测试结果:在tiangolo的full-stack-fastapi-template仓库上用无人值守的Claude Code(Haiku 4.5模型,每项任务跑4次)完成12个真实功能需求,相比不加任何技能的同一助手,ponytail平均减少代码量54%(最高达94%)、减少token 22%、降低成本20%、缩短耗时27%,安全性评分保持100%。
- 对比结果:一个只精简对话文字的对照组(caveman)和一个简单的"YAGNI加一行代码"提示词也做了测试,前者在token、成本、耗时上反而更差,后者安全性评分降到95%,而ponytail是唯一在所有指标上都改善且不牺牲安全性的方案。
- 使用方式:可以插件或复制规则文件的方式接入20多种AI编程工具,包括Claude Code、Codex、GitHub Copilot CLI、Cursor、Windsurf、Gemini CLI等。
为什么重要
AI编程助手常常过度设计——引入不必要的依赖、组件和复杂度,这会增加维护成本和安全风险;这个工具不需要重新训练模型,只靠一段规则文字就能解决这个问题。对于正在给团队引入AI编程助手的人来说,它提供了一种有实测数据支撑的、可控制代码臃肿和使用成本的实用方法。
本仓库术语
- YAGNI · "You Aren't Gonna Need It",一种不要提前构建暂不需要功能的软件开发原则
- LOC · 代码行数
- AGENTS.md · 许多AI编程工具会自动读取的项目通用指令文件
- n=4 · 每项任务重复测量4次
- Haiku 4.5 · 本次基准测试所使用的AI模型名称
仓库简介(英文)
Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.
在 GitHub 打开热门仓库
- liustack/modlens给DeepSeek这类只能读文字的AI装上一双眼睛:粘贴图片就能把内容变成结构化文字数据
- marin-community/marinMarin是一个把训练大语言模型全过程公开出来的开源研究平台
- TauricResearch/TradingAgents多个LLM智能体分别扮演分析师、研究员、交易员和风控经理,通过辩论共同决定股票交易
- Shubhamsaboo/awesome-llm-apps一个免费开源、收录100多个可直接运行的AI智能体和RAG应用示例的代码库
- asciimoo/hister把你看过的网页和文件全文索引起来的私人搜索引擎
- anthropics/claude-plugins-officialAnthropic官方整理的Claude Code插件目录,方便一键装上新功能
- vorssaint/vorssaint-utils一个免费菜单栏应用,顶替十几款付费Mac工具
- MadsLorentzen/ai-job-search一个用Claude Code自动完成整个求职流程的开源框架,作者本人就是靠它找到了工作