About openapi-spec-generation
A skill for creating, maintaining, and validating OpenAPI 3.1 specifications. It supports API designers and developers working from new or existing APIs, with guidance across design-first, code-first, and hybrid approaches.
Key features
- 01OpenAPI 3.1 structure and patterns
- 02Design-first, code-first, and hybrid workflows
- 03Spec validation and API implementation checks
- 04Reusable schemas, examples, and error documentation
- 05Guidance on SDK generation and API portals
Use cases
- 01Drafting an API contract before implementation
- 02Generating a specification from existing code
- 03Checking an API implementation against its spec
- 04Preparing specifications for SDK generation
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ wshobson/ agents --skill openapi-spec-generationAfter installing, type/openapi-spec-generationin Claude Code to confirm it loaded.
Bundled filesreferences/code-first-and-tooling.mdreferences/details.md
Details
From the project READMEOpenAPI Spec Generation
Comprehensive patterns for creating, maintaining, and validating OpenAPI 3.1 specifications for RESTful APIs.
When to Use This Skill
- Creating API documentation from scratch
- Generating OpenAPI specs from existing code
- Designing API contracts (design-first approach)
- Validating API implementations against specs
- Generating client SDKs from specs
- Setting up API documentation portals
Core Concepts
1. OpenAPI 3.1 Structure
openapi: 3.1.0
info:
title: API Title
version: 1.0.0
servers:
- url: https://api.example.com/v1
paths:
/resources:
get: ...
components:
schemas: ...
securitySchemes: ...
2. Design Approaches
| Approach | Description | Best For |
|---|---|---|
| Design-First | Write spec before code | New APIs, contracts |
| Code-First | Generate spec from code | Existing APIs |
| Hybrid | Annotate code, generate spec | Evolving APIs |
Templates and detailed worked examples
Full template library and detailed worked examples live in references/details.md. Read that file when you need the concrete templates.
Best Practices
Do's
- Use $ref - Reuse schemas, parameters, responses
- Add examples - Real-world values help consumers
- Document errors - All possible error codes
- Version your API - In URL or header
- Use semantic versioning - For spec changes
Don'ts
- Don't use generic descriptions - Be specific
- Don't skip security - Define all schemes
- Don't forget nullable - Be explicit about null
- Don't mix styles - Consistent naming throughout
- Don't hardcode URLs - Use server variables
Comments
Markdown supported