ponytail-debt

SkillDev tools

ponytail-debt is a skill that scans a codebase for shortcut comments and turns them into a debt ledger. It collects every deliberate deferral marked with a shortcut: or ponytail: comment so a temporary simplification cannot quietly become permanent. Each entry shows what was simplified, the ceiling that was accepted, and the trigger for revisiting it. It reads and reports only.

Then ask your AI: use the ponytail-debt skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Have the codebase checked out locally with its shortcut: or ponytail: comments in place.

What your AI can do with it

  • Grep the repo for shortcut: and ponytail: comment markers
  • Skip node_modules, .git, dist, and build output during the scan
  • Accept a custom marker word when the user names one
  • Group ledger rows by file with line number, ceiling, and upgrade trigger
  • Tag markers that name no upgrade trigger as no-trigger rot risks
  • Report totals as N markers, M with no trigger

Getting started

  1. Have the codebase checked out locally with its shortcut: or ponytail: comments in place.
  2. Make sure a command line grep tool is available in the environment where the agent runs.
  3. Ask the agent for ponytail debt, or name your own marker word if your stack uses a different one.
  4. Read the ledger rows and the closing totals, then ask for the ledger to be written to a file if you want it kept.

What this skill tells your AI

The instructions your AI receives, as published by dietrichgebert/ponytail in skills/ponytail-debt/SKILL.md and read by Ahel’s review.

Every deliberate ponytail shortcut is marked with a shortcut: comment naming its ceiling and upgrade path (older code may say ponytail:). This collects them into one ledger so a deferral can't quietly become permanent.

Scan

Grep the repo for comment markers, skipping node_modules, .git, and build output:

grep -rnE --exclude-dir=.git --exclude-dir=node_modules --exclude-dir=dist --exclude-dir=build '(#|//|/[*]) ?(shortcut|ponytail):' . (add other comment prefixes if your stack uses them)

If the user names their own marker word (/ponytail-debt TODO), grep for that word instead.

Each hit is one ledger row. The comment prefix keeps prose that merely mentions the convention out of the ledger. Skip hits that are not a deferral, like a note about a keyboard shortcut.

Output

One row per marker, grouped by file:

<file>:<line>, <what was simplified>. ceiling: <the limit named>. upgrade: <the trigger to revisit>.

The convention is shortcut: <ceiling>, <upgrade path>, so pull the ceiling and the trigger straight from the comment. Want an owner per row too? add git blame -L<line>,<line>.

Flag the rot risk: any marker comment that names no upgrade path or trigger gets a no-trigger tag, those are the ones that silently rot.

End with <N> markers, <M> with no trigger. Nothing found: No shortcut debt. Clean ledger.

Boundaries

Reads and reports only, changes nothing. To persist it, ask and it writes the ledger to a file (e.g. PONYTAIL-DEBT.md). One-shot. "stop ponytail-debt" or "normal mode" to revert.

Signals

GitHub stars
159k
Forks
9k
Last commit
Oct 2026

Questions

What did ponytail defer?
Every shortcut: or ponytail: comment in the repo, listed as a ledger row with what was simplified, its ceiling, and the upgrade trigger. Markers with no trigger are tagged no-trigger.
Can I list the shortcuts?
Yes. The skill greps the repo for the comment markers and prints one row per marker, grouped by file, ending with the count of markers and how many have no trigger.
Does it change any code?
No. It reads and reports only. It writes a file only if you ask, for example a PONYTAIL-DEBT.md ledger.
Advanced
Item type
skill
Key
ponytail-debt-dietrichgebert
Source
github.com/dietrichgebert/ponytail