Personalizar Pipelines
Los pipelines de RaiSE son datos, no código. Cuando inicias un pipeline, la IA carga una definición YAML de pipeline y orquesta cada fase usando skills y herramientas MCP. Personalizas los pipelines editando esos archivos YAML — no se requiere programación.
Cómo se Ejecutan los Pipelines¶
Nunca ejecutas pipelines directamente. En su lugar, pídele a Rai dentro de Claude Code:
| Lo que dices | Definición de Pipeline | Qué Hace |
|---|---|---|
| "Inicia el pipeline de story para RAISE-123" | story.yaml |
Ciclo de vida completo de story: start, design, plan, implement, review, close |
| "Inicia el pipeline de bugfix para RAISE-456" | bugfix.yaml |
Pipeline de bugfix de 7 fases con 3 gates HITL |
| "Inicia el pipeline de epic para RAISE-789" | epic.yaml |
Ciclo de vida de epic con gates de delegación |
Detrás de escena, Rai usa herramientas MCP (pipeline_start, pipeline_advance, pipeline_status) para cargar la definición YAML, ejecutar cada fase y aplicar gates. La IA gestiona la orquestación — tú revisas y apruebas en los checkpoints de gate.
Nota: Los slash commands legacy
/rai-story-run,/rai-bugfix-runy/rai-epic-runfueron eliminados en 3.0. Ver Migrando desde 2.x.
Jerarquía de Carga¶
El cargador de pipelines verifica tres ubicaciones en orden:
| Prioridad | Ubicación | Caso de uso |
|---|---|---|
| 1 (más alta) | ~/.rai/pipelines/ |
Overrides personales |
| 2 | .raise/pipelines/ |
Pipelines específicos del proyecto |
| 3 (más baja) | Built-in (pipelines_base/) |
Defaults incluidos |
Un pipeline de mayor prioridad reemplaza uno con el mismo nombre de menor prioridad. Esto significa que puedes reemplazar story.yaml para tu proyecto sin modificar el built-in.
Puntos de Personalización¶
Editar Definiciones de Pipeline¶
Para personalizar el pipeline de story para tu proyecto, crea tu propio override:
Luego crea .raise/pipelines/story.yaml. Tu versión tiene precedencia sobre el built-in. La próxima vez que inicies el pipeline de story, la IA carga tu definición personalizada.
Agregar o Eliminar Fases¶
Cada pipeline es una secuencia de fases. Agrega, elimina o reordénalas:
name: story
description: "Pipeline de story mínimo de 4 fases"
issue_types:
- story
phases:
- id: start
type: llm
skill: rai-story-start
- id: design
type: llm
skill: rai-story-design
gate:
type: hitl
level: REVIEW
- id: implement
type: llm
skill: rai-story-implement
gate:
type: hitl
level: REVIEW
- id: close
type: llm
skill: rai-story-close
Este pipeline reducido omite las fases de plan y review — útil para proyectos pequeños donde el overhead no está justificado.
Personalizar Qué Skills se Ejecutan¶
Cada fase llm referencia un skill por nombre. Intercambia por tu propio skill para cambiar qué hace la IA en esa fase:
- id: design
type: llm
skill: my-custom-design # Tu skill en .claude/skills/
context:
graph:
- types: [pattern]
limit: 5
Agregar y Eliminar Gates¶
Los gates controlan cuándo el pipeline pausa para revisión o ejecuta verificaciones automatizadas.
Gates HITL pausan para revisión humana:
gate:
type: hitl
level: REVIEW # REVIEW, NOTIFY, o AUTO
mandatory: true # No puede ser reemplazado por nivel de delegación
Gates determinísticos ejecutan verificaciones automatizadas — pasan/fallan según el código de salida:
Elimina un gate para que la IA proceda sin detenerse. Agrega gates a las fases donde quieras un checkpoint.
Fases Condicionales con when¶
Omite fases basándose en metadatos:
- id: architecture-review
type: llm
skill: rai-architecture-review
when: "story_type == 'code'" # Omitido para stories de docs/análisis
Las variables disponibles en expresiones when vienen de defaults y los metadatos del tipo de story.
Tipos de Fase¶
llm — Fases Dirigidas por IA¶
Carga un skill y delega a Claude:
deterministic — Fases de Comandos de Shell¶
Ejecuta comandos secuencialmente. Falla en el primer exit no-cero:
Validación de Artifacts¶
Requiere que archivos específicos existan tras completar una fase:
validates:
- pattern: "**/*-design.md"
description: "Documento de diseño de story"
- pattern: "**/*-plan.md"
description: "Documento de plan de story"
El motor bloquea la progresión si falta algún artifact requerido.
Inyección de Contexto¶
Inyecta contexto del knowledge graph en fases LLM:
Tipos disponibles: pattern, module, decision, principle, guardrail, epic, story.
Modos de Revisión¶
Para fases de revisión, habilita plantillas de revisión adversarial:
- id: quality-review
type: llm
skill: rai-quality-review
review_mode: adversarial
review_template: adversarial-qr
Crear un Nuevo Pipeline¶
Crea .raise/pipelines/deploy.yaml para un pipeline personalizado:
name: deploy
description: "Pipeline de despliegue de 3 fases"
issue_types:
- task
phases:
- id: validate
type: deterministic
commands:
- "rai release check"
- "rai gate check --all"
- id: build
type: deterministic
commands:
- "uv build --out-dir dist"
- "twine check dist/*"
gate:
type: hitl
level: REVIEW
- id: publish
type: deterministic
commands:
- "twine upload dist/*"
Una vez definido, un slash command correspondiente o una llamada a herramienta MCP puede referenciarlo por nombre.
Acceso CLI Directo¶
Para depuración o scripting fuera de Claude Code, el CLI de pipeline está disponible:
# Listar pipelines disponibles y sus fases
rai pipeline list
# Iniciar una ejecución de pipeline directamente
rai pipeline run deploy
# Verificar estado de un pipeline en ejecución
rai pipeline status
La mayoría de desarrolladores no necesitarán el CLI — los slash commands y herramientas MCP gestionan la orquestación automáticamente.
Próximos Pasos¶
- Concepto de Pipelines — arquitectura y principios de diseño
- Pipeline Quickstart — ejecuta tu primer pipeline
- Referencia CLI — todos los comandos y flags