under-engineering
The least code that works, checked before it’s written.
Coding agents over-build. Ask for rate limiting and you might get a new module with a RateLimiter class, a thread lock and a decorator factory. Each piece looks reasonable on its own, but together they leave code that’s deep, hard to trace and expensive to maintain.
under-engineering is a checkpoint before any code is written. The agent states the minimum requirement, cuts every planned piece that doesn’t map to it, and runs a hallway check (um-maybe) on what’s left. Then it sends you one message covering Depth (would the call chain go over 3?), Module (could other features reuse this?) and Governance (is this policy that belongs in infrastructure?).
While it writes, it keeps functions short and simple, uses no lookup-by-name calls, and measures every limit with call-depth instead of reading the code and guessing.
Install
npx skills add Fullstack-Rocks/skills --skill under-engineering -a claude-codenpx skills add Fullstack-Rocks/skills --skill under-engineering -a codexnpx skills add Fullstack-Rocks/skills --skill under-engineering -a cursornpx skills add Fullstack-Rocks/skills --skill under-engineeringInstall the under-engineering skills from https://github.com/Fullstack-Rocks/skills by running npx skills add Fullstack-Rocks/skills, then load the under-engineering skill and follow it before you write or change code.Install the four under-engineering skills together, since under-engineering calls um-maybe and call-depth. Want the checkpoint to run every time? Add one line to your AGENTS.md or CLAUDE.md: “Before writing or changing code, load the under-engineering skill and follow it.”
Try saying
Transcript
> Add rate limiting to the orders API: at most 100 requests per minute per customer. Skill(under-engineering) · Skill(um-maybe) Checkpoint: Depth, Module and Governance. Rate limiting is policy, so an API-gateway option comes next to the code option. After the answer: one helper, over_rate_limit(customer_id), called on the first line of the three order handlers. Checks: ruff passes, every function is small (at most 9 lines, complexity at most 4), and the 101st request in a minute returns 429. Limits exceeded: none. Existing problems left alone: two env reads outside app/config.py, reported for you to decide.
How does it work?
Two goals drive every step: the least code that works, and code a reader can follow without having to remember where they came from.
- Size the task. A small task, like a rename, a typo, a new field or a one-line fix, skips straight to the limits.
- Find the minimum. The agent states the minimum requirement in one or two sentences, cuts every planned piece that doesn’t map to it, and runs
um-maybeon what’s left. - Checkpoint. Three checks, and any of them can hit. Depth: the planned step’s weighted call depth is over 3, so the agent reports the chain with 2 or 3 alternatives. Module: other features could reuse this, so it asks whether to build a module. Governance: the change enforces policy, so it offers an infrastructure option (a firewall, WAF, gateway or IAM rule) next to the code option.
- Module plan. For a confirmed module the agent writes a plan in pseudocode. A readability scorer on a weaker model tries to use the module from the plan alone, and the plan gets revised until no key behavior is misread.
- Limits while writing. Functions fit on one screen (about 80 lines), complexity stays under 10, files stay under 900 to 1000 lines, folders hold at most 5 or 6 code files, and every call resolves with go-to-definition.
- Report. Every limit it went over and why, plus every violation it found in existing code but left for you to decide on.
Code the agent wrote in the session gets fixed right away. Violations in existing code are reported first, and only fixed once you approve.
But does it work?
Benchmark
How much code does a feature take?
Across three features the skill wrote 54% less code, 130 lines down to 60. A coupon went from 38 lines to 23, rate limiting from 59 to 24, and a CSV export from 33 to 13, and neither version introduced new smells. The checkpoint and the hallway check aren’t free though: the three features cost $3.38 with the skill, against $1.96 without. Same model (claude-opus-5-5), one run per feature.