ponytail-debt

Harvest every `ponytail:` comment in the codebase into a debt ledger, so the deliberate shortcuts and deferrals ponytail leaves behind get tracked instead of rotting into "later means never". Use when the user says "ponytail debt", "/ponytail-debt", "what did ponytail defer", "list the shortcuts", "ponytail ledger", or "what did we mark to do later". One-shot report, changes nothing.

npx skills add https://github.com/dietrichgebert/ponytail --skill ponytail-debt

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 .git and everything the .gitignore files ignore (dependencies, build output, caches, in any stack):

git grep --no-index --exclude-standard -nE '(#|//|/[*]) ?(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.

Thêm skills từ dietrichgebert

ponytail
dietrichgebert
Ép buộc giải pháp lười biếng nhất nhưng vẫn hoạt động, đơn giản nhất, ngắn nhất, tối thiểu nhất. Mô phỏng một senior dev đã từng thấy mọi thứ: đặt câu hỏi liệu tác vụ có cần tồn tại không (YAGNI), dùng thư viện chuẩn trước code tùy chỉnh, tính năng nền tảng gốc trước dependency, một dòng trước năm mươi dòng. Hỗ trợ các mức cường độ: lite, full (mặc định), ultra. Sử dụng bất cứ khi nào người dùng nói "ponytail", "hãy lười", "chế độ lười", "giải pháp đơn giản nhất", "giải pháp tối thiểu", "yagni", "làm ít hơn", hoặc...
developmentcode-review
ponytail-review
dietrichgebert
Đánh giá mã chỉ tập trung vào over-engineering. Tìm ra những gì cần xóa: thư viện chuẩn bị phát minh lại, dependency không cần thiết, abstraction suy đoán, tính linh hoạt chết. Một dòng cho mỗi phát hiện: vị trí, thứ cần cắt, thứ thay thế. Sử dụng khi người dùng nói "review for over-engineering", "what can we delete", "is this over-engineered", "simplify review", hoặc gọi /ponytail-review. Bổ sung cho đánh giá tập trung vào tính đúng đắn, cái này chỉ săn tìm độ phức tạp.
code-reviewdevelopment
ponytail-audit
dietrichgebert
Kiểm tra toàn bộ kho lưu trữ về tình trạng thiết kế quá mức. Giống ponytail-review, nhưng quét toàn bộ mã nguồn thay vì một bản diff: danh sách xếp hạng những gì cần xóa, đơn giản hóa hoặc thay thế bằng các giải pháp tương đương từ thư viện chuẩn/gốc. Sử dụng khi người dùng nói "kiểm tra mã nguồn này", "kiểm tra thiết kế quá mức", "tôi có thể xóa gì khỏi kho này", "tìm mã phình to", "ponytail-audit" hoặc "/ponytail-audit". Báo cáo một lần, không áp dụng sửa lỗi.
code-reviewdevelopment
ponytail-help
dietrichgebert
Thẻ tham khảo nhanh cho tất cả chế độ, kỹ năng và lệnh của ponytail. Hiển thị một lần, không phải chế độ liên tục. Kích hoạt: /ponytail-help, "ponytail help", "what ponytail commands", "how do I use ponytail".