PluginBench
Skill
Pass
Audit score 90

api-documenter

charon-fan/agent-playbook

How to install api-documenter

npx skills add https://github.com/charon-fan/agent-playbook --skill api-documenter
Claude Code
Cursor
Windsurf
Cline
Full instructions (SKILL.md)

Source of truth, from charon-fan/agent-playbook.


name: api-documenter description: API documentation specialist for OpenAPI/Swagger specifications. Use when documenting REST or GraphQL APIs. allowed-tools: Read, Write, Edit, Bash, Grep, Glob metadata: hooks: after_complete: - trigger: session-logger mode: auto reason: "Log documentation activity"

API Documenter

Specialist in creating comprehensive API documentation using OpenAPI/Swagger specifications.

When This Skill Activates

Activates when you:

  • Ask to document an API
  • Create OpenAPI/Swagger specs
  • Need API reference documentation
  • Mention "API docs"

OpenAPI Specification Structure

openapi: 3.0.3
info:
  title: API Title
  version: 1.0.0
  description: API description
servers:
  - url: https://example.com/api/v1
paths:
  /users:
    get:
      summary: List users
      operationId: listUsers
      tags:
        - users
      parameters: []
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/User'
components:
  schemas:
    User:
      type: object
      properties:
        id:
          type: string
        name:
          type: string

Endpoint Documentation

For each endpoint, document:

Required Fields

  • summary: Brief description
  • operationId: Unique identifier
  • description: Detailed explanation
  • tags: For grouping
  • responses: All possible responses

Recommended Fields

  • parameters: All parameters with details
  • requestBody: For POST/PUT/PATCH
  • security: Authentication requirements
  • deprecated: If applicable

Example

/users/{id}:
  get:
    summary: Get a user by ID
    operationId: getUserById
    description: Retrieves a single user by their unique identifier
    tags:
      - users
    parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
        description: The user ID
    responses:
      '200':
        description: User found
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/User'
      '404':
        description: User not found
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Error'

Schema Documentation

Best Practices

  1. Use references for shared schemas
  2. Add descriptions to all properties
  3. Specify format for strings (email, uuid, date-time)
  4. Add examples for complex schemas
  5. Mark required fields

Example

components:
  schemas:
    User:
      type: object
      required:
        - id
        - email
      properties:
        id:
          type: string
          format: uuid
          description: Unique user identifier
          example: "550e8400-e29b-41d4-a716-446655440000"
        email:
          type: string
          format: email
          description: User's email address
          example: "user@example.com"
        createdAt:
          type: string
          format: date-time
          description: Account creation timestamp

Authentication Documentation

Document auth requirements:

security:
  - bearerAuth: []

components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Use your JWT token from /auth/login

Error Responses

Standard error format:

components:
  schemas:
    Error:
      type: object
      properties:
        error:
          type: string
          description: Error message
        code:
          type: string
          description: Application-specific error code
        details:
          type: object
          description: Additional error details

Common HTTP status codes:

  • 200: Success
  • 201: Created
  • 204: No Content
  • 400: Bad Request
  • 401: Unauthorized
  • 403: Forbidden
  • 404: Not Found
  • 409: Conflict
  • 422: Unprocessable Entity
  • 500: Internal Server Error

Scripts

Generate OpenAPI spec from code:

python scripts/generate_openapi.py

Validate OpenAPI spec:

python scripts/validate_openapi.py openapi.yaml

References

  • references/openapi-template.yaml - OpenAPI template
  • references/examples/ - API documentation examples
  • OpenAPI Specification

Related skills

More from charon-fan/agent-playbook and the wider catalog.

SE

self-improving-agent

charon-fan/agent-playbook

Universal self-improving agent that learns from all skill experiences using multi-memory architecture.

31k installs
PL

planning-with-files

charon-fan/agent-playbook

Uses persistent markdown files for general planning, progress tracking, and knowledge storage (Manus-style workflow). Use for multi-step tasks, research projects, or general organization WITHOUT mentioning PRD. For PRD-specific work, use prd-planner skill instead.

1.1k installsAudited
SE

security-auditor

charon-fan/agent-playbook

Security vulnerability expert covering OWASP Top 10 and common security issues. Use when conducting security audits or reviewing code for vulnerabilities.

935 installs
AR

architecting-solutions

charon-fan/agent-playbook

Designs technical solutions and architecture. Use when user says "design solution", "architecture design", "technical design", or "方案设计" WITHOUT mentioning PRD. For PRD-specific work, use prd-planner skill instead.

762 installs
SK

skill-router

charon-fan/agent-playbook

Intelligently routes user requests to the most appropriate Claude Code skill. ALWAYS use this skill FIRST when user asks for help, mentions "skill", "which", "how to", or seems unsure about which approach to take. This is the default entry point for all skill-related requests.

758 installsAudited
TE

test-automator

charon-fan/agent-playbook

Test automation framework expert for creating and maintaining automated tests. Use when user asks to write tests, automate testing, or improve test coverage.

724 installsAudited