@liriraid/agentflow-ai 1.0.10 → 1.0.12

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/orchestrator.js CHANGED
@@ -701,15 +701,15 @@ function parseQueue() {
701
701
  let section = "";
702
702
  for (const rawLine of content.split("\n")) {
703
703
  const line = rawLine.trim();
704
- if (line.startsWith("## Pending")) {
704
+ if (line.startsWith("## Pending") || line.startsWith("## Pendientes")) {
705
705
  section = "pending";
706
706
  continue;
707
707
  }
708
- if (line.startsWith("## In Progress")) {
708
+ if (line.startsWith("## In Progress") || line.startsWith("## En progreso")) {
709
709
  section = "inprogress";
710
710
  continue;
711
711
  }
712
- if (line.startsWith("## Completed")) {
712
+ if (line.startsWith("## Completed") || line.startsWith("## Completadas")) {
713
713
  section = "completed";
714
714
  continue;
715
715
  }
@@ -743,15 +743,15 @@ function parseCompletedFromFile() {
743
743
  let section = "";
744
744
  for (const rawLine of content.split("\n")) {
745
745
  const line = rawLine.trim();
746
- if (line.startsWith("## Pending")) {
746
+ if (line.startsWith("## Pending") || line.startsWith("## Pendientes")) {
747
747
  section = "pending";
748
748
  continue;
749
749
  }
750
- if (line.startsWith("## In Progress")) {
750
+ if (line.startsWith("## In Progress") || line.startsWith("## En progreso")) {
751
751
  section = "inprogress";
752
752
  continue;
753
753
  }
754
- if (line.startsWith("## Completed")) {
754
+ if (line.startsWith("## Completed") || line.startsWith("## Completadas")) {
755
755
  section = "completed";
756
756
  continue;
757
757
  }
@@ -1406,7 +1406,7 @@ function updateQueueFile(completedTask) {
1406
1406
  `^${completedTask.id.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}(\\s|$|\\|)`,
1407
1407
  );
1408
1408
  const filtered = lines.filter((l) => !idMatcher.test(l.trim()));
1409
- const idx = filtered.findIndex((l) => l.trim().startsWith("## Completed"));
1409
+ const idx = filtered.findIndex((l) => l.trim().startsWith("## Completed") || l.trim().startsWith("## Completadas"));
1410
1410
  if (idx >= 0)
1411
1411
  filtered.splice(
1412
1412
  idx + 1,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@liriraid/agentflow-ai",
3
- "version": "1.0.10",
3
+ "version": "1.0.12",
4
4
  "description": "Multi-agent workspace orchestrator with TUI. Coordinates AI coding agents over your real frontend and backend projects.",
5
5
  "author": "LiriRaid",
6
6
  "homepage": "https://github.com/LiriRaid/agentflow-ai#readme",
package/src/ink/app.mjs CHANGED
@@ -89,18 +89,18 @@ const AgentCard = ({agent, text}) => {
89
89
  borderStyle: 'round',
90
90
  borderColor: statusColor,
91
91
  width: '24%',
92
- minHeight: 6,
92
+ minHeight: 9,
93
93
  paddingX: 1,
94
94
  flexDirection: 'column'
95
95
  },
96
- h(Text, {bold: true}, agent.name),
96
+ h(Text, {bold: true, wrap: 'wrap'}, agent.name),
97
97
  h(Text, {color: statusColor}, agent.status === 'busy' ? text.busy : text.idle),
98
98
  h(
99
99
  Text,
100
- {color: COLORS.muted},
101
- agent.task ? truncate(agent.task, 26) : text.noTask
100
+ {color: COLORS.muted, wrap: 'wrap'},
101
+ agent.task || text.noTask
102
102
  ),
103
- h(Text, {color: COLORS.muted}, agent.detail || text.ready)
103
+ h(Text, {color: COLORS.muted, wrap: 'wrap'}, agent.detail || text.ready)
104
104
  );
105
105
  };
106
106
 
@@ -229,9 +229,7 @@ export function App({snapshot, paused = false, onAction}) {
229
229
  key: agent.name,
230
230
  agent: {
231
231
  ...agent,
232
- name: truncate(agent.name, agentWidth),
233
- task: agent.task ? truncate(agent.task, agentWidth) : null,
234
- detail: truncate(agent.detail || text.ready, agentWidth)
232
+ detail: agent.detail || text.ready
235
233
  }
236
234
  })
237
235
  )
@@ -45,15 +45,28 @@ When the user requests work after startup:
45
45
 
46
46
  For frontend work, prefer `Codex` for narrow, well-scoped tasks and `OpenCode` for exploration/audits. Use `Frontend`/Claude-Worker for broader UI implementation, fallback, or when the other allowed agents are already occupied.
47
47
 
48
+ ## This Workspace Is NOT the Real Project
49
+
50
+ This directory (`orchestrator-<name>`) exists **only** for work management:
51
+ - `QUEUE.md` — task queue for agents
52
+ - `TASKS.md` — detailed task specs
53
+ - `handoffs/` — session continuity
54
+ - `progress/` — current state per agent
55
+ - `logs/` — agent output
56
+
57
+ The real project code lives at the paths defined in `orchestrator.config.json → repos`.
58
+ When you need to understand the project in order to plan tasks, **read files from those paths**.
59
+ **Never modify real project files directly** — that is exclusively the workers' job.
60
+
48
61
  ## Startup Checklist
49
62
 
50
63
  When the user says something like `Read ORCHESTRATOR.md and start`, do this:
51
64
 
52
65
  1. Read this file completely.
53
- 2. Read `<projectName>-plan.md`, `PLAN.md`, or `plan.md` if present.
54
- 3. Read the newest `handoffs/HANDOFF-*.md` if the folder exists.
55
- 4. Read `QUEUE.md` to understand pending, active, and completed work.
56
- 5. Read `orchestrator.config.json` to know available agents and repos.
66
+ 2. Read `orchestrator.config.json` identify the real project paths in `repos` (frontend, backend). Those are the paths where the worker agents operate.
67
+ 3. Read `<projectName>-plan.md`, `PLAN.md`, or `plan.md` if present.
68
+ 4. Read the newest `handoffs/HANDOFF-*.md` if the folder exists.
69
+ 5. Read `QUEUE.md` to understand pending, active, and completed work.
57
70
  6. Read all `progress/PROGRESS-*.md` files if present.
58
71
  7. Read `ENGRAM.md` and follow the memory rules.
59
72
  8. Use `openspec/` for large or multi-phase changes.
@@ -6,12 +6,6 @@
6
6
 
7
7
  ## Pending
8
8
 
9
- # === Example tasks. Delete these before adding real project work. ===
10
-
11
- TASK-001 | Create initial backend structure | Backend | P1 | backend | Create base folders, boilerplate, and initial tests
12
- TASK-002 | Build landing page | Frontend | P1 | frontend | Build a responsive hero section and first viewport
13
- TASK-003 | Document API endpoints | Codex | P2 | backend | Document REST endpoints in docs/api-reference.md > after:TASK-001
14
-
15
9
  ## In Progress
16
10
 
17
11
  ## Completed
@@ -18,13 +18,26 @@ Hay dos roles distintos que no deben confundirse:
18
18
 
19
19
  Claude no debe quedarse solo esperando respuestas de otros agentes. Cuando haya tareas independientes suficientes, el orquestador debe incluir al menos una TASK para un Claude-Worker en la primera tanda, además de tareas para Codex y OpenCode cuando aplique.
20
20
 
21
+ ## El workspace NO es el proyecto real
22
+
23
+ Este directorio (`orchestrator-<nombre>`) existe **únicamente** para gestión de trabajo:
24
+ - `QUEUE.md` — cola de tareas para los agentes
25
+ - `TASKS.md` — specs detalladas de tareas
26
+ - `handoffs/` — continuidad entre sesiones
27
+ - `progress/` — estado actual de cada agente
28
+ - `logs/` — salida de los agentes
29
+
30
+ El código real del proyecto vive en las rutas definidas en `orchestrator.config.json → repos`.
31
+ Cuando necesites entender el proyecto para planificar tareas, **lee archivos desde esas rutas**.
32
+ **Nunca modifiques archivos del proyecto real directamente** — eso es trabajo exclusivo de los agentes workers.
33
+
21
34
  ## Al iniciar la sesión — OBLIGATORIO
22
35
 
23
36
  1. Lee este archivo completo.
24
- 2. Lee `<projectName>-plan.md` (o `PLAN.md` / `plan.md`) si existe; ese es el plan general.
25
- 3. Lee el handoff más reciente en `handoffs/HANDOFF-*.md` si existe la carpeta.
26
- 4. Lee `QUEUE.md` para ver trabajo activo y pendiente.
27
- 5. Lee `orchestrator.config.json` para saber qué agentes y repos están disponibles.
37
+ 2. Lee `orchestrator.config.json` identifica las rutas reales en `repos` (frontend, backend). Esas son las rutas del proyecto real donde trabajan los agentes.
38
+ 3. Lee `<projectName>-plan.md` (o `PLAN.md` / `plan.md`) si existe; ese es el plan general.
39
+ 4. Lee el handoff más reciente en `handoffs/HANDOFF-*.md` si existe la carpeta.
40
+ 5. Lee `QUEUE.md` para ver trabajo activo y pendiente.
28
41
  6. Lee todos los archivos `progress/PROGRESS-*.md` que existan para entender el estado actual de cada agente.
29
42
  7. Lee `ENGRAM.md` para respetar la convención de memoria persistente del proyecto.
30
43
  8. Si existe `openspec/`, úsalo como capa de artefactos para cambios grandes o de varias fases.
@@ -1,17 +1,11 @@
1
1
  # Cola
2
2
 
3
3
  > Formato: `id | titulo | agente | prioridad | repo | descripcion`
4
- > Dependencias: agrega `> after:TASK-NNN` al final de la descripción
5
- > Comentarios: líneas que empiecen con `#`
4
+ > Dependencias: agrega `> after:TASK-NNN` al final de la descripción.
5
+ > Comentarios: líneas que empiecen con `#`.
6
6
 
7
7
  ## Pendientes
8
8
 
9
- # === Tareas de ejemplo (borra estas y agrega las tuyas) ===
10
-
11
- TASK-001 | Estructura inicial del proyecto | Backend | P1 | backend | Crear estructura inicial de carpetas y boilerplate
12
- TASK-002 | Crear landing page | Frontend | P1 | frontend | Construir sección hero con layout responsive
13
- TASK-003 | Documentación de API | Codex | P2 | backend | Documentar endpoints REST en docs/api-reference.md > after:TASK-001
14
-
15
9
  ## En progreso
16
10
 
17
11
  ## Completadas