What problem does it solve? Poorly designed interfaces create breaking changes, inconsistent error handling, and hidden dependencies on undocumented behavior that break consumers. This Skill provides concrete patterns for designing 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 consistent error semantics, boundary validation, and predictable naming conventions for REST endpoints and TypeScript types. - Idempotency Implementation: Detailed guidance on honoring Idempotency-Key headers, including atomic key claiming via unique constraints, payload guarding, in-flight duplicate handling, and retention planning. - Compatibility Patterns: Discriminated unions, branded ID types, input/output separation, additive-only changes, and pagination patterns that prevent breaking existing consumers. - Use Case: When designing a new REST endpoint for task management, apply the resource design, pagination, filtering, and PATCH partial-update patterns to produce a consistent, 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 idempotency handling.