deepen
Optional design-improvement pass for when you have spare usage to drain. Finds the shallowest modules in the code the spec touches, researches a deeper design, and proposes refactors that shrink interfaces and hide decisions — behavior held constant, tests green before and after. Proposes §I/§V/§T edits, never silent rewrites. Triggers when the user says "deepen this", "improve the design", "this module feels shallow", "pull complexity down", "use spare budget on the codebase", or invokes /ck:deepen. Leans on the codebase-design skill's deep-module vocabulary when present.
npx skills add JuliusBrussee/cavekit --skill deepen --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# deepen — make modules deep **Behavior is sacred: tests green before AND after. Every change shrinks an interface or hides a decision — deepen, don't churn.** A **deep module** hides a lot behind a small interface; a **shallow** one's interface costs as much to use as writing the code yourself. Complexity = dependencies + obscurity, and it compounds. Deepen spends spare usage paying that down *before* it becomes a §B. Run it when the build is green & you have budget to drain — not under deadline. ## WHEN TO DEEPEN - Build is green, tests pass, & you have token budget spare. - A module's interface feels as complex as its implementation (shallow smell). - The same change keeps touching many files (change amplification). - User explicitly asks to improve design quality. ⊥ run mid-feature or under pressure. Deepen is the deliberate pass, not the reflex. ## FIVE STEPS ### 1. PICK THE SHALLOW Scan the modules the spec touches. Rank by shallowness — interface surface vs work done. Pick the **one** worst offender. Tells: - Pass-through method that only forwards to one other (shallow layer). - Caller must set 5 flags right to use it (config leakage). - Same abstraction repeated at two laye
- WHEN TO DEEPEN
- FIVE STEPS
- 1. PICK THE SHALLOW
- 2. DIAGNOSE
- 3. RESEARCH THE DEEPENING
- 4. PROPOSE
- 5. VERIFY BEHAVIOR HELD
- WHEN TO STOP
- BOUNDARIES
What does the deepen skill do?
Optional design-improvement pass for when you have spare usage to drain. Finds the shallowest modules in the code the spec touches, researches a deeper design, and proposes refactors that shrink interfaces and hide decisions — behavior held constant, tests green before and after. Proposes §I/§V/§T edits, never silent rewrites. Triggers when the user says "deepen this", "improve the design", "this module feels shallow", "pull complexity down", "use spare budget on the codebase", or invokes /ck:deepen. Leans on the codebase-design skill's deep-module vocabulary when present.
How do I install it?
Run `npx skills add JuliusBrussee/cavekit --skill deepen --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From JuliusBrussee/cavekit, a repository with 1,133 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
