ostacky 0.1.3 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,6 +1,49 @@
1
1
  # Ostacky
2
2
 
3
- Ostacky es el agente de [OpenCode](https://opencode.ai) que instalás en tu proyecto. Orquesta **4 herramientas** para que trabajen en sinergia: [CodeGraph](https://github.com/colbymchenry/codegraph) entiende el código existente, [OpenSpec](https://github.com/Fission-AI/OpenSpec/) define requisitos y contratos, [Superpowers](https://github.com/obra/superpowers) ejecuta con TDD y review, y [Engram](https://github.com/Gentleman-Programming/engram) da memoria persistente entre sesiones. Ostacky las rutea según el nivel de impacto del cambio para ser eficiente con tokens y evitar recorrer todo el proyecto cuando no hace falta.
3
+ Ostacky es un **agent harness** para [OpenCode](https://opencode.ai). No es solo un agente más: es el orquestador que instalás en tu proyecto para que **5 herramientas** trabajen en sinergia sin pisarse y sin quemar tokens al pedo.
4
+
5
+ | Herramienta | Rol | Define |
6
+ | --------------------------------------------------------- | ------------------- | --------------------------------------------- |
7
+ | [CodeGraph](https://github.com/colbymchenry/codegraph) | Grafo de código | DÓNDE está el código y a quién impacta |
8
+ | [OpenSpec](https://github.com/Fission-AI/OpenSpec/) | Especificaciones | QUÉ hay que construir y POR QUÉ |
9
+ | [Superpowers](https://github.com/obra/superpowers) | Ejecución | CÓMO se implementa, prueba y revisa |
10
+ | [Engram](https://github.com/Gentleman-Programming/engram) | Memoria persistente | QUÉ aprendimos en sesiones anteriores |
11
+ | [Context7](https://context7.com) | Documentación viva | Documentación actualizada de librerías y APIs |
12
+
13
+ Ostacky las rutea según el **nivel de impacto del cambio** (Nivel 0, Nivel 0+1, Nivel 1+), priorizando siempre eficiencia de tokens y preguntándote antes de actuar.
14
+
15
+ ## Cómo empezar
16
+
17
+ Después de instalar Ostacky (con `npx ostacky install`), necesitás iniciar OpenCode para usarlo. Tenés dos formas:
18
+
19
+ ### Terminal UI (TUI) — recomendado para daily driving
20
+
21
+ ```bash
22
+ opencode
23
+ ```
24
+
25
+ Abre la interfaz de terminal interactiva. Seleccioná el agente `@Ostacky` desde el panel de agentes o escribí `/agent Ostacky`.
26
+
27
+ ### Web UI — para usar desde el navegador
28
+
29
+ ```bash
30
+ opencode web --port 4096
31
+ ```
32
+
33
+ Abre OpenCode en el navegador en `http://localhost:4096`. Útil para sesiones largas, trabajo en equipo o cuando querés compartir pantalla sin compartir terminal.
34
+
35
+ Opciones útiles:
36
+
37
+ | Comando | Qué hace |
38
+ | ----------------------------------------------- | --------------------------------------------------- |
39
+ | `opencode web` | Puerto aleatorio, abre el navegador automáticamente |
40
+ | `opencode web --port 4096` | Puerto fijo |
41
+ | `opencode web --hostname 0.0.0.0` | Accesible desde la red local |
42
+ | `opencode web --mdns` | Descubrible como `opencode.local` |
43
+ | `OPENCODE_SERVER_PASSWORD=secreta opencode web` | Con autenticación HTTP Basic |
44
+ | `opencode attach http://localhost:4096` | Conectar una terminal TUI a un servidor web activo |
45
+
46
+ > 💡 Si no tenés OpenCode instalado aún: `curl -fsSL https://opencode.ai/install | bash`
4
47
 
5
48
  ## ¿Qué es?
6
49
 
@@ -8,14 +51,7 @@ Ostacky es el agente de [OpenCode](https://opencode.ai) que instalás en tu proy
8
51
 
9
52
  ## Stack
10
53
 
11
- Ostacky no es solo un agente — es un **orquestador** que integra cuatro herramientas especializadas para que trabajen en conjunto sin pisarse:
12
-
13
- | Herramienta | Rol | Define |
14
- | ------------------------------------------------------------- | ------------------- | ------------------------------------------------ |
15
- | **[CodeGraph](https://github.com/colbymchenry/codegraph)** | Grafo de código | DÓNDE está el código y a quién impacta un cambio |
16
- | **[OpenSpec](https://github.com/Fission-AI/OpenSpec/)** | Especificaciones | QUÉ hay que construir y POR QUÉ |
17
- | **[Superpowers](https://github.com/obra/superpowers)** | Ejecución | CÓMO se implementa, prueba y revisa |
18
- | **[Engram](https://github.com/Gentleman-Programming/engram)** | Memoria persistente | QUÉ aprendimos en sesiones anteriores |
54
+ Ostacky integra **5 herramientas** especializadas para que trabajen en conjunto sin pisarse:
19
55
 
20
56
  ### Cómo trabajan en sinergia
21
57
 
@@ -23,6 +59,7 @@ Ostacky no es solo un agente — es un **orquestador** que integra cuatro herram
23
59
  2. **OpenSpec** documenta requisitos, contratos y escenarios de aceptación (proposal → design → spec → tasks).
24
60
  3. **Superpowers** ejecuta con TDD, testing automatizado y review (brainstorming → plans → tdd → review).
25
61
  4. **Engram** persiste decisiones, bugs y descubrimientos con `mem_save` para que el agente no pierda contexto entre sesiones ni necesite re-ejecutar tool calls.
62
+ 5. **Context7** provee documentación actualizada de librerías y APIs en tiempo real, sin depender de training data.
26
63
 
27
64
  Ostacky decide **cuándo y cómo** usar cada herramienta según el nivel de impacto del cambio (Nivel 0, Nivel 0+1, Nivel 1+), priorizando siempre eficiencia de tokens.
28
65
 
@@ -156,20 +193,20 @@ Tras instalar, el proyecto queda así:
156
193
 
157
194
  ```json
158
195
  {
159
- "version": "0.1.3",
196
+ "version": "0.2.0",
160
197
  "lockedAt": "2025-01-01T00:00:00.000Z",
161
198
  "repo": "JaimeHoracio/Ostacky",
162
- "tag": "v0.1.3",
199
+ "tag": "v0.2.0",
163
200
  "agents": {
164
201
  "ostacky": {
165
- "version": "0.1.3",
202
+ "version": "0.2.0",
166
203
  "installedAt": "2025-01-01T00:00:00.000Z",
167
204
  "sha256": "abc123..."
168
205
  }
169
206
  },
170
207
  "commands": {
171
208
  "install-stack": {
172
- "version": "0.1.3",
209
+ "version": "0.2.0",
173
210
  "installedAt": "2025-01-01T00:00:00.000Z",
174
211
  "sha256": "def456..."
175
212
  }
@@ -201,7 +238,7 @@ Ese paso es opcional. Si no aparece en la terminal, recargá OpenCode y volvé a
201
238
  ## Seguridad
202
239
 
203
240
  - `opencode.jsonc` se versiona en el repo para compartir permisos y MCP de forma reproducible.
204
- - Las URLs de descarga usan **tags de GitHub** (ej. `v0.1.3`), nunca `main` — instalaciones reproducibles
241
+ - Las URLs de descarga usan **tags de GitHub** (ej. `v0.2.0`), nunca `main` — instalaciones reproducibles
205
242
  - Cada path de archivo descargado es validado para prevenir **path traversal**
206
243
  - Los archivos incluyen **checksum SHA-256** opcional; si el manifest lo define, el contenido se verifica antes de escribir
207
244
  - El cache local (`~/.opencode/cache/`) también valida integridad al servir archivos cacheados
@@ -1,15 +1,6 @@
1
1
  ---
2
2
  description: Agente unico que orquesta OpenSpec + Superpowers + CodeGraph con ruteo inline-first por nivel de impacto y subagentes solo para trabajo realmente independiente.
3
3
  mode: primary
4
- tools:
5
- write: false
6
- edit: false
7
- bash: false
8
- webfetch: false
9
- glob: false
10
- grep: false
11
- patch: false
12
- computer: false
13
4
  ---
14
5
 
15
6
  Eres **Ostacky**, el orquestador de desarrollo del proyecto.
@@ -22,6 +13,16 @@ Eres **Ostacky**, el orquestador de desarrollo del proyecto.
22
13
  - **Superpowers:** ejecuta, prueba, revisa y delega.
23
14
  - **Subagentes:** workers de ejecucion para slices realmente independientes; no se usan en tareas livianas porque duplican contexto y tokens.
24
15
 
16
+ ## Regla de oro (obligatoria)
17
+
18
+ **Siempre describí tu interpretación del cambio al usuario ANTES de actuar.** No importa si te parece obvio o trivial. Mostrale qué entendés, a qué nivel de impacto corresponde y preguntale cómo proceder. Sin esa validación no ejecutes nada. El usuario es quien decide el camino.
19
+
20
+ Patrón obligatorio en cada interacción:
21
+ 1. **Interpretá** — "Entendé que querés [X]. Esto afecta a [archivos/áreas]. Lo clasifico como Nivel [0/0+1/1+] porque [razón breve]."
22
+ 2. **Preguntá** — "¿Estás de acuerdo? ¿Querés que genere spec con OpenSpec o lo ejecuto directo?"
23
+ 3. **Esperá** — No asumas respuesta. Si el usuario no responde, detenete y esperá.
24
+ 4. **Actuá** — Recién después de la confirmación, seguí el flujo correspondiente.
25
+
25
26
  ## Principios
26
27
 
27
28
  - **OpenSpec** define **WHAT** y **WHY**.
@@ -34,6 +35,15 @@ Eres **Ostacky**, el orquestador de desarrollo del proyecto.
34
35
 
35
36
  ## Flujo obligatorio
36
37
 
38
+ ### 0. Presentación (siempre ejecutar primero)
39
+
40
+ Este paso es **obligatorio antes de cualquier consulta técnica**. Sin excepción.
41
+
42
+ 1. Escuchá el pedido del usuario.
43
+ 2. Describí tu interpretación: qué entendés que hay que hacer, qué archivos/áreas están involucrados y por qué clasificás el cambio en ese nivel.
44
+ 3. Preguntá al usuario si está de acuerdo con la clasificación y si quiere spec o directo (adaptá la pregunta al nivel).
45
+ 4. Recién después de recibir confirmación explícita, pasá a Discovery.
46
+
37
47
  ### 1. Discovery
38
48
 
39
49
  1. Si existe un change activo, leer `proposal.md`, `design.md` y `tasks.md`.
@@ -43,25 +53,53 @@ Eres **Ostacky**, el orquestador de desarrollo del proyecto.
43
53
  5. Si falta contexto, usar `codegraph_trace` o `codegraph_node`.
44
54
  6. Si CodeGraph no devuelve una base suficiente para avanzar, detenerse y pedir un blocker concreto. No hacer repo-wide scan.
45
55
 
46
- ### 1.5. Nivel 0+1
56
+ ### 1.5. Clasificación por nivel
57
+
58
+ Después de CodeGraph, clasificá el cambio y preguntá al usuario. **Nunca asumas la respuesta.**
59
+
60
+ #### Nivel 0 (muy pequeño, <5 líneas, 1 archivo, sin cambios de API)
61
+
62
+ El cambio es trivial. Preguntá al usuario:
63
+
64
+ > "Esto es un cambio Nivel 0. ¿Lo ejecuto directo o preferís spec?"
65
+
66
+ - Si elige `directo`, saltá Specification y ejecutá inline.
67
+ - Si elige `spec`, seguí con Specification.
47
68
 
48
- 1. Un cambio es **Nivel 0+1** cuando, despues de consultar CodeGraph, parece pequeno pero no trivial: normalmente entre 5 y 10 lineas, sin archivos nuevos, sin cambios de API publica, sin dependencias nuevas y sin refactors amplios.
49
- 2. **CodeGraph es obligatorio antes de decidir**: `codegraph_context` y `codegraph_impact` siempre van primero.
50
- 3. Si el cambio cae en ese rango, preguntar al usuario: `Este cambio parece Nivel 0+1. Quieres que genere spec con OpenSpec o que lo ejecute directo?`
51
- 4. Si el usuario elige `spec`, seguir con Specification.
52
- 5. Si el usuario elige `directo`, saltar Specification y Planning, y ejecutar inline con Superpowers usando solo los archivos que CodeGraph justifico.
53
- 6. Si el usuario no responde, detenerse y esperar. No asumir un camino.
69
+ #### Nivel 0+1 (pequeño pero no trivial, 5-10 líneas, 1-2 archivos, sin API pública nueva)
54
70
 
55
- ### 1.6. Nivel 1+
71
+ Un cambio es **Nivel 0+1** cuando, después de consultar CodeGraph, parece pequeño pero no trivial: normalmente entre 5 y 10 líneas, sin archivos nuevos, sin cambios de API pública, sin dependencias nuevas y sin refactors amplios.
56
72
 
57
- 1. Un cambio es **Nivel 1+** cuando no entra en la definicion de Nivel 0+1.
58
- 2. Nivel 1+ requiere OpenSpec antes de ejecutar.
59
- 3. Si el cambio toca APIs publicas, agrega archivos nuevos, nuevas dependencias o refactors amplios, tratarlo como Nivel 1+ sin discusion.
73
+ Preguntá al usuario:
74
+
75
+ > "Esto parece Nivel 0+1. ¿Querés que genere spec con OpenSpec o que lo ejecute directo?"
76
+
77
+ - Si elige `spec`, seguí con Specification.
78
+ - Si elige `directo`, saltá Specification y Planning, y ejecutá inline con Superpowers usando solo los archivos que CodeGraph justificó.
79
+
80
+ #### Nivel 1+ (mediano/grande)
81
+
82
+ Un cambio es **Nivel 1+** cuando no entra en la definición de Nivel 0+1:
83
+ - Toca APIs públicas
84
+ - Agrega archivos nuevos
85
+ - Agrega dependencias nuevas
86
+ - Requiere refactors amplios
87
+ - Supera ~10 líneas
88
+
89
+ Nivel 1+ **requiere OpenSpec** antes de ejecutar. Comunicáselo al usuario:
90
+
91
+ > "Esto es un cambio Nivel 1+ porque [razón]. Necesito generar spec con OpenSpec antes de implementar. ¿Procedo?"
92
+
93
+ Si el usuario acepta, seguí con Specification.
94
+
95
+ #### Para todos los niveles
96
+
97
+ Si el usuario no responde, **detenete y esperá**. No asumas un camino.
60
98
 
61
99
  ### 2. Specification
62
100
 
63
101
  1. Si el usuario eligio `spec` y faltan artefactos OpenSpec, generarlos con `/opsx:propose <idea>`.
64
- 2. Si el usuario eligio `directo` para un cambio Nivel 0+1, saltar esta etapa.
102
+ 2. Si el usuario eligio `directo` (Nivel 0 o Nivel 0+1), saltar esta etapa.
65
103
  3. OpenSpec es la fuente de verdad para requisitos, limites y contratos del camino con spec.
66
104
  4. No inventar comportamiento fuera de `proposal.md`, `design.md` y `tasks.md`.
67
105
 
@@ -88,7 +126,7 @@ Eres **Ostacky**, el orquestador de desarrollo del proyecto.
88
126
  3. Si el proyecto no está inicializado, ejecutar primero `codegraph init -i`; después ejecutar `codegraph sync` para reflejar el estado real del codigo.
89
127
  4. Si el usuario eligio `spec`, ejecutar `/opsx:sync` para sincronizar los delta specs de OpenSpec.
90
128
  5. Si el usuario eligio `spec`, ejecutar `/opsx:archive` cuando el change este listo.
91
- 6. Si el usuario eligio `directo` para Nivel 0+1, no crear ni sincronizar un change OpenSpec.
129
+ 6. Si el usuario eligio `directo` (Nivel 0 o Nivel 0+1), no crear ni sincronizar un change OpenSpec.
92
130
  7. No marcar completo si falta tests, review, `codegraph sync` o, en el camino con spec, `opsx:sync`.
93
131
 
94
132
  ## Guardrails
@@ -104,6 +142,7 @@ Eres **Ostacky**, el orquestador de desarrollo del proyecto.
104
142
  - `opsx-sync` sincroniza OpenSpec. `codegraph sync` sincroniza el grafo. Son complementarios, no redundantes.
105
143
  - Este proyecto NO usa CLAUDE.md. Si un skill referencia CLAUDE.md, usar el override local en `assets/skills/<skill>/` que reemplaza esas referencias por AGENTS.md y `.opencode/`.
106
144
  - Browser/local URL use is never suggested proactively; it is only allowed when the user explicitly asks for browser/visual help, and the default is text-only to conserve tokens.
145
+ - Context7 está disponible para consultas de documentación de librerías/APIs. No intentes responder de memoria sobre APIs externas; usá Context7.
107
146
 
108
147
  ## Memoria persistente (Engram)
109
148
 
@@ -122,4 +161,9 @@ Engram es el sistema de memoria persistente del stack. Su uso es **obligatorio y
122
161
  - Ejecucion compleja: `subagent-driven-development` o `dispatching-parallel-agents`
123
162
  - Calidad y tests: `tdd`, `review`
124
163
  - OpenSpec: `openspec-explore`, `openspec-propose`, `openspec-apply-change`, `openspec-archive-change`
164
+ - Documentacion viva de librerias/APIs: `context7` (skill instalado por `npx ctx7 setup --opencode`)
125
165
  - Comandos: `/opsx:propose`, `/opsx:apply`, `/opsx:sync`, `/opsx:archive`
166
+
167
+ ### Cuándo usar Context7
168
+
169
+ Cuando el usuario pregunte por APIs, librerías, frameworks, sintaxis de herramientas externas o documentación actualizada — usá el skill de Context7. No intentes responder de memoria si hay una librería de por medio. Context7 trae la documentación oficial en tiempo real.
@@ -1,13 +1,13 @@
1
1
  ---
2
- description: Instala CodeGraph, skills curadas y OpenSpec localmente para OpenCode únicamente
2
+ description: Instala CodeGraph, skills curadas, OpenSpec, Engram y Context7 localmente para OpenCode únicamente
3
3
  agent: build
4
4
  ---
5
5
 
6
- Instala el stack tecnológico de desarrollo. NOTA: `npx ostacky install` ahora instala automáticamente CodeGraph, OpenSpec y Engram. Este comando queda como referencia/documentación para instalación manual o verificación.
6
+ Instala el stack tecnológico de desarrollo. NOTA: `npx ostacky install` ahora instala automáticamente CodeGraph, OpenSpec, Engram y Context7. Este comando queda como referencia/documentación para instalación manual o verificación.
7
7
 
8
8
  **RESTRICCIÓN ABSOLUTA:** instalar ÚNICAMENTE para OpenCode. Está terminantemente prohibido crear o modificar archivos en `.claude/`, `.kiro/`, `.cursor/`, `.gemini/`, `.codex/`, `.antigravity/`, `.windsurf/` o cualquier otro directorio de plataformas externas.
9
9
 
10
- **Origen del set curado:** el set de 10 skills (6 Superpowers + 4 OpenSpec) referenciado en `assets/agents/ostacky.md` está bundleado en `assets/skills/` dentro del paquete npm. La definición del set y su trazabilidad viven en `manifest.json` y `.opencode/ostacky-lock.json`.
10
+ **Origen del set curado:** el set de skills (6 Superpowers + 4 OpenSpec) referenciado en `assets/agents/ostacky.md` está bundleado en `assets/skills/` dentro del paquete npm. Context7 agrega su propio skill vía `npx ctx7 setup --opencode`. La definición del set y su trazabilidad viven en `manifest.json` y `.opencode/ostacky-lock.json`.
11
11
 
12
12
  ---
13
13
 
@@ -200,15 +200,108 @@ Corre en el puerto 7437 por defecto. Los datos se almacenan en `~/.engram/engram
200
200
 
201
201
  ---
202
202
 
203
+ ## Paso 6 — Context7
204
+
205
+ [Context7](https://context7.com) provee documentación actualizada de librerías y APIs directamente en el contexto del agente. Se instala como un CLI vía `npx`, sin dependencias globales ni MCP server necesario (aunque también soporta MCP).
206
+
207
+ **RESTRICCIÓN:** configurar ÚNICAMENTE para OpenCode. No crear archivos en `.claude/`, `.cursor/` ni otros directorios de otras plataformas.
208
+
209
+ ### Verificar instalación actual
210
+
211
+ Chequeá si Context7 ya está configurado para OpenCode:
212
+
213
+ ```bash
214
+ ls -la .opencode/skills/context7/ 2>/dev/null || echo "no-instalado"
215
+ ```
216
+
217
+ También podés verificar si el MCP server de Context7 está en `opencode.json`:
218
+
219
+ ```bash
220
+ grep -c "context7" opencode.json 2>/dev/null || echo "no-configurado"
221
+ ```
222
+
223
+ ### Instalar
224
+
225
+ **Opción recomendada — setup automático (CLI + skills):**
226
+
227
+ ```bash
228
+ npx ctx7 setup --opencode
229
+ ```
230
+
231
+ Este comando:
232
+ - Autentica vía OAuth y genera una API key
233
+ - Instala un skill en `.opencode/skills/context7/` que el agente Ostacky usa automáticamente
234
+ - Pregunta si preferís modo CLI + Skills o MCP
235
+ - **NO** toca `.claude/`, `.cursor/`, `.gemini/` ni ninguna otra plataforma
236
+
237
+ **Alternativa — solo MCP (si preferís el server remoto):**
238
+
239
+ Agregá manualmente la entrada MCP en `opencode.json`:
240
+
241
+ ```json
242
+ {
243
+ "mcp": {
244
+ "context7": {
245
+ "type": "remote",
246
+ "url": "https://mcp.context7.com/mcp"
247
+ }
248
+ }
249
+ }
250
+ ```
251
+
252
+ Si tenés una API key de Context7 (recomendado para mejores rate limits):
253
+
254
+ ```json
255
+ {
256
+ "mcp": {
257
+ "context7": {
258
+ "type": "remote",
259
+ "url": "https://mcp.context7.com/mcp",
260
+ "headers": {
261
+ "CONTEXT7_API_KEY": "{env:CONTEXT7_API_KEY}"
262
+ }
263
+ }
264
+ }
265
+ }
266
+ ```
267
+
268
+ ### Desinstalar
269
+
270
+ Para remover la configuración generada por `npx ctx7 setup`:
271
+
272
+ ```bash
273
+ npx ctx7 remove
274
+ ```
275
+
276
+ Esto elimina el skill y la configuración de Context7. Si instalaste el CLI globalmente con `npm install -g ctx7`, también necesitás:
277
+
278
+ ```bash
279
+ npm uninstall -g ctx7
280
+ ```
281
+
282
+ Para remover la entrada MCP manual, editá `opencode.json` y eliminá el bloque `mcp.context7`.
283
+
284
+ ### Cómo lo usa Ostacky
285
+
286
+ El skill de Context7 instalado le indica al agente Ostacky que use Context7 automáticamente cuando necesite documentación de librerías, APIs o frameworks. También se puede invocar explícitamente:
287
+
288
+ ```
289
+ usá context7 para mostrarme la API de autenticación de Supabase
290
+ use context7 to find Next.js 15 app router examples
291
+ ```
292
+
293
+ ---
294
+
203
295
  ## Verificación final
204
296
 
205
297
  Confirmá que:
206
298
 
207
- 1. `.opencode/skills/` contiene las 10 skills curadas (cada una con su `SKILL.md`; algunas traen `scripts/` y `references/`)
299
+ 1. `.opencode/skills/` contiene las skills curadas (6 Superpowers + 4 OpenSpec) y opcionalmente `context7/` si se instaló con `npx ctx7 setup --opencode`
208
300
  2. `.opencode/commands/` contiene los 5 opsx-* commands (`opsx-apply`, `opsx-archive`, `opsx-explore`, `opsx-propose`, `opsx-sync`)
209
301
  3. `opencode.json` (o `.jsonc`) tiene los bloques `mcp.codegraph` y `mcp.engram` — sin campo `plugin`
210
302
  4. `.codegraph/` existe en la raíz del proyecto (índice local de CodeGraph)
211
303
  5. `engram --version` funciona y `engram setup opencode` ya fue ejecutado
212
- 6. **NO existen** archivos generados en `.claude/`, `.kiro/`, `.cursor/`, `.gemini/`, `.codex/` ni ningún directorio de otra plataforma
304
+ 6. Context7 configurado: `ctx7 --version` disponible y/o `.opencode/skills/context7/SKILL.md` existe
305
+ 7. **NO existen** archivos generados en `.claude/`, `.kiro/`, `.cursor/`, `.gemini/`, `.codex/` ni ningún directorio de otra plataforma
213
306
 
214
307
  Reportá el estado de cada componente con ✓ o ✗.
package/dist/cli.js CHANGED
@@ -161,7 +161,7 @@ var require_picocolors = __commonJS((exports, module) => {
161
161
  // package.json
162
162
  var package_default = {
163
163
  name: "ostacky",
164
- version: "0.1.3",
164
+ version: "0.2.0",
165
165
  description: "Instalador interactivo de agentes y comandos para OpenCode",
166
166
  type: "module",
167
167
  bin: {
@@ -876,15 +876,15 @@ var L2 = () => {
876
876
  import { join as join5 } from "path";
877
877
  // manifest.json
878
878
  var manifest_default = {
879
- version: "0.1.3",
879
+ version: "0.2.0",
880
880
  repo: "JaimeHoracio/Ostacky",
881
- tag: "v0.1.3",
881
+ tag: "v0.2.0",
882
882
  agents: [
883
883
  {
884
884
  name: "ostacky",
885
885
  file: "assets/agents/ostacky.md",
886
886
  description: "Agente principal de desarrollo con ejecución inline-first y local-first",
887
- version: "0.1.3",
887
+ version: "0.2.0",
888
888
  sha256: null
889
889
  }
890
890
  ],
@@ -893,14 +893,14 @@ var manifest_default = {
893
893
  name: "install-stack",
894
894
  file: "assets/commands/install-stack.md",
895
895
  description: "Instala el stack tecnológico del proyecto",
896
- version: "0.1.3",
896
+ version: "0.2.0",
897
897
  sha256: null
898
898
  },
899
899
  {
900
900
  name: "opsx-sync",
901
901
  file: "assets/commands/opsx-sync.md",
902
902
  description: "Sincroniza delta specs del change activo (wrapper de openspec update)",
903
- version: "0.1.3",
903
+ version: "0.2.0",
904
904
  sha256: null
905
905
  }
906
906
  ],
@@ -909,70 +909,70 @@ var manifest_default = {
909
909
  name: "brainstorming",
910
910
  file: "assets/skills/brainstorming/SKILL.md",
911
911
  description: "Skill de descubrimiento y exploración (Superpowers)",
912
- version: "0.1.3",
912
+ version: "0.2.0",
913
913
  sha256: "ad15458c54912007ae3f708c698a11f0a4a58e2a7c7860a1ae8874db573c9e98"
914
914
  },
915
915
  {
916
916
  name: "writing-plans",
917
917
  file: "assets/skills/writing-plans/SKILL.md",
918
918
  description: "Skill de planificación de implementación (Superpowers)",
919
- version: "0.1.3",
919
+ version: "0.2.0",
920
920
  sha256: "4d675df944b9c846e9066ff971861ad1c9673cd2c88375081b00a75872ad621a"
921
921
  },
922
922
  {
923
923
  name: "tdd",
924
924
  file: "assets/skills/tdd/SKILL.md",
925
925
  description: "Skill de test-driven development (Superpowers)",
926
- version: "0.1.3",
926
+ version: "0.2.0",
927
927
  sha256: "7eacd8ee81dc5c0b85065c0392e37ee10314661f7edb59dd8e70a9e0dae8f371"
928
928
  },
929
929
  {
930
930
  name: "subagent-driven-development",
931
931
  file: "assets/skills/subagent-driven-development/SKILL.md",
932
932
  description: "Skill de ejecución con subagentes (Superpowers)",
933
- version: "0.1.3",
933
+ version: "0.2.0",
934
934
  sha256: "14e0f685b1dc1d7e02b7226d18f037fe4b6cba49b512a1fadf67cfad2a9dcc96"
935
935
  },
936
936
  {
937
937
  name: "dispatching-parallel-agents",
938
938
  file: "assets/skills/dispatching-parallel-agents/SKILL.md",
939
939
  description: "Skill de dispatch paralelo de agentes (Superpowers)",
940
- version: "0.1.3",
940
+ version: "0.2.0",
941
941
  sha256: "281edf0c38f358497c7e2066fa8217a2ba3e2a39b4205c4af0c41d328fc035a1"
942
942
  },
943
943
  {
944
944
  name: "review",
945
945
  file: "assets/skills/review/SKILL.md",
946
946
  description: "Skill de revisión de código (Superpowers)",
947
- version: "0.1.3",
947
+ version: "0.2.0",
948
948
  sha256: "c78d3beff45e9bb6b5e9e1d7155910f379e082d7aaf3c61b90d651d09e0d2e2a"
949
949
  },
950
950
  {
951
951
  name: "openspec-explore",
952
952
  file: "assets/skills/openspec-explore/SKILL.md",
953
953
  description: "Skill de exploración pre-spec (OpenSpec)",
954
- version: "0.1.3",
954
+ version: "0.2.0",
955
955
  sha256: "1c75cab8672c2eb8b12f27a0b31f0b7fdb73c21c72583c1e8a566e09fe4108a6"
956
956
  },
957
957
  {
958
958
  name: "openspec-propose",
959
959
  file: "assets/skills/openspec-propose/SKILL.md",
960
960
  description: "Skill de generación de proposal (OpenSpec)",
961
- version: "0.1.3",
961
+ version: "0.2.0",
962
962
  sha256: "ab88e9aa22db09559ccf7987d08adc0469b7c6fbe46498e63a3b64926f19e66b"
963
963
  },
964
964
  {
965
965
  name: "openspec-apply-change",
966
966
  file: "assets/skills/openspec-apply-change/SKILL.md",
967
967
  description: "Skill de aplicación de change (OpenSpec)",
968
- version: "0.1.3",
968
+ version: "0.2.0",
969
969
  sha256: "847c2f88a66e8d5946c1fec422a5367c89eca5340839b659bbaaeb6f0bdac487"
970
970
  },
971
971
  {
972
972
  name: "openspec-archive-change",
973
973
  file: "assets/skills/openspec-archive-change/SKILL.md",
974
974
  description: "Skill de archivo de change (OpenSpec)",
975
- version: "0.1.3",
975
+ version: "0.2.0",
976
976
  sha256: "3d35905ec40a081b8fd77b144426e540c67b1f50cc5801b655313a4fdfaa087a"
977
977
  }
978
978
  ]
@@ -1158,7 +1158,7 @@ function clearLockfile(opencodeRoot) {
1158
1158
  const lockfile = readLockfile(opencodeRoot);
1159
1159
  if (!lockfile) {
1160
1160
  writeLockfile(opencodeRoot, {
1161
- version: "0.1.3",
1161
+ version: "0.2.0",
1162
1162
  lockedAt: new Date().toISOString(),
1163
1163
  repo: "",
1164
1164
  tag: "",
package/manifest.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
- "version": "0.1.3",
2
+ "version": "0.2.0",
3
3
  "repo": "JaimeHoracio/Ostacky",
4
- "tag": "v0.1.3",
4
+ "tag": "v0.2.0",
5
5
  "agents": [
6
6
  {
7
7
  "name": "ostacky",
8
8
  "file": "assets/agents/ostacky.md",
9
9
  "description": "Agente principal de desarrollo con ejecución inline-first y local-first",
10
- "version": "0.1.3",
10
+ "version": "0.2.0",
11
11
  "sha256": null
12
12
  }
13
13
  ],
@@ -16,14 +16,14 @@
16
16
  "name": "install-stack",
17
17
  "file": "assets/commands/install-stack.md",
18
18
  "description": "Instala el stack tecnológico del proyecto",
19
- "version": "0.1.3",
19
+ "version": "0.2.0",
20
20
  "sha256": null
21
21
  },
22
22
  {
23
23
  "name": "opsx-sync",
24
24
  "file": "assets/commands/opsx-sync.md",
25
25
  "description": "Sincroniza delta specs del change activo (wrapper de openspec update)",
26
- "version": "0.1.3",
26
+ "version": "0.2.0",
27
27
  "sha256": null
28
28
  }
29
29
  ],
@@ -32,70 +32,70 @@
32
32
  "name": "brainstorming",
33
33
  "file": "assets/skills/brainstorming/SKILL.md",
34
34
  "description": "Skill de descubrimiento y exploración (Superpowers)",
35
- "version": "0.1.3",
35
+ "version": "0.2.0",
36
36
  "sha256": "ad15458c54912007ae3f708c698a11f0a4a58e2a7c7860a1ae8874db573c9e98"
37
37
  },
38
38
  {
39
39
  "name": "writing-plans",
40
40
  "file": "assets/skills/writing-plans/SKILL.md",
41
41
  "description": "Skill de planificación de implementación (Superpowers)",
42
- "version": "0.1.3",
42
+ "version": "0.2.0",
43
43
  "sha256": "4d675df944b9c846e9066ff971861ad1c9673cd2c88375081b00a75872ad621a"
44
44
  },
45
45
  {
46
46
  "name": "tdd",
47
47
  "file": "assets/skills/tdd/SKILL.md",
48
48
  "description": "Skill de test-driven development (Superpowers)",
49
- "version": "0.1.3",
49
+ "version": "0.2.0",
50
50
  "sha256": "7eacd8ee81dc5c0b85065c0392e37ee10314661f7edb59dd8e70a9e0dae8f371"
51
51
  },
52
52
  {
53
53
  "name": "subagent-driven-development",
54
54
  "file": "assets/skills/subagent-driven-development/SKILL.md",
55
55
  "description": "Skill de ejecución con subagentes (Superpowers)",
56
- "version": "0.1.3",
56
+ "version": "0.2.0",
57
57
  "sha256": "14e0f685b1dc1d7e02b7226d18f037fe4b6cba49b512a1fadf67cfad2a9dcc96"
58
58
  },
59
59
  {
60
60
  "name": "dispatching-parallel-agents",
61
61
  "file": "assets/skills/dispatching-parallel-agents/SKILL.md",
62
62
  "description": "Skill de dispatch paralelo de agentes (Superpowers)",
63
- "version": "0.1.3",
63
+ "version": "0.2.0",
64
64
  "sha256": "281edf0c38f358497c7e2066fa8217a2ba3e2a39b4205c4af0c41d328fc035a1"
65
65
  },
66
66
  {
67
67
  "name": "review",
68
68
  "file": "assets/skills/review/SKILL.md",
69
69
  "description": "Skill de revisión de código (Superpowers)",
70
- "version": "0.1.3",
70
+ "version": "0.2.0",
71
71
  "sha256": "c78d3beff45e9bb6b5e9e1d7155910f379e082d7aaf3c61b90d651d09e0d2e2a"
72
72
  },
73
73
  {
74
74
  "name": "openspec-explore",
75
75
  "file": "assets/skills/openspec-explore/SKILL.md",
76
76
  "description": "Skill de exploración pre-spec (OpenSpec)",
77
- "version": "0.1.3",
77
+ "version": "0.2.0",
78
78
  "sha256": "1c75cab8672c2eb8b12f27a0b31f0b7fdb73c21c72583c1e8a566e09fe4108a6"
79
79
  },
80
80
  {
81
81
  "name": "openspec-propose",
82
82
  "file": "assets/skills/openspec-propose/SKILL.md",
83
83
  "description": "Skill de generación de proposal (OpenSpec)",
84
- "version": "0.1.3",
84
+ "version": "0.2.0",
85
85
  "sha256": "ab88e9aa22db09559ccf7987d08adc0469b7c6fbe46498e63a3b64926f19e66b"
86
86
  },
87
87
  {
88
88
  "name": "openspec-apply-change",
89
89
  "file": "assets/skills/openspec-apply-change/SKILL.md",
90
90
  "description": "Skill de aplicación de change (OpenSpec)",
91
- "version": "0.1.3",
91
+ "version": "0.2.0",
92
92
  "sha256": "847c2f88a66e8d5946c1fec422a5367c89eca5340839b659bbaaeb6f0bdac487"
93
93
  },
94
94
  {
95
95
  "name": "openspec-archive-change",
96
96
  "file": "assets/skills/openspec-archive-change/SKILL.md",
97
97
  "description": "Skill de archivo de change (OpenSpec)",
98
- "version": "0.1.3",
98
+ "version": "0.2.0",
99
99
  "sha256": "3d35905ec40a081b8fd77b144426e540c67b1f50cc5801b655313a4fdfaa087a"
100
100
  }
101
101
  ]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ostacky",
3
- "version": "0.1.3",
3
+ "version": "0.2.0",
4
4
  "description": "Instalador interactivo de agentes y comandos para OpenCode",
5
5
  "type": "module",
6
6
  "bin": {