@tacuchi/agent-workflow-cli 6.2.0 → 7.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.
Files changed (181) hide show
  1. package/README.md +65 -12
  2. package/dist/application/profile/profile-service.d.ts +53 -0
  3. package/dist/application/profile/profile-service.d.ts.map +1 -0
  4. package/dist/application/profile/profile-service.js +210 -0
  5. package/dist/application/profile/profile-service.js.map +1 -0
  6. package/dist/application/self/bootstrap.js +2 -1
  7. package/dist/application/self/bootstrap.js.map +1 -1
  8. package/dist/application/self/detect-hosts.d.ts +18 -0
  9. package/dist/application/self/detect-hosts.d.ts.map +1 -0
  10. package/dist/application/self/detect-hosts.js +37 -0
  11. package/dist/application/self/detect-hosts.js.map +1 -0
  12. package/dist/application/self/install-hooks.d.ts +30 -0
  13. package/dist/application/self/install-hooks.d.ts.map +1 -0
  14. package/dist/application/self/install-hooks.js +253 -0
  15. package/dist/application/self/install-hooks.js.map +1 -0
  16. package/dist/application/self/install-skill.d.ts +2 -0
  17. package/dist/application/self/install-skill.d.ts.map +1 -1
  18. package/dist/application/self/install-skill.js +69 -3
  19. package/dist/application/self/install-skill.js.map +1 -1
  20. package/dist/cli/commands/self.d.ts.map +1 -1
  21. package/dist/cli/commands/self.js +9 -1
  22. package/dist/cli/commands/self.js.map +1 -1
  23. package/dist/cli/tui/tabs/skills-tab.d.ts.map +1 -1
  24. package/dist/cli/tui/tabs/skills-tab.js +100 -24
  25. package/dist/cli/tui/tabs/skills-tab.js.map +1 -1
  26. package/package.json +2 -2
  27. package/skills/agent-workflow/commands/README.md +26 -0
  28. package/skills/agent-workflow/commands/compact.md +24 -0
  29. package/skills/agent-workflow/commands/doctor.md +100 -0
  30. package/skills/agent-workflow/commands/export-arq.md +77 -0
  31. package/skills/agent-workflow/commands/export-conclusions.md +78 -0
  32. package/skills/agent-workflow/commands/export-plan.md +74 -0
  33. package/skills/agent-workflow/commands/export-qa-note.md +30 -0
  34. package/skills/agent-workflow/commands/export-report.md +78 -0
  35. package/skills/agent-workflow/commands/export-requirement.md +30 -0
  36. package/skills/agent-workflow/commands/export-scripts.md +92 -0
  37. package/skills/agent-workflow/commands/export-tech-manuals.md +75 -0
  38. package/skills/agent-workflow/commands/export-tech-note.md +30 -0
  39. package/skills/agent-workflow/commands/hub-init.md +82 -0
  40. package/skills/agent-workflow/commands/migrate.md +56 -0
  41. package/skills/agent-workflow/commands/project-init.md +60 -0
  42. package/skills/agent-workflow/commands/resume.md +22 -0
  43. package/skills/agent-workflow/commands/rules.md +40 -0
  44. package/skills/agent-workflow/commands/session.md +35 -0
  45. package/skills/agent-workflow/doctrine/README.md +15 -0
  46. package/skills/agent-workflow/doctrine/compact/SKILL.md +145 -0
  47. package/skills/agent-workflow/doctrine/doctor/SKILL.md +86 -0
  48. package/skills/agent-workflow/doctrine/doctor/SKILL.md.tmp +0 -0
  49. package/skills/agent-workflow/doctrine/hub-init/SKILL.md +157 -0
  50. package/skills/agent-workflow/doctrine/hub-init/SKILL.md.tmp +0 -0
  51. package/skills/agent-workflow/doctrine/hub-init/references/multiroot-manual.md +51 -0
  52. package/skills/agent-workflow/doctrine/implement/SKILL.md +290 -0
  53. package/skills/agent-workflow/doctrine/implement/references/branch-verification.md +16 -0
  54. package/skills/agent-workflow/doctrine/implement/references/design-md-template.md +108 -0
  55. package/skills/agent-workflow/doctrine/implement/references/rollback-guide.md +81 -0
  56. package/skills/agent-workflow/doctrine/migrate/SKILL.md +281 -0
  57. package/skills/agent-workflow/doctrine/migrate/SKILL.md.tmp +0 -0
  58. package/skills/agent-workflow/doctrine/project-init/SKILL.md +100 -0
  59. package/skills/agent-workflow/doctrine/project-init/SKILL.md.tmp +0 -0
  60. package/skills/agent-workflow/doctrine/refactor/SKILL.md +208 -0
  61. package/skills/agent-workflow/doctrine/refactor/references/refactor-md-template.md +108 -0
  62. package/skills/agent-workflow/doctrine/refactor/references/strangler-checklist.md +116 -0
  63. package/skills/agent-workflow/doctrine/resume/SKILL.md +199 -0
  64. package/skills/agent-workflow/doctrine/rules/SKILL.md +224 -0
  65. package/skills/agent-workflow/doctrine/rules/SKILL.md.tmp +0 -0
  66. package/skills/agent-workflow/doctrine/session/SKILL.md +383 -0
  67. package/skills/agent-workflow/doctrine/session/references/auto-plan-rules.md +63 -0
  68. package/skills/agent-workflow/doctrine/session/references/backlog-template.md +95 -0
  69. package/skills/agent-workflow/doctrine/session/references/branch-verification.md +198 -0
  70. package/skills/agent-workflow/doctrine/session/references/commits-policy.md +111 -0
  71. package/skills/agent-workflow/doctrine/session/references/communication-style.md +50 -0
  72. package/skills/agent-workflow/doctrine/session/references/graduacion-routing.md +88 -0
  73. package/skills/agent-workflow/doctrine/session/references/lifecycle-deep.md +160 -0
  74. package/skills/agent-workflow/doctrine/session/references/prompts/C1-specialty-selection.md +11 -0
  75. package/skills/agent-workflow/doctrine/session/references/prompts/C2-cost-guard.md +14 -0
  76. package/skills/agent-workflow/doctrine/session/references/prompts/M1-closure-commit-prompt.md +104 -0
  77. package/skills/agent-workflow/doctrine/session/references/prompts/M10-next-step.md +17 -0
  78. package/skills/agent-workflow/doctrine/session/references/prompts/M11-context.md +16 -0
  79. package/skills/agent-workflow/doctrine/session/references/prompts/M2-branch-caso-A.md +14 -0
  80. package/skills/agent-workflow/doctrine/session/references/prompts/M3-branch-caso-C.md +33 -0
  81. package/skills/agent-workflow/doctrine/session/references/prompts/M4-cross-source-hard-gate.md +33 -0
  82. package/skills/agent-workflow/doctrine/session/references/prompts/M5-modality-analyze.md +15 -0
  83. package/skills/agent-workflow/doctrine/session/references/prompts/M6-phase-gate.md +31 -0
  84. package/skills/agent-workflow/doctrine/session/references/prompts/M7-refactor-legacy-detected.md +28 -0
  85. package/skills/agent-workflow/doctrine/session/references/prompts/M8-refactor-cleanup.md +16 -0
  86. package/skills/agent-workflow/doctrine/session/references/prompts/M9-contract-review.md +39 -0
  87. package/skills/agent-workflow/doctrine/session/references/prompts/S1-type-design.md +15 -0
  88. package/skills/agent-workflow/doctrine/session/references/prompts/S2-topic-change-detection.md +14 -0
  89. package/skills/agent-workflow/doctrine/session/references/prompts/S3-flow-detection.md +28 -0
  90. package/skills/agent-workflow/doctrine/session/references/prompts/S4-resume.md +27 -0
  91. package/skills/agent-workflow/doctrine/session/references/prompts/S5-post-compact.md +17 -0
  92. package/skills/agent-workflow/doctrine/session/references/prompts/S6-scope.md +16 -0
  93. package/skills/agent-workflow/doctrine/session/references/prompts/S7-design-review.md +37 -0
  94. package/skills/agent-workflow/doctrine/session/references/prompts-catalog.md +210 -0
  95. package/skills/agent-workflow/doctrine/session/references/sandbox-readonly-rules.md +82 -0
  96. package/skills/agent-workflow/doctrine/session/references/specialty-decision-tree.md +56 -0
  97. package/skills/agent-workflow/doctrine/session/references/topic-change-rules.md +67 -0
  98. package/skills/agent-workflow/exports/README.md +15 -0
  99. package/skills/agent-workflow/exports/export-arq/SKILL.md +229 -0
  100. package/skills/agent-workflow/exports/export-arq/SKILL.md.tmp +0 -0
  101. package/skills/agent-workflow/exports/export-arq/references/lexico-tecnico.md +94 -0
  102. package/skills/agent-workflow/exports/export-arq/references/template-c4.md +293 -0
  103. package/skills/agent-workflow/exports/export-arq/references/template-plantuml.puml +77 -0
  104. package/skills/agent-workflow/exports/export-arq/references/template-structurizr.dsl +72 -0
  105. package/skills/agent-workflow/exports/export-arq/references/validations.md +231 -0
  106. package/skills/agent-workflow/exports/export-conclusions/SKILL.md +169 -0
  107. package/skills/agent-workflow/exports/export-conclusions/references/dedup-rules.md +154 -0
  108. package/skills/agent-workflow/exports/export-conclusions/references/template-conclusions.md +158 -0
  109. package/skills/agent-workflow/exports/export-plan/SKILL.md +225 -0
  110. package/skills/agent-workflow/exports/export-plan/references/state-transitions.md +141 -0
  111. package/skills/agent-workflow/exports/export-plan/references/template-plan.md +132 -0
  112. package/skills/agent-workflow/exports/export-qa-note/SKILL.md +31 -0
  113. package/skills/agent-workflow/exports/export-report/SKILL.md +262 -0
  114. package/skills/agent-workflow/exports/export-report/SKILL.md.tmp +0 -0
  115. package/skills/agent-workflow/exports/export-report/references/lexico.md +174 -0
  116. package/skills/agent-workflow/exports/export-report/references/template-a.md +95 -0
  117. package/skills/agent-workflow/exports/export-report/references/template-b.md +221 -0
  118. package/skills/agent-workflow/exports/export-report/references/template-c.md +180 -0
  119. package/skills/agent-workflow/exports/export-report/references/validations.md +255 -0
  120. package/skills/agent-workflow/exports/export-requirement/SKILL.md +31 -0
  121. package/skills/agent-workflow/exports/export-scripts/SKILL.md +324 -0
  122. package/skills/agent-workflow/exports/export-scripts/references/code-scan-recommendations.md +83 -0
  123. package/skills/agent-workflow/exports/export-scripts/references/deprecation-plan.md +80 -0
  124. package/skills/agent-workflow/exports/export-scripts/references/lexico-tecnico.md +80 -0
  125. package/skills/agent-workflow/exports/export-scripts/references/manifest-template.md +253 -0
  126. package/skills/agent-workflow/exports/export-scripts/references/readme-template.md +79 -0
  127. package/skills/agent-workflow/exports/export-scripts/references/theme-handling.md +168 -0
  128. package/skills/agent-workflow/exports/export-scripts/references/validations.md +242 -0
  129. package/skills/agent-workflow/exports/export-tech-manuals/SKILL.md +214 -0
  130. package/skills/agent-workflow/exports/export-tech-manuals/references/lexico-tecnico.md +97 -0
  131. package/skills/agent-workflow/exports/export-tech-manuals/references/template-index.md +123 -0
  132. package/skills/agent-workflow/exports/export-tech-manuals/references/template-manual.md +143 -0
  133. package/skills/agent-workflow/exports/export-tech-manuals/references/validations.md +211 -0
  134. package/skills/agent-workflow/exports/export-tech-note/SKILL.md +31 -0
  135. package/skills/agent-workflow/hooks/README.md +15 -0
  136. package/skills/agent-workflow/hooks/hooks.template.json +90 -0
  137. package/skills/agent-workflow/references/README.md +12 -0
  138. package/skills/agent-workflow/references/legacy-anchors.md +50 -0
  139. package/skills/agent-workflow/references/profile-parametrization.md +88 -0
  140. package/skills/agent-workflow/specialties/README.md +14 -0
  141. package/skills/agent-workflow/specialties/analyze-conclude/SKILL.md +175 -0
  142. package/skills/agent-workflow/specialties/analyze-conclude/references/incident-classification.md +61 -0
  143. package/skills/agent-workflow/specialties/analyze-investigate/SKILL.md +148 -0
  144. package/skills/agent-workflow/specialties/analyze-investigate/SKILL.md.tmp +0 -0
  145. package/skills/agent-workflow/specialties/analyze-investigate/references/cost-guard.md +85 -0
  146. package/skills/agent-workflow/specialties/analyze-synthesize/SKILL.md +127 -0
  147. package/skills/agent-workflow/specialties/design-brief/SKILL.md +90 -0
  148. package/skills/agent-workflow/specialties/design-deliver/SKILL.md +121 -0
  149. package/skills/agent-workflow/specialties/design-develop/SKILL.md +115 -0
  150. package/skills/agent-workflow/specialties/design-discover/SKILL.md +103 -0
  151. package/skills/agent-workflow/standards/README.md +12 -0
  152. package/skills/agent-workflow/standards/coding-standards/SKILL.md +102 -0
  153. package/skills/agent-workflow/standards/coding-standards/SKILL.md.tmp +0 -0
  154. package/skills/agent-workflow/standards/coding-standards/references/angular-typescript.md +266 -0
  155. package/skills/agent-workflow/standards/coding-standards/references/database-conventions.md +170 -0
  156. package/skills/agent-workflow/standards/coding-standards/references/fe-be-integration.md +300 -0
  157. package/skills/agent-workflow/standards/coding-standards/references/frontend-structure.md +182 -0
  158. package/skills/agent-workflow/standards/coding-standards/references/java-spring.md +244 -0
  159. package/skills/agent-workflow/standards/coding-standards/references/project-structure.md +197 -0
  160. package/skills/agent-workflow/standards/frontend-design/SKILL.md +62 -0
  161. package/skills/agent-workflow/standards/frontend-design/references/feedback-toasts-patterns.md +249 -0
  162. package/skills/agent-workflow/standards/frontend-design/references/form-patterns.md +278 -0
  163. package/skills/agent-workflow/standards/frontend-design/references/list-patterns.md +256 -0
  164. package/skills/agent-workflow/standards/frontend-design/references/modal-patterns.md +220 -0
  165. package/skills/agent-workflow/standards/frontend-design/references/navigation-patterns.md +224 -0
  166. package/skills/agent-workflow/standards/redaccion-simple/SKILL.md +128 -0
  167. package/skills/agent-workflow/standards/sql-rollback-generator/SKILL.md +197 -0
  168. package/skills/agent-workflow/standards/sql-rollback-generator/references/irreversible-checklist.md +161 -0
  169. package/skills/agent-workflow/standards/sql-rollback-generator/references/release-rollback.md +131 -0
  170. package/skills/agent-workflow/standards/sql-rollback-generator/references/rollback-patterns.md +255 -0
  171. package/skills/agent-workflow/standards/sql-script-organizer/SKILL.md +244 -0
  172. package/skills/agent-workflow/standards/sql-script-organizer/references/bundle-readme-template.md +82 -0
  173. package/skills/agent-workflow/standards/sql-script-organizer/references/categorization-rules.md +122 -0
  174. package/skills/agent-workflow/standards/sql-script-organizer/references/consolidation-cross-session.md +125 -0
  175. package/skills/agent-workflow/standards/sql-script-organizer/references/scripts-sql-format.md +140 -0
  176. package/skills/agent-workflow/standards/testing-strategy/SKILL.md +113 -0
  177. package/skills/agent-workflow/standards/testing-strategy/references/test-levels.md +255 -0
  178. package/skills/agent-workflow/workflows/README.md +12 -0
  179. package/skills/agent-workflow/workflows/analyze-workflow/SKILL.md +107 -0
  180. package/skills/agent-workflow/workflows/design-workflow/SKILL.md +100 -0
  181. package/skills/agent-workflow/workflows/dev-workflow/SKILL.md +195 -0
@@ -0,0 +1,168 @@
1
+ # Theme handling — detección + consolidación + ORDER cross-tema
2
+
3
+ > **Port adaptado** de `release-scripts/references/theme-detection.md` + `release-scripts/references/order-generation.md` (ambos v2.0.0). DEC-004 de session061: contenido equivalente, paths actualizados al output dir único de export-scripts.
4
+
5
+ ## Activación de la vista `por-tema/`
6
+
7
+ `por-tema/` se genera **sólo** si se cumple **alguna** de estas condiciones:
8
+
9
+ 1. `--themes slug1,slug2` declarado explícitamente.
10
+ 2. Al menos una de las sesiones incluidas tiene sección `## Temas` en su `OBJECTIVE.md` (o `OBJETIVO.md` legacy).
11
+ 3. `--themes infer` declarado (inferencia LLM con confirmación).
12
+
13
+ Si **ninguna** se cumple: el output dir contiene solo `por-sesion/` + archivos top-level. No se crea sub-carpeta `por-tema/` vacía.
14
+
15
+ ## Formato de `## Temas` en OBJECTIVE
16
+
17
+ ```markdown
18
+ ## Temas
19
+
20
+ - `rbac`: gestión de roles y permisos
21
+ - `lista-negra-blanca`: filtros de acceso
22
+ - `auditoria`: logging de cambios sensibles
23
+ ```
24
+
25
+ Reglas:
26
+ - Slug kebab-case (`a-z0-9-`).
27
+ - Una descripción breve por tema (ayuda a la inferencia cross-session).
28
+ - Sin overlapping en una misma sesión salvo necesidad expresa.
29
+
30
+ ## Resolución de temas por sesión
31
+
32
+ ### Paso A — Lectura declarativa
33
+
34
+ Para cada sesión incluida, leer `OBJECTIVE.md` (fallback bilingual a `OBJETIVO.md`) buscando sección `## Temas`. Si presente: extraer slugs como autoritativos para esa sesión.
35
+
36
+ ### Paso B — Inferencia LLM (si `--themes infer` o falta declarativo en N sesiones)
37
+
38
+ Para cada sesión sin `## Temas`:
39
+
40
+ 1. Leer OBJECTIVE + nombres de scripts SQL.
41
+ 2. Inferir temas candidatos (3-5 max) con confidence score 0-1.
42
+ 3. Proponer al usuario:
43
+ ```
44
+ Sesión session057:
45
+ - Tema candidato: `export-report` (confidence 0.92, scripts: ...)
46
+ - Tema candidato: `lifecycle-extension` (confidence 0.45)
47
+ - ¿Aceptar / editar / declarar uno propio?
48
+ ```
49
+ 4. Persistir respuesta:
50
+ - Si sesión **activa**: escribir `## Temas` en OBJECTIVE.
51
+ - Si sesión **cerrada**: guardar en `por-tema/themes.inferred.md` del bundle (no toca artefactos cerrados).
52
+
53
+ ### Paso C — Filtro `--themes`
54
+
55
+ Si `--themes slug1,slug2` declarado: restringir el output `por-tema/` a esos slugs. Scripts cuyo tema no entre en el filtro caen en `por-sesion/` solamente (no aparecen en `por-tema/`).
56
+
57
+ ## Asignación de cada script a su tema
58
+
59
+ Por cada `.sql` forward de las sesiones incluidas:
60
+
61
+ 1. **Header declarativo**: leer primeras 10 líneas buscando `-- Temas: slug1, slug2`. Si presente: usa esos slugs.
62
+ 2. **Por nombre**: matchear contra patrones del tema (substring del slug en el filename, ej. `rbac-rol-permiso.sql` → `rbac`).
63
+ 3. **Por contenido**: leer el SQL y aplicar heurística (qué tabla/función toca, qué módulo de negocio).
64
+ 4. **Fallback**: si nada matchea, asignar a `tema-general/` con warning en el manifest.
65
+
66
+ ### Multi-tema
67
+
68
+ Si un script aplica a 2+ temas: copia al primer tema declarado y crea `.link.md` en los demás referenciando el canónico:
69
+
70
+ ```markdown
71
+ # Link — script multi-tema
72
+
73
+ Este script aplica al tema `[secundario]` pero su versión canónica vive en:
74
+
75
+ - `por-tema/tema-[primario]/03-migracion.sql` (sección [N], script `[nombre-original.sql]`)
76
+
77
+ Razón: el header declarativo del script lista temas múltiples, y por convención el primero es el canónico.
78
+ ```
79
+
80
+ ## Consolidación por categoría dentro de cada tema
81
+
82
+ Para cada tema y cada categoría (01..04):
83
+
84
+ 1. Ordenar scripts fuente por NNN original (cronológico cross-session).
85
+ 2. Leer cada `.sql`, extraer cuerpo eliminando `BEGIN;` inicial y `COMMIT;` final.
86
+ 3. Concatenar con separadores `[i/N]` + nombre + ruta canónica.
87
+ 4. Envolver todo en un único `BEGIN; … COMMIT;`.
88
+ 5. Escribir `por-tema/tema-<slug>/<categoria>.sql`.
89
+ 6. Consolidar `.rollback.sql` en orden inverso.
90
+
91
+ ### Header del consolidado
92
+
93
+ **Uno solo** al inicio del archivo, con el formato canónico de 4 líneas definido en `sql-script-organizer/SKILL.md#header-canónico`:
94
+
95
+ ```
96
+ -- Script: tema-rbac/03-migracion.sql
97
+ -- Sesion: s057, s058, s063
98
+ -- Objeto: migración de roles y asignaciones RBAC
99
+ -- Alcance: tablas tb_rol, tb_permiso_rol, tb_rol_usuario
100
+ ```
101
+
102
+ **No copiar** los headers de los scripts individuales — su origen queda registrado en los separadores `[i/N]` del cuerpo y en `README.md`.
103
+
104
+ ### `--keep-parts`
105
+
106
+ Si el flag está activo: preservar `por-tema/<slug>/parts/<categoria>/*.sql` con los scripts individuales (no consolidados). Permite ejecutar uno por vez para debugging.
107
+
108
+ ## Rollback por tema y global
109
+
110
+ ### `por-tema/tema-<slug>/rollback-tema-<slug>.sql`
111
+
112
+ Encadena los 4 consolidados de rollback (04→03→02→01) dentro de un único `BEGIN; … COMMIT;`. Operaciones irreversibles marcadas con header WARNING.
113
+
114
+ ### `rollback-global.sql` (en output dir top-level)
115
+
116
+ Encadena rollback por-tema en orden **inverso a `ORDER.md`**. Si `por-tema/` no existe, encadena `por-sesion/<sessionXXX>/rollback/*.sql` por sesión cronológica inversa.
117
+
118
+ Algoritmo completo en `sql-rollback-generator/references/release-rollback.md` (referenciable cross-skill).
119
+
120
+ ## `ORDER.md` cross-tema
121
+
122
+ Cuando hay `por-tema/`: el `ORDER.md` top-level del bundle intercala scripts por **fase** (no por tema):
123
+
124
+ ```markdown
125
+ ## Fase 1 — DDL tablas
126
+
127
+ psql -f por-tema/tema-rbac/01-ddl-tablas.sql
128
+ psql -f por-tema/tema-lista-negra-blanca/01-ddl-tablas.sql
129
+ psql -f por-tema/tema-auditoria/01-ddl-tablas.sql
130
+
131
+ ## Fase 2 — DDL funciones
132
+
133
+ psql -f por-tema/tema-rbac/02-ddl-funciones.sql
134
+ ...
135
+
136
+ ## Fase 3 — Migración
137
+
138
+ ...
139
+
140
+ ## Fase 4 — Inserts iniciales
141
+
142
+ ...
143
+
144
+ ## Fase 5 — Cleanup irreversible
145
+
146
+ (operaciones DROP COLUMN, TRUNCATE, DROP CASCADE — al final)
147
+ ```
148
+
149
+ Cuando **no** hay `por-tema/`: el `ORDER.md` lista scripts por sesión cronológica, dentro de cada una 01→04:
150
+
151
+ ```markdown
152
+ ## Sesión session057-export-func
153
+
154
+ psql -f por-sesion/session057-export-func/01-ddl-tablas/001-...sql
155
+ psql -f por-sesion/session057-export-func/02-ddl-funciones/001-...sql
156
+ ...
157
+
158
+ ## Sesión session058-export-arq
159
+
160
+ ...
161
+ ```
162
+
163
+ ## Idempotencia
164
+
165
+ - Re-ejecutar export-scripts con los mismos args sobre las mismas sesiones produce el **mismo** output **modulo el NNN nuevo** del directorio. Cada invocación toma siguiente NNN; no sobrescribe.
166
+ - Para regenerar: borrar el directorio manualmente y re-invocar.
167
+ - Si los temas se declararon en OBJECTIVE: sin re-confirmación.
168
+ - Si fueron inferidos: re-propone con `--themes infer`.
@@ -0,0 +1,242 @@
1
+ # Validations — V1-V6 para `/agent-workflow:export-scripts`
2
+
3
+ Checks post-render que se aplican antes de escribir el bundle al filesystem. Adaptados del canon de la familia export-* (export-arq + export-report) con foco en bundle SQL + informe.
4
+
5
+ Niveles de severidad:
6
+ - **Hard-fail**: aborta la escritura, devuelve `ok: false` con error report. No se crea el directorio.
7
+ - **Warning**: emite mensaje, pide confirmación del usuario para continuar.
8
+
9
+ ## V1 — Estructura del bundle
10
+
11
+ **Severidad**: hard-fail si falta archivo obligatorio o sub-dir esperado.
12
+
13
+ **Archivos obligatorios siempre**:
14
+ - `manifest.md`
15
+ - `README.md`
16
+ - `ORDER.md`
17
+ - `rollback-global.sql`
18
+ - `por-sesion/` con ≥1 sesión
19
+
20
+ **Archivos condicionales**:
21
+ - `por-tema/` con ≥1 tema — sólo si la activación de Paso 6 dio positivo (themes declarados, `## Temas` en OBJECTIVE, o `--themes infer`).
22
+
23
+ **Cómo validar**: listar el output dir antes de escribir el manifest final; verificar que todos los archivos obligatorios estarán presentes.
24
+
25
+ **Error report (hard-fail)**:
26
+ ```
27
+ V1 FAILED: bundle incompleto
28
+ esperado: manifest.md, README.md, ORDER.md, rollback-global.sql, por-sesion/
29
+ encontrado: manifest.md, README.md, por-sesion/
30
+ faltantes: ORDER.md, rollback-global.sql
31
+ acción: regenerar pasos 7 y 9
32
+ ```
33
+
34
+ ## V2 — Noise vetado
35
+
36
+ **Severidad**: hard-fail si hay ≥1 ocurrencia en el cuerpo del `manifest.md` (header y sección Metadata exentos).
37
+
38
+ **Scope**: body-only — líneas después de `# Informe del bundle NNN` (h1 inicial) y antes de `## 10. Metadata`.
39
+
40
+ **Cómo validar**:
41
+ ```bash
42
+ awk '
43
+ BEGIN { body=0 }
44
+ /^## 10\. Metadata/ { body=0 }
45
+ body { print }
46
+ /^# / && !/Metadata/ { body=1 }
47
+ ' manifest.md > /tmp/body.md
48
+ grep -n -F -f references/lexico-tecnico.md /tmp/body.md
49
+ ```
50
+
51
+ **Error report (hard-fail)**:
52
+ ```
53
+ V2 FAILED: noise vetado detectado en cuerpo del manifest
54
+ ocurrencias:
55
+ línea 12: "NNN-export-scripts-YYYY-MM-DD" → placeholder sin reemplazar
56
+ línea 28: "/Users/tacuchi/" → path absoluto del developer
57
+ línea 41: "DEC-NNN" → placeholder sin reemplazar
58
+ total: 3 ocurrencias
59
+ acción: completar render y stripear paths absolutos
60
+ ```
61
+
62
+ ## V3 — Secciones obligatorias del manifest
63
+
64
+ **Severidad**: hard-fail si falta una sección obligatoria.
65
+
66
+ **Secciones obligatorias** (todas siempre presentes en `manifest.md`):
67
+ 1. `## 1. Resumen ejecutivo`
68
+ 2. `## 2. Sesiones incluidas`
69
+ 3. `## 3. Acciones manuales previas a producción`
70
+ 4. `## 4. Base de datos`
71
+ 5. `## 5. Código fuente — hallazgos del escaneo`
72
+ 6. `## 6. Git y ramas`
73
+ 7. `## 7. Documentación graduada`
74
+ 8. `## 8. Checklist final de producción`
75
+ 9. `## 9. Advertencias`
76
+ 10. `## 10. Metadata`
77
+
78
+ **Cómo validar**:
79
+ ```bash
80
+ grep -c '^## [0-9]\+\. ' manifest.md # debe dar exactamente 10
81
+ ```
82
+
83
+ **Error report (hard-fail)**:
84
+ ```
85
+ V3 FAILED: secciones obligatorias faltantes
86
+ esperadas: 10
87
+ encontradas: 8
88
+ faltantes: "## 5. Código fuente — hallazgos del escaneo", "## 9. Advertencias"
89
+ acción: regenerar manifest con secciones completas
90
+ ```
91
+
92
+ ## V4 — Secciones condicionales honored
93
+
94
+ **Severidad**: hard-fail si una sub-sección condicional aparece sin justificación o falta cuando debería estar.
95
+
96
+ ### V4.a — Vista por tema (`## 4.4 Vista por tema`)
97
+
98
+ - **Patrón A — activada**: temas declarados (CLI flag o `## Temas`) → sub-sección `## 4.4 Vista por tema` presente con conteo + paths a `por-tema/`.
99
+ - **Patrón B — no activada**: sin temas → sub-sección `## 4.4 Vista por tema` **ausente** (no aparece header ni placeholder).
100
+
101
+ **Error report (Patrón B esperado pero sección presente sin contenido)**:
102
+ ```
103
+ V4.a FAILED: sin temas declarados pero sección "## 4.4 Vista por tema" presente
104
+ themes: []
105
+ acción: omitir sección cuando no hay temas (no dejar placeholder)
106
+ ```
107
+
108
+ ### V4.b — Code scan skip (`## 5`)
109
+
110
+ - **Patrón A — escaneo ejecutado**: sección 5 contiene resumen con counts (`X críticos · Y medios · Z bajos`).
111
+ - **Patrón B — `--skip-code-scan`**: sección 5 contiene **nota inline explícita** `_(Escaneo omitido por --skip-code-scan)_` y no hay tabla de hallazgos.
112
+
113
+ **Error report (Patrón B esperado pero tabla presente)**:
114
+ ```
115
+ V4.b FAILED: --skip-code-scan declarado pero sección 5 tiene tabla de hallazgos
116
+ args: --skip-code-scan
117
+ acción: reemplazar tabla por nota inline
118
+ ```
119
+
120
+ ### V4.c — Sesiones abiertas
121
+
122
+ - **Patrón A — sesiones cerradas**: tabla "## 2. Sesiones incluidas" sin warnings ⚠.
123
+ - **Patrón B — sesiones activas incluidas**: cada sesión activa marcada con ⚠ + motivo de apertura en la columna "Resumen".
124
+
125
+ **Error report (Patrón B sin ⚠)**:
126
+ ```
127
+ V4.c FAILED: sesiones activas detectadas pero no marcadas con ⚠
128
+ sesiones activas: session061
129
+ acción: marcar con ⚠ en tabla y documentar motivo en columna Resumen
130
+ ```
131
+
132
+ ## V5 — Header bien formado
133
+
134
+ **Severidad**: warning.
135
+
136
+ **Checks** (líneas 1-5 del `manifest.md`):
137
+ - Línea 1: `# Informe del bundle NNN — <YYYY-MM-DD>` con NNN reemplazado.
138
+ - Línea 3: `- **Rama actual:** \`<nombre-rama>\``
139
+ - Línea 4: `- **Rama destino:** \`certificacion\``
140
+ - Línea 5: `- **Sesiones incluidas:** <N>`
141
+ - Línea 6: `- **Readiness:** 🟢 verde | 🟡 amarillo | 🔴 rojo` (una sola opción seleccionada).
142
+ - Línea 7: `- **Generado por:** agent-workflow · skill \`export-scripts\``
143
+
144
+ **Error report (warning)**:
145
+ ```
146
+ V5 WARNING: header incompleto o malformado
147
+ línea 1: OK
148
+ línea 3: "- **Rama actual:** `<nombre-rama>`" → placeholder sin reemplazar
149
+ acción: re-renderizar header con valores reales
150
+ ¿continuar de todas formas? (s/n)
151
+ ```
152
+
153
+ ## V6 — Referencias resolubles
154
+
155
+ **Severidad**: warning.
156
+
157
+ **Checks**: cada link en cualquier sección del manifest apunta a un path existente en filesystem al momento de generar.
158
+
159
+ **Cómo validar**:
160
+ ```bash
161
+ grep -Eo '`[^`]+\.(md|sql)`|\[.+?\]\([^)]+\)' manifest.md | \
162
+ sed -E 's/^`(.+)`$/\1/; s/^\[.+?\]\((.+)\)$/\1/' | \
163
+ while read p; do
164
+ if [ ! -e "$p" ] && [ ! -e "<output_dir>/$p" ]; then echo "MISSING: $p"; fi
165
+ done
166
+ ```
167
+
168
+ **Excepción**: links a `docs/decisiones/`, `docs/manuales/`, etc. **fuera** del output dir son válidos si existen en el workspace; si no, warning suave (no aborta).
169
+
170
+ **Error report (warning)**:
171
+ ```
172
+ V6 WARNING: 2 referencias apuntan a paths inexistentes
173
+ - docs/decisiones/005-tipos-cobranza.md → no existe en workspace
174
+ - por-sesion/session999/01-ddl-tablas/ → no existe en output dir
175
+ acción sugerida: corregir paths o omitir referencias placeholder
176
+ ¿continuar de todas formas? (s/n)
177
+ ```
178
+
179
+ ## Orden de aplicación
180
+
181
+ 1. V1 (estructura del bundle) — primero, barato.
182
+ 2. V3 (secciones del manifest) — segundo, barato.
183
+ 3. V2 (noise vetado) — tercero, requiere lectura del body.
184
+ 4. V4 (condicionales) — cuarto, requiere reconstruir contexto de flags + corpus.
185
+ 5. V5 (header) — quinto.
186
+ 6. V6 (referencias resolubles) — último.
187
+
188
+ Si V1, V3 o V4 fallan → abortar inmediatamente.
189
+ Si V2 falla → abortar (no warning, igual que en export-arq y export-report).
190
+ Si V5 o V6 emiten warning → pedir confirmación al usuario.
191
+
192
+ ## Reporte consolidado
193
+
194
+ Al final del flujo, el skill devuelve:
195
+
196
+ ```json
197
+ {
198
+ "ok": true,
199
+ "output_dir": "docs/scripts/NNN-export-scripts-YYYY-MM-DD/",
200
+ "files_written": [
201
+ "manifest.md", "README.md", "ORDER.md", "rollback-global.sql",
202
+ "por-sesion/session057-export-func/...",
203
+ "por-sesion/session058-export-arq/...",
204
+ "por-tema/tema-rbac/01-ddl-tablas.sql",
205
+ "..."
206
+ ],
207
+ "themes_resolved": ["rbac", "lista-negra-blanca"],
208
+ "sessions_included": ["057", "058", "059", "060"],
209
+ "validations": {
210
+ "V1": { "status": "pass" },
211
+ "V2": { "status": "pass", "noise_hits": 0 },
212
+ "V3": { "status": "pass", "sections_found": 10 },
213
+ "V4": { "status": "pass", "conditionals": { "por_tema": "presente (2 temas)", "code_scan": "ejecutado", "sesiones_abiertas": "0" } },
214
+ "V5": { "status": "pass" },
215
+ "V6": { "status": "warning", "missing_refs": ["docs/decisiones/005-...md"] }
216
+ },
217
+ "summary": "Bundle escrito. 1 warning (V6) aceptado."
218
+ }
219
+ ```
220
+
221
+ Si hard-fail:
222
+
223
+ ```json
224
+ {
225
+ "ok": false,
226
+ "stage": "validation",
227
+ "failed_at": "V3",
228
+ "details": "secciones obligatorias faltantes: ## 5. Código fuente — hallazgos del escaneo",
229
+ "no_files_written": true
230
+ }
231
+ ```
232
+
233
+ ## Diferencias con `export-arq/references/validations.md`
234
+
235
+ | Validación | export-arq | export-scripts |
236
+ |---|---|---|
237
+ | V1 | estructura de secciones por `--scope` | estructura del bundle (archivos + sub-dirs) |
238
+ | V2 | noise interno (~25 términos) | noise + placeholders (~45 términos) |
239
+ | V3 | secciones por scope | 10 secciones fijas del manifest |
240
+ | V4 | Modelo de datos + Decisiones condicionales | Vista por tema + code-scan skip + sesiones abiertas |
241
+ | V5 | header con snapshot + fuentes + diagrams engine | header con rama + readiness + counts |
242
+ | V6 | referencias resolubles | referencias resolubles |
@@ -0,0 +1,214 @@
1
+ ---
2
+ name: export-tech-manuals
3
+ description: "Genera y mantiene manuales técnicos del workspace en `docs/manuales/` consolidando sesiones + `docs/` (manuales/, decisiones/, especificaciones/ como referencias técnicas). Dos modos: `complementar` (default, sobrescribe `INDEX.md` apuntando a manuales graduados + detectables del corpus) y `regenerar` (produce dossier `NNN-export-tech-manuals-YYYY-MM-DD/` con 1 manual por tema detectado). Audiencia: operadores / soporte / onboarding. Read-only sobre corpus + `docs/manuales/` existente; sin commits autónomos. Invocado sólo vía `/agent-workflow:export-tech-manuals`. v1.1 (session081): corpus extendido formalmente a `docs/` además de sesiones (DEC-002) — ver `docs/shared-contract/export-corpus-sources.md`."
4
+ version: 1.1.0
5
+ ---
6
+
7
+ # Export Tech Manuals — Manuales técnicos desde corpus + graduados
8
+
9
+ Tercer comando de la familia `/agent-workflow:export-*`. Genera un índice consolidado de manuales (modo default `complementar`) o un dossier completo con manuales sintetizados (modo `regenerar`). **Read-only / reporte** — no commitea, no muta nada del corpus.
10
+
11
+ > Propuesta original: `docs/conclusiones/007-export-commands-family.md` §1.3. Pattern hermano: `agent-workflow/skills/export-arq/`.
12
+
13
+ ## Excepción session-aware
14
+
15
+ Este skill requiere conocimiento del lifecycle. **No crea ni modifica sesiones**. Si el workspace no tiene AW-PROJECT con fuentes declaradas → abortar con `ok: false`.
16
+
17
+ **Consumo de CLI `agent-workflow`** (no leer paths hardcodeados):
18
+ - `agent-workflow project-md-upsert --read` — `workspace_mode`, fuentes.
19
+ - `agent-workflow history-data` — sesiones cerradas para detectar temas/manuales no graduados.
20
+ - `agent-workflow session-artifacts --code <NNN>` — OBJECTIVE + CHECKPOINT + (MANUAL.md si existe) por sesión.
21
+ - `agent-workflow next-number docs/manuales` — sólo modo `regenerar`.
22
+
23
+ **Lectura del filesystem**:
24
+ - `docs/manuales/*.md` — manuales ya graduados (`kind=manual`).
25
+ - `docs/manuales/INDEX.md` — sobrescribible (re-generable) en modo `complementar`.
26
+
27
+ ## When to use
28
+
29
+ - "Manual operativo", "índice de manuales", "consolidar guías técnicas".
30
+ - Tras agregar manuales nuevos via `agent-workflow graduate --kind manual`, refrescar el índice.
31
+ - Paquete de onboarding técnico para nuevos miembros del equipo.
32
+ - Auditoría de cobertura documental.
33
+
34
+ ## Qué hace este skill
35
+
36
+ 1. Lee AW-PROJECT (fuentes + mode).
37
+ 2. Lee `docs/manuales/*.md` (manuales graduados).
38
+ 3. Escanea corpus de sesiones cerradas detectando temas / manuales no graduados.
39
+ 4. Resuelve modo (`complementar` o `regenerar`).
40
+ 5. Aplica filtros `--since`, `--source`, `--temas` si están presentes.
41
+ 6. Carga plantilla (`template-index.md` o `template-manual.md`).
42
+ 7. Renderiza output aplicando léxico técnico mínimo.
43
+ 8. Valida V1-V6 (`references/validations.md`).
44
+ 9. Si pasa:
45
+ - `complementar`: sobrescribe `docs/manuales/INDEX.md`.
46
+ - `regenerar`: escribe `docs/manuales/NNN-export-tech-manuals-YYYY-MM-DD/` con 1 manual por tema.
47
+
48
+ ## Qué NO hace
49
+
50
+ - Ejecutar commits, merges, push, SQL ni envío de correos.
51
+ - Mutar manuales ya graduados (sólo los lee).
52
+ - Mutar corpus de sesiones.
53
+ - Sobrescribir un dossier `regenerar` previo (siempre next-number).
54
+ - Renderizar visualmente diagramas (los manuales son texto; Mermaid embebido si aporta, pero no es obligatorio).
55
+ - Inventar manuales: si no hay tema detectable, abortar con error claro en modo `regenerar`; en modo `complementar` produce INDEX vacío con nota inline.
56
+
57
+ ## Sandbox read-only
58
+
59
+ `../session/references/sandbox-readonly-rules.md`. En plan mode esta skill describe:
60
+ - Modo resuelto + plantilla a cargar.
61
+ - Manuales graduados detectados (lista).
62
+ - Temas detectables del corpus (lista + confidence).
63
+ - Modo `regenerar`: count de manuales que se generarían.
64
+ - Modo `complementar`: estructura del INDEX que se sobrescribiría.
65
+
66
+ NO ejecuta: `Write` del INDEX o de los manuales, `agent-workflow next-number` con efecto, mutaciones.
67
+
68
+ ## Estilo de comunicación
69
+
70
+ `../session/references/communication-style.md`. La audiencia es técnica — sin léxico ejecutivo. `agent-workflow:redaccion-simple` aplica con preset default. Foco en accionabilidad: cada manual debe permitir al operador completar la tarea sin invocar al equipo de desarrollo.
71
+
72
+ ## Entrada
73
+
74
+ ```
75
+ /agent-workflow:export-tech-manuals [--sessions NNN[,NNN]] [--since sessionNNN] [--source <alias>]
76
+ [--mode complementar|regenerar]
77
+ [--temas slug1,slug2]
78
+ [--dry-run]
79
+ ```
80
+
81
+ ### Defaults
82
+
83
+ - `--mode complementar`.
84
+ - Sin `--sessions` (todo el corpus).
85
+ - Sin `--since` (todo el corpus). Ignorado si `--sessions` presente.
86
+ - Sin `--source` (hub completo).
87
+ - Sin `--temas` (todos los temas detectables).
88
+
89
+ Ejemplo: `/agent-workflow:export-tech-manuals --sessions 055,057,061` consolida sólo esas 3 sesiones.
90
+
91
+ ### Resolución de `--mode`
92
+
93
+ | Modo | Output | Cuándo usar |
94
+ |---|---|---|
95
+ | `complementar` (default) | `docs/manuales/INDEX.md` (sobrescribe) | Refresh del índice tras agregar manuales graduados |
96
+ | `regenerar` | `docs/manuales/NNN-export-tech-manuals-YYYY-MM-DD/` (next-number) | Paquete consolidado de manuales (ej. onboarding) |
97
+
98
+ ### Detección de temas
99
+
100
+ - **Fuente primaria**: `## Topics` o `## Temas` en OBJECTIVE.md de las sesiones del corpus.
101
+ - **Fuente secundaria**: inferencia por keywords en OBJECTIVE/CHECKPOINT (confidence > 0.6).
102
+ - **Override explícito**: `--temas slug1,slug2` limita a los slugs declarados.
103
+
104
+ ## Flujo
105
+
106
+ ### Paso 1 — Resolver contexto
107
+
108
+ ```
109
+ agent-workflow project-md-upsert --read
110
+ ```
111
+
112
+ Extrae `workspace_mode`, `fuentes[]`, `mode`. Determina root del workspace + path destino:
113
+ - `hub` → `<hub>/docs/manuales/`.
114
+ - `project` → `<cwd>/docs/manuales/`.
115
+
116
+ ### Paso 2 — Inspeccionar manuales graduados
117
+
118
+ Listar `docs/manuales/*.md` (excluyendo `INDEX.md` y subdirectorios `NNN-export-tech-manuals-*/`).
119
+
120
+ Para cada manual graduado, extraer:
121
+ - Slug (del filename `NNN-<slug>.md`).
122
+ - Título (primer `# ` header).
123
+ - Resumen breve (primer párrafo, ≤200 caracteres).
124
+ - Path canónico.
125
+
126
+ ### Paso 3 — Detectar temas/manuales no graduados
127
+
128
+ ```
129
+ agent-workflow history-data
130
+ ```
131
+
132
+ Para cada sesión cerrada del corpus filtrado por `--since` / `--source`:
133
+
134
+ ```
135
+ agent-workflow session-artifacts --code <CODE>
136
+ ```
137
+
138
+ Buscar:
139
+ - Sección `## Topics` / `## Temas` en OBJECTIVE.md → slug declarado.
140
+ - Archivo `MANUAL.md` dentro de la sesión (si existe).
141
+ - Keywords operativos en OBJECTIVE/CHECKPOINT que sugieran un manual: "configurar", "instalar", "wizard", "paso a paso", "cómo hacer", etc.
142
+
143
+ Listar temas detectados con (slug, confidence, sesiones de origen).
144
+
145
+ Filtrar por `--temas slug1,slug2` si está presente.
146
+
147
+ ### Paso 4 — Resolver modo
148
+
149
+ | Modo | Acción |
150
+ |---|---|
151
+ | `complementar` | Cargar `references/template-index.md` |
152
+ | `regenerar` | Cargar `references/template-manual.md` |
153
+
154
+ ### Paso 5 — Renderizar
155
+
156
+ **Modo `complementar`**:
157
+ - Cabecera: título + count de manuales totales (graduados + detectables).
158
+ - Tabla principal con columnas: Tema · Slug · Manual graduado (path o `[no graduado]`) · Sesiones de origen.
159
+ - Sección "Próximos pasos sugeridos" si hay temas con `[no graduado]`.
160
+
161
+ **Modo `regenerar`**:
162
+ - 1 archivo `.md` por tema en el dossier.
163
+ - Cada archivo sigue `template-manual.md`: Propósito · Pre-requisitos · Pasos numerados · Validación post-uso · Troubleshooting · Referencias.
164
+ - `README.md` del dossier con índice de manuales generados.
165
+
166
+ Aplicar `references/lexico-tecnico.md` durante el render (limpieza de noise).
167
+
168
+ ### Paso 6 — Validar (V1-V6)
169
+
170
+ `references/validations.md`. Reglas adaptadas a los 2 modos:
171
+ - V1 estructura por modo (INDEX con tabla principal vs dossier con N manuales completos).
172
+ - V2 noise vetado.
173
+ - V3 secciones de `template-manual.md` (sólo modo `regenerar`).
174
+ - V4 condicionales (modo `regenerar` con 0 temas → abort; modo `complementar` con 0 manuales → INDEX con nota).
175
+ - V5 header.
176
+ - V6 referencias resolubles (paths a manuales graduados).
177
+
178
+ Si V1, V3 o V4 fallan → abortar.
179
+
180
+ ### Paso 7 — Escribir output
181
+
182
+ Si `--dry-run`: imprimir reporte. No escribir.
183
+
184
+ Si pasa:
185
+ - `complementar`: `Write` sobre `docs/manuales/INDEX.md` (sobrescribe).
186
+ - `regenerar`: `agent-workflow next-number docs/manuales` → crear directorio + N archivos.
187
+
188
+ ### Paso 8 — Resumen al usuario
189
+
190
+ - Modo + paths escritos.
191
+ - Counts: manuales graduados detectados, temas no graduados detectables, manuales generados (modo `regenerar`).
192
+ - Warnings: V5/V6 si emitieron.
193
+ - Sugerencia: si hay temas detectables sin graduar, sugerir abrir sesiones dedicadas para producirlos formalmente.
194
+
195
+ ## Composición con otras skills
196
+
197
+ - **`agent-workflow:redaccion-simple`** — preset default aplicado durante el render.
198
+ - **`agent-workflow:rules`** — anchors transversales consultables.
199
+ - **`session`** — este skill NO invoca graduación ni cierre. Una sesión activa puede consumirlo durante validation/closure para refrescar INDEX tras graduar un nuevo manual.
200
+
201
+ ## Re-ejecución
202
+
203
+ - Modo `complementar`: idempotente — sobrescribe `INDEX.md`; dos invocaciones consecutivas con mismo corpus producen el mismo archivo.
204
+ - Modo `regenerar`: cada invocación toma siguiente NNN. No sobrescribe dossiers previos.
205
+
206
+ ## Recursos adicionales
207
+
208
+ - **`references/template-manual.md`** — estructura uniforme por manual (modo `regenerar`).
209
+ - **`references/template-index.md`** — estructura del `INDEX.md` consolidado (modo `complementar`).
210
+ - **`references/lexico-tecnico.md`** — noise mínimo vetado (idéntico patrón que export-arq).
211
+ - **`references/validations.md`** — V1-V6 con reglas por modo.
212
+ - **`docs/conclusiones/007-export-commands-family.md`** — Propuesta original (familia `/agent-workflow:export-*`).
213
+ - **`agent-workflow/skills/export-arq/SKILL.md`** — hermano (arquitectura técnica).
214
+ - **`agent-workflow/skills/export-report/SKILL.md`** — hermano (informe ejecutivo).