@liriraid/agentflow-ai 1.0.28 → 1.0.29

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.
Files changed (32) hide show
  1. package/bin/agentflow.mjs +0 -1
  2. package/package.json +65 -64
  3. package/templates/en/CLAUDE.md +27 -75
  4. package/templates/en/ORCHESTRATOR.md +20 -18
  5. package/templates/es/CLAUDE.md +27 -120
  6. package/templates/es/ORCHESTRATOR.md +21 -22
  7. package/templates/en/.atl/skill-registry.md +0 -27
  8. package/templates/en/.claude/skills/orchestrator-apply/SKILL.md +0 -31
  9. package/templates/en/.claude/skills/orchestrator-archive/SKILL.md +0 -26
  10. package/templates/en/.claude/skills/orchestrator-design/SKILL.md +0 -27
  11. package/templates/en/.claude/skills/orchestrator-explore/SKILL.md +0 -32
  12. package/templates/en/.claude/skills/orchestrator-init/SKILL.md +0 -32
  13. package/templates/en/.claude/skills/orchestrator-memory/SKILL.md +0 -26
  14. package/templates/en/.claude/skills/orchestrator-openspec/SKILL.md +0 -35
  15. package/templates/en/.claude/skills/orchestrator-propose/SKILL.md +0 -26
  16. package/templates/en/.claude/skills/orchestrator-queue-planning/SKILL.md +0 -50
  17. package/templates/en/.claude/skills/orchestrator-spec/SKILL.md +0 -27
  18. package/templates/en/.claude/skills/orchestrator-tasks/SKILL.md +0 -27
  19. package/templates/en/.claude/skills/orchestrator-verify/SKILL.md +0 -27
  20. package/templates/es/.atl/skill-registry.md +0 -133
  21. package/templates/es/.claude/skills/orchestrator-apply/SKILL.md +0 -32
  22. package/templates/es/.claude/skills/orchestrator-archive/SKILL.md +0 -28
  23. package/templates/es/.claude/skills/orchestrator-design/SKILL.md +0 -32
  24. package/templates/es/.claude/skills/orchestrator-explore/SKILL.md +0 -34
  25. package/templates/es/.claude/skills/orchestrator-init/SKILL.md +0 -32
  26. package/templates/es/.claude/skills/orchestrator-memory/SKILL.md +0 -31
  27. package/templates/es/.claude/skills/orchestrator-openspec/SKILL.md +0 -55
  28. package/templates/es/.claude/skills/orchestrator-propose/SKILL.md +0 -33
  29. package/templates/es/.claude/skills/orchestrator-queue-planning/SKILL.md +0 -52
  30. package/templates/es/.claude/skills/orchestrator-spec/SKILL.md +0 -28
  31. package/templates/es/.claude/skills/orchestrator-tasks/SKILL.md +0 -32
  32. package/templates/es/.claude/skills/orchestrator-verify/SKILL.md +0 -31
package/bin/agentflow.mjs CHANGED
@@ -18,7 +18,6 @@ const TEMPLATE_PATHS = [
18
18
  'ENGRAM.md',
19
19
  'AGENT-CONFIG.md',
20
20
  'PROJECT.md',
21
- '.atl',
22
21
  'docs',
23
22
  'orchestrator.config.json',
24
23
  'QUEUE.md',
package/package.json CHANGED
@@ -1,64 +1,65 @@
1
- {
2
- "name": "@liriraid/agentflow-ai",
3
- "version": "1.0.28",
4
- "description": "Multi-agent workspace orchestrator with TUI. Coordinates AI coding agents over your real frontend and backend projects.",
5
- "author": "LiriRaid",
6
- "homepage": "https://github.com/LiriRaid/agentflow-ai#readme",
7
- "repository": {
8
- "type": "git",
9
- "url": "git+https://github.com/LiriRaid/agentflow-ai.git"
10
- },
11
- "bugs": {
12
- "url": "https://github.com/LiriRaid/agentflow-ai/issues"
13
- },
14
- "publishConfig": {
15
- "access": "public"
16
- },
17
- "main": "orchestrator.js",
18
- "bin": {
19
- "agentflow": "bin/agentflow.mjs"
20
- },
21
- "files": [
22
- "bin",
23
- "src",
24
- "templates",
25
- "orchestrator.js",
26
- "LICENSE",
27
- "README.md"
28
- ],
29
- "engines": {
30
- "node": ">=18.0.0"
31
- },
32
- "keywords": [
33
- "ai",
34
- "agents",
35
- "orchestrator",
36
- "agentflow-ai",
37
- "claude",
38
- "codex",
39
- "gemini",
40
- "cursor",
41
- "opencode",
42
- "abacus",
43
- "tui",
44
- "multi-agent",
45
- "coding-assistant",
46
- "openspec",
47
- "engram",
48
- "skills",
49
- "agent-config"
50
- ],
51
- "license": "MIT",
52
- "dependencies": {
53
- "blessed": "^0.1.81",
54
- "ink": "^5.2.1",
55
- "react": "^18.3.1"
56
- },
57
- "scripts": {
58
- "start": "node orchestrator.js",
59
- "start:paused": "node orchestrator.js --paused",
60
- "start:ink": "node src/ink/index.mjs",
61
- "start:ink:paused": "node src/ink/index.mjs --paused",
62
- "cli:help": "node bin/agentflow.mjs --help"
63
- }
64
- }
1
+ {
2
+ "name": "@liriraid/agentflow-ai",
3
+ "version": "1.0.29",
4
+ "description": "Multi-agent workspace orchestrator with TUI. Coordinates AI coding agents over your real frontend and backend projects.",
5
+ "author": "LiriRaid",
6
+ "homepage": "https://github.com/LiriRaid/agentflow-ai#readme",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/LiriRaid/agentflow-ai.git"
10
+ },
11
+ "bugs": {
12
+ "url": "https://github.com/LiriRaid/agentflow-ai/issues"
13
+ },
14
+ "publishConfig": {
15
+ "access": "public"
16
+ },
17
+ "main": "orchestrator.js",
18
+ "bin": {
19
+ "agentflow": "bin/agentflow.mjs"
20
+ },
21
+ "files": [
22
+ "bin",
23
+ "src",
24
+ "templates",
25
+ "orchestrator.js",
26
+ "LICENSE",
27
+ "README.md"
28
+ ],
29
+ "packageManager": "pnpm@11.6.0",
30
+ "engines": {
31
+ "node": ">=18.0.0"
32
+ },
33
+ "scripts": {
34
+ "start": "node orchestrator.js",
35
+ "start:paused": "node orchestrator.js --paused",
36
+ "start:ink": "node src/ink/index.mjs",
37
+ "start:ink:paused": "node src/ink/index.mjs --paused",
38
+ "cli:help": "node bin/agentflow.mjs --help"
39
+ },
40
+ "keywords": [
41
+ "ai",
42
+ "agents",
43
+ "orchestrator",
44
+ "agentflow-ai",
45
+ "claude",
46
+ "codex",
47
+ "gemini",
48
+ "cursor",
49
+ "opencode",
50
+ "abacus",
51
+ "tui",
52
+ "multi-agent",
53
+ "coding-assistant",
54
+ "openspec",
55
+ "engram",
56
+ "skills",
57
+ "agent-config"
58
+ ],
59
+ "license": "MIT",
60
+ "dependencies": {
61
+ "blessed": "^0.1.81",
62
+ "ink": "^5.2.1",
63
+ "react": "^18.3.1"
64
+ }
65
+ }
@@ -1,91 +1,43 @@
1
- # Claude Project Routing
1
+ # Orchestrator Workspace
2
2
 
3
- This file defines how Claude Code should behave inside this orchestrator workspace.
3
+ This workspace manages task delegation to AI worker agents. You are the **Claude-Orchestrator**: you plan, delegate, and review you never implement project code directly.
4
4
 
5
- ## Resolution Priority
5
+ Your general behavior follows your global `~/.claude/` configuration. This file only adds orchestrator-specific rules.
6
6
 
7
- 1. Prefer local project skills in `./.claude/skills/`.
8
- 2. Use `.atl/skill-registry.md` as the local skill catalog.
9
- 3. Use `ENGRAM.md` for persistent memory conventions.
10
- 4. Do not rely on `~/.claude/skills/` for the main orchestrator flow.
11
- 5. If a global skill has the same name as a local skill, the local skill wins.
12
- 6. Use `openspec/` for large or multi-phase changes before broad implementation.
7
+ ## Core Rules
13
8
 
14
- ## Intent Routing
9
+ - Never implement project code yourself — create TASKs in `QUEUE.md` and let the TUI dispatch them to worker agents.
10
+ - Read `ORCHESTRATOR.md` on startup for full agent guide, routing, and session rules.
15
11
 
16
- ### Orchestrator Startup
12
+ ## Task Distribution (critical)
17
13
 
18
- If the user says:
14
+ The TUI runs **one task per agent at a time**. To run tasks in parallel, assign them to **different agents**.
19
15
 
20
- - `read ORCHESTRATOR.md and start`
21
- - `lee ORCHESTRATOR.md y arranca`
22
- - `start orchestrator`
23
- - `initialize the orchestrator`
16
+ **Rule: maximum 1 task per agent per batch.** Never assign 2 tasks to the same agent at the same time — the second one will queue and only start after the first finishes.
24
17
 
25
- use:
18
+ | Agent | Use for |
19
+ |-------|---------|
20
+ | `Codex` | Primary implementation |
21
+ | `OpenCode` | Secondary implementation or analysis (once free after an analysis task, it takes implementation too) |
22
+ | `Frontend` | Broad frontend work or overflow |
23
+ | `Backend` | Backend API or overflow |
26
24
 
27
- - `orchestrator-init`
25
+ Example — 3 tasks ready at the same time:
26
+ - TASK-001 → **Codex**
27
+ - TASK-002 → **OpenCode**
28
+ - TASK-003 → **Frontend**
28
29
 
29
- Startup means reading context and becoming ready. It does not mean implementing the user's first task directly.
30
+ Check `STATUS.md` to see which agents are currently free before assigning.
30
31
 
31
- ### Exploration
32
+ ## Dependency Rule (`after:`)
32
33
 
33
- If the user asks to explore, analyze, investigate, or review before implementation, use:
34
+ Only add `> after:TASK-NNN` when the **output of that task is required as input** for the next one (genuine data dependency). Do not add `after:` for tasks that are merely related, belong to the same area, or follow a natural logical order.
34
35
 
35
- - `orchestrator-explore`
36
-
37
- ### Proposal, Spec, Design, Tasks
38
-
39
- If the user asks for proposal, spec, design, tasks, or a documented change, use the matching skill:
40
-
41
- - `orchestrator-propose`
42
- - `orchestrator-spec`
43
- - `orchestrator-design`
44
- - `orchestrator-tasks`
45
- - `orchestrator-openspec`
46
-
47
- ### Queue Planning and Delegation
48
-
49
- If the user asks to create tasks, split work, delegate, or plan the queue, use:
50
-
51
- - `orchestrator-queue-planning`
52
-
53
- The default output should be TASK entries in `QUEUE.md`, not direct implementation by Claude-Orchestrator.
54
-
55
- ### Apply, Verify, Archive
56
-
57
- If the user asks to implement, apply tasks, verify implementation, or archive a change, use:
58
-
59
- - `orchestrator-apply`
60
- - `orchestrator-verify`
61
- - `orchestrator-archive`
62
-
63
- Implementation still goes through worker agents and `QUEUE.md` unless the user explicitly overrides the orchestrator rule.
64
-
65
- ### Memory and Continuity
66
-
67
- If the user asks to remember, summarize, restore previous context, or save decisions, use:
68
-
69
- - `orchestrator-memory`
70
-
71
- ## Operating Rules
72
-
73
- - If intent is ambiguous between exploration and planning, explore first.
74
- - If the user starts the orchestrator, run `orchestrator-init` before anything else.
75
- - If work is large or multi-agent, use OpenSpec before filling `QUEUE.md`.
76
- - If context is clear enough, convert work into concrete TASKs.
77
- - Keep the orchestrator behavior aligned with `ORCHESTRATOR.md`.
78
- - Keep memory behavior aligned with `ENGRAM.md`.
79
- - Respect the default agent restrictions.
80
- - Do not let Claude-Orchestrator implement project work directly.
36
+ **Independent tasks must go out in parallel, each to a different available agent.**
81
37
 
82
38
  ## Key Files
83
39
 
84
- - `ORCHESTRATOR.md`: core role and execution rules
85
- - `QUEUE.md`: active execution queue
86
- - `orchestrator.config.json`: agents, repos, and models
87
- - `ENGRAM.md`: durable memory rules
88
- - `.atl/skill-registry.md`: local skill catalog
89
- - `.claude/skills/*/SKILL.md`: local skills
90
- - `openspec/`: durable artifacts for large changes
91
- - `docs/usage.md`: recommended workflow
40
+ - `ORCHESTRATOR.md` startup flow, agent roles, hard rules
41
+ - `QUEUE.md` format: `TASK-NNN | title | Agent | P1 | repo | description`
42
+ - `orchestrator.config.json` agent names and repo paths
43
+ - `ENGRAM.md` memory rules
@@ -36,14 +36,16 @@ When the user requests work after startup:
36
36
 
37
37
  1. Do not implement the work in the interactive Claude session.
38
38
  2. Convert the request into one or more TASKs in `QUEUE.md`.
39
- 3. Assign by role:
40
- - `OpenCode` **analysis only** (exploration, audits, reports — does NOT modify code)
41
- - `Codex` → **primary implementation** (code changes, tests, docs)
42
- 4. Assign a Claude-Worker (`Frontend` or `Backend`) **only** when:
43
- - **Multiple independent tasks exist** AND Codex is already occupied, OR
44
- - A task has **permanently failed** in Codex — then Claude-Worker takes it as last resort.
39
+ 3. Each agent runs **one task at a time**. For parallel execution, assign tasks to different agents.
40
+ 4. Default assignment order:
41
+ - `Codex` → primary implementation (code changes, tests, docs)
42
+ - `OpenCode` → secondary implementation or analysis (exploration, audits, reports)
43
+ - `Frontend` broad frontend work or overflow when Codex and OpenCode are both assigned
44
+ - `Backend` backend API work or overflow
45
45
 
46
- The TUI handles automatic fallback: Codex fails Claude-Worker directly. You only need to manually assign Claude-Workers for load balancing (case a) or when the TUI marks a task as permanently `failed` (case b).
46
+ **When there are multiple independent tasks, distribute them across agents from the start.** Do not assign all tasks to Codex they will queue up and run one by one.
47
+
48
+ The TUI handles automatic fallback on failure: Codex fails → Claude-Worker directly. You do not need to manually reassign on failure.
47
49
 
48
50
  The `repo` field determines the working directory: `frontend` for UI/client work, `backend` for API/server work. Codex and OpenCode can work in either repo depending on the task.
49
51
 
@@ -179,11 +181,10 @@ Default agent summary:
179
181
  ## How To Assign Work
180
182
 
181
183
  1. **When the user asks for a change or new task** → **NEVER analyze directly yourself**
182
- - **If context already exists** (OpenCode reports from this session, completed similar tasks, user-specified exact changes): **skip OpenCode** and create implementation TASKs directly assigned to **Codex** or **Claude-Worker**. Assign all independent tasks in parallel.
183
- - **If prior analysis is needed** (new area, unknown structure, no prior report): Create ONE TASK in `QUEUE.md` assigned to **OpenCode** for that area. Assign all other independent tasks to Codex in parallel — do not make them wait for OpenCode.
184
+ - **If context already exists** (OpenCode reports from this session, completed similar tasks, user-specified exact changes): **skip OpenCode** and create implementation TASKs distributed across available agents in parallel.
185
+ - **If prior analysis is needed** (new area, unknown structure, no prior report): Create ONE TASK assigned to **OpenCode** for that area. Assign all other independent tasks to other agents in parallel — do not make them wait for OpenCode.
184
186
  - **Wait for the OpenCode report only for the tasks that depend on it**: OpenCode writes findings to `progress/PROGRESS-OpenCode.md` and notifies in `INBOX.md`
185
- - **Then implement the dependent task**: **READ OPENCODE'S REPORT** and create the implementation TASK assigned to **Codex**
186
- - **OpenCode DOES NOT implement** — its TASKs are **ONLY for analysis**; implementation **ALWAYS** goes to Codex or Claude-Worker
187
+ - **Then implement**: **READ OPENCODE'S REPORT** and create implementation TASKs distributed across all available agents — Codex, OpenCode (now free after analysis), Frontend, Backend.
187
188
  - **NEVER analyze the project code yourself (Claude-Orchestrator)** — use OpenCode for that. If a report already exists, **USE THAT CONTEXT** directly.
188
189
 
189
190
  2. Write TASKs in `QUEUE.md` with this format:
@@ -196,19 +197,20 @@ Rules:
196
197
 
197
198
  1. `Agent` must match a key in `orchestrator.config.json.agents`.
198
199
  2. `repo` must match a key in `orchestrator.config.json.repos`.
199
- 3. Add `> after:TASK-NNN` at the end of the description for dependencies.
200
+ 3. Add `> after:TASK-NNN` at the end of the description **only when the output of that task is genuinely required as input for the next one** (real data dependency). Do not add `after:` for tasks that are merely related or follow a natural order — independent tasks must run in parallel.
200
201
  4. Use `TASKS.md` under `### TASK-NNN` for longer task specs when needed.
201
202
  5. Use `briefs/TASK-NNN-BRIEF.md` for very detailed briefs when needed.
202
203
  6. **The TUI starts automatically** - you don't need to press R or S. The TUI detects new tasks and launches them.
203
204
 
204
205
  Routing preferences:
205
206
 
206
- 1. Use OpenCode for exploration, audits, and **implementation**.
207
- 2. Use Codex as the **primary implementation agent** when the spec is clear.
208
- 3. Use OpenCode as the **secondary implementation agent**.
209
- 4. Keep Claude-Worker available as automatic fallback for Codex/OpenCode and for overflow tasks.
210
- 5. For frontend, use Codex for narrow tasks and Frontend/Claude-Worker for broad UI work.
211
- 6. Do not assign all tasks to Claude just because Claude is the orchestrator.
207
+ 1. **Maximum 1 task per agent per batch.** When creating multiple tasks at once, assign each to a different available agent. Never assign 2 tasks to the same agent in the same batch — the second will queue and wait.
208
+ - Example with 3 tasks: TASK-001 Codex, TASK-002 OpenCode, TASK-003 → Frontend
209
+ - Check `STATUS.md` to see which agents are free before assigning.
210
+ 2. Use Codex as the **primary implementation agent**.
211
+ 3. Use OpenCode as the **secondary implementation agent** (also handles analysis).
212
+ 4. Use Frontend/Backend for overflow or broad UI/API work.
213
+ 5. Do not assign all tasks to Codex just because it is the primary — spread the load.
212
214
 
213
215
  ## Hard Rules
214
216
 
@@ -1,136 +1,43 @@
1
- # Claude Project Routing
1
+ # Workspace del Orquestador
2
2
 
3
- Este archivo define cómo **Claude Code** debe comportarse dentro de este repo y qué skills locales debe priorizar.
3
+ Este workspace gestiona la delegación de tareas a agentes worker. Eres el **Claude-Orquestador**: planificas, delegas y revisas nunca implementas código del proyecto directamente.
4
4
 
5
- ## Prioridad de resolución
5
+ Tu comportamiento general sigue tu configuración global en `~/.claude/`. Este archivo solo agrega reglas específicas del orquestador.
6
6
 
7
- 1. Prioriza siempre las skills locales de este repo en `./.claude/skills/`
8
- 2. Usa `.atl/skill-registry.md` como catálogo de skills del proyecto
9
- 3. Usa `ENGRAM.md` como convención local para memoria persistente
10
- 4. No dependas de `~/.claude/skills/` para el flujo principal del orquestador
11
- 5. Si existe una skill global con el mismo nombre, la **local** del proyecto gana
12
- 6. Si existe `openspec/`, úsalo como capa persistente para cambios grandes antes de delegar implementación amplia
7
+ ## Reglas principales
13
8
 
14
- ## Routing automático de intención -> skill
9
+ - Nunca implementes código del proyecto tú mismo — crea TASKs en `QUEUE.md` y deja que la TUI las despache a los agentes worker.
10
+ - Lee `ORCHESTRATOR.md` al inicio para la guía completa de agentes, routing y reglas de sesión.
15
11
 
16
- ### Inicio del orquestador
12
+ ## Distribución de tareas (crítico)
17
13
 
18
- Si el usuario dice algo como:
14
+ La TUI ejecuta **una tarea por agente a la vez**. Para ejecutar tareas en paralelo, asígnalas a **agentes distintos**.
19
15
 
20
- - `lee ORCHESTRATOR.md y arranca`
21
- - `arranca el orquestador`
22
- - `inicia el orquestador`
23
- - `start orchestrator`
16
+ **Regla: máximo 1 task por agente por batch.** Nunca asignes 2 tasks al mismo agente al mismo tiempo — la segunda quedará en cola y solo arrancará cuando termine la primera.
24
17
 
25
- usa la skill:
18
+ | Agente | Usar para |
19
+ |--------|-----------|
20
+ | `Codex` | Implementación primaria |
21
+ | `OpenCode` | Implementación secundaria o análisis (una vez libre tras una task de análisis, también toma implementación) |
22
+ | `Frontend` | Trabajo frontend amplio o desbordamiento |
23
+ | `Backend` | API backend o desbordamiento |
26
24
 
27
- - `orchestrator-init`
25
+ Ejemplo — 3 tasks listas al mismo tiempo:
26
+ - TASK-001 → **Codex**
27
+ - TASK-002 → **OpenCode**
28
+ - TASK-003 → **Frontend**
28
29
 
29
- ### Exploración / análisis / investigación
30
+ Revisa `STATUS.md` para saber qué agentes están libres antes de asignar.
30
31
 
31
- Si el usuario dice algo como:
32
+ ## Regla de dependencias (`after:`)
32
33
 
33
- - `explora este proyecto`
34
- - `analiza estos archivos`
35
- - `investiga este flujo`
36
- - `revisa esto antes de implementar`
34
+ Solo agrega `> after:TASK-NNN` cuando la **salida de esa tarea sea requerida como entrada** para la siguiente (dependencia de datos real). No agregues `after:` para tareas que simplemente son relacionadas, están en la misma área, o siguen un orden lógico natural.
37
35
 
38
- usa la skill:
39
-
40
- - `orchestrator-explore`
41
-
42
- ### Proposal / spec / design / tasks
43
-
44
- Si el usuario dice algo como:
45
-
46
- - `haz proposal`
47
- - `haz spec`
48
- - `haz design`
49
- - `haz tasks`
50
- - `documentemos este cambio`
51
- - `prepara el cambio antes de implementarlo`
52
-
53
- usa la skill:
54
-
55
- - `orchestrator-propose`
56
- - `orchestrator-spec`
57
- - `orchestrator-design`
58
- - `orchestrator-tasks`
59
-
60
- ### Planificación de cola / delegación
61
-
62
- Si el usuario dice algo como:
63
-
64
- - `crea tareas`
65
- - `divide el trabajo`
66
- - `llena la queue`
67
- - `deleguemos esto`
68
- - `planifica las tasks`
69
-
70
- usa la skill:
71
-
72
- - `orchestrator-queue-planning`
73
-
74
- ### OpenSpec / cambios grandes
75
-
76
- Si el usuario dice algo como:
77
-
78
- - `crea un change`
79
- - `abre openspec`
80
- - `documentemos este cambio antes de implementarlo`
81
-
82
- usa la skill:
83
-
84
- - `orchestrator-openspec`
85
-
86
- ### Apply / verify / archive
87
-
88
- Si el usuario dice algo como:
89
-
90
- - `implementa este cambio`
91
- - `aplica las tareas`
92
- - `verifica la implementación`
93
- - `archiva el cambio`
94
-
95
- usa la skill:
96
-
97
- - `orchestrator-apply`
98
- - `orchestrator-verify`
99
- - `orchestrator-archive`
100
-
101
- ### Memoria / continuidad / recordatorios
102
-
103
- Si el usuario dice algo como:
104
-
105
- - `recuerda qué hicimos`
106
- - `cómo quedó esto`
107
- - `guarda este contexto`
108
- - `haz un resumen de sesión`
109
- - `trae el contexto anterior`
110
-
111
- usa la skill:
112
-
113
- - `orchestrator-memory`
114
-
115
- ## Reglas operativas
116
-
117
- - Si hay ambigüedad entre explorar y planificar, explora primero.
118
- - Si el usuario pide iniciar sesión del orquestador, arranca con `orchestrator-init` antes de cualquier otra cosa.
119
- - Si el trabajo es grande, multifase o involucra varios agentes, pasa por `orchestrator-propose` / `orchestrator-spec` / `orchestrator-design` / `orchestrator-tasks` antes de llenar `QUEUE.md`.
120
- - Si una exploración ya produjo suficiente contexto, el siguiente paso natural es `orchestrator-propose` o `orchestrator-tasks`, según el nivel de claridad.
121
- - Si el usuario pide continuidad o recordar trabajo previo, usa `orchestrator-memory`.
122
- - Si el usuario pide proposal/spec/design/tasks de un cambio, usa las skills `orchestrator-*` correspondientes.
123
- - Mantén la lógica del orquestador alineada con `ORCHESTRATOR.md`.
124
- - Mantén la memoria alineada con `ENGRAM.md`.
125
- - Respeta las restricciones de agentes por defecto del proyecto.
36
+ **Las tareas independientes deben salir en paralelo, cada una a un agente disponible distinto.**
126
37
 
127
38
  ## Archivos clave
128
39
 
129
- - `ORCHESTRATOR.md` — rol y reglas del orquestador
130
- - `ENGRAM.md` — convención local de memoria persistente
131
- - `.atl/skill-registry.md` — catálogo local de skills
132
- - `.claude/skills/*/SKILL.md` — skills locales del proyecto
133
- - `docs/components.md` — mapa de componentes implementados
134
- - `docs/usage.md` — flujo recomendado de uso
135
- - `openspec/` — artefactos persistentes para cambios grandes
136
- - `QUEUE.md` — cola activa del motor
40
+ - `ORCHESTRATOR.md` — flujo de inicio, roles de agentes, reglas duras
41
+ - `QUEUE.md` — formato: `TASK-NNN | título | Agente | P1 | repo | descripción`
42
+ - `orchestrator.config.json` — nombres de agentes y rutas de repos
43
+ - `ENGRAM.md` — reglas de memoria
@@ -18,15 +18,18 @@ Hay dos roles distintos que no deben confundirse:
18
18
 
19
19
  **Prioridad de asignación de trabajo:**
20
20
 
21
+ Cada agente ejecuta **una tarea a la vez**. Para ejecutar tareas en paralelo, asígnalas a **agentes distintos**.
22
+
21
23
  ```
22
- OpenCode análisis y exploración (NO implementa código)
23
- Codex → implementación principal (primera opción para ejecución)
24
- Claude-Worker fallback automático cuando Codex falla, o cuando hay más tareas que agentes disponibles
25
- a) Múltiples TASKs independientes Y Codex ocupado → Claude-Worker toma el excedente
26
- b) Codex falló persistentemente → la TUI reasigna automáticamente a Claude-Worker
24
+ Codex implementación principal (primera opción)
25
+ OpenCode → implementación secundaria o análisis
26
+ Frontend trabajo frontend amplio o desbordamiento
27
+ Backend → trabajo backend o desbordamiento
27
28
  ```
28
29
 
29
- El Orquestador NO asigna implementación a OpenCode. OpenCode solo analiza y reporta hallazgos. La TUI gestiona el fallback automático al fallar Codex.
30
+ **Cuando hay múltiples tareas independientes, distribúyelas entre agentes desde el principio.** No asignes todas las tareas a Codex quedarán en cola y se ejecutarán de una en una.
31
+
32
+ La TUI gestiona el fallback automático al fallar un agente (Codex falla → Claude-Worker). No es necesario reasignar manualmente salvo que la tarea quede marcada como `failed`.
30
33
 
31
34
  ## El workspace NO es el proyecto real
32
35
 
@@ -182,11 +185,10 @@ Revisa `orchestrator.config.json` → `agents`. Cada entrada tiene:
182
185
  ## Cómo asignar trabajo
183
186
 
184
187
  1. **Cuando el usuario pide un cambio o nueva tarea** → **NUNCA analices directamente**
185
- - **Si ya existe contexto suficiente** (reportes de OpenCode de esta sesión, tareas similares ya completadas, cambios que el usuario especificó exactamente): **omite OpenCode** y crea TASKs de implementación directamente asignadas a **Codex** o **Claude-Worker**. Asigna todas las tareas independientes en paralelo.
186
- - **Si se necesita análisis previo** (área nueva, estructura desconocida, sin reporte previo): Crea UNA TASK asignada a **OpenCode** para esa área. Asigna todas las demás tareas independientes a Codex en paralelo — no las hagas esperar a OpenCode.
188
+ - **Si ya existe contexto suficiente** (reportes de OpenCode de esta sesión, tareas similares ya completadas, cambios que el usuario especificó exactamente): **omite OpenCode** y crea TASKs de implementación en paralelo, distribuyéndolas entre los agentes disponibles.
189
+ - **Si se necesita análisis previo** (área nueva, estructura desconocida, sin reporte previo): Crea UNA TASK asignada a **OpenCode** para esa área. Las demás tareas independientes van a otros agentes en paralelo — no esperan a OpenCode.
187
190
  - **Espera el reporte de OpenCode solo para las tareas que dependen de él**: OpenCode escribe hallazgos en `progress/PROGRESS-OpenCode.md` y notifica en `INBOX.md`
188
- - **Luego implementa la tarea dependiente**: **LEE EL REPORTE DE OPENCODE** y crea la TASK de implementación asignada a **Codex**
189
- - **OpenCode NO implementa** — sus TASKs son **SOLO de análisis**; la implementación **SIEMPRE** va a Codex o Claude-Worker
191
+ - **Luego implementa la tarea dependiente**: **LEE EL REPORTE DE OPENCODE** y crea las TASKs de implementación distribuyéndolas entre todos los agentes disponibles (Codex, OpenCode si ya terminó el análisis, Frontend, Backend).
190
192
  - **NUNCA analices el código del proyecto tú mismo (Claude-Orquestador)** — usa OpenCode para eso. Si ya existe un reporte, **USA ESE CONTEXTO** directamente.
191
193
 
192
194
  2. Escribe TASKs en `QUEUE.md` (formato pipe; la TUI lo lee):
@@ -197,20 +199,17 @@ Revisa `orchestrator.config.json` → `agents`. Cada entrada tiene:
197
199
  Valores válidos de `repo`: exactamente las keys de `orchestrator.config.json.repos`.
198
200
  3. (Opcional) También escribe una spec larga en `TASKS.md` bajo un heading `### TASK-NNN`; se inyecta al brief.
199
201
  4. (Opcional) Para un brief muy detallado, crea `briefs/TASK-NNN-BRIEF.md`; también se inyecta.
200
- 5. Dependencias: agrega `> after:TASK-NNN` al final de la descripción para bloquear la tarea.
202
+ 5. Dependencias: agrega `> after:TASK-NNN` al final de la descripción **solo cuando la salida de esa tarea sea requerida como entrada para la siguiente** (dependencia de datos real). No agregues `after:` para tareas que simplemente son relacionadas o siguen un orden lógico — las tareas independientes deben ejecutarse en paralelo.
201
203
  6. **La TUI inicia automáticamente** - NO necesitas presionar R ni S. La TUI detecta nuevas tasks y las lanza.
202
- 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.
203
- 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**.
204
+ 7. **Regla de distribución de agentes máximo 1 task por agente por batch:** Cada agente ejecuta una tarea a la vez. Cuando crees múltiples tasks en un mismo momento, asigna **una task distinta a cada agente disponible**. Nunca pongas 2 tasks al mismo agente en el mismo batch — la segunda quedará en cola esperando que termine la primera.
205
+ - Ejemplo con 3 tasks: TASK-001 Codex, TASK-002 OpenCode, TASK-003 Frontend
206
+ - Revisa `STATUS.md` para saber qué agentes están libres antes de asignar.
207
+ 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.
204
208
  9. **Regla de ejecución en paralelo — nunca serialices lo que puede correr en paralelo:**
205
- - **Si el contexto ya existe**: asigna todas las tareas independientes en paralelo a Codex y Claude-Worker a la vez. No las pongas en cola una por una.
206
- - **Si falta contexto para un área**: manda UNA TASK a OpenCode para esa área. Las demás tareas independientes van a Codex en paralelo — no esperan a OpenCode.
207
- - **Distribución por volumen:**
208
- - 1 tarea de análisis OpenCode
209
- - 1 tarea de implementación → Codex
210
- - 2 tareas paralelas → OpenCode (análisis) + Codex (implementación con spec clara)
211
- - 3+ tareas independientes con contexto claro → Codex + Frontend/Backend en paralelo
212
- - **¿Cuándo el contexto es suficiente?** OpenCode ya reportó sobre esa área en esta sesión / el usuario especificó exactamente qué cambiar / tareas similares ya se completaron esta sesión.
213
- 10. Si hay más TASKs que agentes disponibles, deja el resto en cola con dependencias claras o prioridad menor; no uses Gemini, Cursor ni Abacus salvo permiso explícito.
209
+ - **Si el contexto ya existe**: asigna todas las tareas independientes en paralelo, distribuyéndolas entre agentes disponibles.
210
+ - **Si falta contexto para un área**: manda UNA TASK a OpenCode para esa área. Las demás tareas independientes van a Codex u otros agentes en paralelo — no esperan a OpenCode.
211
+ - **¿Cuándo el contexto es suficiente?** OpenCode ya reportó sobre esa área / el usuario especificó exactamente qué cambiar / tareas similares ya se completaron esta sesión.
212
+ 10. Si hay más TASKs que agentes disponibles, asigna primero a los agentes libres y deja el resto en cola con prioridad menor; no uses Gemini, Cursor ni Abacus salvo permiso explícito.
214
213
  9. El campo `repo` determina en qué directorio trabaja el agente. Usa siempre el valor correcto: `frontend` para trabajo de UI/cliente, `backend` para trabajo de API/servidor. Codex y OpenCode pueden trabajar en ambos repos según lo que indique la task.
215
214
 
216
215
  ## Reglas
@@ -1,27 +0,0 @@
1
- # Skill Registry
2
-
3
- **Project-local only.** This registry prioritizes skills inside `./.claude/skills/` so the workflow does not depend on global installations.
4
-
5
- ## User Skills
6
-
7
- | Trigger | Skill | Path |
8
- |---------|-------|------|
9
- | manual | orchestrator-apply | `.claude/skills/orchestrator-apply/SKILL.md` |
10
- | manual | orchestrator-archive | `.claude/skills/orchestrator-archive/SKILL.md` |
11
- | manual | orchestrator-design | `.claude/skills/orchestrator-design/SKILL.md` |
12
- | manual | orchestrator-explore | `.claude/skills/orchestrator-explore/SKILL.md` |
13
- | manual | orchestrator-init | `.claude/skills/orchestrator-init/SKILL.md` |
14
- | manual | orchestrator-memory | `.claude/skills/orchestrator-memory/SKILL.md` |
15
- | manual | orchestrator-openspec | `.claude/skills/orchestrator-openspec/SKILL.md` |
16
- | manual | orchestrator-propose | `.claude/skills/orchestrator-propose/SKILL.md` |
17
- | manual | orchestrator-queue-planning | `.claude/skills/orchestrator-queue-planning/SKILL.md` |
18
- | manual | orchestrator-spec | `.claude/skills/orchestrator-spec/SKILL.md` |
19
- | manual | orchestrator-tasks | `.claude/skills/orchestrator-tasks/SKILL.md` |
20
- | manual | orchestrator-verify | `.claude/skills/orchestrator-verify/SKILL.md` |
21
-
22
- ## Resolution Policy
23
-
24
- - Always prefer local skills from `./.claude/skills/`.
25
- - Do not depend on global skills for the main orchestrator workflow.
26
- - If a global skill has the same name, the project-local skill wins.
27
- - Regenerate this file after creating, deleting, or changing local skills.
@@ -1,31 +0,0 @@
1
- ---
2
- name: orchestrator-apply
3
- description: >
4
- Guide the implementation phase by translating ready work into queued worker tasks.
5
- license: MIT
6
- metadata:
7
- owner: agentflow
8
- version: "1.0"
9
- ---
10
-
11
- # Skill: orchestrator-apply
12
-
13
- ## Purpose
14
-
15
- Run implementation through the orchestrator, not through the interactive Claude session.
16
-
17
- ## Critical Rules
18
-
19
- - Read proposal, spec, design, tasks, and queue state when present.
20
- - Respect `QUEUE.md` as the execution boundary.
21
- - Do not implement code directly as Claude-Orchestrator.
22
- - Add or update TASKs so workers can implement.
23
- - Use Codex and OpenCode first when they fit the task.
24
- - Use Claude-Worker for fallback, extra capacity, broad implementation, or explicit user request.
25
- - Keep Claude as final reviewer.
26
- - Do not commit or push.
27
- - If implementation is partial, leave clear state for verify or the next apply pass.
28
-
29
- ## Expected Result
30
-
31
- Implementation work is queued for workers and remains reviewable by Claude-Orchestrator.