openapi-typesafe — clientes OpenAPI con tipos seguros, listos para TypeScript 7
Un sucesor mantenido y de reemplazo directo para openapi-typescript y openapi-fetch, cuyo autor dejó de mantenerlos en septiembre de 2026. Genera tipos de TypeScript a partir de un esquema OpenAPI 3.0, 3.1 o 3.2 y te da un cliente fetch con tipos completos. El generador ya no usa la API del compilador de TypeScript, así que funciona con TypeScript 5, 6 y 7. Cada versión se comprueba contra 1.820 esquemas reales: 50.960 casos, 0 diferencias inesperadas.
- Rol
- Mantenedor — fork, reescritura del generador, pruebas de compatibilidad, pipeline de releases
- Stack
- TypeScript · Node.js · OpenAPI 3.x · Vitest · GitHub Actions · npm provenance · VitePress
- Período
- nov. 2026 — actualidad

Genera los tipos y luego llama a tu API con un cliente tipado:
npx openapi-typesafe ./openapi.yaml -o ./src/api/schema.d.tsPor qué existe
openapi-typescript y openapi-fetch son la
forma en que muchos equipos de TypeScript hablan con sus APIs: les das un esquema OpenAPI y
obtienes tipos para cada ruta, parámetro y respuesta. En septiembre de 2026 su autor
dejó de mantenerlos.
Al mismo tiempo llegó TypeScript 7. Es el port nativo del compilador, y su paquete typescript
no tiene API de JavaScript: ni ts.factory, ni printer. openapi-typescript construye cada tipo
con ts.factory, así que en un proyecto con TypeScript 7 o se niega a instalarse o falla en
cuanto se carga.
Así que miles de proyectos tenían una dependencia sin mantenimiento y a punto de romperse.
Qué hice
Hice un fork con todo el historial original y puse una sola regla: migrar debe ser renombrar el paquete, nada más. Los mismos flags de CLI, la misma API de Node, la misma salida generada, el mismo cliente.
- Un generador sin la API del compilador. Los tipos se construyen como un pequeño árbol propio
y se imprimen con nuestro propio printer. No necesita el paquete
typescripten absoluto, así que funciona junto a TypeScript 5, 6 o 7. - Soporte para OpenAPI 3.2, que el original rechaza.
- Una herramienta de migración (
openapi-typesafe-migrate) que pasa un proyecto al nuevo paquete: imports, scripts y configuración del paquete. - Bindings para TanStack Query y helpers de tipos compartidos, también como reemplazo directo.
Cómo sé que es compatible
"Reemplazo directo" es una promesa, así que hay que medirla, no solo afirmarla. Un informe de compatibilidad público compara nuestra salida con openapi-typescript 7.13 en 1.820 documentos OpenAPI reales: todo el directorio de APIs.guru más los grandes como GitHub, Stripe, OpenAI, Cloudflare y Kubernetes. Cada esquema se ejecuta con 28 combinaciones de opciones, o sea 50.960 casos.
Cada caso se comprueba en tres pasos: los mismos bytes, luego los mismos tipos (una comprobación estricta de identidad), luego si compila. La última ejecución: 99,87 % idéntico byte a byte, 100 % de tipos idénticos, 0 diferencias inesperadas. La CI ejecuta el corpus completo cada noche, y cada versión enlaza su informe.
Releases seguras
Un generador de código se ejecuta en tu máquina y escribe código en tu proyecto, así que su cadena de suministro importa:
- dependencias mínimas;
- npm provenance y ningún token de publicación de larga duración;
- un modelo de amenazas, una política de seguridad con tiempos de respuesta y reporte privado de vulnerabilidades;
- insignias de OpenSSF Scorecard y OpenSSF Best Practices.
Hecho para agentes de código
El repo incluye una agent skill que enseña a Claude Code (o a cualquier agente que lea
skills) a configurar el cliente, hacer llamadas tipadas, manejar errores y migrar desde
openapi-typescript. Una suite de evals aparte mide esa skill en 34 tareas de programación. El
sitio de documentación sirve llms.txt, llms-full.txt y una copia en Markdown de cada página.
Lo construí con agentic engineering: los agentes de código escriben el código, y yo me encargo del diseño, de la regla de compatibilidad y de la prueba de que se cumple.
Estado
Release candidate: 1.0.0-rc.4 en npm. Los nombres y la salida aún pueden cambiar antes de la
1.0.0; después sigue semantic versioning. Licencia MIT.