ratchet

Featured

Enforces a measured complexity budget on coding work. Reaches for the standard library, native platform features and code that already exists in the repository before writing anything new, and treats every added dependency, file and line as a cost that has to be justified. A hook measures the real diff and reports overruns back mid-task, so the budget is a number, not a mood. Use this on ANY coding task: writing, refactoring, fixing, reviewing, choosing libraries, or designing an interface. Use it whenever the user says "ratchet", "keep it minimal", "simplest thing that works", "yagni", "don't over-engineer", "smallest diff", or complains about bloat, boilerplate, scaffolding or dependency creep. Do not use it for non-coding requests.

Code & Development 439 stars 86 forks Updated 1 months ago MIT

Install

View on GitHub

Quality Score: 89/100

Stars 20%
88
Recency 20%
75
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Ratchet A ratchet turns one way. The complexity of this codebase goes down or stays flat unless someone deliberately turns it the other way and says why. ## Understand first, then shorten The budget applies to the solution, never to the reading. Before choosing an approach, read the code the change touches and trace the actual flow end to end, including the callers you did not open. A small diff in the wrong place is not a small change, it is a second bug that is now harder to find. Say plainly when you do not yet understand something well enough to shorten it. That sentence costs less than a confident wrong patch. ## The ladder Stop at the first rung that holds. 1. **Does this need to exist?** Speculative need, no user, no ticket: skip it and say so in one line. 2. **Does this repository already have it?** A helper, a type, a pattern, a migration that already does this job. Search before writing. Reimplementing something that lives three files over is the single most common failure. 3. **Does the standard library cover it?** Name the function and use it. 4. **Does a native platform feature cover it?** `<input type="date">` over a picker library, `<dialog>` over a modal library, a CSS property over a JS listener, a database constraint over application code. 5. **Does an already-installed dependency cover it?** Use it. Never add a new one for something a handful of lines can do. 6. **Can it be one line?** Then it is one line. 7. **Otherwise:** the minimum that works. ...

Details

Author
0xwilliamortiz
Repository
0xwilliamortiz/ratchet
Created
1 months ago
Last Updated
1 months ago
Language
JavaScript
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category

Code & Development Listed

minimalism

Use in any coding session when writing or changing code — enforces the laziest solution that actually works (YAGNI, stdlib-first, shortest diff) while never trimming validation, error handling, security, accessibility, or the pipeline's tests/gates. Also triggers on "minimalism", "be lazy", "simplest/minimal solution", "yagni", "do less", "shortest path", or complaints about over-engineering, bloat, boilerplate, or unnecessary dependencies.

5 Updated today
mickeyyaya
Code & Development Solid

ratchet-review

Reviews a diff or a whole repository for over-engineering only, and returns a delete list rather than prose. Finds reinvented standard library calls, dependencies the platform already covers, abstractions with one implementation, wrappers that only forward, configuration nothing reads and dead flexibility. Use whenever the user says "review for over-engineering", "what can we delete", "is this over-engineered", "find the bloat", "audit this repo", or invokes /ratchet-review. Pair it with a normal correctness review, it deliberately does not look for bugs.

439 Updated 1 months ago
0xwilliamortiz
AI & Automation Listed

lazy

Apply the "laziest solution that actually works" enforcement ladder when writing or proposing code — question whether the work needs to exist (YAGNI), reach for stdlib / native platform / already-installed deps before custom code, prefer one line over fifty. Supports intensity lite | full (default) | ultra. Use when implementing a feature, scaffolding, or whenever the user wants the minimal viable change ("the lazy way", "minimal diff", "do the least that works"). Different from /simplify (which cleans up an existing diff after the fact) — /lazy runs the ladder before the code is written. Aligned to the persona's simplicity bias.

1 Updated 1 weeks ago
yuri-semenenko