← ClaudeAtlas

pattern-architect-deep-modulelisted

Deep-module design guidance (Ousterhout, A Philosophy of Software Design): narrow interface, deep implementation, hidden complexity, no shallow wrappers or pass-throughs. Activate when designing or reviewing the shape of a module, class, package, service, library, or API. Skip for implementation inside an already-agreed seam, bug fixes that don't change the interface, or general software-philosophy questions without an actual module to design.
MartinKChen/harness-claude-code · ★ 0 · AI & Automation · score 72
Install: claude install-skill MartinKChen/harness-claude-code
# pattern-architect-deep-module Guides the design of modules so they end up *deep*: a small, simple interface that hides a large amount of functionality and complexity. Based on John Ousterhout's *A Philosophy of Software Design*. Use this whenever a new module/class/API seam is being drawn, or when reviewing whether an existing one is pulling its weight. ## When to activate Activate this skill whenever the user: - asks to design, architect, scaffold, propose, or sketch a new module, class, package, component, service, library, or API - asks "how should I structure / split / organize" code into modules or layers - asks for a review of a module seam, interface, or abstraction ("is this abstraction good?", "should I split this?") - proposes a new public interface, SDK surface, or service seam - introduces a wrapper, facade, or adapter and asks whether it earns its keep - refactors by extracting a class/module and wants to validate the extraction Do NOT activate when the user is implementing logic *inside* an already-agreed module seam, fixing a bug that doesn't change the interface, doing pure formatting/renaming, or asking general questions about software philosophy without an actual module to design. ## Pattern A *deep* module has a **simple interface** relative to its **powerful functionality**. Picture a rectangle: width = interface surface area, height = hidden functionality. Deep modules are tall and narrow. Shallow modules are short and wide — their interface is a