← ClaudeAtlas

api-and-interface-designlisted

Contract-first design of any public interface — package exports, HTTP/REST, RPC/tRPC, SDK, module boundary. Minimal surface, stable boundary types, versioning. Use when shaping a public API.
voidcorp-core/void-harness · ★ 0 · API & Backend · score 76
Install: claude install-skill voidcorp-core/void-harness
# api-and-interface-design — voidcorp craftsman edition A public interface is a promise. The contract is the promise; the implementation is replaceable. Once a consumer depends on a signature, that signature costs you forever — every shape you expose is a shape you must keep working or deprecate on a schedule. This skill governs how you draw the contract of anything other code consumes: what it accepts, what it returns, how it fails, how it changes. Design the contract before the implementation. The implementation is private and free to churn; the contract is public and expensive to change. **Attribution**: see `.source` in this directory. Foundation: Parnas "information hiding," Bloch "How to Design a Good API," contract-first / OpenAPI, SemVer. --- ## Boundary with neighboring skills This skill is narrow. It does NOT cover layered architecture or domain vocabulary. | Concern | Owner | |---|---| | Where the boundary sits physically, dependency direction, ports vs adapters | `hexagonal-architecture` | | What the domain IS — bounded contexts, aggregates, ubiquitous language | `domain-driven-design` | | **The shape, stability, and versioning of a public contract — viewed from the outside** | **this skill** | A port (hex) is an interface the domain owns. This skill says how to draw that port well *as seen by its consumer*: minimal, hard to misuse, stable, versioned. Hex decides the port exists and which side owns it; DDD supplies the words inside it; this skill shapes th