codebase-design

Agent skill from mattpocock/skills.

mattpocock ↓ 225k
Claude Code
View source ↗

What it does

  • Can I reduce the number of methods?
  • Can I simplify the parameters?
  • Can I hide more complexity inside?
  • The interface is the test surface. Callers and tests cross the same seam. If you want to test past the interface, the module is probably the wrong shape.
  • One adapter means a hypothetical seam. Two adapters means a real one. Don't introduce a seam unless something actually varies across it.
  • A Module has exactly one Interface (the surface it presents to callers and tests).
  • Depth is a property of a Module, measured against its Interface.

Derived from the skill's own SKILL.md documentation · extracted 2026-07-23

codebase-design FAQ

What does the codebase-design skill do?

Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary. Can I reduce the number of methods? Can I simplify the parameters?

How do I install codebase-design?

Run: npx -y skills add https://github.com/mattpocock/skills --skill codebase-design --agent claude-code — the source lives at github.com/mattpocock/skills.

Maintain codebase-design?

Let people know it's listed here — add the badge (live metrics, light/dark aware) or a plain link to your README or docs.

codebase-design on getagentictools
[![codebase-design on getagentictools](https://getagentictools.com/badge/skills/mattpocock-skills-codebase-design.svg)](https://getagentictools.com/skills/mattpocock-skills-codebase-design?ref=badge)
npx agentictools info skills/mattpocock-skills-codebase-design

The second line is the CLI lookup for this page — handy in READMEs and docs.