Contrato primeiro, handler depois — não negocia.
A spec é a fonte e o código a obedece: segurança declarada, erro padronizado, escrita idempotente, webhook assinado e breaking change só com ADR e data.
$ schematize install apiPisos inegociáveis
Não se desligam "pra ir mais rápido". Lista completa na skill.
Contract-first
A spec (OpenAPI 3.1+ ou .proto) é a fonte; handler e cliente são gerados ou validados contra ela, com drift travando a CI.
Segurança declarada em toda operação
securitySchemes presente e cada operação coberta; pública de propósito é security: [] explícito; token nunca em query string.
Erro é problem+json (RFC 9457)
Toda resposta 4xx/5xx usa type estável; nunca 200 com erro no corpo nem stack trace ou SQL em detail.
POST com efeito exige Idempotency-Key
Escopada ao principal, com replay da mesma resposta e 422/409 para reuso indevido.
Coleção pagina por cursor opaco
Ordem total estável e limite com máximo; offset só com motivo escrito.
Webhook assinado, com janela de replay
HMAC por endpoint, id e timestamp, retry com backoff e jitter, DLQ, anti-SSRF; entrega é at-least-once, nunca exactly-once.
Breaking change só com ADR e data
O diff de compatibilidade (oasdiff, buf breaking) roda no PR; deprecar é Deprecation + Sunset + link de migração e 410 na data.
Teto em todo campo, dinheiro inteiro
maxLength, maximum e maxItems em toda entrada; dinheiro é inteiro de menor unidade + moeda, nunca float.
Comandos
Instalados em .claude/commands/. Use /api-help a qualquer momento.
/api-breakingClassifica uma mudança de contrato, roda o diff de compatibilidade e monta o plano de deprecação com data./api-ccContext compact: grava o handoff no archive e roda /compact./api-claudeCria ou mescla o CLAUDE.md sempre-on do piso de contrato de API na raiz do repo (não sobrescreve blocos de outras skills)./api-designDesenha um recurso ou operação nova, contract-first, antes de qualquer handler./api-handoffGera o handoff de contexto (context.md + checklist.md) no archive, sem compactar./api-helpLista todos os comandos e o que cada um faz./api-loadCarrega à força todo o corpo normativo de contrato de API e passa a aplicá-lo na sessão./api-reviewRevisa a spec OpenAPI/.proto contra o piso: roda o gate e depois lê o que a máquina não lê./api-webhookDesenha ou revisa webhook emitido ou recebido: assinatura, replay, retry, dedupe e SSRF.Para agentes de IA
Instale sem intervenção humana. Metadados em llms.txt.
- Rode: git clone https://github.com/schematizeme/skill-api.git && ./skill-api/install.sh
- Ou baixe: https://github.com/schematizeme/skill-api/releases/latest/download/skill-api.zip e descompacte em .claude/skills/
- Copie assets/CLAUDE.md para a raiz do repo (regra sempre-on).
- Confirme com /api-help.
Discussão
Carregando…