工作日早上 7 点读 AI,周日早上 8 点读周报订阅邮件

METAL LAB

DietrichGebert/ponytail

110,492今日 +944JavaScript

一套让AI编程助手先想清楚再动手写代码的规则

ponytail是一套注入给Claude Code、Codex等AI编程助手的规则(以插件或技能形式提供),让它们在写代码之前先判断这段代码是否真的需要存在。它要求助手按顺序优先考虑复用现有代码、标准库、系统原生功能,而不是一上来就装新依赖、写新组件。在FastAPI+React真实仓库上的测试中,同一个助手开启ponytail后代码量平均减少54%,同时保留了全部安全检查(校验、错误处理、安全性、无障碍访问)。

它做什么

  1. 问题所在:让AI助手实现一个日期选择器,它会去装第三方库(flatpickr),写一个封装组件、加一份样式表,甚至开始纠结时区问题。
  2. 解决办法:在写代码前先按固定顺序自问——这功能真的需要吗、代码库里是否已有、标准库能不能做到、系统原生功能能不能做到、已装的依赖能不能做到、能不能写成一行——都不行时才写出能work的最少代码。
  3. 测试结果:在tiangolo的full-stack-fastapi-template仓库上用无人值守的Claude Code(Haiku 4.5模型,每项任务跑4次)完成12个真实功能需求,相比不加任何技能的同一助手,ponytail平均减少代码量54%(最高达94%)、减少token 22%、降低成本20%、缩短耗时27%,安全性评分保持100%。
  4. 对比结果:一个只精简对话文字的对照组(caveman)和一个简单的"YAGNI加一行代码"提示词也做了测试,前者在token、成本、耗时上反而更差,后者安全性评分降到95%,而ponytail是唯一在所有指标上都改善且不牺牲安全性的方案。
  5. 使用方式:可以插件或复制规则文件的方式接入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 打开

热门仓库

全部仓库 →

METAL LAB 最新报道