@openapi-generatorSpec OpenAPI 3.1 depuis ton code, sans invention
Maifady est un plugin Claude Code 100% gratuit avec 30 agents IA — @openapi-generator génère openapi.yaml à partir du code réel de ton API (Express, FastAPI, Symfony, Laravel, NestJS, Spring, Go chi/gin). Schemas extraits des types TypeScript, responses depuis le code, examples sur les endpoints clés. Compatible Swagger UI et Redoc.
Le problème qu'il résout
Ton API Node existe depuis 2 ans. Tu veux exposer Swagger UI à tes consumers, mais tu n'as pas envie d'annoter chaque route avec des décorateurs JSDoc. Tu veux une spec qui matche le code réellement déployé, pas un .yaml séparé qui dérive avec le temps.
@openapi-generator lit ton code et écrit openapi.yaml. Tu drop dans Swagger UI → doc interactive en 2 minutes.
Comment il bosse
- Détecte le framework via les manifests.
- Localise les routes / handlers.
- Extrait pour chaque endpoint : path, method, params, body, response, auth.
- Pour TypeScript, lit les
interfaceettypeet les convertit en schemas OpenAPI. - Émet une spec OpenAPI 3.1 valide avec
$refpour réutiliser les schemas. - Si un endpoint manque de types/docblocks, flag plutôt qu'inventer.
Exemple concret
Tu tapes
›@openapi-generator analyse src/routes/ (Express + TypeScript) et génère openapi.yaml.
Tu obtiens
openapi: 3.1.0
info:
title: Tasky API
version: 1.2.0
servers:
- url: https://api.example.com/v1
security:
- bearerAuth: []
paths:
/users:
get:
summary: List users
parameters:
- in: query
name: limit
schema: { type: integer, default: 25, maximum: 100 }
responses:
'200':
description: List of users
content:
application/json:
schema: { $ref: '#/components/schemas/UserListResponse' }
'401':
$ref: '#/components/responses/Unauthorized'
components:
schemas:
User:
type: object
required: [id, email, created_at]
properties:
id: { type: integer, format: int64 }
...
Pourquoi tu vas l'aimer
Fidèle au code
Pas une spec inventée qui dérive du code. Une spec extraite du code, qui suit la prod.
Flag les gaps
Endpoint sans types ? Marqué explicitement. Tu peux compléter et relancer.
Swagger / Redoc
Tu balances le yaml dans Swagger UI → doc interactive. Ou dans Redoc → doc HTML belle.
OpenAPI 3.1
Dernière version, full JSON Schema compatible.
Quand l'utiliser
✅ Idéal pour
- API existante, besoin de Swagger UI
- Génération de SDK client (openapi-generator-cli)
- Documentation pour des consumers externes
- CI : vérifier que la spec matche le code
⚠️ Pas adapté quand
- Tu veux designer une nouvelle API → @api-designer
- Tu veux du markdown lisible humain → @api-doc-generator
- API qui n'a pas de types — l'agent flag mais tu dois compléter
Combine avec ces agents
Questions fréquentes
Quels frameworks supporte-t-il ?
Express, Fastify, NestJS, Hono, FastAPI, Flask, Django REST, Laravel, Slim, Symfony, Spring, axum, actix, go chi/gin/echo. Pour FastAPI / NestJS qui ont déjà OpenAPI natif, il valide et étoffe.