What problem does it solve? Designing public interfaces without clear contracts leads to breaking changes, inconsistent error handling, and consumers depending on undocumented behavior. This Skill provides principles and patterns for building APIs and module boundaries that are hard to misuse and safe to evolve. ## Core Features & Use Cases - Contract-First Design: Define typed interfaces before implementation, with input/output separation and branded ID types in TypeScript. - Consistent Error Semantics: Standardized error shapes, HTTP status code mapping, and boundary-only validation rules. - Backward-Compatible Evolution: Additive-only changes, pagination patterns, discriminated unions, and naming conventions for REST endpoints. - Use Case: When creating a new REST endpoint for a task management service, apply the resource design, pagination, and PATCH patterns to produce a predictable, versionable API. ## Quick Start Ask the assistant to design a REST API for a new resource following the api-and-interface-design guidelines, including typed contracts, error format, and pagination.