# Principle Build The Lever

> Apply to any non-trivial work, not just bulk work: edits, migrations, analyses, checks. Build the tool that does it or proves it (codemod, script, generator, or a skill your subagents follow) instead of working by hand. The tool is the artifact a reviewer can rerun.

- Skill: `hungrykelvin123/principle-build-the-lever` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add hungrykelvin123/principle-build-the-lever`
- Raw SKILL.md: https://api.skillmd.com/api/skills/hungrykelvin123/principle-build-the-lever/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: HungryKelvin123 (https://skillmd.com/u/hungrykelvin123)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/hungrykelvin123/principle-build-the-lever

---

# Build the Lever

When the work isn't trivial, build the tool that does it instead of doing it by hand.

**Why:** Two payoffs. Throughput: a codemod, generator, or script does the work the same way every time and reruns for free. Confidence: the tool is one artifact a reviewer can read and rerun to check the work. Hand-done changes can only be re-verified by redoing them. A deterministic script turns "trust me" into "run this".

**Pattern:** Default to building the lever. Skip it only when the task is genuinely trivial, a couple of obvious edits you can see at a glance.

- Do the first unit by hand to learn the recipe, then build the tool. Prove it by rerunning it on that unit and diffing against your hand-done version. Make the lever safe to rerun. A reviewer will.
- Codemod or script for edits, generator for repetitive files, a dump-to-sqlite query for analysis, a rerunnable check for verification.
- A deterministic lever beats fan-out. If the tool can process every unit in one pass, run it yourself; don't fan out delegates to hand-apply what a script can do.
- When independent work passes [`../david-mode/references/agent-runtime.md`](../david-mode/references/agent-runtime.md), put its shared recipe, verification contract, and write fences in one named file. The parent owns that file and dispatch; workers read it without changing the contract. Create a reusable skill only when the recipe will outlive this run.
- Applying this principle produces a reusable artifact: a codemod, script, generator, or bounded worker recipe. A chat claim alone does not satisfy it.
- Commit the lever when the work outlives the session, so the next run reruns it instead of redoing it.

**Balance:** The bar is triviality, not repetition. A one-off still earns a lever when the lever is what makes the work checkable. Per the [Laziness Protocol](../principle-laziness-protocol/SKILL.md), build the smallest script that does or proves the job, never a framework.

Distinct from [Encode Lessons in Structure](../principle-encode-lessons-in-structure/SKILL.md), which makes a recurring instruction a durable guardrail. This is throughput and reviewability on the work in front of you. For scripting the verification itself, see [Prove It Works](../principle-prove-it-works/SKILL.md).

