Guías / Flujo de trabajo AGF — comandos y fases
Referencia
15 de abril de 2026
aiagfclaude-codeworkflowcomandos

Flujo de trabajo AGF — comandos y fases

Referencia práctica de los comandos slash, las fases de trabajo y cuándo usar cada uno en el día a día con Claude Code en el ecosistema WL.

Flujo día a día — implementación de features

La mayoría del trabajo cotidiano sigue este ciclo de cuatro comandos:

/spec:explore   → entender el problema
/spec:propose   → generar spec.md, design.md, tasks.md
/spec:apply     → implementar tarea por tarea
/spec:approve   → verificar completitud y archivar

/spec:explore

Inicia una sesión de análisis antes de comprometerse con una dirección. El agente hace preguntas sobre el cambio, examina el codebase, y puede señalar conflictos con ADRs existentes antes de que nadie haya escrito una sola línea de código.

El output no es código: es entendimiento compartido. El desarrollador y el agente alinean el problema, el alcance, y las restricciones.

Cuándo usarlo: siempre, antes de cualquier feature o cambio no trivial.

/spec:propose

Con el contexto de la exploración, el agente genera tres documentos en la raíz de specs/:

spec.md — qué se va a construir: contexto, objetivo, alcance explícito (qué entra y qué no), requisitos funcionales y no funcionales, e impacto en arquitectura.

design.md — cómo se va a construir: qué archivos nuevos se crean, qué archivos existentes cambian, qué estructuras de datos nuevas aparecen, con fragmentos de código para las partes más complejas.

tasks.md — la descomposición en pasos mecánicos y secuenciales para la fase de implementación.

El desarrollador revisa y aprueba (o itera sobre) estos documentos antes de que empiece cualquier implementación. Este es el punto de control más importante del proceso.

/spec:apply

En una sesión nueva (sin contexto residual de conversaciones anteriores), el agente lee la especificación aprobada y ejecuta las tareas una por una, marcando cada una como completada. No toma decisiones creativas en esta fase.

Si durante la implementación aparece una situación no cubierta por los ADRs ni por el design, el agente debe crear un AGDR y hacer una pausa — no improvisar.

/spec:approve

Verifica que la implementación está completa según tasks.md, actualiza el estado de la spec, y la mueve a specs/archive/<id>/. Cada feature completada queda con su historia documental intacta.


Flujo de decisiones arquitectónicas — ADRs

Cuando se necesita tomar una decisión de arquitectura que va a gobernar el proyecto en adelante (tecnología, patrón de diseño, convención de estructura):

/adr:explore   → explorar la decisión con el agente
/adr:draft     → generar el borrador en arch/drafts/
/adr:record    → registrar oficialmente en arch/adrs/

/adr:explore

Sesión conversacional donde el agente hace preguntas sobre la decisión que se quiere tomar, puede cuestionarla si contradice el foundation o ADRs existentes, y explora las alternativas. El resultado es la base para el borrador.

/adr:draft

Genera el borrador del ADR en arch/drafts/ con la estructura estándar: contexto, alternativas consideradas (con justificación de por qué se descartaron), decisión, y consecuencias positivas y negativas.

El desarrollador revisa e itera sobre el borrador. Un ADR que omite las alternativas consideradas no tiene valor como registro de decisión.

/adr:record

Mueve el ADR aprobado de arch/drafts/ a arch/adrs/ y actualiza el índice README.md. A partir de ese momento, el agente lo consulta antes de cualquier decisión de implementación.

Estructura de un ADR:

arch/
├── adrs/
│   ├── README.md                              ← índice con tabla de todos los ADRs
│   ├── ADR-000-arquitectura-en-cuatro-capas.md
│   ├── ADR-001-api-first-con-protocol-buffers.md
│   ├── ADR-002-modelo-multi-tenant.md
│   ├── ADR-003-comunicacion-orientada-a-eventos.md
│   └── ADR-004-cliente-rest-externo-con-resty.md
└── drafts/

Los ADR-000 a ADR-004 son base de la plataforma WL y aplican a todos los microservicios. Los ADRs propios de cada servicio comienzan en ADR-005.

ADRs base de la plataforma WL (ejemplos reales del servicio core-notifications):

ADRTítuloDescargar
ADR-000Arquitectura en cuatro capas y organización de dominiosver
ADR-001API-first con Protocol Buffers y bufver
ADR-002Modelo multi-tenant con FXver
ADR-003Comunicación orientada a eventos con NATS JetStreamver
ADR-004Cliente REST externo con resty en la capa Platformver

Flujo de decisiones autónomas del agente — AGDRs

Durante la implementación, el agente puede encontrar situaciones que los ADRs no cubren. Cuando eso ocurre, el agente no debe improvisar: debe crear un AGDR, notificar al desarrollador, y esperar aprobación.

arch/agdrs/
└── <id>-<descripcion>.md

El desarrollador tiene tres opciones:

/agdr:approve

La decisión propuesta es correcta para este caso. El agente puede continuar la implementación.

/agdr:reject

La decisión propuesta no es la correcta. El agente debe replantearse el enfoque. El AGDR incluye la razón del rechazo para que el agente entienda la dirección correcta.

/agdr:promote

La decisión es suficientemente importante para que rija todo el proyecto. El AGDR se convierte en un ADR formal en arch/drafts/ para su revisión completa con /adr:draft y /adr:record.


Estructura de directorios de referencia

<servicio>/
├── foundation.md          ← qué se construye, por qué, qué se espera lograr
├── CLAUDE.md              ← contexto del agente: arquitectura, capas, convenciones

├── arch/
│   ├── adrs/
│   │   ├── README.md      ← índice consultado por el agente antes de implementar
│   │   └── ADR-XXX-*.md
│   ├── agdrs/
│   │   └── README.md      ← registro de decisiones autónomas del agente
│   └── drafts/            ← ADRs en proceso de revisión

└── specs/
    ├── README.md
    ├── spec.md            ← spec activa durante implementación
    ├── design.md
    ├── tasks.md
    └── archive/
        └── <feature-id>/
            ├── spec.md
            ├── design.md
            └── tasks.md

Cuándo no usar el flujo completo

El AGF tiene un costo por diseño. Para situaciones menores, el proceso puede adaptarse:

SituaciónEnfoque recomendado
Bug menor con causa claraFix directo con descripción en el commit
Ajuste de configuraciónCambio directo, sin spec
Feature compleja de nuevos casos de usoFlujo completo: explore → propose → apply → approve
Decisión de arquitectura nuevaADR completo: explore → draft → record
Ambigüedad durante implementaciónAGDR + pausa: no improvisar

La regla práctica: si el cambio afecta la estructura del dominio, introduce una dependencia nueva, o crea un patrón que otros van a replicar, usa el flujo completo. Si es un cambio local y reversible, el criterio del desarrollador es suficiente.


Sesiones y contexto

Claude Code carga el CLAUDE.md del repo automáticamente al iniciar cada sesión. Los ADRs del proyecto son el contexto que el agente consulta para respetar las convenciones.

Plantillas de referencia:

ArchivoDescripciónDescargar
CLAUDE-agf-template.mdPlantilla de CLAUDE.md basada en un servicio WL real, con workflow AGF integradover

Para la fase /spec:apply, abrir siempre una sesión nueva con /clear antes de empezar. El agente ejecuta mejor cuando su contexto de entrada es solo la especificación aprobada, sin ruido acumulado de la sesión de diseño.

Para exploración y diseño (:explore, :propose), una misma sesión puede mantenerse mientras la conversación sea coherente. Usar /clear si las respuestas empiezan a desviarse o repetir errores.