codebase-design

Evaluates module interfaces, seams, and adapters to produce a Design Delta for parent workflows.

Updated Sep 14, 2026
One-click install
npx skills add https://github.com/duchuyn04/resume-analyze --skill codebase-design-duchuyn04
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: codebase-design
Source: https://github.com/duchuyn04/resume-analyze/tree/main/.agents/skills/codebase-design
Command: npx skills add https://github.com/duchuyn04/resume-analyze --skill codebase-design-duchuyn04

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When a code change touches a module's interface, invariants, seam placement, adapters, dependency direction, or test surface, teams often add shallow abstractions or speculative indirection. This Skill applies deep-module design vocabulary to evaluate such changes and returns a structured Design Delta for the parent approval workflow. ## Core Features & Use Cases - Deep-module evaluation: Identifies callers, states the smallest honest interface with invariants and error modes, and places seams only where behavior genuinely varies. - Dependency categorization: Classifies dependencies as in-process, local-substitutable, remote-but-owned, or true external, with matching adapter and testing strategies via DEEPENING.md. - Design It Twice pattern: Generates and compares at least three distinct interface alternatives when a candidate genuinely needs them, per DESIGN-IT-TWICE.md. - Use Case: While refactoring a service that calls a third-party API, use this Skill to decide whether a port and adapter are justified, define the interface contract, and produce a Design Delta the parent gate can approve. ## Quick Start Ask the AI to apply the codebase-design skill to evaluate the module interface and seam placement for your proposed change and return a Design Delta.

Frequently Asked Questions about codebase-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I decide whether a module needs an interface seam?▼

A seam is justified only where behavior or dependencies genuinely vary, such as production versus a materially useful test adapter. A single implementation without real variation does not justify a seam or adapter, and indirection should not be added for hypothetical reuse.

What is a deep module in software design?▼

A deep module provides substantial behavior behind a small interface, giving callers high leverage per unit of interface learned. The deletion test applies: deleting a useful module should redistribute real complexity to callers, not make it vanish.

When should I use ports and adapters for external dependencies?▼

Use a port when a dependency is remote but owned or truly external, injecting an HTTP, gRPC, or queue adapter in production and an in-memory adapter in tests. In-process or local-substitutable dependencies do not need adapters.

How should tests change after deepening a module?▼

Test observable outcomes through the deepened module's interface, then remove shallow implementation tests that duplicate the same contract. Tests should survive internal refactoring; if an implementation-only change breaks them, they are testing past the interface.

Can this Skill approve a design on its own?▼

No. The parent workflow retains authority, such as a G3 gate for a Feature or a Bounded approval for an existing flow. The Skill only returns a Design Delta as input, and contract changes after approval return needs-revalidation.