Los flujos de trabajo permiten a los usuarios definir una serie de pasos para guiar a Cascade en un conjunto repetitivo de tareas, como desplegar un servicio o responder a comentarios en PR. Estos flujos de trabajo se guardan como archivos Markdown, lo que ofrece a los usuarios y a sus equipos una forma sencilla y repetible de ejecutar procesos clave. Una vez guardados, los flujos de trabajo pueden invocarse en Cascade mediante un comando de barra con el formato /[name-of-workflow]

Cómo funciona

Las reglas generalmente ofrecen a los modelos de IA orientación proporcionando contexto persistente y reutilizable a nivel de prompt. Los flujos de trabajo amplían este concepto al definir una secuencia estructurada de pasos o prompts a nivel de trayectoria, guiando al modelo a través de una serie de tareas o acciones interconectadas.
Para ejecutar un Workflow, los usuarios simplemente lo invocan en Cascade usando el comando /[workflow-name].
¡Puedes invocar otros Workflows desde dentro de un Workflow!

Por ejemplo, /workflow-1 puede incluir instrucciones como “Invoca /workflow-2” y “Invoca /workflow-3”.
Al invocarlo, Cascade procesa secuencialmente cada paso definido en el Workflow, realizando acciones o generando respuestas según lo especificado.

Cómo crear un Workflow

Para comenzar con Workflows, haz clic en el icono Customizations en el menú deslizante superior derecho de Cascade y luego ve al panel Workflows. Aquí puedes hacer clic en el botón + Workflow para crear un nuevo Workflow. Los Workflows se guardan como archivos Markdown dentro de los directorios .windsurf/workflows/ y contienen un título, una descripción y una serie de pasos con instrucciones específicas para que Cascade las siga.

Descubrimiento de flujos de trabajo

Windsurf descubre automáticamente flujos de trabajo desde múltiples ubicaciones para ofrecer una organización flexible:
  • workspace actual y subdirectorios: Todos los directorios .windsurf/workflows/ dentro de tu workspace actual y sus subdirectorios
  • Estructura del repositorio Git: Para repositorios Git, Windsurf también busca hasta la raíz del repositorio para encontrar flujos de trabajo en directorios superiores
  • Compatibilidad con múltiples workspaces: Cuando hay varias carpetas abiertas en el mismo workspace, los flujos de trabajo se desduplican y se muestran con la ruta relativa más corta

Ubicaciones de almacenamiento de flujos de trabajo

Los flujos de trabajo pueden almacenarse en cualquiera de estas ubicaciones:
  • .windsurf/workflows/ en el directorio de tu workspace actual
  • .windsurf/workflows/ en cualquier subdirectorio de tu workspace
  • .windsurf/workflows/ en directorios superiores hasta la raíz de Git (para repositorios Git)
Cuando creas un nuevo flujo de trabajo, se guardará en el directorio .windsurf/workflows/ de tu workspace actual, no necesariamente en la raíz de Git. Cada archivo de flujo de trabajo está limitado a 12 000 caracteres.

Generar un flujo de trabajo con Cascade

También puedes pedirle a Cascade que genere flujos de trabajo por ti. Esto funciona especialmente bien para flujos de trabajo que requieren una serie de pasos en una herramienta CLI específica.

Flujos de trabajo de ejemplo

Hay una infinidad de casos de uso para los flujos de trabajo, como:

/address-pr-comments

Este es un flujo de trabajo que nuestro equipo usa internamente para abordar comentarios en PR:
1. Cambia a la rama del PR: `gh pr checkout [id]`

2. Obtener comentarios del PR

 bash
 gh api --paginate repos/[owner]/[repo]/pulls/[id]/comments | jq '.[] | {user: .user.login, body, path, line, original_line, created_at, in_reply_to_id, pull_request_review_id, commit_id}'

3. Para CADA comentario, haz lo siguiente. Recuerda abordar un comentario a la vez.
 a. Imprime lo siguiente: "(index). De [user] en [file]:[lines] — [body]"
 b. Analiza el archivo y el rango de líneas.
 c. Si no entiendes el comentario, no hagas cambios. Solo pídeme una aclaración o que lo implemente yo.
 d. Si crees que puedes hacer el cambio, hazlo ANTES de pasar al siguiente comentario.

4. Cuando termines de procesar todos los comentarios, resume lo que hiciste y cuáles comentarios requieren la atención del USUARIO.

/git-workflows

Haz commits usando formatos predefinidos y crea pull requests con títulos y descripciones estandarizados utilizando los comandos de la CLI apropiados.

/dependency-management

Automatiza la instalación o actualización de dependencias del proyecto basándote en un archivo de configuración (p. ej., requirements.txt, package.json).

/code-formatting

Ejecuta automáticamente formateadores de código (como Prettier, Black) y linters (como ESLint, Flake8) al guardar archivos o antes de hacer commit para mantener el estilo de código y detectar errores a tiempo.

/run-tests-and-fix

Ejecuta o agrega pruebas unitarias o de extremo a extremo y corrige los errores automáticamente para garantizar la calidad del código antes de hacer commit, fusionar o desplegar.

/deployment

Automatiza los pasos para desplegar tu aplicación en varios entornos (desarrollo, staging, producción), incluidas las verificaciones necesarias previas al despliegue y las posteriores.

/security-scan

Integra y activa análisis de vulnerabilidades de seguridad en tu base de código como parte del pipeline de CI/CD o bajo demanda.