@liriraid/agentflow-ai 1.0.20 → 1.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +204 -52
- package/bin/agentflow.mjs +0 -0
- package/orchestrator.js +78 -7
- package/package.json +63 -60
- package/templates/en/.claude/hooks/notify-check.js +20 -20
- package/templates/en/.claude/settings.json +24 -24
- package/templates/en/.claude/skills/orchestrator-explore/SKILL.md +32 -31
- package/templates/en/.claude/skills/orchestrator-queue-planning/SKILL.md +50 -50
- package/templates/en/AGENT-CONFIG.md +3 -2
- package/templates/en/ORCHESTRATOR.md +22 -12
- package/templates/en/README.md +182 -138
- package/templates/en/agents/OPENCODE.md +62 -42
- package/templates/en/docs/usage.md +1 -1
- package/templates/en/orchestrator.config.json +0 -7
- package/templates/es/.claude/hooks/notify-check.js +20 -20
- package/templates/es/.claude/settings.json +24 -24
- package/templates/es/.claude/skills/orchestrator-explore/SKILL.md +34 -33
- package/templates/es/.claude/skills/orchestrator-queue-planning/SKILL.md +52 -52
- package/templates/es/AGENT-CONFIG.md +3 -2
- package/templates/es/ORCHESTRATOR.md +22 -12
- package/templates/es/PROJECT.md +2 -2
- package/templates/es/README.md +224 -34
- package/templates/es/agents/OPENCODE.md +62 -42
- package/templates/es/docs/usage.md +1 -1
- package/templates/es/orchestrator.config.json +2 -9
|
@@ -1,42 +1,62 @@
|
|
|
1
|
-
# OpenCode Agent
|
|
2
|
-
|
|
3
|
-
## Role
|
|
4
|
-
|
|
5
|
-
OpenCode is
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
-
|
|
12
|
-
-
|
|
13
|
-
-
|
|
14
|
-
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
- Implementing features
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
1
|
+
# OpenCode Agent
|
|
2
|
+
|
|
3
|
+
## Role
|
|
4
|
+
|
|
5
|
+
OpenCode is a **multi-purpose agent** capable of **analysis, exploration, and code implementation**.
|
|
6
|
+
Its capabilities depend on the model you have configured in your OpenCode installation.
|
|
7
|
+
|
|
8
|
+
## Scope
|
|
9
|
+
|
|
10
|
+
### Analysis (Always available)
|
|
11
|
+
- Codebase audits
|
|
12
|
+
- Flow and architecture exploration
|
|
13
|
+
- Context reading before implementation
|
|
14
|
+
- Read-only smoke tests
|
|
15
|
+
- Structured Markdown reports
|
|
16
|
+
- Identifying dead code, missing dependencies, inconsistencies
|
|
17
|
+
|
|
18
|
+
### Implementation
|
|
19
|
+
- Implementing new features
|
|
20
|
+
- Modifying project files
|
|
21
|
+
- Writing new tests
|
|
22
|
+
- Refactoring code
|
|
23
|
+
- Fixing bugs
|
|
24
|
+
|
|
25
|
+
## General Rules
|
|
26
|
+
|
|
27
|
+
1. Do not commit or push.
|
|
28
|
+
2. If the task is **analysis**: deliver findings in Markdown tables and write the report in `progress/PROGRESS-OpenCode.md`
|
|
29
|
+
3. If the task is **implementation**: modify the necessary files and document the changes
|
|
30
|
+
4. Always deliver a TASK_REPORT at the end
|
|
31
|
+
|
|
32
|
+
## Assignment Priority
|
|
33
|
+
|
|
34
|
+
- **First choice for implementation**: Codex (when available)
|
|
35
|
+
- **Second choice for implementation**: OpenCode
|
|
36
|
+
- **Third choice**: Claude-Worker (Backend/Frontend)
|
|
37
|
+
|
|
38
|
+
## Completion Report (REQUIRED)
|
|
39
|
+
|
|
40
|
+
### For analysis tasks:
|
|
41
|
+
```
|
|
42
|
+
TASK_REPORT
|
|
43
|
+
status: completed | failed | blocked
|
|
44
|
+
files_modified: none
|
|
45
|
+
files_created: none
|
|
46
|
+
files_deleted: none
|
|
47
|
+
summary: 1-3 sentences describing findings
|
|
48
|
+
issues: problems or "none"
|
|
49
|
+
TASK_REPORT_END
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### For implementation tasks:
|
|
53
|
+
```
|
|
54
|
+
TASK_REPORT
|
|
55
|
+
status: completed | failed | blocked
|
|
56
|
+
files_modified: ["src/file1.js", "src/file2.ts"]
|
|
57
|
+
files_created: ["src/new-file.js"]
|
|
58
|
+
files_deleted: ["src/old-file.js"]
|
|
59
|
+
summary: 1-3 sentences describing the changes made
|
|
60
|
+
issues: problems or "none"
|
|
61
|
+
TASK_REPORT_END
|
|
62
|
+
```
|
|
@@ -50,49 +50,42 @@
|
|
|
50
50
|
"cli": "claude",
|
|
51
51
|
"profile": "claude",
|
|
52
52
|
"defaultRepo": "backend",
|
|
53
|
-
"model": "sonnet",
|
|
54
53
|
"instructionsFile": "agents/BACKEND.md"
|
|
55
54
|
},
|
|
56
55
|
"Frontend": {
|
|
57
56
|
"cli": "claude",
|
|
58
57
|
"profile": "claude",
|
|
59
58
|
"defaultRepo": "frontend",
|
|
60
|
-
"model": "sonnet",
|
|
61
59
|
"instructionsFile": "agents/FRONTEND.md"
|
|
62
60
|
},
|
|
63
61
|
"Codex": {
|
|
64
62
|
"cli": "codex",
|
|
65
63
|
"profile": "codex",
|
|
66
64
|
"defaultRepo": "frontend",
|
|
67
|
-
"model": "gpt-5.5",
|
|
68
65
|
"instructionsFile": "agents/CODEX.md"
|
|
69
66
|
},
|
|
70
67
|
"Gemini": {
|
|
71
68
|
"cli": "gemini",
|
|
72
69
|
"profile": "gemini",
|
|
73
70
|
"defaultRepo": "frontend",
|
|
74
|
-
"model": "auto",
|
|
75
71
|
"instructionsFile": "agents/GEMINI.md"
|
|
76
72
|
},
|
|
77
73
|
"OpenCode": {
|
|
78
74
|
"cli": "opencode",
|
|
79
75
|
"profile": "opencode",
|
|
80
76
|
"defaultRepo": "frontend",
|
|
81
|
-
"model": "auto",
|
|
82
77
|
"instructionsFile": "agents/OPENCODE.md"
|
|
83
78
|
},
|
|
84
79
|
"Cursor": {
|
|
85
80
|
"cli": "cursor",
|
|
86
81
|
"profile": "cursor",
|
|
87
82
|
"defaultRepo": "backend",
|
|
88
|
-
"model": "auto",
|
|
89
83
|
"instructionsFile": "agents/CURSOR.md"
|
|
90
84
|
},
|
|
91
85
|
"Abacus": {
|
|
92
86
|
"cli": "abacusai",
|
|
93
87
|
"profile": "abacusai",
|
|
94
88
|
"defaultRepo": "backend",
|
|
95
|
-
"model": "auto",
|
|
96
89
|
"instructionsFile": "agents/ABACUS.md"
|
|
97
90
|
}
|
|
98
91
|
}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
'use strict';
|
|
3
|
-
// Lee NOTIFY.md del workspace y vuelca el contenido a stdout para que
|
|
4
|
-
// el hook de Claude Code lo inyecte en la sesión interactiva.
|
|
5
|
-
// El archivo se elimina después de leerse para no repetir la notificación.
|
|
6
|
-
const fs = require('fs');
|
|
7
|
-
const path = require('path');
|
|
8
|
-
|
|
9
|
-
const notifyFile = path.join(process.cwd(), 'NOTIFY.md');
|
|
10
|
-
if (!fs.existsSync(notifyFile)) process.exit(0);
|
|
11
|
-
|
|
12
|
-
const content = fs.readFileSync(notifyFile, 'utf8').trim();
|
|
13
|
-
if (!content) {
|
|
14
|
-
try { fs.unlinkSync(notifyFile); } catch {}
|
|
15
|
-
process.exit(0);
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
try { fs.unlinkSync(notifyFile); } catch {}
|
|
19
|
-
|
|
20
|
-
process.stdout.write('\n' + content + '\n');
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
'use strict';
|
|
3
|
+
// Lee NOTIFY.md del workspace y vuelca el contenido a stdout para que
|
|
4
|
+
// el hook de Claude Code lo inyecte en la sesión interactiva.
|
|
5
|
+
// El archivo se elimina después de leerse para no repetir la notificación.
|
|
6
|
+
const fs = require('fs');
|
|
7
|
+
const path = require('path');
|
|
8
|
+
|
|
9
|
+
const notifyFile = path.join(process.cwd(), 'NOTIFY.md');
|
|
10
|
+
if (!fs.existsSync(notifyFile)) process.exit(0);
|
|
11
|
+
|
|
12
|
+
const content = fs.readFileSync(notifyFile, 'utf8').trim();
|
|
13
|
+
if (!content) {
|
|
14
|
+
try { fs.unlinkSync(notifyFile); } catch {}
|
|
15
|
+
process.exit(0);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
try { fs.unlinkSync(notifyFile); } catch {}
|
|
19
|
+
|
|
20
|
+
process.stdout.write('\n' + content + '\n');
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
{
|
|
2
|
-
"hooks": {
|
|
3
|
-
"Stop": [
|
|
4
|
-
{
|
|
5
|
-
"hooks": [
|
|
6
|
-
{
|
|
7
|
-
"type": "command",
|
|
8
|
-
"command": "node .claude/hooks/notify-check.js"
|
|
9
|
-
}
|
|
10
|
-
]
|
|
11
|
-
}
|
|
12
|
-
],
|
|
13
|
-
"UserPromptSubmit": [
|
|
14
|
-
{
|
|
15
|
-
"hooks": [
|
|
16
|
-
{
|
|
17
|
-
"type": "command",
|
|
18
|
-
"command": "node .claude/hooks/notify-check.js"
|
|
19
|
-
}
|
|
20
|
-
]
|
|
21
|
-
}
|
|
22
|
-
]
|
|
23
|
-
}
|
|
24
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"hooks": {
|
|
3
|
+
"Stop": [
|
|
4
|
+
{
|
|
5
|
+
"hooks": [
|
|
6
|
+
{
|
|
7
|
+
"type": "command",
|
|
8
|
+
"command": "node .claude/hooks/notify-check.js"
|
|
9
|
+
}
|
|
10
|
+
]
|
|
11
|
+
}
|
|
12
|
+
],
|
|
13
|
+
"UserPromptSubmit": [
|
|
14
|
+
{
|
|
15
|
+
"hooks": [
|
|
16
|
+
{
|
|
17
|
+
"type": "command",
|
|
18
|
+
"command": "node .claude/hooks/notify-check.js"
|
|
19
|
+
}
|
|
20
|
+
]
|
|
21
|
+
}
|
|
22
|
+
]
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -1,33 +1,34 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: orchestrator-explore
|
|
3
|
-
description: >
|
|
4
|
-
Explora, analiza o investiga el proyecto antes de proponer cambios. Ideal cuando el usuario pide entender archivos, flujos o arquitectura antes de delegar implementación.
|
|
5
|
-
Trigger: "explora", "analiza", "investiga", "revisa este proyecto", "revisa estos archivos"
|
|
6
|
-
license: MIT
|
|
7
|
-
metadata:
|
|
8
|
-
owner: agentflow
|
|
9
|
-
version: "0.2"
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
# Skill: orchestrator-explore
|
|
13
|
-
|
|
14
|
-
## Propósito
|
|
15
|
-
|
|
16
|
-
Guiar la fase de exploración del orquestador para reunir contexto útil antes de crear o delegar tareas.
|
|
17
|
-
|
|
18
|
-
## Reglas críticas
|
|
19
|
-
|
|
20
|
-
- Empieza por entender el alcance exacto del pedido del usuario.
|
|
21
|
-
- Si hace falta lectura amplia, prioriza exploración y análisis antes de planear implementación.
|
|
22
|
-
- Usa
|
|
23
|
-
- Al delegar exploración a OpenCode, incluye en el brief exactamente qué debe reportar: flujos, dependencias, hallazgos de arquitectura, inconsistencias, etc.
|
|
24
|
-
- No llenes `QUEUE.md` con implementación hasta tener suficiente contexto.
|
|
25
|
-
- Resume hallazgos en términos accionables: qué existe, qué falta, qué riesgo hay y qué tareas salen de eso.
|
|
26
|
-
- Si la exploración revela un cambio grande o multifase, el siguiente paso natural es abrir o actualizar un change en `openspec/`.
|
|
27
|
-
- Si descubres una línea clara de trabajo, el siguiente paso natural es convertir hallazgos en TASKs concretas con `orchestrator-queue-planning`.
|
|
28
|
-
- Mantén el foco dentro del alcance pedido; explorar no es rediseñar todo el sistema.
|
|
29
|
-
- Cuando OpenCode entregue su reporte en INBOX.md, usa
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
1
|
+
---
|
|
2
|
+
name: orchestrator-explore
|
|
3
|
+
description: >
|
|
4
|
+
Explora, analiza o investiga el proyecto antes de proponer cambios. Ideal cuando el usuario pide entender archivos, flujos o arquitectura antes de delegar implementación.
|
|
5
|
+
Trigger: "explora", "analiza", "investiga", "revisa este proyecto", "revisa estos archivos"
|
|
6
|
+
license: MIT
|
|
7
|
+
metadata:
|
|
8
|
+
owner: agentflow
|
|
9
|
+
version: "0.2"
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Skill: orchestrator-explore
|
|
13
|
+
|
|
14
|
+
## Propósito
|
|
15
|
+
|
|
16
|
+
Guiar la fase de exploración del orquestador para reunir contexto útil antes de crear o delegar tareas.
|
|
17
|
+
|
|
18
|
+
## Reglas críticas
|
|
19
|
+
|
|
20
|
+
- Empieza por entender el alcance exacto del pedido del usuario.
|
|
21
|
+
- Si hace falta lectura amplia, prioriza exploración y análisis antes de planear implementación.
|
|
22
|
+
- Usa **SOLO OpenCode** como agente de exploración cuando necesites análisis profundo del codebase — su rol es **EXCLUSIVAMENTE análisis**, **NUNCA implementación**.
|
|
23
|
+
- Al delegar exploración a OpenCode, incluye en el brief exactamente qué debe reportar: flujos, dependencias, hallazgos de arquitectura, inconsistencias, etc.
|
|
24
|
+
- No llenes `QUEUE.md` con implementación hasta tener suficiente contexto.
|
|
25
|
+
- Resume hallazgos en términos accionables: qué existe, qué falta, qué riesgo hay y qué tareas salen de eso.
|
|
26
|
+
- Si la exploración revela un cambio grande o multifase, el siguiente paso natural es abrir o actualizar un change en `openspec/`.
|
|
27
|
+
- Si descubres una línea clara de trabajo, el siguiente paso natural es convertir hallazgos en TASKs concretas con `orchestrator-queue-planning`.
|
|
28
|
+
- Mantén el foco dentro del alcance pedido; explorar no es rediseñar todo el sistema.
|
|
29
|
+
- **REGLA ESTRICTA: Cuando OpenCode entregue su reporte en INBOX.md, usa ESOS hallazgos para crear las TASKs de implementación (asignadas a Codex o Claude-Worker). NUNCA, bajo ninguna circunstancia, vuelvas a analizar el código tú mismo (Claude-Orquestador) si OpenCode ya lo hizo. Lee el reporte en `progress/PROGRESS-OpenCode.md` o el INBOX.md y basa tus decisiones en ese análisis.**
|
|
30
|
+
- Si el reporte de OpenCode es insuficiente, pide a OpenCode que profundice en un área específica con una nueva TASK de análisis, pero NO lo hagas tú directamente.
|
|
31
|
+
|
|
32
|
+
## Resultado esperado
|
|
33
|
+
|
|
34
|
+
Una exploración útil que permita al orquestador decidir si ya puede crear TASKs o si necesita una investigación adicional. **El resultado final DEBE ser una o más TASKs en QUEUE.md asignadas a Codex o Claude-Worker para implementación, NO más análisis por parte de Claude-Orquestador.**
|
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: orchestrator-queue-planning
|
|
3
|
-
description: >
|
|
4
|
-
Convierte contexto y hallazgos en tareas concretas para QUEUE.md, con prioridades, agente objetivo y dependencias claras.
|
|
5
|
-
Trigger: "crea tareas", "planifica en queue", "divide el trabajo", "delegar tareas", "llenar queue"
|
|
6
|
-
license: MIT
|
|
7
|
-
metadata:
|
|
8
|
-
owner: agentflow
|
|
9
|
-
version: "0.2"
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
# Orchestrator Queue Planning
|
|
13
|
-
|
|
14
|
-
## Propósito
|
|
15
|
-
|
|
16
|
-
Traducir una necesidad del usuario o hallazgos de exploración en tareas concretas para el motor del orquestador.
|
|
17
|
-
|
|
18
|
-
## Reglas de asignación de agentes
|
|
19
|
-
|
|
20
|
-
### OpenCode — análisis solamente
|
|
21
|
-
- Úsalo para exploración, auditorías, lectura de contexto y reportes estructurados
|
|
22
|
-
- **No le asignes implementación** — OpenCode no modifica archivos del proyecto
|
|
23
|
-
- Si el trabajo necesita análisis previo, crea primero una TASK de OpenCode y luego una de Codex con dependencia `> after:TASK-NNN`
|
|
24
|
-
|
|
25
|
-
### Codex — implementación principal
|
|
26
|
-
- Úsalo para implementación, cambios de código, tests y docs técnicas cuando la spec esté clara
|
|
27
|
-
- Es el agente primario de ejecución
|
|
28
|
-
- Si Codex falla persistentemente, la TUI reasigna automáticamente a Claude-Worker (Frontend/Backend)
|
|
29
|
-
|
|
30
|
-
### Claude-Worker (Frontend / Backend)
|
|
31
|
-
- Es el fallback automático cuando Codex falla
|
|
32
|
-
- También puede tomar trabajo cuando Codex y OpenCode están ambos ocupados y hay más tareas pendientes
|
|
33
|
-
- Para proyectos solo frontend: usar siempre `Frontend`; para backend: `Backend`
|
|
34
|
-
|
|
35
|
-
## Reglas críticas
|
|
36
|
-
|
|
37
|
-
- Escribe TASKs pequeñas, concretas y ejecutables.
|
|
38
|
-
- Cada tarea debe tener agente, prioridad, repo y descripción clara.
|
|
39
|
-
- Usa dependencias `> after:TASK-NNN` cuando una tarea no pueda arrancar todavía.
|
|
40
|
-
- No sobrecargues una sola IA con demasiadas tareas si puedes paralelizar sin riesgo.
|
|
41
|
-
- Distribución según cantidad de TASKs independientes:
|
|
42
|
-
- **1 tarea de análisis**: OpenCode
|
|
43
|
-
- **1 tarea de implementación**: Codex
|
|
44
|
-
- **2 tareas paralelas**: OpenCode (análisis) + Codex (implementación si la spec ya es clara)
|
|
45
|
-
- **3+ tareas** y Codex ocupado: el excedente va a `Frontend` (repo FE) o `Backend` (repo BE)
|
|
46
|
-
- Si existe un `openspec/changes/<change-name>/tasks.md`, úsalo como fuente de verdad.
|
|
47
|
-
- Mantén `QUEUE.md` coherente con el objetivo actual del usuario.
|
|
48
|
-
- **No asignes implementación a OpenCode** bajo ninguna circunstancia.
|
|
49
|
-
|
|
50
|
-
## Resultado esperado
|
|
51
|
-
|
|
52
|
-
Una cola clara y accionable que el motor pueda despachar de inmediato.
|
|
1
|
+
---
|
|
2
|
+
name: orchestrator-queue-planning
|
|
3
|
+
description: >
|
|
4
|
+
Convierte contexto y hallazgos en tareas concretas para QUEUE.md, con prioridades, agente objetivo y dependencias claras.
|
|
5
|
+
Trigger: "crea tareas", "planifica en queue", "divide el trabajo", "delegar tareas", "llenar queue"
|
|
6
|
+
license: MIT
|
|
7
|
+
metadata:
|
|
8
|
+
owner: agentflow
|
|
9
|
+
version: "0.2"
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Orchestrator Queue Planning
|
|
13
|
+
|
|
14
|
+
## Propósito
|
|
15
|
+
|
|
16
|
+
Traducir una necesidad del usuario o hallazgos de exploración en tareas concretas para el motor del orquestador.
|
|
17
|
+
|
|
18
|
+
## Reglas de asignación de agentes
|
|
19
|
+
|
|
20
|
+
### OpenCode — análisis solamente
|
|
21
|
+
- Úsalo para exploración, auditorías, lectura de contexto y reportes estructurados
|
|
22
|
+
- **No le asignes implementación** — OpenCode no modifica archivos del proyecto
|
|
23
|
+
- Si el trabajo necesita análisis previo, crea primero una TASK de OpenCode y luego una de Codex con dependencia `> after:TASK-NNN`
|
|
24
|
+
|
|
25
|
+
### Codex — implementación principal
|
|
26
|
+
- Úsalo para implementación, cambios de código, tests y docs técnicas cuando la spec esté clara
|
|
27
|
+
- Es el agente primario de ejecución
|
|
28
|
+
- Si Codex falla persistentemente, la TUI reasigna automáticamente a Claude-Worker (Frontend/Backend)
|
|
29
|
+
|
|
30
|
+
### Claude-Worker (Frontend / Backend)
|
|
31
|
+
- Es el fallback automático cuando Codex falla
|
|
32
|
+
- También puede tomar trabajo cuando Codex y OpenCode están ambos ocupados y hay más tareas pendientes
|
|
33
|
+
- Para proyectos solo frontend: usar siempre `Frontend`; para backend: `Backend`
|
|
34
|
+
|
|
35
|
+
## Reglas críticas
|
|
36
|
+
|
|
37
|
+
- Escribe TASKs pequeñas, concretas y ejecutables.
|
|
38
|
+
- Cada tarea debe tener agente, prioridad, repo y descripción clara.
|
|
39
|
+
- Usa dependencias `> after:TASK-NNN` cuando una tarea no pueda arrancar todavía.
|
|
40
|
+
- No sobrecargues una sola IA con demasiadas tareas si puedes paralelizar sin riesgo.
|
|
41
|
+
- Distribución según cantidad de TASKs independientes:
|
|
42
|
+
- **1 tarea de análisis**: OpenCode
|
|
43
|
+
- **1 tarea de implementación**: Codex
|
|
44
|
+
- **2 tareas paralelas**: OpenCode (análisis) + Codex (implementación si la spec ya es clara)
|
|
45
|
+
- **3+ tareas** y Codex ocupado: el excedente va a `Frontend` (repo FE) o `Backend` (repo BE)
|
|
46
|
+
- Si existe un `openspec/changes/<change-name>/tasks.md`, úsalo como fuente de verdad.
|
|
47
|
+
- Mantén `QUEUE.md` coherente con el objetivo actual del usuario.
|
|
48
|
+
- **No asignes implementación a OpenCode** bajo ninguna circunstancia.
|
|
49
|
+
|
|
50
|
+
## Resultado esperado
|
|
51
|
+
|
|
52
|
+
Una cola clara y accionable que el motor pueda despachar de inmediato.
|
|
@@ -58,7 +58,8 @@ Cuando haya varias tareas independientes, el reparto recomendado es mantener ocu
|
|
|
58
58
|
Para este proyecto reusable:
|
|
59
59
|
|
|
60
60
|
- `claude` es el profile principal
|
|
61
|
-
- `codex`
|
|
61
|
+
- `codex` es el profile de implementación primaria
|
|
62
|
+
- `opencode` es el profile de apoyo que **puede implementar código** dependiendo del modelo configurado en tu instalación de OpenCode
|
|
62
63
|
- otros profiles pueden existir, aunque no estén habilitados por defecto
|
|
63
64
|
|
|
64
65
|
## Directorios locales sugeridos
|
|
@@ -79,5 +80,5 @@ Si existe configuración global del agente en el home del usuario y también una
|
|
|
79
80
|
|
|
80
81
|
- `Claude` usa `.claude/skills/` como base principal del proyecto
|
|
81
82
|
- `Codex` y `OpenCode` pueden tener configuración local propia aunque hoy no usen el mismo modelo de skills
|
|
82
|
-
- `OpenCode` no es solo auditor: puede explorar, auditar e implementar
|
|
83
|
+
- `OpenCode` no es solo auditor: puede explorar, auditar e **implementar código** — las capacidades dependen del modelo configurado en tu instalación de OpenCode
|
|
83
84
|
- el diseño debe permitir que mañana también tengan una capa local más rica
|
|
@@ -134,6 +134,8 @@ del .away-mode
|
|
|
134
134
|
|
|
135
135
|
La TUI gestiona el fallback automáticamente siguiendo esta cadena:
|
|
136
136
|
|
|
137
|
+
```
|
|
138
|
+
Codex falla → OpenCode → Frontend (repo FE) o Backend (repo BE)
|
|
137
139
|
```
|
|
138
140
|
Codex falla → Frontend (repo FE) o Backend (repo BE) directamente
|
|
139
141
|
```
|
|
@@ -164,22 +166,25 @@ Revisa `orchestrator.config.json` → `agents`. Cada entrada tiene:
|
|
|
164
166
|
**Agentes por defecto en esta plantilla:**
|
|
165
167
|
| Nombre | CLI | Mejor para |
|
|
166
168
|
|--------|-----|------------|
|
|
167
|
-
| Backend | claude
|
|
168
|
-
| Frontend | claude
|
|
169
|
-
| Codex | codex |
|
|
169
|
+
| Backend | claude | Código server-side: controllers, models, migrations y tests |
|
|
170
|
+
| Frontend | claude | Código UI: componentes, páginas y estilos |
|
|
171
|
+
| Codex | codex | **Primera opción para implementación**; docs, migraciones y tareas estructuradas con spec clara |
|
|
172
|
+
| OpenCode | opencode | **Segunda opción para implementación**; exploración, auditorías y reportes estructurados |
|
|
170
173
|
| Gemini | gemini | Auditorías, code review; suele sufrir con `node_modules` muy grandes |
|
|
171
|
-
| OpenCode | opencode | Exploración, auditorías y reportes estructurados — solo análisis, no implementa código |
|
|
172
174
|
| Cursor | cursor | Tareas mecánicas de alto volumen: find-and-replace y cleanup |
|
|
173
175
|
| Abacus | abacusai | Tareas pequeñas y enfocadas, con alcance bien acotado |
|
|
174
176
|
|
|
177
|
+
**Notas sobre OpenCode:**
|
|
178
|
+
- OpenCode puede realizar tanto análisis como implementación — las capacidades dependen del modelo que tengas configurado en tu instalación de OpenCode.
|
|
179
|
+
|
|
175
180
|
## Cómo asignar trabajo
|
|
176
181
|
|
|
177
182
|
1. **Cuando el usuario pide un cambio o nueva tarea** → **NUNCA analices directamente**
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
+
- **Si necesita análisis previo**: Crea una TASK en `QUEUE.md` asignada **EXCLUSIVAMENTE** a **OpenCode** para que explore el contexto
|
|
184
|
+
- **Espera el reporte**: OpenCode escribe hallazgos en `progress/PROGRESS-OpenCode.md` y notifica en `INBOX.md`
|
|
185
|
+
- **Luego implementa**: **LEE EL REPORTE DE OPENCODE** en `progress/PROGRESS-OpenCode.md` o `INBOX.md` y crea nueva TASK asignada a **Codex** (o Claude-Worker si Codex no está disponible)
|
|
186
|
+
- **OpenCode NO implementa** — sus TASKs son **SOLO de análisis**; la implementación **SIEMPRE** va a Codex o Claude-Worker
|
|
187
|
+
- **NUNCA, bajo ninguna circunstancia, analices el código del proyecto directamente tú mismo (Claude-Orquestador)** — **ESO ES TRABAJO EXCLUSIVO DE OPENCODE**. Si ya existe un reporte de OpenCode, **USA ESE CONTEXTO** para crear tareas de implementación.
|
|
183
188
|
|
|
184
189
|
2. Escribe TASKs en `QUEUE.md` (formato pipe; la TUI lo lee):
|
|
185
190
|
```
|
|
@@ -191,8 +196,9 @@ Revisa `orchestrator.config.json` → `agents`. Cada entrada tiene:
|
|
|
191
196
|
4. (Opcional) Para un brief muy detallado, crea `briefs/TASK-NNN-BRIEF.md`; también se inyecta.
|
|
192
197
|
5. Dependencias: agrega `> after:TASK-NNN` al final de la descripción para bloquear la tarea.
|
|
193
198
|
6. **La TUI inicia automáticamente** - NO necesitas presionar R ni S. La TUI detecta nuevas tasks y las lanza.
|
|
194
|
-
7. **
|
|
195
|
-
|
|
199
|
+
7. **Codex es la primera opción para implementación; OpenCode es la segunda opción.** Claude-Worker es el fallback automático de Codex/OpenCode y también toma trabajo cuando hay más tareas que agentes disponibles.
|
|
200
|
+
8. **REGLA CRÍTICA SOBRE ANÁLISIS:** Si OpenCode ya analizó algo y escribió su reporte en `INBOX.md` o `progress/PROGRESS-OpenCode.md`, **TÚ (Claude-Orquestador) NO DEBES VOLVER A ANALIZAR EL MISMO CÓDIGO**. Usa el reporte existente para crear tareas de implementación. Si necesitas más detalles, pide a OpenCode que haga un análisis adicional con una nueva TASK, pero **NUNCA lo hagas tú directamente**.
|
|
201
|
+
9. Distribución según cantidad de TASKs independientes:
|
|
196
202
|
- **1 tarea de análisis**: OpenCode.
|
|
197
203
|
- **1 tarea de implementación**: Codex. Nunca Claude-Worker en primera instancia.
|
|
198
204
|
- **2 tareas paralelas**: OpenCode (análisis) + Codex (implementación si la spec está clara).
|
|
@@ -210,8 +216,12 @@ Revisa `orchestrator.config.json` → `agents`. Cada entrada tiene:
|
|
|
210
216
|
6. Al terminar la sesión, escribe un `handoffs/HANDOFF-<fecha>.md` resumiendo qué se hizo y qué sigue.
|
|
211
217
|
7. **Por defecto solo usa Claude, Codex y OpenCode**. No uses Gemini, Cursor ni Abacus salvo instrucción explícita del usuario.
|
|
212
218
|
8. Si el usuario activa **Modo Ausencia**, revisa progreso cada 5 minutos y reasigna nuevas TASKs razonables dentro del alcance actual sin esperar confirmación intermedia.
|
|
213
|
-
9. La TUI gestiona el fallback automáticamente: Codex falla → Claude-Worker (Frontend/Backend según repo). Solo intervén manualmente si la tarea queda marcada `failed`.
|
|
219
|
+
9. La TUI gestiona el fallback automáticamente: Codex falla → OpenCode → Claude-Worker (Frontend/Backend según repo). Solo intervén manualmente si la tarea queda marcada `failed`.
|
|
214
220
|
10. Usa Engram para guardar decisiones, hallazgos, bugs y resúmenes de sesión; no dependas solo del contexto corto de la conversación.
|
|
221
|
+
11. **VERIFICACIÓN OBLIGATORIA:** Antes de crear cualquier TASK de implementación, **LEE Y CONFIRMA QUE:**
|
|
222
|
+
- Existe un reporte de OpenCode en `INBOX.md` o `progress/PROGRESS-OpenCode.md` para el análisis solicitado.
|
|
223
|
+
- La TASK de implementación se basa **EXCLUSIVAMENTE** en el reporte de OpenCode.
|
|
224
|
+
- **NO** has analizado el código tú mismo (Claude-Orquestador).
|
|
215
225
|
11. Para cambios grandes, usa `openspec/changes/<change-name>/` para proposal, spec, design, tasks y verify; no dejes todo solo en la conversación.
|
|
216
226
|
12. No asumas bypass total o autoaceptación de cambios en los agentes. Claude debe seguir siendo la autoridad final para validar el resultado esperado antes de que el usuario dé la aprobación definitiva.
|
|
217
227
|
|
package/templates/es/PROJECT.md
CHANGED
|
@@ -44,7 +44,7 @@ Esto evita ensuciar el repo del producto con:
|
|
|
44
44
|
La instalación recomendada para usuarios finales es:
|
|
45
45
|
|
|
46
46
|
```bash
|
|
47
|
-
|
|
47
|
+
pnpm add -g @liriraid/agentflow-ai
|
|
48
48
|
```
|
|
49
49
|
|
|
50
50
|
Después, por cada proyecto real:
|
|
@@ -61,7 +61,7 @@ La variante con `npx` sigue siendo válida:
|
|
|
61
61
|
npx @liriraid/agentflow-ai-ai init-workspace C:/code/mi-proyecto
|
|
62
62
|
```
|
|
63
63
|
|
|
64
|
-
No se recomienda `
|
|
64
|
+
No se recomienda `pnpm add @liriraid/agentflow-ai` dentro del repo del producto, porque eso lo vuelve una dependencia local del proyecto en vez de una herramienta global del entorno.
|
|
65
65
|
|
|
66
66
|
## Regla de permisos
|
|
67
67
|
|