ponytail
A plugin that steers AI coding agents toward minimal, lazy-senior-dev solutions — writing only the c

About this tool
Ponytail is a plugin for AI coding agents that enforces a minimalist decision framework before any code is written. It guides agents through a hierarchy: skip code that isn't needed, use standard library or platform-native features when possible, reuse installed dependencies, keep solutions to one line if feasible, and only then write the minimum that works. It works with at least 10 agents including Claude Code, Codex, Cursor, Windsurf, Cline, Copilot, Aider, Kiro, Pi, and OpenCode. Benchmarks run across three Anthropic models show 80-94% less code, 47-77% lower cost, and 3-6x faster output compared to an unskilled baseline. Safety, security, accessibility, and data-loss handling are explicitly excluded from the chopping block.
- Enforces a six-step laziness hierarchy: skip unnecessary code, prefer stdlib, native platform features, existing dependencies, one-liners, then minimal implementations
- Benchmarked at 80-94% less code, 47-77% lower cost, and 3-6x faster across Haiku, Sonnet, and Opus models
- Supports 10+ AI agent environments including Claude Code, Codex, Cursor, Windsurf, Cline, Copilot, Aider, Kiro, Pi, and OpenCode
- Includes review and intensity commands — /ponytail-review finds deletable code in diffs, /ponytail ultra maximizes minimalism
- Every shortcut is annotated with a ponytail: comment naming its upgrade path, so nothing is silently lost
Overview
You know him. Long ponytail. Oval glasses. Has been at the company longer than the version control. You show him fifty lines; he looks at them, says nothing, and replaces them with one.
Ponytail puts him inside your AI agent.
Before / after
You ask for a date picker. Your agent installs flatpickr, writes a wrapper component, adds a stylesheet, and starts a discussion about timezones.
With ponytail:
<!-- ponytail: browser has one -->
<input type="date">
More survivors in examples/.
Numbers
Five everyday tasks (email validator, debounce, CSV sum, countdown timer, rate limiter), three models, three arms: no skill, the caveman skill, and ponytail. Ten runs per cell, median reported.
80-94% less code, 47-77% less cost, and 3-6× faster than a no-skill agent, on every model. Every shortcut ponytail takes is marked in the code with a ponytail: comment naming its upgrade path. Reproduce it yourself: npx promptfoo eval -c benchmarks/promptfooconfig.yaml. Method and raw numbers: benchmarks/. Production-grade tasks, where an unconstrained agent bloats far more, are written up in benchmarks/results/.
How it works
Before writing code, the agent stops at the first rung that holds:
1. Does this need to exist? → no: skip it (YAGNI)
2. Stdlib does it? → use it
3. Native platform feature? → use it
4. Installed dependency? → use it
5. One line? → one line
6. Only then: the minimum that works
Lazy, not negligent: trust-boundary validation, data-loss handling, security, and accessibility are never on the chopping block.
Install
The most effort ponytail will ever ask of you:
Claude Code
/plugin marketplace add DietrichGebert/ponytail
/plugin install ponytail@ponytail
Codex
codex plugin marketplace add DietrichGebert/ponytail
codex
Open /plugins, select the Ponytail marketplace, and install Ponytail. Then
open /hooks, review and trust its two lifecycle hooks, and start a new thread.
Pi agent harness
pi install git:github.com/DietrichGebert/ponytail
OpenCode
Run OpenCode from a checkout of this repo (the plugin reuses its hooks/ and skills/), and add to opencode.json:
{ "plugin": ["./.opencode/plugins/ponytail.mjs"] }
Injects the ruleset every turn at the active level; adds /ponytail and /ponytail-review. OpenCode also auto-loads this repo's AGENTS.md, so the rules hold even without the plugin. The plugin adds the lite/full/ultra/off levels.
That was it. He'd be proud. He won't say it.
Active every session. /ponytail-review finds what to delete in your diff. /ponytail ultra exists for when the codebase has wronged you personally. /ponytail-help explains the rest.
In Codex, invoke the skills as @ponytail, @ponytail-review, and
@ponytail-help. Startup and mode-change text shows the current mode.
Cursor, Windsurf, Cline, Copilot, Aider, Kiro: copy the matching rules file from this repo (.cursor/rules/, .windsurf/rules/, .clinerules/, .github/copilot-instructions.md, AGENTS.md, .kiro/steering/).
Kiro: copy .kiro/steering/ponytail.md to ~/.kiro/steering/ (global) or .kiro/steering/ in your project.
Which files map to which agent: Agent portability.
Development
When changing the compact rule text, keep the agent copies aligned:
node scripts/check-rule-copies.js
FAQ
Does it need a config file? No.
What if I really need the 120-line cache class? You don't. Insist anyway and he'll build it. Slowly. Correctly. While looking at you.
Does it scale? The code you never wrote scales infinitely. Zero bugs, zero CVEs, 100% uptime since forever.
Why "ponytail"? You know exactly why.
License
MIT. The shortest license that works.
Synced from github.com/DietrichGebert/ponytail — updates automatically.
More in this category

music-digest
Music Digest is an Electron desktop app that scrapes music news and trends from Reddit, music publications, an…

baoyu-design
baoyu-design packages the Claude Design engine as a portable Agent Skill that works inside local coding agents…
fusion-fable
Fusion-Fable is a Claude Code skill that sends the same prompt to multiple frontier models (Opus 4.8, GPT-5.5,…
fanbox
FanBox is an Electron-based desktop app that combines a local file browser, embedded terminal, and live previe…