trackops 2.0.3 → 2.0.5

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 (103) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +695 -402
  3. package/bin/trackops.js +116 -116
  4. package/lib/config.js +326 -326
  5. package/lib/control.js +208 -208
  6. package/lib/env.js +244 -244
  7. package/lib/init.js +325 -325
  8. package/lib/locale.js +24 -0
  9. package/lib/opera-bootstrap.js +941 -874
  10. package/lib/opera.js +494 -477
  11. package/lib/preferences.js +74 -74
  12. package/lib/registry.js +214 -196
  13. package/lib/release.js +56 -56
  14. package/lib/runtime-state.js +144 -144
  15. package/lib/server.js +312 -207
  16. package/lib/skills.js +74 -57
  17. package/lib/workspace.js +260 -260
  18. package/locales/en.json +192 -166
  19. package/locales/es.json +192 -166
  20. package/package.json +61 -58
  21. package/scripts/postinstall-locale.js +21 -21
  22. package/scripts/skills-marketplace-smoke.js +124 -124
  23. package/scripts/smoke-tests.js +558 -554
  24. package/scripts/sync-skill-version.js +21 -21
  25. package/scripts/validate-skill.js +103 -103
  26. package/skills/trackops/SKILL.md +126 -122
  27. package/skills/trackops/agents/openai.yaml +7 -7
  28. package/skills/trackops/locales/en/SKILL.md +126 -122
  29. package/skills/trackops/locales/en/references/activation.md +94 -75
  30. package/skills/trackops/locales/en/references/troubleshooting.md +73 -55
  31. package/skills/trackops/locales/en/references/workflow.md +55 -32
  32. package/skills/trackops/references/activation.md +94 -75
  33. package/skills/trackops/references/troubleshooting.md +73 -55
  34. package/skills/trackops/references/workflow.md +55 -32
  35. package/skills/trackops/skill.json +29 -29
  36. package/templates/hooks/post-checkout +2 -2
  37. package/templates/hooks/post-commit +2 -2
  38. package/templates/hooks/post-merge +2 -2
  39. package/templates/opera/agent.md +28 -27
  40. package/templates/opera/architecture/dependency-graph.md +24 -24
  41. package/templates/opera/architecture/runtime-automation.md +24 -24
  42. package/templates/opera/architecture/runtime-operations.md +34 -34
  43. package/templates/opera/en/agent.md +22 -21
  44. package/templates/opera/en/architecture/dependency-graph.md +24 -24
  45. package/templates/opera/en/architecture/runtime-automation.md +24 -24
  46. package/templates/opera/en/architecture/runtime-operations.md +34 -34
  47. package/templates/opera/en/reviews/delivery-audit.md +18 -18
  48. package/templates/opera/en/reviews/integration-audit.md +18 -18
  49. package/templates/opera/en/router.md +24 -19
  50. package/templates/opera/references/autonomy-and-recovery.md +117 -117
  51. package/templates/opera/references/opera-cycle.md +193 -193
  52. package/templates/opera/registry.md +28 -28
  53. package/templates/opera/reviews/delivery-audit.md +18 -18
  54. package/templates/opera/reviews/integration-audit.md +18 -18
  55. package/templates/opera/router.md +54 -49
  56. package/templates/skills/changelog-updater/SKILL.md +69 -69
  57. package/templates/skills/commiter/SKILL.md +99 -99
  58. package/templates/skills/opera-contract-auditor/SKILL.md +38 -38
  59. package/templates/skills/opera-contract-auditor/locales/en/SKILL.md +38 -38
  60. package/templates/skills/opera-policy-guard/SKILL.md +26 -26
  61. package/templates/skills/opera-policy-guard/locales/en/SKILL.md +26 -26
  62. package/templates/skills/opera-skill/SKILL.md +279 -0
  63. package/templates/skills/opera-skill/locales/en/SKILL.md +279 -0
  64. package/templates/skills/opera-skill/locales/en/references/phase-dod.md +138 -0
  65. package/templates/skills/opera-skill/references/phase-dod.md +138 -0
  66. package/templates/skills/project-starter-skill/SKILL.md +150 -131
  67. package/templates/skills/project-starter-skill/locales/en/SKILL.md +143 -105
  68. package/templates/skills/project-starter-skill/references/opera-cycle.md +195 -193
  69. package/ui/css/base.css +284 -266
  70. package/ui/css/charts.css +425 -327
  71. package/ui/css/components.css +1107 -570
  72. package/ui/css/onboarding.css +133 -0
  73. package/ui/css/panels.css +345 -406
  74. package/ui/css/terminal.css +125 -0
  75. package/ui/css/timeline.css +58 -0
  76. package/ui/css/tokens.css +284 -227
  77. package/ui/favicon.svg +5 -5
  78. package/ui/index.html +99 -96
  79. package/ui/js/api.js +49 -13
  80. package/ui/js/app.js +28 -32
  81. package/ui/js/charts.js +526 -0
  82. package/ui/js/console-logger.js +172 -172
  83. package/ui/js/filters.js +247 -0
  84. package/ui/js/icons.js +129 -104
  85. package/ui/js/keyboard.js +229 -0
  86. package/ui/js/onboarding.js +33 -42
  87. package/ui/js/router.js +142 -125
  88. package/ui/js/theme.js +100 -100
  89. package/ui/js/time-tracker.js +248 -248
  90. package/ui/js/views/board.js +84 -114
  91. package/ui/js/views/dashboard.js +870 -0
  92. package/ui/js/views/flash.js +47 -47
  93. package/ui/js/views/projects.js +745 -0
  94. package/ui/js/views/scrum.js +476 -0
  95. package/ui/js/views/settings.js +153 -203
  96. package/ui/js/views/sidebar.js +37 -31
  97. package/ui/js/views/tasks.js +218 -101
  98. package/ui/js/views/timeline.js +265 -0
  99. package/ui/js/views/topbar.js +94 -107
  100. package/ui/app.js +0 -950
  101. package/ui/js/views/insights.js +0 -340
  102. package/ui/js/views/overview.js +0 -369
  103. package/ui/styles.css +0 -688
package/README.md CHANGED
@@ -1,402 +1,695 @@
1
- <p align="center">
2
- <img src="docs/assets/logo.svg" alt="TrackOps Logo" width="96" height="96" />
3
- </p>
4
-
5
- <h1 align="center">TrackOps</h1>
6
-
7
- <p align="center">
8
- <strong>Local orchestration and operational automation for projects built with AI agents.</strong>
9
- </p>
10
-
11
- <p align="center">
12
- <a href="https://www.npmjs.com/package/trackops"><img src="https://img.shields.io/npm/v/trackops?color=D97706&style=flat-square" alt="npm" /></a>
13
- <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-22C55E?style=flat-square" alt="MIT" /></a>
14
- <img src="https://img.shields.io/badge/node-%3E%3D18-333?style=flat-square" alt="Node 18+" />
15
- </p>
16
-
17
- <p align="center">
18
- <a href="#espanol">Espanol</a>&nbsp;&nbsp;·&nbsp;&nbsp;<a href="#english">English</a>&nbsp;&nbsp;·&nbsp;&nbsp;<a href="https://baxahaun.github.io/trackops/">Web</a>
19
- </p>
20
-
21
- ---
22
-
23
- ## Espanol
24
-
25
- TrackOps es un sistema local de orquestacion y automatizacion operativa para proyectos y desarrollo asistido por agentes IA.
26
-
27
- Hace tres cosas:
28
-
29
- 1. prepara al agente con una skill global
30
- 2. activa control operativo dentro de cada repo
31
- 3. media entre el usuario y el agente cuando el proyecto aun esta poco definido
32
-
33
- ### Modelo actual
34
-
35
- TrackOps trabaja en dos capas:
36
-
37
- 1. `skill global`
38
- se instala una vez en el agente
39
- 2. `runtime + activacion local`
40
- se instalan y ejecutan cuando decides gestionar una maquina y un repo concretos
41
-
42
- La activacion local tiene dos caminos:
43
-
44
- - `arranque asistido por agente`
45
- para ideas tempranas, usuarios poco tecnicos o documentacion insuficiente
46
- - `bootstrap directo`
47
- para proyectos ya definidos y usuarios tecnicos
48
-
49
- ### Instalacion global
50
-
51
- Instala la skill global:
52
-
53
- ```bash
54
- npx skills add Baxahaun/trackops
55
- ```
56
-
57
- Instala el runtime de forma explicita:
58
-
59
- ```bash
60
- npm install -g trackops
61
- trackops --version
62
- ```
63
-
64
- Esta separacion es intencional:
65
-
66
- - la skill se audita como capa de instrucciones
67
- - el runtime se instala con un paso visible y verificable
68
- - no hay instalacion transitiva oculta desde la propia skill
69
-
70
- ### Activacion local
71
-
72
- Dentro de un repo:
73
-
74
- ```bash
75
- trackops init
76
- trackops opera install
77
- ```
78
-
79
- Semantica:
80
-
81
- - `trackops init`
82
- activa TrackOps en el repo
83
- - `trackops opera install`
84
- anade OPERA cuando quieres el framework operativo completo
85
- - `trackops init --with-opera`
86
- existe como atajo
87
- - `trackops init --legacy-layout`
88
- existe solo por compatibilidad
89
-
90
- ### Workspace split
91
-
92
- Por defecto, TrackOps separa producto y operacion:
93
-
94
- ```text
95
- mi-proyecto/
96
- |- .trackops-workspace.json
97
- |- .env
98
- |- .env.example
99
- |- app/
100
- | \- ...producto real...
101
- \- ops/
102
- |- project_control.json
103
- |- contract/
104
- | \- operating-contract.json
105
- |- policy/
106
- | \- autonomy.json
107
- |- task_plan.md
108
- |- progress.md
109
- |- findings.md
110
- |- genesis.md
111
- |- bootstrap/
112
- |- .agent/
113
- |- .agents/
114
- |- .githooks/
115
- \- .tmp/
116
- ```
117
-
118
- Fuente de verdad operativa:
119
-
120
- - layout split: `ops/project_control.json`
121
- - layout legacy: `project_control.json`
122
-
123
- ### Dos formas de arrancar OPERA
124
-
125
- #### Tengo una idea
126
-
127
- Si el usuario no es tecnico, el proyecto esta en fase idea, o no hay documentacion suficiente, OPERA no sigue con preguntas de arquitectura en terminal. En su lugar:
128
-
129
- 1. pregunta nivel tecnico, estado del proyecto y documentacion disponible
130
- 2. genera un handoff en `ops/bootstrap/agent-handoff.md`
131
- 3. espera a que el agente produzca:
132
- - `ops/bootstrap/intake.json`
133
- - `ops/bootstrap/spec-dossier.md`
134
- - `ops/bootstrap/open-questions.md` si quedan huecos importantes
135
- 4. reanudas con:
136
-
137
- ```bash
138
- trackops opera bootstrap --resume
139
- ```
140
-
141
- #### Ya tengo un repo
142
-
143
- Si el usuario es tecnico y el proyecto ya tiene suficiente contexto, OPERA sigue por bootstrap directo, compila `ops/contract/operating-contract.json` y recompila `ops/genesis.md`.
144
-
145
- Tambien puedes forzar el modo:
146
-
147
- ```bash
148
- trackops opera install --bootstrap-mode handoff
149
- trackops opera install --bootstrap-mode direct
150
- ```
151
-
152
- Flags disponibles:
153
-
154
- - `--technical-level low|medium|high|senior`
155
- - `--project-state idea|draft|existing_repo|advanced`
156
- - `--docs-state none|notes|sos|spec_dossier|repo_docs`
157
- - `--decision-ownership user|shared|agent`
158
-
159
- ### Entorno y secretos
160
-
161
- TrackOps gestiona un contrato explicito de entorno:
162
-
163
- - `/.env`
164
- secretos reales del workspace
165
- - `/.env.example`
166
- contrato publico de variables
167
- - `app/.env`
168
- puente de compatibilidad
169
-
170
- Comandos:
171
-
172
- ```bash
173
- trackops env status
174
- trackops env sync
175
- ```
176
-
177
- TrackOps nunca imprime ni persiste valores sensibles en docs, dashboard o `project_control.json`.
178
-
179
- ### Idioma
180
-
181
- TrackOps puede trabajar con:
182
-
183
- - idioma global en `~/.trackops/runtime.json`
184
- - idioma por proyecto en `ops/project_control.json`
185
-
186
- Comandos:
187
-
188
- ```bash
189
- trackops locale get
190
- trackops locale set es
191
- trackops doctor locale
192
- ```
193
-
194
- ### CLI principal
195
-
196
- | Comando | Descripcion |
197
- |---|---|
198
- | `trackops init [--with-opera] [--locale es\|en] [--name "..."] [--no-bootstrap] [--legacy-layout]` | Inicializa TrackOps |
199
- | `trackops status` | Muestra estado operativo |
200
- | `trackops next` | Muestra la siguiente cola priorizada |
201
- | `trackops sync` | Regenera docs operativos |
202
- | `trackops workspace status` | Muestra layout y roots |
203
- | `trackops workspace migrate` | Migra un proyecto legacy |
204
- | `trackops env status` | Audita claves presentes y faltantes |
205
- | `trackops env sync` | Regenera `/.env`, `/.env.example` y el puente |
206
- | `trackops locale get\|set [es\|en]` | Lee o fija el idioma global |
207
- | `trackops doctor locale` | Explica el origen del idioma efectivo |
208
- | `trackops release [--push]` | Publica la rama configurada desde `app/` |
209
- | `trackops dashboard` | Lanza el dashboard local |
210
- | `trackops opera install [--bootstrap-mode ...] [--technical-level ...] [--project-state ...] [--docs-state ...] [--decision-ownership ...]` | Instala OPERA y decide la ruta de bootstrap |
211
- | `trackops opera bootstrap [--resume]` | Continua el bootstrap o ingiere el resultado del agente |
212
- | `trackops opera handoff [--print\|--json]` | Muestra el handoff listo para copiar al agente |
213
- | `trackops opera status` | Muestra estado de instalacion y bootstrap |
214
- | `trackops opera configure` | Reconfigura idioma o fases |
215
- | `trackops opera upgrade --stable [--reset]` | Reescribe artefactos gestionados a la version estable actual |
216
-
217
- ### Skills del proyecto
218
-
219
- Hay dos conceptos distintos:
220
-
221
- - la skill global `trackops`
222
- prepara al agente y guia el flujo
223
- - `trackops skill ...`
224
- gestiona skills nativas del proyecto en `ops/.agents/skills/`
225
-
226
- ### Publicacion
227
-
228
- Antes de publicar:
229
-
230
- ```bash
231
- trackops workspace status
232
- trackops env status
233
- npm run skill:validate
234
- npm run skill:smoke
235
- npm run release:check
236
- ```
237
-
238
- `trackops release` publica solo `app/`, incluye `.env.example` y no publica `/.env`, `ops/` ni `.trackops-workspace.json`.
239
-
240
- Guia ampliada: [UserGUIDE.md](./UserGUIDE.md)
241
-
242
- ---
243
-
244
- ## English
245
-
246
- TrackOps is a local orchestration and operational automation system for projects and AI-agent development.
247
-
248
- It does three things:
249
-
250
- 1. prepares the agent with a global skill
251
- 2. activates operational control inside each repository
252
- 3. mediates between the user and the agent when the project is still loosely defined
253
-
254
- ### Current model
255
-
256
- TrackOps works in two layers:
257
-
258
- 1. `global skill`
259
- installed once in the agent
260
- 2. `runtime + local activation`
261
- installed and used when you decide to manage a specific machine and repository
262
-
263
- Local activation has two paths:
264
-
265
- - `agent-led start`
266
- for early ideas, non-technical users, or weak documentation
267
- - `direct bootstrap`
268
- for already defined projects and technical users
269
-
270
- ### Global install
271
-
272
- Install the global skill:
273
-
274
- ```bash
275
- npx skills add Baxahaun/trackops
276
- ```
277
-
278
- Install the runtime explicitly:
279
-
280
- ```bash
281
- npm install -g trackops
282
- trackops --version
283
- ```
284
-
285
- This split is intentional:
286
-
287
- - the skill is audited as an instruction layer
288
- - the runtime is installed through a visible and verifiable step
289
- - there is no hidden transitive install from the skill itself
290
-
291
- ### Local activation
292
-
293
- Inside a repository:
294
-
295
- ```bash
296
- trackops init
297
- trackops opera install
298
- ```
299
-
300
- ### Split workspace
301
-
302
- TrackOps separates product and operations by default:
303
-
304
- ```text
305
- my-project/
306
- |- .trackops-workspace.json
307
- |- .env
308
- |- .env.example
309
- |- app/
310
- \- ops/
311
- |- project_control.json
312
- |- contract/
313
- | \- operating-contract.json
314
- |- policy/
315
- | \- autonomy.json
316
- |- task_plan.md
317
- |- progress.md
318
- |- findings.md
319
- |- genesis.md
320
- |- bootstrap/
321
- |- .agent/
322
- |- .agents/
323
- |- .githooks/
324
- \- .tmp/
325
- ```
326
-
327
- Operational source of truth:
328
-
329
- - split layout: `ops/project_control.json`
330
- - legacy layout: `project_control.json`
331
-
332
- ### Two ways to start OPERA
333
-
334
- #### I only have an idea
335
-
336
- If the user is not technical, the project is still in idea stage, or documentation is weak, OPERA does not keep asking architecture questions in the terminal. Instead it:
337
-
338
- 1. asks for technical level, project state, and available documentation
339
- 2. writes a handoff in `ops/bootstrap/agent-handoff.md`
340
- 3. waits for the agent to produce:
341
- - `ops/bootstrap/intake.json`
342
- - `ops/bootstrap/spec-dossier.md`
343
- - `ops/bootstrap/open-questions.md` when important gaps remain
344
- 4. resumes with:
345
-
346
- ```bash
347
- trackops opera bootstrap --resume
348
- ```
349
-
350
- #### I already have a repository
351
-
352
- If the user is technical and the project already has enough context, OPERA continues with direct bootstrap, compiles `ops/contract/operating-contract.json`, and recompiles `ops/genesis.md`.
353
-
354
- You can also force the mode:
355
-
356
- ```bash
357
- trackops opera install --bootstrap-mode handoff
358
- trackops opera install --bootstrap-mode direct
359
- ```
360
-
361
- ### Environment and secrets
362
-
363
- TrackOps manages:
364
-
365
- - `/.env`
366
- real workspace secrets
367
- - `/.env.example`
368
- public variable contract
369
- - `app/.env`
370
- compatibility bridge
371
-
372
- Use:
373
-
374
- ```bash
375
- trackops env status
376
- trackops env sync
377
- ```
378
-
379
- ### Language
380
-
381
- TrackOps can work with:
382
-
383
- - a global language in `~/.trackops/runtime.json`
384
- - a per-project language in `ops/project_control.json`
385
-
386
- Commands:
387
-
388
- ```bash
389
- trackops locale get
390
- trackops locale set en
391
- trackops doctor locale
392
- ```
393
-
394
- ### Main CLI
395
-
396
- Core and OPERA commands follow the same contract as the Spanish section above, including `trackops opera handoff`, `trackops opera bootstrap --resume`, and the explicit `npm install -g trackops` runtime step.
397
-
398
- ### Publishing
399
-
400
- `trackops release` publishes only `app/`, includes `.env.example`, and never publishes `/.env`, `ops/`, or `.trackops-workspace.json`.
401
-
402
- Extended guide: [UserGUIDE.md](./UserGUIDE.md)
1
+ <p align="center">
2
+ <img src="docs/assets/logo.svg" alt="TrackOps Logo" width="96" height="96" />
3
+ </p>
4
+
5
+ <h1 align="center">TrackOps</h1>
6
+
7
+ <p align="center">
8
+ <strong>Local control and coordination system for AI-agent software development.</strong>
9
+ </p>
10
+
11
+ <p align="center">
12
+ <a href="https://www.npmjs.com/package/trackops"><img src="https://img.shields.io/npm/v/trackops?color=D97706&style=flat-square" alt="npm" /></a>
13
+ <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-22C55E?style=flat-square" alt="MIT" /></a>
14
+ <img src="https://img.shields.io/badge/node-%3E%3D18-333?style=flat-square" alt="Node 18+" />
15
+ </p>
16
+
17
+ <p align="center">
18
+ <a href="#espanol">Espanol</a>&nbsp;&nbsp;·&nbsp;&nbsp;<a href="#english">English</a>&nbsp;&nbsp;·&nbsp;&nbsp;<a href="https://baxahaun.github.io/trackops/">Web</a>
19
+ </p>
20
+
21
+ ---
22
+
23
+ ## Espanol
24
+
25
+ TrackOps es un sistema local de control y coordinación para desarrollo de software con agentes IA. Pone estructura donde antes había improvisación.
26
+
27
+ Qué hace:
28
+
29
+ 1. prepara al agente con instrucciones claras (skill global)
30
+ 2. activa control operativo dentro de cada repositorio
31
+ 3. traduce ideas en proyectos ejecutables, aunque el usuario no sea técnico
32
+ 4. coordina un equipo de agentes especializados dentro de cada proyecto (skills de proyecto)
33
+
34
+ ### Cómo funciona
35
+
36
+ TrackOps trabaja en tres capas:
37
+
38
+ 1. `instrucciones para el agente`
39
+ la skill global se instala una vez
40
+ 2. `control local`
41
+ el runtime y la activación se ejecutan dentro de cada repositorio
42
+ 3. `equipo de proyecto`
43
+ al instalar OPERA, se activan agentes especializados que trabajan coordinados
44
+
45
+ La activación local tiene dos caminos:
46
+
47
+ - `arranque asistido por agente`
48
+ para ideas tempranas, usuarios poco técnicos o documentación insuficiente
49
+ - `bootstrap directo`
50
+ para proyectos ya definidos y usuarios técnicos
51
+
52
+ ### Instalacion global
53
+
54
+ Instala la skill global:
55
+
56
+ ```bash
57
+ npx skills add Baxahaun/trackops
58
+ ```
59
+
60
+ Instala el runtime de forma explicita:
61
+
62
+ ```bash
63
+ npm install -g trackops
64
+ trackops --version
65
+ ```
66
+
67
+ Esta separacion es intencional:
68
+
69
+ - la skill se audita como capa de instrucciones
70
+ - el runtime se instala con un paso visible y verificable
71
+ - no hay instalacion transitiva oculta desde la propia skill
72
+
73
+ Si `npm install -g trackops` se ejecuta en modo interactivo, TrackOps intenta pedir el idioma global en ese momento. Si tu terminal o npm no muestran ese prompt, puedes fijarlo manualmente despues:
74
+
75
+ ```bash
76
+ trackops locale set es
77
+ trackops locale set en
78
+ ```
79
+
80
+ ### Flujo completo recomendado
81
+
82
+ 1. Instala la skill global:
83
+
84
+ ```bash
85
+ npx skills add Baxahaun/trackops --skill trackops --agent "*" --global -y
86
+ ```
87
+
88
+ 2. Instala el runtime:
89
+
90
+ ```bash
91
+ npm install -g trackops@latest
92
+ trackops --version
93
+ ```
94
+
95
+ 3. Entra en el repo que quieres gestionar:
96
+
97
+ ```bash
98
+ cd ruta/a/tu/proyecto
99
+ ```
100
+
101
+ 4. Activa TrackOps y elige el idioma del proyecto cuando el CLI lo pida:
102
+
103
+ ```bash
104
+ trackops init
105
+ ```
106
+
107
+ 5. Instala OPERA:
108
+
109
+ ```bash
110
+ trackops opera install
111
+ ```
112
+
113
+ 6. Responde el intake inicial con estos valores:
114
+
115
+ - nivel tecnico:
116
+ `low|medium|high|senior`
117
+ tambien acepta `bajo|medio|alto`
118
+ - estado del proyecto:
119
+ `idea|draft|existing_repo|advanced`
120
+ - documentacion:
121
+ `none|notes|sos|spec_dossier|repo_docs`
122
+ - propiedad de decision:
123
+ `user|shared|agent`
124
+ tambien acepta `usuario|compartido|agente`
125
+
126
+ 7. Si OPERA deriva al agente:
127
+
128
+ ```bash
129
+ trackops opera handoff --print
130
+ ```
131
+
132
+ Pega ese contexto en el agente, deja que genere:
133
+
134
+ - `ops/bootstrap/intake.json`
135
+ - `ops/bootstrap/spec-dossier.md`
136
+ - `ops/bootstrap/open-questions.md` si faltan decisiones
137
+
138
+ Y despues reanuda:
139
+
140
+ ```bash
141
+ trackops opera bootstrap --resume
142
+ ```
143
+
144
+ 8. Si OPERA completa bootstrap directo, revisa estado y continua con:
145
+
146
+ ```bash
147
+ trackops opera status
148
+ trackops next
149
+ trackops sync
150
+ ```
151
+
152
+ ### Desinstalacion global y local
153
+
154
+ #### Quitar la instalacion global
155
+
156
+ Quita la skill global del agente:
157
+
158
+ ```bash
159
+ npx skills remove --global trackops -y
160
+ ```
161
+
162
+ Quita el runtime global:
163
+
164
+ ```bash
165
+ npm uninstall -g trackops
166
+ ```
167
+
168
+ Verifica:
169
+
170
+ ```bash
171
+ npx skills ls -g
172
+ trackops --version
173
+ ```
174
+
175
+ #### Quitar TrackOps de un proyecto
176
+
177
+ Hoy no existe un comando `trackops uninstall` para el repo. La retirada local es manual.
178
+
179
+ En un workspace split, revisa y elimina solo lo que de verdad quieras retirar:
180
+
181
+ - `.trackops-workspace.json`
182
+ - `ops/`
183
+ - `app/.env` si era solo bridge
184
+
185
+ Revisa con cuidado antes de borrar:
186
+
187
+ - `/.env`
188
+ - `/.env.example`
189
+
190
+ Esos archivos pueden seguir siendo utiles para tu proyecto aunque dejes de usar TrackOps.
191
+
192
+ ### Activacion local
193
+
194
+ Dentro de un repo:
195
+
196
+ ```bash
197
+ trackops init
198
+ trackops opera install
199
+ ```
200
+
201
+ Semantica:
202
+
203
+ - `trackops init`
204
+ activa TrackOps en el repo
205
+ - `trackops opera install`
206
+ anade OPERA cuando quieres el framework operativo completo
207
+ - `trackops init --with-opera`
208
+ existe como atajo
209
+ - `trackops init --legacy-layout`
210
+ existe solo por compatibilidad
211
+
212
+ ### Workspace split
213
+
214
+ Por defecto, TrackOps separa producto y operacion:
215
+
216
+ ```text
217
+ mi-proyecto/
218
+ |- .trackops-workspace.json
219
+ |- .env
220
+ |- .env.example
221
+ |- app/
222
+ | \- ...producto real...
223
+ \- ops/
224
+ |- project_control.json
225
+ |- contract/
226
+ | \- operating-contract.json
227
+ |- policy/
228
+ | \- autonomy.json
229
+ |- task_plan.md
230
+ |- progress.md
231
+ |- findings.md
232
+ |- genesis.md
233
+ |- bootstrap/
234
+ |- .agent/
235
+ |- .agents/
236
+ |- .githooks/
237
+ \- .tmp/
238
+ ```
239
+
240
+ Fuente de verdad operativa:
241
+
242
+ - layout split: `ops/project_control.json`
243
+ - layout legacy: `project_control.json`
244
+
245
+ ### Dos formas de arrancar OPERA
246
+
247
+ #### Tengo una idea
248
+
249
+ Si el usuario no es tecnico, el proyecto esta en fase idea, o no hay documentacion suficiente, OPERA no sigue con preguntas de arquitectura en terminal. En su lugar:
250
+
251
+ 1. pregunta nivel tecnico, estado del proyecto y documentacion disponible
252
+ 2. genera un handoff en `ops/bootstrap/agent-handoff.md`
253
+ 3. espera a que el agente produzca:
254
+ - `ops/bootstrap/intake.json`
255
+ - `ops/bootstrap/spec-dossier.md`
256
+ - `ops/bootstrap/open-questions.md` si quedan huecos importantes
257
+ 4. reanudas con:
258
+
259
+ ```bash
260
+ trackops opera bootstrap --resume
261
+ ```
262
+
263
+ La terminal tambien debe decirte este siguiente paso al terminar el handoff.
264
+
265
+ #### Ya tengo un repo
266
+
267
+ Si el usuario es tecnico y el proyecto ya tiene suficiente contexto, OPERA sigue por bootstrap directo, compila `ops/contract/operating-contract.json` y recompila `ops/genesis.md`.
268
+
269
+ Tambien puedes forzar el modo:
270
+
271
+ ```bash
272
+ trackops opera install --bootstrap-mode handoff
273
+ trackops opera install --bootstrap-mode direct
274
+ ```
275
+
276
+ Flags disponibles:
277
+
278
+ - `--technical-level low|medium|high|senior`
279
+ - `--project-state idea|draft|existing_repo|advanced`
280
+ - `--docs-state none|notes|sos|spec_dossier|repo_docs`
281
+ - `--decision-ownership user|shared|agent`
282
+
283
+ ### Entorno y secretos
284
+
285
+ TrackOps gestiona un contrato explicito de entorno:
286
+
287
+ - `/.env`
288
+ secretos reales del workspace
289
+ - `/.env.example`
290
+ contrato publico de variables
291
+ - `app/.env`
292
+ puente de compatibilidad
293
+
294
+ Comandos:
295
+
296
+ ```bash
297
+ trackops env status
298
+ trackops env sync
299
+ ```
300
+
301
+ TrackOps nunca imprime ni persiste valores sensibles en docs, dashboard o `project_control.json`.
302
+
303
+ ### Idioma
304
+
305
+ TrackOps puede trabajar con:
306
+
307
+ - idioma global en `~/.trackops/runtime.json`
308
+ - idioma por proyecto en `ops/project_control.json`
309
+
310
+ Comandos:
311
+
312
+ ```bash
313
+ trackops locale get
314
+ trackops locale set es
315
+ trackops doctor locale
316
+ ```
317
+
318
+ ### CLI principal
319
+
320
+ | Comando | Descripcion |
321
+ |---|---|
322
+ | `trackops init [--with-opera] [--locale es\|en] [--name "..."] [--no-bootstrap] [--legacy-layout]` | Inicializa TrackOps |
323
+ | `trackops status` | Muestra estado operativo |
324
+ | `trackops next` | Muestra la siguiente cola priorizada |
325
+ | `trackops sync` | Regenera docs operativos |
326
+ | `trackops workspace status` | Muestra layout y roots |
327
+ | `trackops workspace migrate` | Migra un proyecto legacy |
328
+ | `trackops env status` | Audita claves presentes y faltantes |
329
+ | `trackops env sync` | Regenera `/.env`, `/.env.example` y el puente |
330
+ | `trackops locale get\|set [es\|en]` | Lee o fija el idioma global |
331
+ | `trackops doctor locale` | Explica el origen del idioma efectivo |
332
+ | `trackops release [--push]` | Publica la rama configurada desde `app/` |
333
+ | `trackops dashboard` | Lanza el dashboard local |
334
+ | `trackops opera install [--bootstrap-mode ...] [--technical-level ...] [--project-state ...] [--docs-state ...] [--decision-ownership ...]` | Instala OPERA y decide la ruta de bootstrap |
335
+ | `trackops opera bootstrap [--resume]` | Continua el bootstrap o ingiere el resultado del agente |
336
+ | `trackops opera handoff [--print\|--json]` | Muestra el handoff listo para copiar al agente |
337
+ | `trackops opera status` | Muestra estado de instalacion y bootstrap |
338
+ | `trackops opera configure` | Reconfigura idioma o fases |
339
+ | `trackops opera upgrade --stable [--reset]` | Reescribe artefactos gestionados a la version estable actual |
340
+
341
+ ### Skills del proyecto
342
+
343
+ Hay tres niveles de skills en TrackOps:
344
+
345
+ 1. **Skill global** (`trackops`): se instala una vez en el agente. Explica qué es TrackOps y guía la activación de cada repositorio.
346
+ 2. **Coordinadora** (`opera-skill`): se instala automáticamente con OPERA. Decide qué hacer, en qué orden, cuándo delegar y cuándo frenar.
347
+ 3. **Especialistas**: se instalan con OPERA o manualmente. Cada una cubre un rol concreto.
348
+
349
+ Skills de proyecto instaladas automáticamente con OPERA:
350
+
351
+ - `opera-skill` — coordinadora operativa
352
+ - `project-starter-skill` descubrimiento y estructuración
353
+ - `opera-contract-auditor` — auditoría del contrato
354
+ - `opera-policy-guard` control de riesgo
355
+
356
+ Skills adicionales disponibles:
357
+
358
+ - `commiter` formato de commits
359
+ - `changelog-updater` — registro de cambios
360
+
361
+ Gestión:
362
+
363
+ ```bash
364
+ trackops skill list
365
+ trackops skill catalog
366
+ trackops skill install <nombre>
367
+ trackops skill remove <nombre>
368
+ ```
369
+
370
+ ### Publicacion
371
+
372
+ Antes de publicar:
373
+
374
+ ```bash
375
+ trackops workspace status
376
+ trackops env status
377
+ npm run skill:validate
378
+ npm run skill:smoke
379
+ npm run release:check
380
+ ```
381
+
382
+ `trackops release` publica solo `app/`, incluye `.env.example` y no publica `/.env`, `ops/` ni `.trackops-workspace.json`.
383
+
384
+ Guia ampliada: [UserGUIDE.md](./UserGUIDE.md)
385
+
386
+ ---
387
+
388
+ ## English
389
+
390
+ TrackOps is a local control and coordination system for AI-agent software development. It puts structure where there was improvisation.
391
+
392
+ What it does:
393
+
394
+ 1. prepares the agent with clear instructions (global skill)
395
+ 2. activates operational control inside each repository
396
+ 3. translates ideas into executable projects, even for non-technical users
397
+ 4. coordinates a team of specialized agents inside each project (project skills)
398
+
399
+ ### How it works
400
+
401
+ TrackOps works in three layers:
402
+
403
+ 1. `agent instructions`
404
+ the global skill is installed once
405
+ 2. `local control`
406
+ the runtime and activation run inside each repository
407
+ 3. `project team`
408
+ when you install OPERA, specialized agents are activated and work in coordination
409
+
410
+ Local activation has two paths:
411
+
412
+ - `agent-led start`
413
+ for early ideas, non-technical users, or weak documentation
414
+ - `direct bootstrap`
415
+ for already defined projects and technical users
416
+
417
+ ### Global install
418
+
419
+ Install the global skill:
420
+
421
+ ```bash
422
+ npx skills add Baxahaun/trackops
423
+ ```
424
+
425
+ Install the runtime explicitly:
426
+
427
+ ```bash
428
+ npm install -g trackops
429
+ trackops --version
430
+ ```
431
+
432
+ This split is intentional:
433
+
434
+ - the skill is audited as an instruction layer
435
+ - the runtime is installed through a visible and verifiable step
436
+ - there is no hidden transitive install from the skill itself
437
+
438
+ If `npm install -g trackops` runs interactively, TrackOps tries to ask for the global language at that moment. If your terminal or npm do not show that prompt, set it manually afterwards:
439
+
440
+ ```bash
441
+ trackops locale set es
442
+ trackops locale set en
443
+ ```
444
+
445
+ ### Recommended full flow
446
+
447
+ 1. Install the global skill:
448
+
449
+ ```bash
450
+ npx skills add Baxahaun/trackops --skill trackops --agent "*" --global -y
451
+ ```
452
+
453
+ 2. Install the runtime:
454
+
455
+ ```bash
456
+ npm install -g trackops@latest
457
+ trackops --version
458
+ ```
459
+
460
+ 3. Enter the repository you want to manage:
461
+
462
+ ```bash
463
+ cd path/to/your/project
464
+ ```
465
+
466
+ 4. Activate TrackOps and choose the project language when the CLI asks:
467
+
468
+ ```bash
469
+ trackops init
470
+ ```
471
+
472
+ 5. Install OPERA:
473
+
474
+ ```bash
475
+ trackops opera install
476
+ ```
477
+
478
+ 6. Answer the initial intake with these values:
479
+
480
+ - technical level:
481
+ `low|medium|high|senior`
482
+ - project state:
483
+ `idea|draft|existing_repo|advanced`
484
+ - documentation:
485
+ `none|notes|sos|spec_dossier|repo_docs`
486
+ - decision ownership:
487
+ `user|shared|agent`
488
+
489
+ 7. If OPERA routes to the agent:
490
+
491
+ ```bash
492
+ trackops opera handoff --print
493
+ ```
494
+
495
+ Paste that context into the agent and let it generate:
496
+
497
+ - `ops/bootstrap/intake.json`
498
+ - `ops/bootstrap/spec-dossier.md`
499
+ - `ops/bootstrap/open-questions.md` when decisions are still missing
500
+
501
+ Then resume with:
502
+
503
+ ```bash
504
+ trackops opera bootstrap --resume
505
+ ```
506
+
507
+ 8. If OPERA completes direct bootstrap, review status and continue with:
508
+
509
+ ```bash
510
+ trackops opera status
511
+ trackops next
512
+ trackops sync
513
+ ```
514
+
515
+ ### Local activation
516
+
517
+ Inside a repository:
518
+
519
+ ```bash
520
+ trackops init
521
+ trackops opera install
522
+ ```
523
+
524
+ ### Split workspace
525
+
526
+ TrackOps separates product and operations by default:
527
+
528
+ ```text
529
+ my-project/
530
+ |- .trackops-workspace.json
531
+ |- .env
532
+ |- .env.example
533
+ |- app/
534
+ \- ops/
535
+ |- project_control.json
536
+ |- contract/
537
+ | \- operating-contract.json
538
+ |- policy/
539
+ | \- autonomy.json
540
+ |- task_plan.md
541
+ |- progress.md
542
+ |- findings.md
543
+ |- genesis.md
544
+ |- bootstrap/
545
+ |- .agent/
546
+ |- .agents/
547
+ |- .githooks/
548
+ \- .tmp/
549
+ ```
550
+
551
+ Operational source of truth:
552
+
553
+ - split layout: `ops/project_control.json`
554
+ - legacy layout: `project_control.json`
555
+
556
+ ### Two ways to start OPERA
557
+
558
+ #### I only have an idea
559
+
560
+ If the user is not technical, the project is still in idea stage, or documentation is weak, OPERA does not keep asking architecture questions in the terminal. Instead it:
561
+
562
+ 1. asks for technical level, project state, and available documentation
563
+ 2. writes a handoff in `ops/bootstrap/agent-handoff.md`
564
+ 3. waits for the agent to produce:
565
+ - `ops/bootstrap/intake.json`
566
+ - `ops/bootstrap/spec-dossier.md`
567
+ - `ops/bootstrap/open-questions.md` when important gaps remain
568
+ 4. resumes with:
569
+
570
+ ```bash
571
+ trackops opera bootstrap --resume
572
+ ```
573
+
574
+ #### I already have a repository
575
+
576
+ If the user is technical and the project already has enough context, OPERA continues with direct bootstrap, compiles `ops/contract/operating-contract.json`, and recompiles `ops/genesis.md`.
577
+
578
+ You can also force the mode:
579
+
580
+ ```bash
581
+ trackops opera install --bootstrap-mode handoff
582
+ trackops opera install --bootstrap-mode direct
583
+ ```
584
+
585
+ ### Global and local removal
586
+
587
+ #### Remove the global install
588
+
589
+ Remove the global skill from the agent:
590
+
591
+ ```bash
592
+ npx skills remove --global trackops -y
593
+ ```
594
+
595
+ Remove the global runtime:
596
+
597
+ ```bash
598
+ npm uninstall -g trackops
599
+ ```
600
+
601
+ Verify:
602
+
603
+ ```bash
604
+ npx skills ls -g
605
+ trackops --version
606
+ ```
607
+
608
+ #### Remove TrackOps from a project
609
+
610
+ There is no `trackops uninstall` command for the repository yet. Local removal is manual.
611
+
612
+ In a split workspace, review and remove only what you really want to retire:
613
+
614
+ - `.trackops-workspace.json`
615
+ - `ops/`
616
+ - `app/.env` if it was only the compatibility bridge
617
+
618
+ Review carefully before deleting:
619
+
620
+ - `/.env`
621
+ - `/.env.example`
622
+
623
+ Those files may still be useful to the project even if you stop using TrackOps.
624
+
625
+ ### Environment and secrets
626
+
627
+ TrackOps manages:
628
+
629
+ - `/.env`
630
+ real workspace secrets
631
+ - `/.env.example`
632
+ public variable contract
633
+ - `app/.env`
634
+ compatibility bridge
635
+
636
+ Use:
637
+
638
+ ```bash
639
+ trackops env status
640
+ trackops env sync
641
+ ```
642
+
643
+ ### Language
644
+
645
+ TrackOps can work with:
646
+
647
+ - a global language in `~/.trackops/runtime.json`
648
+ - a per-project language in `ops/project_control.json`
649
+
650
+ Commands:
651
+
652
+ ```bash
653
+ trackops locale get
654
+ trackops locale set en
655
+ trackops doctor locale
656
+ ```
657
+
658
+ ### Project skills
659
+
660
+ There are three skill levels in TrackOps:
661
+
662
+ 1. **Global skill** (`trackops`): installed once in the agent. Explains what TrackOps is and guides repository activation.
663
+ 2. **Coordinator** (`opera-skill`): installed automatically with OPERA. Decides what to do, in what order, when to delegate, and when to stop.
664
+ 3. **Specialists**: installed with OPERA or manually. Each one covers a specific role.
665
+
666
+ Project skills installed automatically with OPERA:
667
+
668
+ - `opera-skill` — operational coordinator
669
+ - `project-starter-skill` — discovery and structuring
670
+ - `opera-contract-auditor` — contract audit
671
+ - `opera-policy-guard` — risk control
672
+
673
+ Additional skills available:
674
+
675
+ - `commiter` — commit formatting
676
+ - `changelog-updater` — changelog updates
677
+
678
+ Management:
679
+
680
+ ```bash
681
+ trackops skill list
682
+ trackops skill catalog
683
+ trackops skill install <name>
684
+ trackops skill remove <name>
685
+ ```
686
+
687
+ ### Main CLI
688
+
689
+ Core and OPERA commands follow the same contract as the Spanish section above, including `trackops opera handoff`, `trackops opera bootstrap --resume`, and the explicit `npm install -g trackops` runtime step.
690
+
691
+ ### Publishing
692
+
693
+ `trackops release` publishes only `app/`, includes `.env.example`, and never publishes `/.env`, `ops/`, or `.trackops-workspace.json`.
694
+
695
+ Extended guide: [UserGUIDE.md](./UserGUIDE.md)