Cloudflare anunció Forge, una canalización de código abierto y extensible para generar paquetes SDK, herramientas de línea de comandos, documentación y bibliotecas directamente a partir de definiciones de interfaces de programación de aplicaciones. Forge funciona dentro de entornos de integración continua (CI) y puede ejecutarse de forma gratuita y autónoma, en lugar de depender de un servicio SaaS alojado.
El proyecto responde a la necesidad de Cloudflare de gestionar una API que incluye más de 3.500 operaciones y cuenta con el respaldo de cientos de servicios escritos en lenguajes como Rust, Go, TypeScript y Python. La empresa afirma que Forge genera actualmente las salidas necesarias para la herramienta cf CLI, y que en los próximos meses su uso se ampliará a la documentación de Cloudflare, los paquetes SDK y otros elementos.
Vistas previas para cada cambio
Forge funciona dentro de los repositorios de los equipos de producto, donde examina cada cambio y después crea versiones de vista previa de la herramienta CLI, la documentación y los paquetes SDK, destacando las modificaciones resultantes. Los equipos pueden instalar estas versiones y probarlas antes de integrar un cambio de API o ponerlo a disposición de los clientes.
Este mecanismo aborda un problema práctico en entornos donde la API se distribuye entre cientos de servicios y repositorios: un solo cambio puede interrumpir el proceso de generación, y el equipo afectado quizá no descubra el problema hasta el lanzamiento. En cambio, ejecutar la generación con antelación dentro de CI traslada la validación a una etapa más cercana al origen del cambio y reduce la coordinación necesaria entre los equipos.
Generación de salidas interconectadas
Forge no se limita a los objetivos de lenguajes tradicionales. El proyecto puede tomar una definición de OpenAPI y generar salidas como Cap’n Web, un sistema RPC de Cloudflare que permite invocar interfaces remotas de TypeScript de una forma similar a la invocación de funciones locales. La empresa también señala que el mismo enfoque puede utilizarse para crear enlaces de TanStack Query, esquemas de Zod o Valibot y servidores MCP.
Forge se basa en adaptadores encadenables, de modo que una salida puede utilizarse para producir otra. Actualmente admite OpenAPI como tipo de entrada, con un diseño que permite añadir AsyncAPI, GraphQL, Cap’n Proto y Protobuf en el futuro. El usuario también puede definir la cadena de generación en lugar de estar obligado a seguir una ruta fija, algo importante cuando una herramienta CLI está construida en un lenguaje diferente al del paquete SDK o cuando la herramienta contiene comandos escritos manualmente.
¿Qué cambia en la práctica?
Forge presenta un modelo que convierte las herramientas para consumir API en parte del propio ciclo de desarrollo de la interfaz, en lugar de productos independientes que se actualizan posteriormente. Esto beneficia a los equipos que necesitan mantener sincronizados el SDK, la documentación y la CLI, pero no elimina la necesidad de revisar las salidas generadas, especialmente cuando la herramienta combina código generado con comandos o comportamientos escritos manualmente.
Cloudflare también vincula el proyecto con sus planes para gestionar las versiones de la API. Después de una década utilizando la versión principal v4, la empresa afirma que trabaja en un enfoque que permita lanzar nuevas versiones principales sin romper a los clientes ni los paquetes SDK antiguos. El material no anunció detalles de este enfoque ni un calendario para su implementación.
Licencia abierta y límites de la etapa actual
Forge está disponible bajo una licencia Apache 2.0 y puede ejecutarse, modificarse y utilizarse internamente o de forma privada sin coste. Cloudflare describe el proyecto como todavía en una etapa temprana, pese a utilizarlo para generar salidas de cf CLI, y ha prometido ofrecer posteriormente detalles sobre los SDK de TypeScript, Rust, Python, Go, PHP y Terraform, con una mención especial a los requisitos de migración del proveedor de Terraform.