Category: Development
Codebase Design
Shared vocabulary from Matt Pocock for designing and improving deep modules.
Works with
What it does
- Use these terms exactly: don't substitute "component," "service," "API," or "boundary." Consistent language is the whole point.
- Adapter*: a concrete thing that satisfies an interface at a seam. Describes role (what slot it fills), not substance (what's inside).
- Leverage*: what callers get from depth. More capability per unit of interface they learn. One implementation pays back across N call sites and M tests.
- Deep module* = small interface + lots of implementation:
When to use it
Shared vocabulary from Matt Pocock for designing and improving deep modules.
How to install
- Run the command below in your terminal. Pick the agents you use (Claude Code, Codex, Cursor, Gemini CLI, Copilot, and more) and it installs into the right folder.
npx skills add https://github.com/mattpocock/skills --skill codebase-design
- To install manually, download the
codebase-designskill folder from the GitHub repository and copy it into your agent's skills folder, such as~/.claude/skills/or.cursor/skills/. - Ask your agent for a related task and the skill is used automatically.