DietrichGebert/ponytail

Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.

What it solves

Ponytail 防止 AI 代理过度设计代码。它阻止代理编写过多的样板代码、安装不必要的依赖,或在已有更简洁、原生或现有解决方案时重新实现功能。

How it works

Ponytail 实现一个“阶梯”式的决策流程,代理在写任何代码前必须按顺序评估这些层级:

  1. Does this need to exist? (YAGNI - You Ain't Gonna Need It)
  2. Already in this codebase? (Reuse existing code)
  3. Stdlib does it? (Use standard libraries)
  4. Native platform feature? (Use native browser/OS features)
  5. Installed dependency? (Use existing dependencies)
  6. One line? (Write a single line of code)
  7. Minimum that works (Only then write the minimum necessary code)

它的设计理念是“对解决方案保持懒散,对阅读保持严谨”,确保安全性、安保与可访问性永不因追求简洁而受牺牲。

Who it’s for

使用 AI 编码代理(如 Claude Code、Codex、Devin、Cursor、Windsurf 等)的开发者,想要减少代码膨胀、降低 LLM token 成本,并通过强制代理生成更简洁、必要的代码来降低延迟。

Highlights

  • Broad Agent Compatibility: Supports a wide array of tools including Claude Code, Codex, Devin CLI, Gemini, and others via plugins or rule files.
  • Measurable Impact: Benchmarks show significant reductions in lines of code (LOC), tokens, cost, and time while maintaining 100% safety.
  • Customizable Intensity: Offers different modes (lite, full, ultra, off) to control how aggressively the agent avoids over-engineering.
  • Specialized Commands: Includes tools for reviewing diffs for over-engineering (/ponytail-review), auditing entire repos (/ponytail-audit), and tracking deferred shortcuts (/ponytail-debt).