ponytail

Enforces minimal code solutions by prioritizing stdlib, native features, and existing code over new dependencies.

Updated Mar 28, 2026
One-click install
npx skills add https://github.com/dsonyy/dotfiles --skill ponytail-dsonyy
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: ponytail
Source: https://github.com/dsonyy/dotfiles/tree/main/config/plugins/ponytail/skills/ponytail
Command: npx skills add https://github.com/dsonyy/dotfiles --skill ponytail-dsonyy

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Codebases accumulate over-engineered abstractions, unnecessary dependencies, and speculative features that create maintenance burden. This Skill forces the simplest working solution for any coding task by applying a strict decision ladder before writing code. ## Core Features & Use Cases - Solution Ladder: Checks whether the task is needed at all (YAGNI), then existing code, stdlib, native platform features, and installed dependencies before writing new code. - Intensity Levels: Three modes (lite, full, ultra) control how aggressively simplification is enforced, switchable via /ponytail lite|full|ultra. - Root-Cause Bug Fixing: Requires tracing all callers of a function before patching, fixing the shared root cause instead of one symptom. - Use Case: When asked to add a response cache, instead of building a custom cache class, it applies @lru_cache(maxsize=1000) and notes when a custom cache would actually be needed. ## Quick Start Ask the AI to use ponytail mode to implement your next feature with the simplest solution that works.

Frequently Asked Questions about ponytail

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I avoid over-engineering code with AI assistance?▼

Activate ponytail mode, which applies a decision ladder before writing code: check if the task is needed, reuse existing code, prefer stdlib and native features, then write the minimum that works. It blocks unrequested abstractions like single-implementation interfaces and speculative configuration.

How to choose between stdlib and adding a new dependency?▼

The ladder requires exhausting stdlib and already-installed dependencies before adding anything new. A new dependency is only justified when a few lines of existing tools genuinely cannot solve the problem, and the simplification tradeoff is marked with a comment.

What are the ponytail intensity levels lite, full, and ultra?▼

Lite builds what is asked but names a lazier alternative in one line. Full, the default, enforces the ladder with shortest diff and explanation. Ultra is YAGNI-extremist, preferring deletion and challenging the requirement itself while shipping a one-liner.

When should I not use minimal-code approaches?▼

Never simplify away input validation at trust boundaries, error handling preventing data loss, security measures, accessibility basics, or anything explicitly requested. Hardware-facing code also needs calibration knobs that a minimal model cannot anticipate.

Does ponytail skip testing to keep code minimal?▼

No. Non-trivial logic such as branches, loops, parsers, or money and security paths must leave one runnable check, like an assert-based self-check or a single small test file. Trivial one-liners need no test since YAGNI applies to tests too.