ponytail
Agent skill from dietrichgebert/ponytail.
What it does
- No unrequested abstractions: no interface with one implementation, no factory for one product, no config for a value that never changes.
- No boilerplate, no scaffolding "for later", later can scaffold for itself.
- Deletion over addition. Boring over clever, clever is what someone decodes at 3am.
- Two stdlib options, same size? Take the one that's correct on edge cases. Lazy means writing less code, not picking the flimsier algorithm.
- lite: "Done, cache added. FYI: functools.lrucache covers this in one line if you'd rather not own a cache class."
- full: "@lrucache(maxsize=1000) on the fetch function. Skipped custom cache class, add when lrucache measurably falls short."
- ultra: "No cache until a profiler says so. When it does: @lrucache. A hand-rolled TTL cache class is a bug farm with a hit rate."
Requirements & configuration
- 1. Does this need to exist at all? Speculative need = skip it, say so in one line. (YAGNI)
- Complex request? Ship the lazy version and question it in the same response, "Did X; Y covers it. Need full X? Say so." Never stall on an answer you can default.
- just less code, the physical world needs tuning a minimal model can't see.
- fixtures, no per-function suites unless asked. Trivial one-liners need no
Derived from the skill's own SKILL.md documentation · extracted 2026-07-23
Source
Repository: https://github.com/dietrichgebert/ponytail
ponytail FAQ
What does the ponytail skill do?
> Forces the laziest solution that actually works, simplest, shortest, most minimal. Channels a senior dev who has seen everything: question whether the task needs to exist at all (YAGNI), reach for the standard library before custom code, native platform features before dependencies, one line before fifty. Supports intensity levels: lite, full (default), ultra. Use on ANY coding task: writing, adding, refactoring, fixing, reviewing, or designing code, and choosing libraries or dependencies. Also use whenever the user says "ponytail", "be lazy", "lazy mode", "simplest solution", "minimal solution", "yagni", "do less", or "shortest path", or complains about over-engineering, bloat, boilerplate, or unnecessary dependencies. Do NOT use for non-coding requests (general knowledge, prose, translation, summaries, recipes). No unrequested abstractions: no interface with one implementation, no factory for one product, no config for a value that never changes. No boilerplate, no scaffolding "for later", later can scaffold for itself.
What does ponytail require?
1. Does this need to exist at all? Speculative need = skip it, say so in one line. (YAGNI) Complex request? Ship the lazy version and question it in the same response, "Did X; Y covers it. Need full X? Say so." Never stall on an answer you can default. just less code, the physical world needs tuning a minimal model can't see. fixtures, no per-function suites unless asked. Trivial one-liners need no
How do I install ponytail?
Run: npx -y skills add https://github.com/dietrichgebert/ponytail --skill ponytail --agent claude-code — the source lives at github.com/dietrichgebert/ponytail.
Maintain ponytail?
Let people know it's listed here — add the badge (live metrics, light/dark aware) or a plain link to your README or docs.
[](https://getagentictools.com/skills/dietrichgebert-ponytail-ponytail?ref=badge) npx agentictools info skills/dietrichgebert-ponytail-ponytail The second line is the CLI lookup for this page — handy in READMEs and docs.