Appearance
The 12 Leverage Points is a two-axis audit map — 4 in-agent levers (Context, Model, Prompt, Tools) and 8 through-agent levers (Standard Out, Types, Architecture, Docs, Tests, Plans, Templates, ADWs) — showing you where engineering investment compounds.
Primitive
12 Leverage Points
The structural split
In-agent resets. Through-agent compounds.
in-agent
The Core Four
Resets every conversation. Whatever you chose for this agent run lives and dies with that session. Per-task calibration.
Context
Model
Prompt
Tools
through-agent
The persistent eight
Persists and compounds. Every future agent run benefits from prior investment. The substrate.
Std Out
Types
Arch
Docs
Tests
Plans
Templates
ADWs
A team focusing on in-agent levers hits a ceiling. A team focusing on through-agent levers compounds indefinitely. The whole framework is built around this asymmetry.
The eight through-agent levers
Each one, its failure mode.
Standard Out
Signal of truth from subprocesses. Fails when progress noise mixes into the result channel.
Types
Named request/response contracts. Fails as untyped dicts — forces caller-by-caller discovery.
Architecture
File/folder structure agents navigate. Fails as deep, inconsistent naming; tests separated from impl.
Documentation
app_docs, CLAUDE.md, AGENT_SYSTEM.md. Fails when stale docs lie about current state.
Tests
The validation harness. Fails when agents can't tell if output is correct without running the app by hand.
Plans
Phased, file-manifested specs. Fails as vague plans that force the builder to re-plan.
Templates
Commands, scenarios, plan skeletons. Fails as copy-pasted prose instead of instantiable skeletons.
ADWs
Pipeline phase scripts. Fails as one-off scripts that don't compose, can't resume, have no state file.
How you know you're improving
Four KPIs. Every leverage point moves at least one.
Size
↑
Size of work handed off per prompt
Attempts
↓
Prompts needed per unit of work
Streak
↑
Consecutive one-shot successes
Presence
↓
How much you must watch/correct
If a KPI is flatlining, the bottleneck is almost always in the through-agent column. In-agent tweaks (better prompt, stronger model) move a KPI within a plateau; through-agent investment moves across plateaus.
What an audit looks like
Score 1–5 per lever. Weakest column = next quarter's work.
app_docs/leverage-points-audit.md — Q2 2026
Context
4 / 5
prime commands exist, CLAUDE.md trimmed last sprint
Model
3 / 5
per-agent choice, but defaults drift to Sonnet
Types
2 / 5
too many untyped dicts in service layer ← focus here
Tests
4 / 5
mirror layout, gates passing, e2e scenarios growing
ADWs
3 / 5
plan/build composites, no test-phase automation yet
Run quarterly or when onboarding. The delta between audits is the measurable progress on the through-agent substrate — the part that compounds.
The discipline
Improvements to through-agent levers compound across every future run.
In-agent tweaks are per-task calibration; they move your KPIs within a plateau. Through-agent investment is the substrate; it moves across plateaus. The audit map surfaces which of the twelve to work on next — and the answer, nine times out of ten, lives in the eight through-agent columns, not the core four.