Herramientas para desarrolladores

Cloudflare libera el código abierto de Forge para agilizar la generación de SDK y CLI

Cloudflare lanzó Forge, un pipeline de código abierto para generar SDK, CLIs y documentación. Se ejecuta en CI para previsualizar cambios y admite salidas encadenadas.

Traducido automáticamente del original en inglés.

Cloudflare ha presentado Forge, un pipeline de código abierto diseñado para generar kits de desarrollo de software (SDK), interfaces de línea de comandos (CLI) y documentación. Lanzado el 28 de septiembre de 2026, esta herramienta tiene como objetivo ayudar a los equipos de ingeniería a gestionar superficies de API complejas mediante la automatización de la creación de bibliotecas cliente y herramientas para desarrolladores. La empresa construyó el sistema internamente para manejar su propia escala antes de ponerlo a disposición del público bajo la licencia Apache 2.0.

Qué ocurrió

La infraestructura interna de la API de Cloudflare ha crecido significativamente, soportando ahora más de 3.500 operaciones a través de cientos de servicios. Estos servicios backend están escritos en una variedad de lenguajes, incluyendo Rust, Go, TypeScript y Python. A medida que la empresa trabajaba para construir una interfaz de línea de comandos unificada para toda su API, junto con los SDK y la documentación correspondientes, las herramientas existentes de generación de código resultaron insuficientes. El equipo de ingeniería necesitaba un pipeline capaz de manejar esta escala masiva manteniendo la flexibilidad suficiente para adaptarse a diferentes lenguajes de programación y requisitos de flujo de trabajo.

El desafío principal era reducir la sobrecarga de coordinación entre equipos de producto dispares. Anteriormente, cuando un equipo realizaba un cambio en la API, carecía de una forma fiable de previsualizar cómo ese cambio afectaría a la CLI global, los SDK o la documentación antes de fusionar su código. Esto a menudo conducía a situaciones donde una fusión rompía inadvertidamente el pipeline de generación, causando problemas que otros equipos solo descubrían en el momento del lanzamiento. Cloudflare intentó utilizar varios productos de terceros alojados para resolver esto, pero los encontró deficientes en control y fiabilidad, llegando algunos servicios incluso a cesar por completo.

Para abordar estos puntos de fricción, Cloudflare desarrolló Forge como una solución interna y ahora lo está liberando como código abierto. La herramienta ya está generando la salida requerida para la CLI cf y está programada para impulsar la documentación de la API y los SDK de Cloudflare en los próximos meses. Al abrir el código del proyecto, la empresa pretende permitir que otras organizaciones generen las superficies necesarias tanto para desarrolladores humanos como para agentes de IA sin depender de proveedores SaaS propietarios.

Cómo funciona

Forge opera como un pipeline de generación modular que se integra directamente en los flujos de trabajo de integración continua. Funciona de manera similar a Workers Previews de Cloudflare, creando una compilación de previsualización completa para cada cambio enviado mediante una solicitud de extracción (pull request). Cuando un desarrollador modifica una especificación de API, Forge analiza el cambio y genera compilaciones de previsualización de la CLI, la documentación y los SDK. Estas previsualizaciones resaltan únicamente los cambios específicos realizados, permitiendo a los ingenieros instalar y probar los nuevos artefactos inmediatamente. Este proceso ayuda a detectar cambios disruptivos o errores en la etapa de CI, previniendo problemas aguas abajo antes de que lleguen a producción.

Una característica central de Forge es su capacidad para encadenar transformadores, lo que significa que puede generar salidas a partir de otras salidas, no solo desde la especificación original. Mientras que muchos generadores producen objetivos como CLIs o proveedores de Terraform directamente desde un SDK de Go, Forge permite a los usuarios controlar este proceso de encadenamiento ellos mismos. Por ejemplo, Cloudflare utiliza esta capacidad para generar su CLI cf basada en TypeScript desde el SDK de TypeScript, que a su vez se deriva de la definición OpenAPI. Esta flexibilidad admite la adición de comportamientos locales únicos, como comandos personalizados de CLI que no corresponden a llamadas directas a la API, y garantiza que estas adiciones manuales se reflejen correctamente en la documentación generada.

El sistema está diseñado para ser extensible más allá de los objetivos de lenguaje estándar. Actualmente admite OpenAPI como tipo de entrada, con planes para soportar AsyncAPI, GraphQL, Cap’n Proto y Protobuf en el futuro. Esta arquitectura habilita la generación de herramientas especializadas como Cap’n Web, el sistema RPC de Cloudflare que permite a TypeScript llamar a APIs remotas como si fueran métodos locales. También facilita la creación de enlaces para herramientas como TanStack Query, esquemas Zod, esquemas Valibot y servidores del Protocolo de Contexto de Modelo (MCP), asegurando que todas las interfaces orientadas al consumidor permanezcan sincronizadas con el estado real de la API.

Detalles clave

  • Forge se publica bajo la licencia permisiva Apache 2.0, permitiendo uso privado o público gratuito.
  • La herramienta actualmente admite entradas OpenAPI, con soporte futuro planificado para GraphQL, AsyncAPI y Protobuf.
  • Genera compilaciones de previsualización para cada pull request, resaltando cambios para pruebas inmediatas.
  • Forge admite salidas encadenadas, permitiendo la creación de CLIs desde SDKs y no solo desde especificaciones.
  • El pipeline ya está en uso para la CLI cf de Cloudflare y pronto impulsará sus principales SDK.
  • Está diseñado para reducir la sobrecarga de coordinación detectando cambios disruptivos en CI.

Por qué importa

Para los equipos de software que gestionan APIs grandes o distribuidas, mantener bibliotecas cliente y documentación consistentes es una carga operativa significativa. Los enfoques tradicionales a menudo implican actualizaciones manuales o generadores rígidos que no tienen en cuenta la lógica personalizada o los requisitos multilingües. Forge aborda esto proporcionando una alternativa autoalojada y controlable frente a servicios de terceros volátiles. Al ejecutar el pipeline de generación dentro de su propio entorno de CI, los equipos obtienen propiedad sobre sus herramientas de experiencia de desarrollador y pueden asegurar que los SDK y la documentación estén siempre sincronizados con las últimas definiciones de la API.

El auge de los agentes de IA como consumidores de API aumenta aún más la necesidad de interfaces robustas y legibles por máquina. Los agentes requieren SDK precisos, documentación clara y protocolos estandarizados como MCP para interactuar eficazmente con los servicios. La capacidad de Forge para generar estas superficies automáticamente asegura que los productos sigan siendo accesibles tanto para desarrolladores humanos como para sistemas automatizados. Este cambio trata la compatibilidad con agentes como un requisito fundamental y no como una ocurrencia tardía, ayudando a las organizaciones a preparar sus APIs para patrones de consumo evolutivos.

Además, el soporte de la herramienta para estrategias de versionado de API ofrece un camino hacia adelante para servicios de larga duración. Cloudflare señala que su API v4 ha estado en funcionamiento durante diez años, acumulando cambios que tradicionalmente justificarían un salto mayor de versión. Al usar Forge para lanzar artefactos incrementalmente, los equipos pueden explorar enfoques de versionado que introducen nuevas capacidades sin romper los clientes existentes. Esto es particularmente relevante para ecosistemas complejos como Terraform, donde las actualizaciones requieren una gestión cuidadosa para evitar interrumpir despliegues de infraestructura.

Qué puedes hacer

  • Evalúa Forge para tu flujo de trabajo actual de generación de API para ver si reduce el mantenimiento manual.
  • Integra el pipeline en tu sistema de CI para generar compilaciones de previsualización para cada pull request.
  • Usa la función de encadenamiento para crear CLIs personalizadas o documentación desde tus SDK existentes.
  • Experimenta generando enlaces para bibliotecas específicas como TanStack Query o esquemas de validación.
  • Contribuye al repositorio de código abierto si tienes mejoras para los formatos de entrada admitidos.
  • Planifica tu estrategia de versionado de API aprovechando lanzamientos incrementales de artefactos en lugar de actualizaciones masivas.

Herramientas de la Tienda de Bytechap

Seguir leyendo

Todos los artículos