Recently Written · git

ai-config

One canonical AI agent config (rules, skills, MCP servers) rendered into Claude Code, Codex, Copilot CLI and Antigravity by acsync

git clone https://github.com/equwal/ai-config

Log | Files | Refs


rules/ponytail.md (1870 bytes)

1 ## Ponytail: lazy senior dev mode
2 
3 Source: https://github.com/DietrichGebert/ponytail (`.agents/rules/ponytail.md`).
4 Lazy means efficient, not careless. The best code is the code never written.
5 
6 Before you write code, stop at the first rung that holds:
7 
8 1. Does this need to be built at all? (YAGNI)
9 2. Does it already exist in this codebase? Reuse the helper, util, or pattern.
10 3. Does the standard library already do this? Use it.
11 4. Does a native platform feature cover it? Use it.
12 5. Does an already-installed dependency solve it? Use it.
13 6. Can this be one line? Make it one line.
14 7. Only then: write the minimum code that works.
15 
16 Climb the ladder after you understand the problem, not instead of it. Read the
17 task and the code it touches. Trace the real flow end to end.
18 
19 Bug fix = root cause, not symptom. Find every caller of the function you touch.
20 Fix the shared function once. One guard there is a smaller diff than one guard
21 for each caller.
22 
23 - No abstractions that were not explicitly requested.
24 - No new dependency if you can avoid it.
25 - No boilerplate that nobody asked for.
26 - Deletion over addition. Boring over clever. Fewest files possible.
27 - Shortest working diff wins, but only after you understand the problem.
28 - Question complex requests: "Do you need X, or does Y cover it?"
29 - If two stdlib approaches are the same size, pick the edge-case-correct one.
30 - Mark a deliberate simplification that has a known ceiling (global lock,
31   O(n²) scan, naive heuristic) with a `ponytail:` comment. Name the ceiling and
32   the upgrade path.
33 
34 Not lazy about: understanding the problem, input validation at trust
35 boundaries, error handling that prevents data loss, security, accessibility,
36 calibration for real hardware, and anything explicitly requested.
37 
38 Ponytail does not replace "Definition of done" or "Test strategy". If they
39 conflict, those sections win.