@tacuchi/agent-workflow-cli 13.1.0 → 14.0.0

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 (48) hide show
  1. package/README.md +2 -2
  2. package/dist/application/paths-service.d.ts +2 -0
  3. package/dist/application/paths-service.d.ts.map +1 -1
  4. package/dist/application/paths-service.js +4 -0
  5. package/dist/application/paths-service.js.map +1 -1
  6. package/dist/application/project-tab-data.d.ts +1 -1
  7. package/dist/application/project-tab-data.d.ts.map +1 -1
  8. package/dist/application/project-tab-data.js +4 -4
  9. package/dist/application/project-tab-data.js.map +1 -1
  10. package/dist/application/source-launch-scripts-service.d.ts +8 -10
  11. package/dist/application/source-launch-scripts-service.d.ts.map +1 -1
  12. package/dist/application/source-launch-scripts-service.js +8 -15
  13. package/dist/application/source-launch-scripts-service.js.map +1 -1
  14. package/dist/application/source-launch-service.d.ts +1 -1
  15. package/dist/application/source-launch-service.d.ts.map +1 -1
  16. package/dist/application/source-launch-service.js +3 -3
  17. package/dist/application/source-launch-service.js.map +1 -1
  18. package/dist/application/source-remove-service.d.ts +1 -1
  19. package/dist/application/source-remove-service.js +3 -3
  20. package/dist/application/source-remove-service.js.map +1 -1
  21. package/dist/application/workspace-init-service.d.ts +1 -1
  22. package/dist/application/workspace-init-service.d.ts.map +1 -1
  23. package/dist/application/workspace-init-service.js +55 -16
  24. package/dist/application/workspace-init-service.js.map +1 -1
  25. package/dist/cli/commands/remove-source.js +1 -1
  26. package/dist/cli/commands/remove-source.js.map +1 -1
  27. package/dist/cli/tui/data/workflow-content.js +1 -1
  28. package/dist/cli/tui/data/workflow-content.js.map +1 -1
  29. package/dist/cli/tui/tabs/project-tab.js +3 -3
  30. package/dist/cli/tui/tabs/project-tab.js.map +1 -1
  31. package/dist/domain/skills.d.ts +1 -1
  32. package/dist/domain/skills.d.ts.map +1 -1
  33. package/dist/domain/skills.js +1 -10
  34. package/dist/domain/skills.js.map +1 -1
  35. package/package.json +1 -1
  36. package/skills/w/README.md +3 -3
  37. package/skills/w/SKILL.md +4 -5
  38. package/skills/w/artifacts/README.md +2 -2
  39. package/skills/w/commands/README.md +5 -5
  40. package/skills/w/commands/plan-exec.md +1 -1
  41. package/skills/w/commands/workspace-init.md +1 -1
  42. package/skills/w/exports/README.md +1 -1
  43. package/skills/w/loops/README.md +4 -5
  44. package/skills/w/loops/plan-exec-loop/SKILL.md +6 -7
  45. package/skills/w/loops/quick-loop/SKILL.md +1 -1
  46. package/skills/w/loops/spec-refine-loop/SKILL.md +1 -1
  47. package/skills/w/roles/README.md +3 -6
  48. package/skills/w/roles/tools/SKILL.md +0 -148
@@ -13,8 +13,8 @@ description: >-
13
13
  NUNCA ejecuta DML/DDL (migraciones se redactan en SCRIPTS.sql, solo read-only
14
14
  se ejecuta); validación por fase y final (lo dependiente de migración no
15
15
  aplicada se difiere como handoff a DBA); y SIN auto-export (escribe solo
16
- docs/plans + docs/tools; el resto queda como artefacto de session para
17
- export-*). Compone git, tools y sql. Lo arranca
16
+ docs/plans; el resto queda como artefacto de session para
17
+ export-*). Compone git y sql. Lo arranca
18
18
  /w:plan-exec y es reanudable. Invocar para implementar un plan ya generado.
19
19
  ---
20
20
 
@@ -36,13 +36,12 @@ PLAN
36
36
 
37
37
  ## Writes
38
38
  - `docs/plans/PPP-plan-<slug>.md` (**read/update**, living doc: estado de fases/tareas, `Open questions`).
39
- - `docs/tools/`: herramientas/utilidades reusables que la IA **crea** durante la ejecución (salida directa, no export).
40
39
  - Artefactos de la plan-exec session en `.workflow/sessions/` (`SCRIPTS.sql`, `DECISION`, `ANALYSIS-FILE`/`CONCLUSIONS`, …).
41
40
  - **NO** escribe en otras carpetas `docs/` ni **gradúa/exporta** otros artefactos automáticamente (ver *Boundary*).
42
41
 
43
42
  ## Boundary — sin auto-export (hard rule)
44
43
 
45
- Este loop **nunca gradúa/promueve artefactos** a `docs/`. Las únicas carpetas `docs/` que escribe son **`docs/plans`** (el plan, living) y **`docs/tools`** (las herramientas que crea — salida directa, no un export). Todo lo demás (migraciones → `docs/scripts`, manuales → `docs/manuals`, diagramas → `docs/diagrams`, etc.) lo hacen skills **`export-*`** aparte, como paso explícito posterior. Los artefactos quedan en sus sessions hasta entonces.
44
+ Este loop **nunca gradúa/promueve artefactos** a `docs/`. La única carpeta `docs/` que escribe es **`docs/plans`** (el plan, living). Todo lo demás (migraciones → `docs/scripts`, manuales → `docs/manuals`, diagramas → `docs/diagrams`, etc.) lo hacen skills **`export-*`** aparte, como paso explícito posterior. Los artefactos quedan en sus sessions hasta entonces. Si una tarea crea una herramienta/utilidad, la documenta la skill ambiente `creating-tools` en `docs/tools` (auto-descubierta por su `description`; el workflow es **indiferente**, no la bindea).
46
45
 
47
46
  ## Inherits
48
47
 
@@ -55,9 +54,9 @@ Del chasis [`spec-refine-loop`](../spec-refine-loop/SKILL.md), sin cambios:
55
54
 
56
55
  ## Composes
57
56
 
58
- `git` (rama segura + commits propuestos) · `tools` (herramientas reusables → `docs/tools`) · `sql` (regla BD). Todas resueltas por `.workflow/skills.toml`; `off` → el loop sigue sin la capacidad y, si era necesaria, lo dice o pregunta.
57
+ `git` (rama segura + commits propuestos) · `sql` (regla BD). Ambas resueltas por `.workflow/skills.toml`; `off` → el loop sigue sin la capacidad y, si era necesaria, lo dice o pregunta.
59
58
 
60
- > **Convenciones ambientes (no roles).** Los estándares de código, testing y redacción **no son roles** del workflow ni se bindean: son **skills standalone que el host auto-descubre por su `description`** y aplica cuando son relevantes. El workflow es **indiferente** (no las lee ni las busca). Una familia útil vive en el plugin `dev-conventions` del marketplace, pero el workflow **no depende** de él.
59
+ > **Convenciones ambientes (no roles).** Los estándares de código, testing, redacción **y la creación de herramientas** (`creating-tools`) **no son roles** del workflow ni se bindean: son **skills standalone que el host auto-descubre por su `description`** y aplica cuando son relevantes. El workflow es **indiferente** (no las lee ni las busca). Familias útiles viven en plugins del marketplace (`dev-conventions`, `tool-builder`), pero el workflow **no depende** de ellos.
61
60
 
62
61
  ## Internal sessions (managed)
63
62
 
@@ -120,7 +119,7 @@ plan-exec-loop(PPP-plan-<slug>.md):
120
119
  si no coincide → pausar + resolver con humano
121
120
  ejecutar Task:
122
121
  editar código en las fuentes (cambio mínimo)
123
- si crea herramienta/utilidad reusable → docs/tools (salida directa)
122
+ si crea herramienta/utilidad → la skill ambiente creating-tools la documenta en docs/tools
124
123
  si consulta BD read-only → SCRIPTS.sql + ejecutar read-only
125
124
  si cambio BD (DDL/DML) → redactar en SCRIPTS.sql (artefacto session, NO ejecutar)
126
125
  si decisión no obvia → DECISION (etiquetado por fase/tarea, en el ÚNICO DECISION)
@@ -50,7 +50,7 @@ QUICK
50
50
 
51
51
  `git` · `sql` (regla BD) · `research` (inline). Resueltas por `.workflow/skills.toml`.
52
52
 
53
- > **Convenciones ambientes (no roles).** Los estándares de código, testing y redacción **no son roles** del workflow ni se bindean: son **skills standalone que el host auto-descubre por su `description`** y aplica cuando son relevantes. El workflow es **indiferente** (no las lee ni las busca). Una familia útil vive en el plugin `dev-conventions` del marketplace, pero el workflow **no depende** de él.
53
+ > **Convenciones ambientes (no roles).** Los estándares de código, testing, redacción **y la creación de herramientas** (`creating-tools`) **no son roles** del workflow ni se bindean: son **skills standalone que el host auto-descubre por su `description`** y aplica cuando son relevantes. El workflow es **indiferente** (no las lee ni las busca). Familias útiles viven en plugins del marketplace (`dev-conventions`, `tool-builder`), pero el workflow **no depende** de ellos.
54
54
 
55
55
  ## Delta QUICK — minimal ceremony
56
56
 
@@ -116,7 +116,7 @@ El gap **UI sin especificar** (cuando el requerimiento involucra UI; ver *Gap ta
116
116
 
117
117
  Otras capacidades transversales que el chasis usa siempre: `research` (research **inline**, ver abajo), `sql` (regla BD en research). Todas se resuelven por config; `off` → el loop sigue sin la capacidad y, si era necesaria, lo dice o pregunta. La **prosa del spec** sigue las convenciones de redacción **ambientes** (el host auto-aplica una skill de writing instalada si está presente), no un rol compuesto.
118
118
 
119
- > **Convenciones ambientes (no roles).** Los estándares de código, testing y redacción **no son roles** del workflow ni se bindean: son **skills standalone que el host auto-descubre por su `description`** y aplica cuando son relevantes. El workflow es **indiferente** (no las lee ni las busca). Una familia útil vive en el plugin `dev-conventions` del marketplace, pero el workflow **no depende** de él.
119
+ > **Convenciones ambientes (no roles).** Los estándares de código, testing, redacción **y la creación de herramientas** (`creating-tools`) **no son roles** del workflow ni se bindean: son **skills standalone que el host auto-descubre por su `description`** y aplica cuando son relevantes. El workflow es **indiferente** (no las lee ni las busca). Familias útiles viven en plugins del marketplace (`dev-conventions`, `tool-builder`), pero el workflow **no depende** de ellos.
120
120
 
121
121
  ## Deliverable schema (el spec, editado in place)
122
122
 
@@ -8,7 +8,7 @@
8
8
 
9
9
  ## Capability catalog
10
10
 
11
- All 7 roles, their built-in defaults, their tier, and which loops/exports compose them:
11
+ All 6 roles, their built-in defaults, their tier, and which loops/exports compose them:
12
12
 
13
13
  | Role | Default built-in | Tier | Composed by |
14
14
  |---|---|---|---|
@@ -16,7 +16,6 @@ All 7 roles, their built-in defaults, their tier, and which loops/exports compos
16
16
  | `sql` | `sql` | must | inline research · `plan-exec-loop` · `quick-loop` · `export-scripts` |
17
17
  | `git` | `git` | must | `plan-exec-loop` · `quick-loop` |
18
18
  | `research` | [`research`](research/SKILL.md) | should | all loops (on-demand investigation) |
19
- | `tools` | [`tools`](tools/SKILL.md) | should | `plan-exec-loop` |
20
19
  | `diagrams` | [`diagrams`](diagrams/SKILL.md) | should | `export-diagrams` |
21
20
  | `overview` | `workflow` | should | any loop (orientation about the workflow itself) |
22
21
 
@@ -24,7 +23,7 @@ All 7 roles, their built-in defaults, their tier, and which loops/exports compos
24
23
  - `must` — core to almost every session; built-in always active unless explicitly `off`.
25
24
  - `should` — loaded on-demand; active by default but lower priority to override.
26
25
 
27
- > **Convenciones ambientes (no roles).** Los estándares de código, testing y redacción **no son roles** del workflow ni se bindean: son **skills standalone que el host auto-descubre por su `description`** y aplica cuando son relevantes. El workflow es **indiferente** (no las lee ni las busca). Una familia útil vive en el plugin `dev-conventions` del marketplace, pero el workflow **no depende** de él.
26
+ > **Convenciones ambientes (no roles).** Los estándares de código, testing, redacción **y la creación de herramientas** (`creating-tools`) **no son roles** del workflow ni se bindean: son **skills standalone que el host auto-descubre por su `description`** y aplica cuando son relevantes. El workflow es **indiferente** (no las lee ni las busca). Familias útiles viven en plugins del marketplace (`dev-conventions`, `tool-builder`), pero el workflow **no depende** de ellos.
28
27
 
29
28
  ---
30
29
 
@@ -59,7 +58,6 @@ built-in default
59
58
  # sql = "sql"
60
59
  # git = "git"
61
60
  # research = "research"
62
- # tools = "tools"
63
61
  # diagrams = "diagrams"
64
62
  # overview = "workflow"
65
63
 
@@ -115,7 +113,6 @@ ui-design ui-spec built-in
115
113
  sql sql built-in
116
114
  git git built-in
117
115
  research research built-in
118
- tools tools built-in
119
116
  diagrams mermaid-only global (~/.workflow/skills.toml)
120
117
  overview workflow built-in
121
118
  ```
@@ -135,7 +132,7 @@ Each `SKILL.md` follows this schema:
135
132
 
136
133
  | Section | Content |
137
134
  |---|---|
138
- | Frontmatter `name:` | kebab-case; MUST equal the binding name (`research`, `tools`, etc.) |
135
+ | Frontmatter `name:` | kebab-case; MUST equal the binding name (`research`, `diagrams`, etc.) |
139
136
  | Frontmatter `description:` | rich description: what + when; drives automatic selection |
140
137
  | `## Role` | which capability role this implements (its skills.toml slot) |
141
138
  | `## Purpose` | what it does |
@@ -1,148 +0,0 @@
1
- ---
2
- name: tools
3
- description: >
4
- Capacidad de autoría de herramientas y utilidades que el plan crea: scripts, CLIs, helpers,
5
- configuraciones reutilizables. Produce el código de la herramienta y su documentación en
6
- docs/tools/. Compuesta por plan-exec-loop cuando una task crea una utilidad nueva (no un
7
- cambio de producto). No aplica a código de producto — solo a tooling auxiliar.
8
- ---
9
-
10
- # tools — Tool authoring capability
11
-
12
- ## Role
13
-
14
- `tools` — implementación built-in por defecto. Rebindeable a otra skill (de tercero o `off`) en `.workflow/skills.toml`.
15
-
16
- ## Purpose
17
-
18
- Dar al `plan-exec-loop` la capacidad de crear herramientas y utilidades auxiliares con una estructura consistente: el código de la tool + su documentación en `docs/tools/`. Cubre scripts de automatización, CLIs auxiliares, helpers de CI/CD, configuraciones reutilizables, y cualquier artefacto de tooling que el plan genere como producto de una task.
19
-
20
- **Distinciones clave:**
21
-
22
- | Tipo | Rol | ¿Quién lo maneja? |
23
- |---|---|---|
24
- | Código de producto (services, controllers, components) | cambio en el repo fuente | `plan-exec-loop` (estilo: convenciones ambientes del host) |
25
- | Tool / utilidad auxiliar creada por el plan | herramienta de soporte | esta skill (`tools`) |
26
- | Script SQL de migración | dato persistente | `sql` + `export-scripts` |
27
-
28
- ## Composed by
29
-
30
- | Loop | Cuándo la compone |
31
- |---|---|
32
- | `plan-exec-loop` | cuando una task del plan crea una herramienta nueva (helper, script CLI, configuración reutilizable) |
33
-
34
- ## Knowledge
35
-
36
- ### Tool vs. product code
37
-
38
- Una **tool** es cualquier artefacto que el plan crea para soportar el trabajo, no para el usuario final del producto:
39
-
40
- - Scripts de seed/fixtures para desarrollo local.
41
- - CLIs auxiliares (`validate-schema.js`, `sync-env.sh`).
42
- - Helpers de CI/CD (scripts de deploy, linters de configuración).
43
- - Configuraciones reutilizables (templates de entorno, fixtures de test).
44
- - Generadores o scaffolders para tareas repetitivas.
45
-
46
- Si el artefacto es lógica de negocio del producto → no es una tool, es código de producto.
47
-
48
- ### Tool anatomy
49
-
50
- Cada tool tiene dos partes:
51
-
52
- 1. **El código** — en el repo fuente apropiado (en su carpeta natural: `scripts/`, `tools/`, `bin/`, etc.).
53
- 2. **La doc** — en `docs/tools/NNN-<slug>.md` del workspace (invariant #2: PLAN escribe `docs/tools`).
54
-
55
- ### docs/tools/NNN-<slug>.md schema
56
-
57
- ```markdown
58
- # <Nombre de la tool>
59
-
60
- > **Tipo**: <script | cli | helper | config-template | generator>
61
- > **Repo**: <alias de la fuente donde vive el código>
62
- > **Path**: <path relativo al repo>
63
- > **Creada en**: <sesion-slug>
64
-
65
- ## Purpose
66
-
67
- [1-2 oraciones: qué hace y cuándo usarla.]
68
-
69
- ## Usage
70
-
71
- ```<lenguaje o bash>
72
- <ejemplo de invocación>
73
- ```
74
-
75
- ## Parameters
76
-
77
- | Param | Tipo | Requerido | Default | Descripcion |
78
- |---|---|---|---|---|
79
- | `--foo` | string | sí | — | ... |
80
-
81
- ## Output
82
-
83
- [Qué produce: archivos, stdout, efectos secundarios.]
84
-
85
- ## Dependencies
86
-
87
- - <prerequisito 1: binario, env var, servicio>
88
- - <prerequisito 2>
89
-
90
- ## Examples
91
-
92
- ```bash
93
- # Caso de uso principal
94
- ./scripts/validate-schema.sh --env staging
95
-
96
- # Caso edge
97
- ./scripts/validate-schema.sh --env staging --dry-run
98
- ```
99
-
100
- ## Notes
101
-
102
- [Advertencias, limitaciones, cuándo NO usar.]
103
- ```
104
-
105
- ### Numbering
106
-
107
- `docs/tools/` usa numeración secuencial `NNN` (001, 002, ...). Consultar el número siguiente con el filesystem antes de escribir; no asumir el siguiente en base a lo que el loop ya sabe.
108
-
109
- ### Git-safe authoring (invariant #5)
110
-
111
- - Verificar la rama esperada antes de escribir código.
112
- - Proponer el commit; nunca hacer `push`/`--amend`/`--no-verify` autónomamente.
113
- - Si la tool modifica scripts ya existentes: leer el archivo completo primero.
114
-
115
- ### DB scripts rule (invariant #4)
116
-
117
- Si la tool genera o manipula SQL:
118
- - Nunca generar DML/DDL que se ejecute inline — el SQL va a `SCRIPTS.sql` y se entrega vía `export-scripts`.
119
- - Una tool puede generar un archivo `.sql`; no puede ejecutarlo contra la BD.
120
-
121
- ### Code quality baseline
122
-
123
- Al autorar el código de la tool, seguir las convenciones de código **ambientes** del host (auto-descubiertas por su `description`; no es un rol del workflow ni se bindea). Si no hay una skill de estándares aplicable, usar los estándares del lenguaje detectado:
124
- - **Shell**: shellcheck-compatible, variables entre comillas, `set -euo pipefail`.
125
- - **Node/TS**: tipado explícito, sin `any` salvo justificación, error handling explícito.
126
- - **Python**: type hints, docstring en funciones públicas, manejo de excepciones específico.
127
- - **Java**: Javadoc mínimo en clases públicas, excepciones tipadas.
128
-
129
- ### Self-contained tools
130
-
131
- Preferir tools que declaren explícitamente sus dependencias (en doc + en el propio script). Una tool que falla silenciosamente porque le falta un binario es peor que una que no existe.
132
-
133
- ```bash
134
- # Pattern: check dependencies al inicio
135
- command -v jq >/dev/null 2>&1 || { echo "jq requerido: brew install jq"; exit 1; }
136
- ```
137
-
138
- ## Output
139
-
140
- Por cada tool creada:
141
- - **Código**: en el repo fuente, en la carpeta que corresponda (`scripts/`, `tools/`, `bin/`).
142
- - **Doc**: en `docs/tools/NNN-<slug>.md` del workspace.
143
-
144
- Writes `docs/tools/` (invariant #2: PLAN es el dueño de esta carpeta). No gradua a ninguna otra carpeta de `docs/`.
145
-
146
- ## Source
147
-
148
- Autoria original (no hay skill equivalente en el bundle viejo). Basado en la descripción del rol en `workflow-roles/README.md` y en el invariant #2 del diseño (`docs/tools/` es del flujo PLAN). Las convenciones de estructura de doc (`## Purpose`, `## Usage`, `## Parameters`, `## Output`, `## Examples`) siguen el patrón de calidad del bundle.