ostacky 0.0.5 → 0.1.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,23 +1,45 @@
1
1
  # Ostacky
2
2
 
3
- Ostacky es el agente de [OpenCode](https://opencode.ai) que instalás en tu proyecto. Usa skills para ser más eficiente con tokens y evitar recorrer todo el proyecto cuando no hace falta. Los cambios se registran normalmente en specs con los skills de OpenSpec; si el cambio es de bajo impacto, podés saltearte esa generación.
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.
4
4
 
5
5
  ## ¿Qué es?
6
6
 
7
7
  `Ostacky` es el agente (`.opencode/agents/`) que se instala directamente desde GitHub Releases. Cada instalación queda registrada en un lockfile con versión y checksum, lo que permite actualizaciones controladas y reproducibles.
8
8
 
9
+ ## Stack
10
+
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 |
19
+
20
+ ### Cómo trabajan en sinergia
21
+
22
+ 1. **CodeGraph** descubre el alcance del cambio sin escanear el repo entero (consulta `codegraph_context`, `codegraph_impact`).
23
+ 2. **OpenSpec** documenta requisitos, contratos y escenarios de aceptación (proposal → design → spec → tasks).
24
+ 3. **Superpowers** ejecuta con TDD, testing automatizado y review (brainstorming → plans → tdd → review).
25
+ 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.
26
+
27
+ 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
+
9
29
  ## ¿Para qué sirve?
10
30
 
11
31
  - Instalar el agente `Ostacky` en cualquier proyecto con un solo comando.
12
32
  - Mantener un registro de qué versión está instalada (`ostacky-lock.json`)
13
33
  - Detectar y aplicar actualizaciones mostrando el diff de versiones antes de confirmar
14
34
  - Evitar descargas repetidas gracias al cache local en `~/.opencode/cache/`
35
+ - Resolver tareas chicas sin overhead extra de coordinación.
15
36
 
16
37
  ## Requisitos
17
38
 
18
39
  - [Node.js](https://nodejs.org/) >= 18 (para usar con `npx`)
19
40
  - o [Bun](https://bun.sh/) >= 1.x (para usar con `bunx` o desarrollo)
20
41
  - [OpenCode](https://opencode.ai) instalado en tu máquina
42
+ - **WSL:** Si usás Windows con WSL, seguí las instrucciones para **Linux** — WSL corre un kernel Linux real. No uses los comandos de PowerShell aunque estés en Windows.
21
43
 
22
44
  ## Uso rápido (para usuarios)
23
45
 
@@ -134,20 +156,20 @@ Tras instalar, el proyecto queda así:
134
156
 
135
157
  ```json
136
158
  {
137
- "version": "0.0.5",
159
+ "version": "0.1.0",
138
160
  "lockedAt": "2025-01-01T00:00:00.000Z",
139
161
  "repo": "JaimeHoracio/Ostacky",
140
- "tag": "v0.0.5",
162
+ "tag": "v0.1.0",
141
163
  "agents": {
142
164
  "ostacky": {
143
- "version": "0.0.5",
165
+ "version": "0.1.0",
144
166
  "installedAt": "2025-01-01T00:00:00.000Z",
145
167
  "sha256": "abc123..."
146
168
  }
147
169
  },
148
170
  "commands": {
149
171
  "install-stack": {
150
- "version": "0.0.5",
172
+ "version": "0.1.0",
151
173
  "installedAt": "2025-01-01T00:00:00.000Z",
152
174
  "sha256": "def456..."
153
175
  }
@@ -178,15 +200,17 @@ Ese paso es opcional. Si no aparece en la terminal, recargá OpenCode y volvé a
178
200
 
179
201
  ## Seguridad
180
202
 
181
- - Las URLs de descarga usan **tags de GitHub** (ej. `v0.0.5`), nunca `main` instalaciones reproducibles
203
+ - `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.0`), nunca `main` — instalaciones reproducibles
182
205
  - Cada path de archivo descargado es validado para prevenir **path traversal**
183
206
  - Los archivos incluyen **checksum SHA-256** opcional; si el manifest lo define, el contenido se verifica antes de escribir
184
207
  - El cache local (`~/.opencode/cache/`) también valida integridad al servir archivos cacheados
185
208
 
186
209
  #### Restricciones de acceso a credenciales
187
210
 
188
- - La configuración local de OpenCode (`opencode.jsonc`, por ahora no versionado) bloquea lectura y escritura de `*.env` y `.secret/**` con `deny`.
211
+ - La configuración local de OpenCode (`opencode.jsonc`) bloquea lectura y escritura de `*.env` y `.secret/**` con `deny`.
189
212
  - La sesión sigue ejecutándose después del bloqueo porque `experimental.continue_loop_on_deny` está activado.
213
+ - Para worktrees, el repo prefiere `.worktrees/`; `~/.config/superpowers/worktrees` solo se usa con confirmación explícita.
190
214
 
191
215
  ## Cache
192
216
 
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: Agente unico que orquesta OpenSpec + Superpowers + CodeGraph con ruteo por nivel de impacto y sin recursion de delegacion.
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
4
  tools:
5
5
  write: false
@@ -20,7 +20,7 @@ Eres **Ostacky**, el orquestador de desarrollo del proyecto.
20
20
  - **Ruteo interno:** decide si el cambio es Nivel 0, Nivel 0+1 o Nivel 1+.
21
21
  - **OpenSpec:** define requisitos y contratos cuando el cambio lo requiere.
22
22
  - **Superpowers:** ejecuta, prueba, revisa y delega.
23
- - **Subagentes:** workers de ejecucion para trabajo pesado; no son una interfaz publica separada.
23
+ - **Subagentes:** workers de ejecucion para slices realmente independientes; no se usan en tareas livianas porque duplican contexto y tokens.
24
24
 
25
25
  ## Principios
26
26
 
@@ -75,10 +75,11 @@ Eres **Ostacky**, el orquestador de desarrollo del proyecto.
75
75
 
76
76
  1. Elegir el modo antes de ejecutar:
77
77
  - **Inline** para Nivel 0, la ruta `directo` de Nivel 0+1 y cambios contenidos de Nivel 1+.
78
- - **Subagent-driven** solo si el Nivel 1+ supera 2 modulos, 10 archivos, o backend + frontend + tests con logica independiente.
78
+ - **Subagent-driven** solo si la tarea se puede partir en slices autonomos con briefs mucho mas chicos que el contexto del coordinador y sin estado compartido.
79
79
  2. **Superpowers** es el unico orquestador de ejecucion, TDD, review y delegacion.
80
80
  3. Los subagentes son **execution-only**.
81
- 4. Los subagentes no crean proposals, no planifican, no inician nueva delegacion y no repiten retrieval ya resuelto por el coordinador.
81
+ 4. Los subagentes no se usan para "hacerlo mas rapido" por defecto: se usan para aislar complejidad cuando eso reduce contexto total.
82
+ 5. Los subagentes no crean proposals, no planifican, no inician nueva delegacion y no repiten retrieval ya resuelto por el coordinador.
82
83
 
83
84
  ### 5. Sync y cierre
84
85
 
@@ -94,6 +95,7 @@ Eres **Ostacky**, el orquestador de desarrollo del proyecto.
94
95
 
95
96
  - Si una decision ya esta en OpenSpec o en CodeGraph, no volver a resolverla.
96
97
  - Si hay conflicto entre intuicion y CodeGraph, gana CodeGraph.
98
+ - Si una tarea cabe en un brief corto y un solo contexto, no lanzar subagentes.
97
99
  - No usar glob/grep para descubrir el repositorio entero.
98
100
  - No navegar el proyecto siguiendo imports uno por uno para descubrir alcance.
99
101
  - No repetir la misma consulta si ya fue suficiente para resolver el scope.
@@ -101,6 +103,17 @@ Eres **Ostacky**, el orquestador de desarrollo del proyecto.
101
103
  - El set curado de skills vive en `assets/skills/` y `.opencode/skills/`. No depender del plugin upstream `superpowers@git+...` en runtime.
102
104
  - `opsx-sync` sincroniza OpenSpec. `codegraph sync` sincroniza el grafo. Son complementarios, no redundantes.
103
105
  - 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
+ - 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.
107
+
108
+ ## Memoria persistente (Engram)
109
+
110
+ Engram es el sistema de memoria persistente del stack. Su uso es **obligatorio y proactivo** — no esperes a que te lo pidan:
111
+
112
+ 1. **`mem_save` después de cada paso significativo** — arquitectura, decisiones, bugs, patrones, descubrimientos. Guardalos inmediatamente después de completar el paso.
113
+
114
+ 2. **`mem_search` proactivo al inicio de cada tarea** — si el usuario menciona algo que ya se trabajó antes, o si vas a trabajar en un área con trabajo previo, buscá en Engram primero. No asumas que no hay contexto.
115
+
116
+ 3. **Razonamiento para reducir tokens:** "Engram saves después de cada paso significativo — `mem_save` persiste 'ya hice X con estos resultados' y si vuelvo a preguntar 'qué hice?', tengo la respuesta sin re-ejecutar." Esto evita tool calls redundantes para recuperar contexto propio, reduciendo drásticamente el consumo de tokens en sesiones largas.
104
117
 
105
118
  ## Skills y comandos de referencia
106
119
 
@@ -108,14 +108,107 @@ openspec update
108
108
 
109
109
  ---
110
110
 
111
+ ## Paso 5 — Engram
112
+
113
+ [Engram](https://github.com/Gentleman-Programming/engram) es el sistema de memoria persistente para agentes de IA. Se instala como un único binario Go con SQLite + FTS5, sin Node.js, Python ni Docker.
114
+
115
+ **RESTRICCIÓN:** configurar ÚNICAMENTE para OpenCode. No crear archivos en `.claude/`, `.cursor/` ni otros directorios de otras plataformas.
116
+
117
+ ### Verificar instalación actual
118
+
119
+ Chequeá si Engram ya está disponible:
120
+
121
+ ```bash
122
+ engram --version 2>/dev/null || echo "no-instalado"
123
+ ```
124
+
125
+ #### Si ya está instalado
126
+
127
+ Si el comando devuelve una versión, Engram ya está en el sistema. Verificá si es la más reciente comparando con la [última release en GitHub](https://github.com/Gentleman-Programming/engram/releases).
128
+
129
+ Si está desactualizado, actualizá según cómo lo instalaste originalmente:
130
+
131
+ - **go install:** `go install github.com/Gentleman-Programming/engram/cmd/engram@latest`
132
+ - **Homebrew:** `brew update && brew upgrade engram`
133
+ - **Binario propio:** descargá la nueva versión desde [releases](https://github.com/Gentleman-Programming/engram/releases) y reemplazá el binario
134
+
135
+ Luego de actualizar, saltá directo a [Configurar para OpenCode](#configurar-para-opencode) — no necesitás reinstalar.
136
+
137
+ #### Si no está instalado
138
+
139
+ Preferí métodos de instalación local antes que global:
140
+
141
+ **Opción recomendada — `go install` (local por usuario, sin sudo):**
142
+
143
+ ```bash
144
+ go install github.com/Gentleman-Programming/engram/cmd/engram@latest
145
+ ```
146
+
147
+ El binario se instala en `$GOPATH/bin/engram` (usualmente `~/go/bin/engram`).
148
+
149
+ **Alternativa — Homebrew (macOS/Linux):**
150
+
151
+ ```bash
152
+ brew install gentleman-programming/tap/engram
153
+ ```
154
+
155
+ **Alternativa — binario en el proyecto (máxima localidad):**
156
+
157
+ ```bash
158
+ mkdir -p .opencode/bin
159
+ # Descargar el binario desde https://github.com/Gentleman-Programming/engram/releases
160
+ # y colocarlo en .opencode/bin/engram, luego:
161
+ chmod +x .opencode/bin/engram
162
+ ```
163
+
164
+ ### Configurar para OpenCode
165
+
166
+ Una vez que Engram está instalado (ya sea porque ya lo tenías, lo actualizaste o lo instalaste ahora), ejecutá el setup que lo registra exclusivamente para OpenCode:
167
+
168
+ ```bash
169
+ engram setup opencode
170
+ ```
171
+
172
+ Este comando:
173
+ - Agrega el MCP server de Engram en `opencode.json` (tipo `local`, comando `engram mcp`)
174
+ - Instala el plugin de Engram para OpenCode
175
+ - **NO** toca `.claude/`, `.cursor/`, `.gemini/` ni ninguna otra plataforma
176
+
177
+ Verificá que `opencode.json` contenga la entrada MCP de Engram:
178
+
179
+ ```json
180
+ {
181
+ "mcp": {
182
+ "engram": {
183
+ "type": "local",
184
+ "command": ["engram", "mcp"],
185
+ "enabled": true
186
+ }
187
+ }
188
+ }
189
+ ```
190
+
191
+ ### Session tracking
192
+
193
+ El plugin de Engram para OpenCode usa `engram serve` para session tracking y recuperación ante compaction. El plugin intenta auto-iniciar el servidor, pero si tu entorno bloquea procesos en background, iniciálo manualmente:
194
+
195
+ ```bash
196
+ engram serve
197
+ ```
198
+
199
+ Corre en el puerto 7437 por defecto. Los datos se almacenan en `~/.engram/engram.db` (SQLite local).
200
+
201
+ ---
202
+
111
203
  ## Verificación final
112
204
 
113
205
  Confirmá que:
114
206
 
115
207
  1. `.opencode/skills/` contiene las 10 skills curadas (cada una con su `SKILL.md`; algunas traen `scripts/` y `references/`)
116
208
  2. `.opencode/commands/` contiene los 5 opsx-* commands (`opsx-apply`, `opsx-archive`, `opsx-explore`, `opsx-propose`, `opsx-sync`)
117
- 3. `opencode.json` (o `.jsonc`) tiene **solamente** el bloque `mcp.codegraph` — sin campo `plugin`
209
+ 3. `opencode.json` (o `.jsonc`) tiene los bloques `mcp.codegraph` y `mcp.engram` — sin campo `plugin`
118
210
  4. `.codegraph/` existe en la raíz del proyecto (índice local de CodeGraph)
119
- 5. **NO existen** archivos generados en `.claude/`, `.kiro/`, `.cursor/`, `.gemini/`, `.codex/` ni ningún directorio de otra plataforma
211
+ 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
120
213
 
121
214
  Reportá el estado de cada componente con ✓ o ✗.
@@ -22,7 +22,7 @@ Every project goes through this process. A todo list, a single-function utility,
22
22
  You MUST create a task for each of these items and complete them in order:
23
23
 
24
24
  1. **Explore project context** — check files, docs, recent commits
25
- 2. **Offer visual companion** (if topic will involve visual questions) this is its own message, not combined with a clarifying question. See the Visual Companion section below.
25
+ 2. **Use visual companion only when the user explicitly asks for browser/visual help** read the Visual Companion section below before doing so.
26
26
  3. **Ask clarifying questions** — one at a time, understand purpose/constraints/success criteria
27
27
  4. **Propose 2-3 approaches** — with trade-offs and your recommendation
28
28
  5. **Present design** — in sections scaled to their complexity, get user approval after each section
@@ -36,8 +36,8 @@ You MUST create a task for each of these items and complete them in order:
36
36
  ```dot
37
37
  digraph brainstorming {
38
38
  "Explore project context" [shape=box];
39
- "Visual questions ahead?" [shape=diamond];
40
- "Offer Visual Companion\n(own message, no other content)" [shape=box];
39
+ "User explicitly asks for browser/visual help?" [shape=diamond];
40
+ "Read Visual Companion guide" [shape=box];
41
41
  "Ask clarifying questions" [shape=box];
42
42
  "Propose 2-3 approaches" [shape=box];
43
43
  "Present design sections" [shape=box];
@@ -47,10 +47,10 @@ digraph brainstorming {
47
47
  "User reviews spec?" [shape=diamond];
48
48
  "Invoke writing-plans skill" [shape=doublecircle];
49
49
 
50
- "Explore project context" -> "Visual questions ahead?";
51
- "Visual questions ahead?" -> "Offer Visual Companion\n(own message, no other content)" [label="yes"];
52
- "Visual questions ahead?" -> "Ask clarifying questions" [label="no"];
53
- "Offer Visual Companion\n(own message, no other content)" -> "Ask clarifying questions";
50
+ "Explore project context" -> "User explicitly asks for browser/visual help?";
51
+ "User explicitly asks for browser/visual help?" -> "Read Visual Companion guide" [label="yes"];
52
+ "User explicitly asks for browser/visual help?" -> "Ask clarifying questions" [label="no"];
53
+ "Read Visual Companion guide" -> "Ask clarifying questions";
54
54
  "Ask clarifying questions" -> "Propose 2-3 approaches";
55
55
  "Propose 2-3 approaches" -> "Present design sections";
56
56
  "Present design sections" -> "User approves design?";
@@ -146,19 +146,8 @@ Wait for the user's response. If they request changes, make them and re-run the
146
146
 
147
147
  ## Visual Companion
148
148
 
149
- A browser-based companion for showing mockups, diagrams, and visual options during brainstorming. Available as a tool — not a mode. Accepting the companion means it's available for questions that benefit from visual treatment; it does NOT mean every question goes through the browser.
149
+ Browser use is text-only by default.
150
150
 
151
- **Offering the companion:** When you anticipate that upcoming questions will involve visual content (mockups, layouts, diagrams), offer it once for consent:
152
- > "Some of what we're working on might be easier to explain if I can show it to you in a web browser. I can put together mockups, diagrams, comparisons, and other visuals as we go. This feature is still new and can be token-intensive. Want to try it? (Requires opening a local URL)"
153
-
154
- **This offer MUST be its own message.** Do not combine it with clarifying questions, context summaries, or any other content. The message should contain ONLY the offer above and nothing else. Wait for the user's response before continuing. If they decline, proceed with text-only brainstorming.
155
-
156
- **Per-question decision:** Even after the user accepts, decide FOR EACH QUESTION whether to use the browser or the terminal. The test: **would the user understand this better by seeing it than reading it?**
157
-
158
- - **Use the browser** for content that IS visual — mockups, wireframes, layout comparisons, architecture diagrams, side-by-side visual designs
159
- - **Use the terminal** for content that is text — requirements questions, conceptual choices, tradeoff lists, A/B/C/D text options, scope decisions
160
-
161
- A question about a UI topic is not automatically a visual question. "What does personality mean in this context?" is a conceptual question — use the terminal. "Which wizard layout works better?" is a visual question — use the browser.
162
-
163
- If they agree to the companion, read the detailed guide before proceeding:
164
- `skills/brainstorming/visual-companion.md`
151
+ - Only use the browser when the user explicitly asks for browser/visual help.
152
+ - Do not suggest the browser just because it might explain something more clearly.
153
+ - If the user asks for browser/visual help, read `skills/brainstorming/visual-companion.md` before proceeding.
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.0.5",
164
+ version: "0.1.0",
165
165
  description: "Instalador interactivo de agentes y comandos para OpenCode",
166
166
  type: "module",
167
167
  bin: {
@@ -877,15 +877,15 @@ var L2 = () => {
877
877
  import { join as join5 } from "path";
878
878
  // manifest.json
879
879
  var manifest_default = {
880
- version: "0.0.5",
880
+ version: "0.1.0",
881
881
  repo: "JaimeHoracio/Ostacky",
882
- tag: "v0.0.5",
882
+ tag: "v0.1.0",
883
883
  agents: [
884
884
  {
885
885
  name: "ostacky",
886
886
  file: "assets/agents/ostacky.md",
887
- description: "Agente principal de desarrollo con OpenCode",
888
- version: "0.0.5",
887
+ description: "Agente principal de desarrollo con ejecución inline-first y local-first",
888
+ version: "0.1.0",
889
889
  sha256: null
890
890
  }
891
891
  ],
@@ -894,14 +894,14 @@ var manifest_default = {
894
894
  name: "install-stack",
895
895
  file: "assets/commands/install-stack.md",
896
896
  description: "Instala el stack tecnológico del proyecto",
897
- version: "0.0.5",
897
+ version: "0.1.0",
898
898
  sha256: null
899
899
  },
900
900
  {
901
901
  name: "opsx-sync",
902
902
  file: "assets/commands/opsx-sync.md",
903
903
  description: "Sincroniza delta specs del change activo (wrapper de openspec update)",
904
- version: "0.0.5",
904
+ version: "0.1.0",
905
905
  sha256: null
906
906
  }
907
907
  ],
@@ -910,70 +910,70 @@ var manifest_default = {
910
910
  name: "brainstorming",
911
911
  file: "assets/skills/brainstorming/SKILL.md",
912
912
  description: "Skill de descubrimiento y exploración (Superpowers)",
913
- version: "0.0.5",
913
+ version: "0.1.0",
914
914
  sha256: "22be76380b086c4ac6d38b8b124f6f7df47c32a67237a6ceaf8c7fd19aa524b0"
915
915
  },
916
916
  {
917
917
  name: "writing-plans",
918
918
  file: "assets/skills/writing-plans/SKILL.md",
919
919
  description: "Skill de planificación de implementación (Superpowers)",
920
- version: "0.0.5",
920
+ version: "0.1.0",
921
921
  sha256: "4d56ce833af79c628e72cd95b06d13597131a09f9d98aae0a42c6a98a8ee1b95"
922
922
  },
923
923
  {
924
924
  name: "tdd",
925
925
  file: "assets/skills/tdd/SKILL.md",
926
926
  description: "Skill de test-driven development (Superpowers)",
927
- version: "0.0.5",
927
+ version: "0.1.0",
928
928
  sha256: "b5cd98b3c122162b5a5eac3c78858a64ba165bf4e8c251d8a804a593c0c72312"
929
929
  },
930
930
  {
931
931
  name: "subagent-driven-development",
932
932
  file: "assets/skills/subagent-driven-development/SKILL.md",
933
933
  description: "Skill de ejecución con subagentes (Superpowers)",
934
- version: "0.0.5",
934
+ version: "0.1.0",
935
935
  sha256: "7534b60788e05644831347194b1f99bcb41e2eda130994cfddafee3146ba63bd"
936
936
  },
937
937
  {
938
938
  name: "dispatching-parallel-agents",
939
939
  file: "assets/skills/dispatching-parallel-agents/SKILL.md",
940
940
  description: "Skill de dispatch paralelo de agentes (Superpowers)",
941
- version: "0.0.5",
941
+ version: "0.1.0",
942
942
  sha256: "b7e99d62c5d2ade21a3b6cdc94a7f90772e23fe3294ca600386f192f6181f6b2"
943
943
  },
944
944
  {
945
945
  name: "review",
946
946
  file: "assets/skills/review/SKILL.md",
947
947
  description: "Skill de revisión de código (Superpowers)",
948
- version: "0.0.5",
948
+ version: "0.1.0",
949
949
  sha256: "af8fd392835967111e865f170d90d3dd9b8266b517ffb7d551dffda704500a90"
950
950
  },
951
951
  {
952
952
  name: "openspec-explore",
953
953
  file: "assets/skills/openspec-explore/SKILL.md",
954
954
  description: "Skill de exploración pre-spec (OpenSpec)",
955
- version: "0.0.5",
955
+ version: "0.1.0",
956
956
  sha256: "c3eaff7d64b7e5e757b120dd231d2e6b56e9f440055dc9ab5431b466d6244bd7"
957
957
  },
958
958
  {
959
959
  name: "openspec-propose",
960
960
  file: "assets/skills/openspec-propose/SKILL.md",
961
961
  description: "Skill de generación de proposal (OpenSpec)",
962
- version: "0.0.5",
962
+ version: "0.1.0",
963
963
  sha256: "28c59bdce6e9af0ab07102b2e6d0b47a0f0dc2f1bfb8321576d47f6c240e778b"
964
964
  },
965
965
  {
966
966
  name: "openspec-apply-change",
967
967
  file: "assets/skills/openspec-apply-change/SKILL.md",
968
968
  description: "Skill de aplicación de change (OpenSpec)",
969
- version: "0.0.5",
969
+ version: "0.1.0",
970
970
  sha256: "8fa8182e40fd92cefbbcc1e303d9aa9c02e2b7f3f2c0625cb61fb916e4fc5760"
971
971
  },
972
972
  {
973
973
  name: "openspec-archive-change",
974
974
  file: "assets/skills/openspec-archive-change/SKILL.md",
975
975
  description: "Skill de archivo de change (OpenSpec)",
976
- version: "0.0.5",
976
+ version: "0.1.0",
977
977
  sha256: "564b8dca28084c75ca192137113e9186c4fb31d2de0e26c081fd67c37f7d4a56"
978
978
  }
979
979
  ]
@@ -1159,7 +1159,7 @@ function clearLockfile(opencodeRoot) {
1159
1159
  const lockfile = readLockfile(opencodeRoot);
1160
1160
  if (!lockfile) {
1161
1161
  writeLockfile(opencodeRoot, {
1162
- version: "0.0.5",
1162
+ version: "0.1.0",
1163
1163
  lockedAt: new Date().toISOString(),
1164
1164
  repo: "",
1165
1165
  tag: "",
package/manifest.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
- "version": "0.0.5",
2
+ "version": "0.1.0",
3
3
  "repo": "JaimeHoracio/Ostacky",
4
- "tag": "v0.0.5",
4
+ "tag": "v0.1.0",
5
5
  "agents": [
6
6
  {
7
7
  "name": "ostacky",
8
8
  "file": "assets/agents/ostacky.md",
9
- "description": "Agente principal de desarrollo con OpenCode",
10
- "version": "0.0.5",
9
+ "description": "Agente principal de desarrollo con ejecución inline-first y local-first",
10
+ "version": "0.1.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.0.5",
19
+ "version": "0.1.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.0.5",
26
+ "version": "0.1.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.0.5",
35
+ "version": "0.1.0",
36
36
  "sha256": "22be76380b086c4ac6d38b8b124f6f7df47c32a67237a6ceaf8c7fd19aa524b0"
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.0.5",
42
+ "version": "0.1.0",
43
43
  "sha256": "4d56ce833af79c628e72cd95b06d13597131a09f9d98aae0a42c6a98a8ee1b95"
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.0.5",
49
+ "version": "0.1.0",
50
50
  "sha256": "b5cd98b3c122162b5a5eac3c78858a64ba165bf4e8c251d8a804a593c0c72312"
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.0.5",
56
+ "version": "0.1.0",
57
57
  "sha256": "7534b60788e05644831347194b1f99bcb41e2eda130994cfddafee3146ba63bd"
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.0.5",
63
+ "version": "0.1.0",
64
64
  "sha256": "b7e99d62c5d2ade21a3b6cdc94a7f90772e23fe3294ca600386f192f6181f6b2"
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.0.5",
70
+ "version": "0.1.0",
71
71
  "sha256": "af8fd392835967111e865f170d90d3dd9b8266b517ffb7d551dffda704500a90"
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.0.5",
77
+ "version": "0.1.0",
78
78
  "sha256": "c3eaff7d64b7e5e757b120dd231d2e6b56e9f440055dc9ab5431b466d6244bd7"
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.0.5",
84
+ "version": "0.1.0",
85
85
  "sha256": "28c59bdce6e9af0ab07102b2e6d0b47a0f0dc2f1bfb8321576d47f6c240e778b"
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.0.5",
91
+ "version": "0.1.0",
92
92
  "sha256": "8fa8182e40fd92cefbbcc1e303d9aa9c02e2b7f3f2c0625cb61fb916e4fc5760"
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.0.5",
98
+ "version": "0.1.0",
99
99
  "sha256": "564b8dca28084c75ca192137113e9186c4fb31d2de0e26c081fd67c37f7d4a56"
100
100
  }
101
101
  ]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ostacky",
3
- "version": "0.0.5",
3
+ "version": "0.1.0",
4
4
  "description": "Instalador interactivo de agentes y comandos para OpenCode",
5
5
  "type": "module",
6
6
  "bin": {