Skip to content
Back to skills

Codebase Design

ASecurity

Use when designing or changing module interfaces and seams.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 23, 2026
ai-agentsgitperformance

Security analysis

A100/100

Scanned October 5, 2026

npx -y skills add wayne930242/aaaav --skill codebase-design --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Codebase Design?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Codebase Design
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/wayne930242-codebase-design/badge)](https://www.skillsdirectory.com/skills/wayne930242-codebase-design)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: codebase-design
description: Use when designing or changing module interfaces and seams.
---

# Codebase Design

Supply design discipline within `aaaav-do`. Return decisions to the caller's
artifact (`design.md`), or in the reply when there is none.

## Vocabulary

- **Module:** an interface plus its implementation, at any scale.
- **Interface:** everything a caller must know, including invariants, ordering,
  errors, configuration, and performance characteristics.
- **Depth:** useful behavior delivered per unit of interface burden.
- **Seam:** where behavior can vary without editing the caller.
- **Adapter:** a concrete implementation occupying a seam.
- **Leverage:** capability reused by callers through a small interface.
- **Locality:** change, knowledge, bugs, and proof concentrated behind that
  interface.

Use these terms consistently in the design artifact.

`domain-modeling` owns semantic meaning, ubiquitous language, contexts, and
invariants. This skill owns the interface and seam shape that contains them.

## Design checks

1. Place the seam at an existing architectural boundary when it fits; introduce
   a new seam only for real variation. One adapter is usually hypothetical; two
   adapters demonstrate variation.
2. Minimize what callers must know. Hide invariants and workflow complexity
   behind the interface instead of distributing them across call sites.
3. Apply the deletion test: removing a useful module should redistribute its
   complexity to callers. If complexity disappears, the module is probably a
   pass-through.
4. Make the public interface the primary test surface. Accept varying
   dependencies and return observable results where that creates a stable seam.
5. Compare at least two interface shapes when no clear precedent exists and the
   choice is surprising or costly to reverse. Evaluate depth, locality,
   compatibility, and testability; present user-owned trade-offs for confirmation.

**Complete when:** `design.md` names the chosen interface and seam, the precedent
or alternatives considered, caller burden, adapters, and verification surface.

---

Adapted from [mattpocock/skills](https://github.com/mattpocock/skills)
`codebase-design` (MIT License, Copyright (c) 2026 Matt Pocock).

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.