Communitygithub.com

YepAPI/skills

OpenAPI 3.1 a partir de esquemas Zod, documentação interativa com Swagger/Scalar, versionamento e exemplos de requisição para cada endpoint.

O que é skills?

Este skill capacita agentes de IA a gerarem e manterem documentação de API de alta qualidade usando OpenAPI 3.1 como fonte única da verdade. Ele automatiza a criação de especificações a partir de esquemas Zod, garantindo que a documentação nunca se desvie da implementação real. O skill suporta a geração de documentação interativa com Scalar ou Swagger UI, servida em endpoints padrão como `/docs` ou `/api-docs`. Ele impõe regras rigorosas: cada endpoint deve ter resumo, descrição, esquema do corpo da requisição, códigos de resposta com exemplos realistas e documentação consistente de erros e autenticação. O versionamento é feito por caminho de URL (`/api/v1/`, `/api/v2/`). O padrão de implementação usa `zod-openapi` com Hono ou Express, registrando rotas programaticamente a partir dos esquemas Zod. O skill também orienta o que evitar, como escrever YAML manualmente, documentação incompleta de erros e exemplos genéricos como `"string"`.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/YepAPI/skills/tree/HEAD/skills/api-documentation

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Documentação de API

Regras

  • Especificação OpenAPI 3.1 como fonte única da verdade — gerar a partir do código, não escrita manualmente
  • Esquemas Zod para OpenAPI: usar zod-openapi ou @asteasolutions/zod-to-openapi — definir uma vez, validar e documentar
  • Documentação interativa: Scalar (moderno, rápido) ou Swagger UI — servir em /docs ou /api-docs
  • Cada endpoint deve ter: resumo, descrição, esquema do corpo da requisição, todos os códigos de resposta com exemplos
  • Exemplo de requisição/resposta para cada endpoint — usar dados realistas, não placeholders como "string"
  • Estratégia de versionamento: caminho de URL (/api/v1/, /api/v2/) para mudanças que quebram compatibilidade — mais simples que versionamento por cabeçalho
  • Respostas de erro: documentar todas as formas de erro consistentemente — { error: string, code: string, details?: object }
  • Autenticação: documentar esquema de autenticação (Bearer token, chave de API) na seção de security schemes
  • Agrupar endpoints por recurso: /users, /products, /orders — usar tags para agrupar na interface de documentação

Padrões

// zod-to-openapi com Hono/Express
import { z } from "zod";
import { extendZodWithOpenApi } from "@asteasolutions/zod-to-openapi";
extendZodWithOpenApi(z);

const UserSchema = z.object({
  id: z.string().uuid().openapi({ example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890" }),
  name: z.string().openapi({ example: "Jane Smith" }),
  email: z.string().email().openapi({ example: "[email protected]" }),
}).openapi("User");

const CreateUserSchema = UserSchema.omit({ id: true }).openapi("CreateUser");

// Registrar endpoint
registry.registerPath({
  method: "post",
  path: "/api/v1/users",
  summary: "Criar um usuário",
  request: { body: { content: { "application/json": { schema: CreateUserSchema } } } },
  responses: {
    201: { description: "Usuário criado", content: { "application/json": { schema: UserSchema } } },
    400: { description: "Erro de validação" },
  },
});

Evitar

  • Escrever YAML do OpenAPI manualmente — gerar a partir de esquemas Zod ou definições de rota
  • Documentação de resposta de erro ausente — documentar 400, 401, 403, 404, 500
  • Exemplos genéricos como "string" ou 0 — usar valores realistas que mostrem a forma dos dados reais
  • Documentação que se desvia da implementação — gerar especificação a partir dos mesmos esquemas usados para validação

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

YepAPI/skills

WCAG 2.1 AA — semantic HTML, keyboard navigation, screen readers.

YepAPI/skills

Experiment setup, variant splitting, statistical significance, and feature flag integration.

YepAPI/skills

CRUD generators, data tables, user management, role-based access, and bulk operations.

YepAPI/skills

Monitor what ChatGPT and Gemini say about your brand using YepAPI.

YepAPI/skills

Queue workers with BullMQ/Inngest/Trigger.dev, job retries, dead letter queues, concurrency.

YepAPI/skills

Commander.js, interactive prompts with Clack, spinners, colors, config files, exit codes, and npm publishing.

YepAPI/skills

cmdk integration, Cmd+K trigger, fuzzy search, grouped actions, keyboard navigation, and dynamic action registration.

YepAPI/skills

Content planning with trend and sentiment data from YepAPI.

YepAPI/skills

Content calendar, keyword-driven planning, and content briefs.

YepAPI/skills

Theme switching with CSS variables, system preference detection, next-themes, and persistence.

YepAPI/skills

Threaded comments, @mentions, reactions, moderation queue, optimistic UI, and cursor pagination.

YepAPI/skills

Competitive analysis between domains using YepAPI.

YepAPI/skills

Layout grids, KPI cards, data tables with sorting/filtering, sidebar navigation, and responsive breakpoints.

YepAPI/skills

Data encryption — TLS everywhere, AES-256-GCM for PII, bcrypt passwords, encrypted backups.

YepAPI/skills

Chart patterns with Recharts/Nivo/D3, responsive containers, color scales, and accessibility.

YepAPI/skills

Drizzle schema definition, push vs migrate, type-safe queries, relations, transactions, and prepared statements.

YepAPI/skills

Upload handling, resize/compress, CDN delivery, blur placeholders, and next/image patterns.

YepAPI/skills

Local business and Google Maps research using YepAPI.

YepAPI/skills

Cursor-based pagination, IntersectionObserver, virtualized lists with @tanstack/react-virtual, and scroll position restoration.

YepAPI/skills

Chat UI components, streaming responses with AI SDK, context window management, and RAG patterns.

Habilidades Relacionadas