What problem does it solve? API specifications are often written as happy-path outlines with untyped fields, missing error cases, and vague auth, leaving client and server engineers guessing. This Skill guides the authoring of an API wire contract to a bar where a client can call every operation and a server can implement it from the contract alone. ## Core Features & Use Cases - Style-agnostic contract rigor: Renders the contract in the project's own notation — OpenAPI for REST, SDL for GraphQL, proto for gRPC — with every operation fully typed on both request and response sides. - Complete error model and auth: Enforces one consistent error shape (e.g. RFC 9457 Problem Details), enumerates every failure case per operation with status codes and retryability, and requires per-operation authorization scopes. - Versioned amendment workflow: Classifies changes as additive or breaking, routes breaking changes to a new version with a deprecation-to-sunset lifecycle (RFC 8594/9745) and a migration guide. - Use Case: Given an approved feature-spec for an invoicing service, produce an OpenAPI contract where POST /v1/invoices has typed fields, a 201 response with Location header, named 400/401/403/409 error cases, and an OAuth scope requirement. ## Quick Start Use authoring-api-spec to turn the approved feature-spec for the invoicing service into a complete REST API contract with typed schemas, error cases, and auth scopes.