@tacuchi/agent-workflow-cli 13.0.0 → 13.0.1

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 CHANGED
@@ -16,14 +16,14 @@ The harness has three layers plus a permanent `docs/` zone:
16
16
 
17
17
  - **Layer 1 · Commands** (`/w:*`) — the only thing the user invokes:
18
18
  - **SPEC** — `/w:spec-new` (single-pass draft) → `/w:spec-refine` (gap-driven loop) → `docs/specs/`.
19
- - **PLANIFICATION** — `/w:plan-new` → `/w:plan-exec` → `docs/plans/` + `docs/tools/`.
19
+ - **PLAN** — `/w:plan-new` → `/w:plan-exec` → `docs/plans/` + `docs/tools/`.
20
20
  - **QUICK** — `/w:quick` — lightweight shortcut.
21
21
  - **EXPORTS** — `/w:export-scripts` · `export-manuals` · `export-diagrams` · `export-reports` (the only path that promotes artifacts to `docs/`).
22
22
  - **Bootstrap** — `/w:workspace-init` turns any folder into a workspace (1+ sources; no project/hub distinction).
23
- - **Layer 2 · Loops** — the AI runs them whole: `spec-refine-loop` (chassis) · `plan-new-loop` · `plan-exec-loop` · `quick-loop`. Gap-driven, with `AskUserQuestion` lifecycle control (compact/close) and resumable `CHECKPOINT`.
23
+ - **Layer 2 · Loops** — the AI runs them whole: `spec-refine-loop` (chassis) · `plan-new-loop` · `plan-exec-loop` · `quick-loop`. Each loop is a **persistent goal** that runs until its success criteria are green (verification-first); gap-driven, with **structured-choice** lifecycle control (compact/close — `AskUserQuestion` on Claude Code, numbered markdown elsewhere) and resumable `CHECKPOINT`.
24
24
  - **Layer 3 · Sessions + artifacts** — internal, ephemeral process state under `.workflow/sessions/` (`SESSION` · `CHECKPOINT` · `BACKLOG` · `SCRIPTS.sql` · `ANALYSIS-FILE` · `CONCLUSIONS` · `DECISION` · …). Sessions are slug-named folders, created by loops, never by the user.
25
25
 
26
- **Pluggable capabilities.** Loops compose capability **roles** (`ui-design`, `sql`, `git`, `coding-standards`, `writing`, `research`, `testing`, `tools`, `diagrams`, `overview`); the concrete skill bound to each role is resolved via `.workflow/skills.toml` (cascade: built-in default → `~/.workflow/skills.toml` → workspace). Inspect bindings with `aw skills`.
26
+ **Pluggable capabilities.** Loops compose capability **roles** (`ui-design`, `sql`, `git`, `research`, `tools`, `diagrams`, `overview`); the concrete skill bound to each role is resolved via `.workflow/skills.toml` (cascade: built-in default → `~/.workflow/skills.toml` → workspace). Inspect bindings with `aw skills`. Code/testing/writing conventions are **not** roles — they're ambient skills the host auto-applies when present, independent of the workflow.
27
27
 
28
28
  **Invariants.** No auto-export (only `export-*` writes `docs/`); the spec and plan are documents, not artifacts; DB scripts-only (never executes DML/DDL); git-safe (verifies the per-source working branch before edits; proposes commits).
29
29
 
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-content.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/data/workflow-content.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AAED,eAAO,MAAM,gBAAgB,EAAE,eAiL9B,CAAC"}
1
+ {"version":3,"file":"workflow-content.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/data/workflow-content.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AAED,eAAO,MAAM,gBAAgB,EAAE,eAsL9B,CAAC"}
@@ -59,9 +59,11 @@ export const WORKFLOW_CONTENT = {
59
59
  hook: "—",
60
60
  },
61
61
  ],
62
- // Command families — espejo EXACTO de help-groups.ts (post-cleanup), con
63
- // los nombres de comandos realmente registrados en main.ts. `workspace-init`
64
- // y `set-working-branch` viven bajo Sources / Branches.
62
+ // Command families — vista del TUI alineada con help-groups.ts (post-cleanup),
63
+ // con los nombres realmente registrados en main.ts. Algunas familias se
64
+ // enriquecen con subcomandos (Hooks/MCP/Self) para orientar; `workspace-init`
65
+ // se surface también aquí (además de su phase card) por descubribilidad. Los
66
+ // totales se derivan con `.length` — NO hardcodear cantidades en strings.
65
67
  commandFamilies: [
66
68
  {
67
69
  id: "session",
@@ -84,6 +86,9 @@ export const WORKFLOW_CONTENT = {
84
86
  items: [
85
87
  "sources",
86
88
  "set-working-branch",
89
+ "set-qa-branch",
90
+ "git-flow",
91
+ "merge-state",
87
92
  "workspace-init",
88
93
  "attach-multiroot",
89
94
  "detach-multiroot",
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-content.js","sourceRoot":"","sources":["../../../../src/cli/tui/data/workflow-content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-content.js","sourceRoot":"","sources":["../../../../src/cli/tui/data/workflow-content.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tacuchi/agent-workflow-cli",
3
- "version": "13.0.0",
3
+ "version": "13.0.1",
4
4
  "description": "Agnostic runtime CLI for AI development workflows — a stages + loops + artifacts harness. Bundles the universal `w` skill set under `skills/w/` (slash commands `/w:*`: spec-new/spec-refine, plan-new/plan-exec, quick, workspace-init, export-*); `self install --target <host>` copies SKILL + commands + hooks into the host. Pluggable capability skills via `.workflow/skills.toml`. Multi-empresa parametrization via `profile.json` cascade. Namespace auto-detected from any `.<ns>/sessions/` dir in CWD; default `workflow`.",
5
5
  "type": "module",
6
6
  "bin": {
package/skills/w/SKILL.md CHANGED
@@ -185,4 +185,4 @@ Ninguno. Es orientación pura: no escribe documentos ni artefactos.
185
185
 
186
186
  ## Source
187
187
 
188
- Autorada del modelo de diseño (`docs/referencias/`): README de arquitectura (3 capas + 6 invariantes), `workflow-commands/`, `workflow-loops/`, `workflow-artifacts/`, `workflow-exports/`, `workflow-skills/`, `workflow-harness/`. Modelo actual, desplegado. (Compat: reemplaza la orientación del bundle legacy `session` + flows dev/design/analyze.)
188
+ Autorada del modelo de diseño (`docs/referencias/`): README de arquitectura (3 capas + 6 invariantes), `workflow-commands/`, `workflow-loops/`, `workflow-artifacts/`, `workflow-exports/`, `workflow-roles/`, `workflow-skills/`, `workflow-harness/`. Modelo actual, desplegado. (Compat: reemplaza la orientación del bundle legacy `session` + flows dev/design/analyze.)
@@ -60,4 +60,4 @@ Sessions are created by the loops as needed — **one session per run**. The ses
60
60
  1. **No auto-export**: loops **never** graduate/export to `docs/`. Only `export-*` does, explicitly.
61
61
  2. **Each flow touches only its `docs/` folders**: SPEC→`specs` · PLAN→`plans`+`tools` · QUICK→none · rest→`export-*`.
62
62
  3. **Spec and plan are documents** (`docs/`), not artifacts — they never live inside a session.
63
- 4. **DB write-only scripts**: the AI **never executes DML/DDL**; migrations stay in `SCRIPTS.sql` (type B) and are delivered via `export-scripts`. Only read-only queries (type A) are executed via MCP.
63
+ 4. **DB scripts-only**: the AI **never executes DML/DDL**; migrations stay in `SCRIPTS.sql` (type B) and are delivered via `export-scripts`. Only read-only queries (type A) are executed via MCP.
@@ -2,7 +2,7 @@
2
2
 
3
3
  > What it is: the live resume state of a session — lets the loop resume exactly where it left off.
4
4
  > **Live log (artifact-first):** `Pending`/`Next` = the intent (what is about to be done, seeded BEFORE executing); `Completed` = the result (AFTER). Updated at every gap/phase boundary, not only on `Compactar`/`Cerrar`.
5
- > Owned by: `refine` sessions (and `exec` / `quick` sessions that carry a checkpoint).
5
+ > Owned by: **every session** (`refine` · `exec` · `quick`). Persisted **always** on close/compact (the resume key — invariant #6), unlike `BACKLOG` which is written only when something is deferred.
6
6
 
7
7
  ## Activity
8
8
  Summary of the activity done so far.
@@ -1,6 +1,6 @@
1
1
  # TECHNICAL-NOTE.md — technical design note (schema reference)
2
2
 
3
- > **Model note:** in PLAN these sections live **inline in the plan-doc** (`docs/plans/PPP-plan.md`, rich plan, in `plan-new-loop`), not as an exec-session artifact. This file is kept **only** as a reference of the technical schema that the plan absorbs — **no `TECHNICAL-NOTE` is created in sessions**. Use it standalone only when the plan-doc approach does not apply (e.g. a `quick` session that needs scoped technical context).
3
+ > **Model note:** in PLAN these sections live **inline in the plan-doc** (`docs/plans/PPP-plan.md`, rich plan, in `plan-new-loop`), not as an exec-session artifact. This file is kept as a reference of the technical schema that the plan absorbs — in PLAN **it is not created** as a session artifact (the plan-doc carries it). It remains available only for a `quick` session that needs scoped technical context without a plan-doc.
4
4
 
5
5
  ## Solution
6
6
  Technical/functional explanation of how the solution will be implemented.
@@ -29,7 +29,9 @@ What do the evidences indicate?
29
29
  - E1 shows...
30
30
  - E2 confirms...
31
31
 
32
- ## Identified Cause
32
+ ## Outcome
33
+ What the evidence establishes — a cause (debugging) or a finding (design / feasibility / comparison research):
33
34
  - Technical:
34
35
  - Data:
36
+ - Finding:
35
37
  - Undetermined:
@@ -84,7 +84,7 @@ flowchart LR
84
84
 
85
85
  **Pipeline reading:** SPEC defines *what* (refined spec) → PLAN defines *how* (plan) and *executes it* → QUICK is a lightweight shortcut for scoped work that does not warrant spec or plan.
86
86
 
87
- > **`docs/` boundary:** each flow only touches its own folders — **SPEC** → `docs/specs`; **PLAN** → `docs/plans` + `docs/tools`. The rest of `docs/` (`scripts`, `manuals`, `diagrams`, `reports`) is written **only** by `export-*` skills (a separate, never-automatic step). See [`../loops/`](../loops/) and workflow-exports reference.
87
+ > **`docs/` boundary:** each flow only touches its own folders — **SPEC** → `docs/specs`; **PLAN** → `docs/plans` + `docs/tools`. The rest of `docs/` (`scripts`, `manuals`, `diagrams`, `reports`) is written **only** by `export-*` skills (a separate, never-automatic step). See [`../loops/`](../loops/) and [`../exports/`](../exports/).
88
88
 
89
89
  ## Schema of each command file
90
90
 
@@ -94,8 +94,8 @@ Each `<command>.md` in this bundle uses this frontmatter + body structure:
94
94
  |---|---|
95
95
  | `description:` | One line: what + when (drives discovery in `/`-picker) |
96
96
  | `argument-hint:` | Argument signature for the user |
97
- | `allowed-tools:` | YAML list; always includes `Skill` when a loop/export skill is invoked |
98
- | Body | 1-3 orienting lines, then the invocation (Skill tool or `aw` CLI), `## Plan mode`, `## Resources` |
97
+ | `allowed-tools:` | YAML list (typically `Bash`/`Read`/`Write`/`Edit`). Loops/exports are **read-and-followed**, not invoked with `Skill:` so `Skill` is **not** in `allowed-tools`. |
98
+ | Body | 1-3 orienting lines, then the invocation: **read-and-follow** the sibling loop/export `SKILL.md`, or call the `aw` CLI; then `## Plan mode`, `## Resources` |
99
99
 
100
100
  ## 6 Hard invariants (never violate)
101
101
 
@@ -30,4 +30,4 @@ Corré `aw merge-state` (read-only), reportá **origen ↔ destino** y los confl
30
30
 
31
31
  - Capability: `../roles/git/SKILL.md` (sección *Resolución de conflictos de merge*)
32
32
  - CLI: `aw merge-state` (inspector read-only del estado de merge)
33
- - Design reference: `docs/referencias/workflow-commands/fix-git.md`
33
+ - Design reference: `docs/referencias/workflow-skills/fix-git.md`
@@ -47,4 +47,4 @@ Igual que en ejecución: corré `aw status` (read-only) y mostrá el resumen. No
47
47
 
48
48
  ## Resources
49
49
  - CLI: `aw status` (servicio `status-service`; fechas vía `humanize-es`)
50
- - Design reference: `docs/referencias/workflow-commands/status.md`
50
+ - Design reference: `docs/referencias/workflow-skills/status.md`
@@ -36,4 +36,4 @@ Resuelve las fuentes y describe el scaffolding que crearía, sin escribir archiv
36
36
  ## Resources
37
37
 
38
38
  - Design reference: `docs/referencias/workflow-commands/workspace-init.md` (design spec)
39
- - Skills config: `docs/referencias/workflow-skills/` (capacidades disponibles y cascada)
39
+ - Skills config: `docs/referencias/workflow-roles/` (capacidades/roles disponibles y cascada de binding)
@@ -120,6 +120,6 @@ Idempotente funcional: cada invocación toma el siguiente `NNN`; no sobrescribe
120
120
  ## Resources
121
121
 
122
122
  - Design: `docs/referencias/workflow-exports/export-diagrams.md` · familia: [`../README.md`](../README.md).
123
- - Capacidad compuesta: `diagrams` (built-in default; ver `docs/referencias/workflow-skills/`).
123
+ - Capacidad compuesta: `diagrams` (built-in default; ver `docs/referencias/workflow-roles/`).
124
124
  - Insumo: plan-doc `AS-IS`/`TO-BE`/`Impacted` (ver `docs/plans`).
125
125
  - Siblings: [`../export-scripts/SKILL.md`](../export-scripts/SKILL.md) · [`../export-manuals/SKILL.md`](../export-manuals/SKILL.md) · [`../export-reports/SKILL.md`](../export-reports/SKILL.md).
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: export-manuals
3
- description: "Sintetiza manuales técnicos del workspace en `docs/manuals/` consolidando N sesiones (`exec`/`quick`) + `docs/`. Lee de cada sesión el `DECISION` y el plan-doc (`Solution`, `Final behavior`, `Validations`) + el código tocado en las fuentes (cómo opera/funciona lo construido). Dos modos: `complement` (default, sobrescribe `INDEX.md` apuntando a los manuales detectados) y `regenerate` (produce dossier `NNN-export-manuals-YYYY-MM-DD/` con 1 manual por tema). Audiencia: operadores / soporte / onboarding. Read-only/reporte: no commitea ni muta sesiones. La prosa sigue las convenciones de redacción ambientes (el host auto-aplica una skill de writing instalada si está presente). Úsalo para 'manual operativo', 'cómo funciona lo entregado', 'paquete de onboarding técnico', 'índice de manuales'. Invocado por el usuario vía `/w:export-manuals`."
3
+ description: "Manuales operativos / de onboarding (audiencia operador/soporte). Sintetiza manuales técnicos del workspace en `docs/manuals/` consolidando N sesiones (`exec`/`quick`) + `docs/`. Lee de cada sesión el `DECISION` y el plan-doc (`Solution`, `Final behavior`, `Validations`) + el código tocado en las fuentes (cómo opera/funciona lo construido). Dos modos: `complement` (default, sobrescribe `INDEX.md` apuntando a los manuales detectados) y `regenerate` (produce dossier `NNN-export-manuals-YYYY-MM-DD/` con 1 manual por tema). Audiencia: operadores / soporte / onboarding. Read-only/reporte: no commitea ni muta sesiones. La prosa sigue las convenciones de redacción ambientes (el host auto-aplica una skill de writing instalada si está presente). Úsalo para 'manual operativo', 'cómo funciona lo entregado', 'paquete de onboarding técnico', 'índice de manuales'. Invocado por el usuario vía `/w:export-manuals`."
4
4
  ---
5
5
 
6
6
  # export-manuals — Manuales técnicos desde sesiones + `docs/`
@@ -28,7 +28,7 @@ La redacción del manual sigue las convenciones de redacción **ambientes**: el
28
28
 
29
29
  1. Lee el corpus de sesiones (`exec`/`quick`): por sesión, `DECISION` + el plan-doc (`Solution`, `Final behavior`, `Validations`).
30
30
  2. Inspecciona el código tocado en las fuentes (cómo opera/funciona lo construido) — solo lectura.
31
- 3. Detecta temas (declarados en el OBJECTIVE/`SESSION`, o inferidos por keywords operativos).
31
+ 3. Detecta temas (declarados en `SESSION` — su `## Objective` —, o inferidos por keywords operativos).
32
32
  4. Resuelve el modo (`complement` o `regenerate`).
33
33
  5. Sintetiza el contenido aplicando las convenciones de redacción ambientes (host).
34
34
  6. Escribe: `complement` → sobrescribe `docs/manuals/INDEX.md`; `regenerate` → dossier `docs/manuals/NNN-export-manuals-YYYY-MM-DD/` con 1 manual por tema.
@@ -51,7 +51,7 @@ En plan mode **describe**, no escribe: el modo resuelto, los temas detectados (c
51
51
  **CLI `agent-workflow` (alias `aw`)** — no leer paths hardcodeados:
52
52
 
53
53
  - `aw sessions` / `aw release-data [--since sessionNNN] [--source <alias>]` — enumera el corpus.
54
- - `aw session-artifacts --code <NNN>` — lee `DECISION`, el plan-doc y el OBJECTIVE/`SESSION` (lazy) por sesión.
54
+ - `aw session-artifacts --code <NNN>` — lee `DECISION`, el plan-doc y `SESSION` (su `## Objective`, lazy) por sesión.
55
55
  - `aw next-number docs/manuals` — numeración determinística (solo modo `regenerate`).
56
56
 
57
57
  **Filesystem**:
@@ -97,7 +97,7 @@ Listar `docs/manuals/*.md` (excluyendo `INDEX.md` y subdirectorios `NNN-export-m
97
97
 
98
98
  ### Paso 3 — Detectar temas
99
99
 
100
- Por cada sesión del corpus filtrado (`aw session-artifacts --code <NNN>`): leer `DECISION` + plan-doc (`Solution`/`Final behavior`/`Validations`) + el código tocado. Tema **primario**: sección de temas en el OBJECTIVE/`SESSION`. **Secundario**: inferencia por keywords operativos ("configurar", "instalar", "paso a paso", "cómo …"). Filtrar por `--topics` si está presente. Listar (slug, confidence, sesiones de origen).
100
+ Por cada sesión del corpus filtrado (`aw session-artifacts --code <NNN>`): leer `DECISION` + plan-doc (`Solution`/`Final behavior`/`Validations`) + el código tocado. Tema **primario**: la sección de temas en `SESSION` (su `## Objective`). **Secundario**: inferencia por keywords operativos ("configurar", "instalar", "paso a paso", "cómo …"). Filtrar por `--topics` si está presente. Listar (slug, confidence, sesiones de origen).
101
101
 
102
102
  ### Paso 4 — Sintetizar (prosa: convenciones ambientes)
103
103
 
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: export-reports
3
- description: "Consolida N sesiones del workspace en un informe ejecutivo/funcional bajo `docs/reports/NNN-<slug>-YYYY-MM-DD.md`. Lee el corpus: el spec (`docs/specs`), `CONCLUSIONS` (research), `DECISION`, el estado del plan-doc + el resto de `docs/` para contexto. Sintetiza: qué se hizo, decisiones clave, resultados/conclusiones, pendientes/roadmap — con dedup de recomendaciones cross-session. Audiencia ajustable vía `--audience` (gerencia ≈ corto; tecnica ≈ detallado). Funde el espíritu de los viejos export-report (ejecutivo) y export-conclusions (dedup de R-items) en una sola salida a `docs/reports`. Read-only/reporte: no commitea ni muta sesiones. La prosa sigue las convenciones de redacción ambientes (el host auto-aplica una skill de writing instalada si está presente). Úsalo para 'informe ejecutivo', 'qué se hizo este trimestre para gerencia', 'brief con recomendaciones consolidadas'. Invocado por el usuario vía `/w:export-reports`."
3
+ description: "Informe ejecutivo/funcional (audiencia gerencia/comité) que consolida N sesiones del workspace bajo `docs/reports/NNN-<slug>-YYYY-MM-DD.md`. Lee el corpus: el spec (`docs/specs`), `CONCLUSIONS` (research), `DECISION`, el estado del plan-doc + el resto de `docs/` para contexto. Sintetiza: qué se hizo, decisiones clave, resultados/conclusiones, pendientes/roadmap — con dedup de recomendaciones cross-session. Audiencia ajustable vía `--audience` (gerencia ≈ corto; tecnica ≈ detallado). Funde el espíritu de los viejos export-report (ejecutivo) y export-conclusions (dedup de R-items) en una sola salida a `docs/reports`. Read-only/reporte: no commitea ni muta sesiones. La prosa sigue las convenciones de redacción ambientes (el host auto-aplica una skill de writing instalada si está presente). Úsalo para 'informe ejecutivo', 'qué se hizo este trimestre para gerencia', 'brief con recomendaciones consolidadas'. Invocado por el usuario vía `/w:export-reports`."
4
4
  ---
5
5
 
6
6
  # export-reports — Informe ejecutivo/funcional desde el corpus de sesiones + `docs/`
@@ -130,6 +130,6 @@ Idempotente funcional: cada invocación toma el siguiente `NNN` y **no sobrescri
130
130
  ## Resources
131
131
 
132
132
  - Design: `docs/referencias/workflow-exports/export-scripts.md` · familia: [`../README.md`](../README.md).
133
- - Capacidad compuesta: `sql` (built-in default; ver `docs/referencias/workflow-skills/`).
133
+ - Capacidad compuesta: `sql` (built-in default; ver `docs/referencias/workflow-roles/`).
134
134
  - Artefacto fuente: `SCRIPTS.sql` (ver `docs/referencias/workflow-artifacts/artifacts-core/`).
135
135
  - Siblings: [`../export-manuals/SKILL.md`](../export-manuals/SKILL.md) · [`../export-diagrams/SKILL.md`](../export-diagrams/SKILL.md) · [`../export-reports/SKILL.md`](../export-reports/SKILL.md).
@@ -2,14 +2,18 @@
2
2
 
3
3
  `hooks.template.json` wires the host (Claude Code) to the `agent-workflow` runtime hooks. Merge it into your host's user-level hook config (e.g. `~/.claude/settings.json`); the installer does this automatically for Claude.
4
4
 
5
+ > **Agnostic binding.** Hooks are **inherently host-specific**: they are the *Claude Code binding* of intents the doctrine states agnostically (DB scripts-only, safe branch, CHECKPOINT on compact/close). Another harness would satisfy the same intents with its own mechanisms; the doctrine does **not** depend on these hooks.
6
+
5
7
  | Event | Hook | Purpose |
6
8
  |---|---|---|
7
9
  | `SessionStart` | namespace pin | Pins the workspace namespace to `workflow` (so `.workflow/` resolves). |
8
10
  | `PreToolUse` (Edit/Write) | `hook branch-check` | Verifies the expected work branch before any file edit (git-safe invariant). |
9
11
  | `PreToolUse` (`execute_sql`) | `hook sql-mutation-guard` | Blocks DML/DDL over MCP — reads only (DB scripts-only invariant). |
10
- | `PreToolUse` (Bash) | `hook git-commit-advisor` | Advises on commit policy (propose-then-execute, no `push`/`--amend`/`--no-verify`). |
11
- | `SessionEnd` | `auto-compact-on-close` | Persists pending state on close. |
12
+ | `PreToolUse` (Bash) | `hook git-commit-advisor` | **Advisory (does not block)**: warns if a `git commit` message lacks the active session's `sessionNNN` tag (traceability). Does **not** inspect `push`/`--amend`/`--no-verify`. |
13
+ | `SessionEnd` | `auto-compact-on-close` | Writes `CHECKPOINT.md` on close — the resume key (*CHECKPOINT always*, invariant #6). |
12
14
  | `PreCompact` | `checkpoint-write` | Writes `CHECKPOINT.md` before the host compacts. |
13
15
  | `PostCompact` | `resume-summary` | Recovers the active loop state after a compact. |
14
16
 
15
- > These hooks enforce invariants 4 (DB scripts-only) and 5 (git-safe) at the host level, independent of the loop logic. The hook commands are runtime CLI subcommands (`agent-workflow hook …`), unchanged across the bundle namespace.
17
+ > **What they enforce (host-level, blocking):** invariant **#4** (DB scripts-only) via `sql-mutation-guard` (blocks DML/DDL over MCP), and the *expected-branch* clause of **#5** via `branch-check` (blocks edits on the wrong branch). The rest of git-safe (`push`/`--amend`/`--no-verify`/`--force`) is **doctrinal** `git-commit-advisor` only **warns**, it does not block; a host may add its own deny hook if it wants hard enforcement.
18
+ >
19
+ > **Commands:** the three `PreToolUse` hooks are `agent-workflow hook <branch-check|sql-mutation-guard|git-commit-advisor>` subcommands; the lifecycle hooks (`auto-compact-on-close`, `checkpoint-write`, `resume-summary`) are **top-level** runtime commands (`agent-workflow <cmd>`).
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  name: diagrams
3
3
  description: >
4
- Autoría de diagramas de arquitectura y sistema: C4 (Context, Container, Component),
5
- PlantUML y Structurizr DSL. Compuesta por export-diagrams para producir el contenido
6
- de docs/diagrams/. Selecciona el motor de render según el flag --diagrams del export
7
- (Structurizr default, Mermaid y PlantUML opt-in). Incluye link mermaid.ink por cada
8
- bloque Mermaid para preview sin renderer local.
4
+ Autoría de diagramas de arquitectura y sistema con notación C4 (Context, Container,
5
+ Component): Mermaid C4 nativo (default) o Structurizr DSL. Compuesta por export-diagrams
6
+ para producir el contenido de docs/diagrams/. Selecciona el motor según el flag `--engine`
7
+ del export (Mermaid default; `c4`/Structurizr DSL opt-in). Incluye link mermaid.ink por
8
+ cada bloque Mermaid para preview sin renderer local.
9
9
  ---
10
10
 
11
11
  # diagrams — Diagram authoring capability
@@ -16,7 +16,7 @@ description: >
16
16
 
17
17
  ## Purpose
18
18
 
19
- Autorar diagramas de arquitectura con notación C4 (Levels 1-3) usando el motor que el export configure. Produce source renderizable (DSL, PUML, Mermaid) — **no renderiza visualmente**; el render lo hace el lector con sus herramientas. Cubre el estándar C4 formal (Structurizr DSL), el opt-in embebido (Mermaid nativo) y el opt-in exportable (PlantUML).
19
+ Autorar diagramas de arquitectura con notación C4 (Levels 1-3) usando el motor que el export configure vía `--engine`. Produce source renderizable (Mermaid / DSL) — **no renderiza visualmente**; el render lo hace el lector con sus herramientas. Cubre el motor por defecto (Mermaid C4 nativo, embebido) y el opt-in `c4` (Structurizr DSL, C4 formal).
20
20
 
21
21
  ## Composed by
22
22
 
@@ -30,13 +30,14 @@ Cualquier loop puede componerla también si necesita producir un diagrama inline
30
30
 
31
31
  ### Engine matrix
32
32
 
33
- | `--diagrams` flag | Motor | Archivos producidos | Cuándo elegirlo |
33
+ El export elige el motor con `--engine mermaid|c4` (default `mermaid`):
34
+
35
+ | `--engine` | Motor | Archivos producidos | Cuándo elegirlo |
34
36
  |---|---|---|---|
35
- | `structurizr` (default) | Structurizr DSL | `workspace.dsl` + Mermaid auxiliar embebido en `.md` | Dossier técnico formal; soporte de tooling externo (structurizr.com, structurizr-lite) |
36
- | `mermaid` | Mermaid C4 nativo | solo `.md` con bloques Mermaid | Preferir render embebido sin DSL separado; GitHub/GitLab lo renderizan inline |
37
- | `plantuml` | PlantUML C4-stdlib | `arquitectura.puml` + nota en `.md` | Equipos con pipeline PlantUML instalado |
37
+ | `mermaid` (default) | Mermaid C4 nativo | solo `.md` con bloques Mermaid | Render embebido sin DSL separado; GitHub/GitLab lo renderizan inline |
38
+ | `c4` | Structurizr DSL | `workspace.dsl` + Mermaid auxiliar embebido en `.md` | Dossier técnico formal; tooling externo (structurizr.com, structurizr-lite) |
38
39
 
39
- **Regla canónica**: `export-diagrams` usa Structurizr DSL por defecto (C4 formal, separa modelo de vistas). Mermaid es opt-in cuando se prefiere render embebido.
40
+ **Regla canónica**: `export-diagrams` usa **Mermaid** por defecto (`--engine mermaid`) — render embebido sin tooling externo. `--engine c4` produce Structurizr DSL (C4 formal, separa modelo de vistas) para el dossier técnico.
40
41
 
41
42
  ### C4 model — levels
42
43
 
@@ -138,7 +139,9 @@ workspace "<PRODUCTO>" "<descripcion>" {
138
139
 
139
140
  Render online gratuito: [structurizr.com/dsl](https://structurizr.com/dsl) o structurizr-lite (Docker).
140
141
 
141
- ### PlantUML C4-stdlib template
142
+ ### PlantUML C4-stdlib template (motor extra, fuera del contrato actual)
143
+
144
+ > El contrato vigente de `export-diagrams` expone solo `--engine mermaid|c4` (no produce `.puml`). Esta plantilla queda como **referencia** para un export rebindeado/custom que quiera emitir PlantUML.
142
145
 
143
146
  ```plantuml
144
147
  @startuml arquitectura
@@ -162,9 +165,9 @@ SHOW_LEGEND()
162
165
 
163
166
  Render: [plantuml.com](https://plantuml.com) o `plantuml.jar` local.
164
167
 
165
- ### Mermaid auxiliar (bajo Structurizr default)
168
+ ### Mermaid auxiliar (bajo `--engine c4`)
166
169
 
167
- Cuando `--diagrams structurizr`, el archivo `.md` incluye también un bloque Mermaid derivado del DSL como **fallback offline** (lectores sin acceso a structurizr.com/dsl pueden leerlo directamente):
170
+ Cuando `--engine c4`, el archivo `.md` incluye también un bloque Mermaid derivado del DSL como **fallback offline** (lectores sin acceso a structurizr.com/dsl pueden leerlo directamente):
168
171
 
169
172
  ```
170
173
  ```mermaid
@@ -196,7 +199,7 @@ Solo si aporta claridad real — no agregar sequence diagrams por defecto.
196
199
 
197
200
  ### Entity-Relationship (modelo de datos)
198
201
 
199
- Cuando `export-diagrams` incluye `--scope datos` y hay MCP configurado:
202
+ Cuando `export-diagrams` incluye `--scope data` y hay MCP configurado:
200
203
 
201
204
  ```mermaid
202
205
  erDiagram
@@ -218,10 +221,9 @@ MCP read-only: `\d <tabla>` + `SELECT count(*)` para magnitud (aplicar cost guar
218
221
 
219
222
  ```
220
223
  docs/diagrams/NNN-export-diagrams-YYYY-MM-DD/
221
- ├── README.md # indice + how-to-read + motores usados
222
- ├── arquitectura.md # documento principal con C4 + Mermaid auxiliar
223
- ├── workspace.dsl # solo con --diagrams structurizr (default)
224
- └── arquitectura.puml # solo con --diagrams plantuml
224
+ ├── README.md # índice + how-to-read + motores usados
225
+ ├── diagrams.md # documento principal con C4 + Mermaid (+ links mermaid.ink)
226
+ └── workspace.dsl # solo con --engine c4 (Structurizr)
225
227
  ```
226
228
 
227
229
  ### Render rules
@@ -237,12 +239,11 @@ docs/diagrams/NNN-export-diagrams-YYYY-MM-DD/
237
239
 
238
240
  Produce en `docs/diagrams/NNN-export-diagrams-YYYY-MM-DD/`:
239
241
  - `README.md`
240
- - `arquitectura.md` (siempre)
241
- - `workspace.dsl` (si `--diagrams structurizr`)
242
- - `arquitectura.puml` (si `--diagrams plantuml`)
242
+ - `diagrams.md` (siempre)
243
+ - `workspace.dsl` (si `--engine c4`)
243
244
 
244
245
  Escribe solo `docs/diagrams/` (invariant #1 y #2: solo `export-*` gradua a `docs/`; esta skill la compone `export-diagrams`).
245
246
 
246
247
  ## Source
247
248
 
248
- Reciclado de `agent-workflow/exports/export-arq/` del bundle viejo (v1.3.0). Se conserva: el modelo C4 Levels 1-3, los tres motores (Structurizr default, Mermaid opt-in, PlantUML opt-in), las plantillas DSL y PUML, la regla de link `mermaid.ink` por bloque Mermaid, la estructura de output, el cost guard para MCP. Se descarta: la lógica de lectura de AW-PROJECT legacy, los comandos CLI `agent-workflow next-number`/`history-data`/etc. (son detalles de implementación del CLI, no de la skill), y el scope `--diagrams` como input flag (lo recibe el export que compone esta skill).
249
+ Reciclado de `agent-workflow/exports/export-arq/` del bundle viejo (v1.3.0). Se conserva: el modelo C4 Levels 1-3, las plantillas DSL/PUML, la regla de link `mermaid.ink` por bloque Mermaid, la estructura de output, el cost guard para MCP. Se moderniza al contrato vigente de `export-diagrams`: **Mermaid por defecto** (antes Structurizr), motor elegido por `--engine mermaid|c4` (lo recibe el export que compone esta skill); PlantUML queda como apéndice de referencia, fuera del contrato actual. Se descarta: la lógica de lectura de AW-PROJECT legacy y los comandos CLI `agent-workflow next-number`/`history-data`/etc. (detalles de implementación del CLI, no de la skill).
@@ -75,7 +75,7 @@ CREATE TABLE IF NOT EXISTS esq_credito.tb_usuarios (
75
75
 
76
76
  **Orden de ejecución obligatorio**: 01 → 02 → 03 → 04. El `SCRIPTS.sql` puede mezclar categorías cronológicamente; `export-scripts` ordena el bundle final.
77
77
 
78
- ### Estilo SQL (cumple `database-conventions`)
78
+ ### Estilo SQL
79
79
 
80
80
  - **Header canónico de 4 líneas**, entre dos líneas de iguales:
81
81
  ```sql
@@ -134,4 +134,4 @@ Nunca escribe a `docs/` desde un loop (invariante 1: solo `export-*` exporta). N
134
134
 
135
135
  ## Source
136
136
 
137
- Reciclada de `standards/sql-script-organizer/` (staging `SCRIPTS.sql`, markers, 4 categorías, estilo) + `standards/sql-rollback-generator/` (derivación de rollback, irreversibles, Fase 5) + reglas de estilo de `standards/coding-standards/references/database-conventions.md`. Se moderniza al modelo nuevo: el bundle lo arma `export-scripts`, no la skill; el "release/graduate" viejo se reemplaza por `export-scripts`.
137
+ Reciclada de `standards/sql-script-organizer/` (staging `SCRIPTS.sql`, markers, 4 categorías, estilo) + `standards/sql-rollback-generator/` (derivación de rollback, irreversibles, Fase 5) + reglas de estilo de `standards/coding-standards/references/database-conventions.md` (esa familia hoy es **ambiente** —extraída del workflow—; las reglas quedan **inlined** arriba, sin dependencia externa). Se moderniza al modelo nuevo: el bundle lo arma `export-scripts`, no la skill; el "release/graduate" viejo se reemplaza por `export-scripts`.
@@ -145,4 +145,4 @@ Writes `docs/tools/` (invariant #2: PLAN es el dueño de esta carpeta). No gradu
145
145
 
146
146
  ## Source
147
147
 
148
- Autoria original (no hay skill equivalente en el bundle viejo). Basado en la descripción del rol en `workflow-skills/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.
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.