Tangleflow es una utilidad de línea de comandos y biblioteca para Node.js que traduce flujos de trabajo (workflows) entre el formato de GitHub Actions y el de Tangled, una plataforma de desarrollo colaborativo construida sobre Git. Su propósito es eliminar la fricción al migrar proyectos entre ambos sistemas, ya que permite convertir automáticamente los archivos de configuración en ambas direcciones.
La herramienta se distribuye como paquete en npm y puede invocarse directamente con npx sin instalación previa. Su uso principal es por terminal: el usuario indica el directorio del proyecto y el parámetro --target=tangled o --target=gh, y la herramienta se encarga de localizar los archivos YAML y reescribirlos en el formato de destino. Por defecto, lee los workflows definidos en .github/workflows/ y los escribe en .tangled/workflows/, o viceversa, según la dirección de la conversión.
Tangleflow también puede emplearse como librería dentro de otras aplicaciones JavaScript o TypeScript, exponiendo funciones que reciben objetos de flujo de trabajo ya parseados y devuelven la estructura equivalente en el otro sistema. De este modo, desarrolladores que estén construyendo integraciones, generadores de proyectos o interfaces gráficas pueden reutilizar la lógica de conversión sin depender de la línea de comandos.
En el aspecto funcional, la conversión respeta la semántica de los pipelines: cuando se traduce de GitHub Actions a Tangled, cada trabajo independiente se descompone en un archivo .tangled/workflows/.yml propio; en cambio, los trabajos vinculados mediante la cláusula needs se fusionan en un único workflow donde los pasos se ejecutan en orden de dependencia. El repositorio del proyecto, alojado en GitHub bajo la cuenta 43081j, incluye ejemplos, instrucciones de uso y el código fuente publicado como software libre.
