ostacky 0.0.1 → 0.0.3
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/LICENSE +21 -0
- package/README.md +38 -26
- package/assets/agents/ostacky.md +65 -594
- package/assets/commands/install-stack.md +53 -19
- package/assets/commands/opsx-sync.md +25 -0
- package/assets/skills/brainstorming/SKILL.md +164 -0
- package/assets/skills/brainstorming/SKILL.md.placeholder +36 -0
- package/assets/skills/dispatching-parallel-agents/SKILL.md +182 -0
- package/assets/skills/dispatching-parallel-agents/SKILL.md.placeholder +36 -0
- package/assets/skills/openspec-apply-change/SKILL.md +156 -0
- package/assets/skills/openspec-apply-change/SKILL.md.placeholder +36 -0
- package/assets/skills/openspec-archive-change/SKILL.md +114 -0
- package/assets/skills/openspec-archive-change/SKILL.md.placeholder +36 -0
- package/assets/skills/openspec-explore/SKILL.md +288 -0
- package/assets/skills/openspec-explore/SKILL.md.placeholder +36 -0
- package/assets/skills/openspec-propose/SKILL.md +110 -0
- package/assets/skills/openspec-propose/SKILL.md.placeholder +36 -0
- package/assets/skills/review/SKILL.md +214 -0
- package/assets/skills/review/SKILL.md.placeholder +36 -0
- package/assets/skills/subagent-driven-development/SKILL.md +279 -0
- package/assets/skills/subagent-driven-development/SKILL.md.placeholder +36 -0
- package/assets/skills/tdd/SKILL.md +371 -0
- package/assets/skills/tdd/SKILL.md.placeholder +36 -0
- package/assets/skills/writing-plans/SKILL.md +152 -0
- package/assets/skills/writing-plans/SKILL.md.placeholder +36 -0
- package/dist/cli.js +389 -47
- package/manifest.json +101 -22
- package/package.json +39 -38
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Jaime Horacio
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
|
13
|
+
all copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
20
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
21
|
+
DEALINGS IN THE SOFTWARE.
|
package/README.md
CHANGED
|
@@ -134,24 +134,24 @@ Tras instalar, el proyecto queda así:
|
|
|
134
134
|
|
|
135
135
|
```json
|
|
136
136
|
{
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
137
|
+
"version": "0.0.3",
|
|
138
|
+
"lockedAt": "2025-01-01T00:00:00.000Z",
|
|
139
|
+
"repo": "JaimeHoracio/Ostacky",
|
|
140
|
+
"tag": "v0.0.3",
|
|
141
|
+
"agents": {
|
|
142
|
+
"ostacky": {
|
|
143
|
+
"version": "0.0.3",
|
|
144
|
+
"installedAt": "2025-01-01T00:00:00.000Z",
|
|
145
|
+
"sha256": "abc123..."
|
|
146
|
+
}
|
|
147
|
+
},
|
|
148
|
+
"commands": {
|
|
149
|
+
"install-stack": {
|
|
150
|
+
"version": "0.0.3",
|
|
151
|
+
"installedAt": "2025-01-01T00:00:00.000Z",
|
|
152
|
+
"sha256": "def456..."
|
|
153
|
+
}
|
|
146
154
|
}
|
|
147
|
-
},
|
|
148
|
-
"commands": {
|
|
149
|
-
"install-stack": {
|
|
150
|
-
"version": "0.0.1",
|
|
151
|
-
"installedAt": "2025-01-01T00:00:00.000Z",
|
|
152
|
-
"sha256": "def456..."
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
155
|
}
|
|
156
156
|
```
|
|
157
157
|
|
|
@@ -163,24 +163,36 @@ Al terminar la instalación, el CLI imprime en la terminal un panel con los pró
|
|
|
163
163
|
|
|
164
164
|
1. **Recargar OpenCode** para que detecte los nuevos archivos en `.opencode/`.
|
|
165
165
|
2. Ejecutar el command:
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
166
|
+
```
|
|
167
|
+
/install-stack
|
|
168
|
+
```
|
|
169
|
+
Si el command `/install-stack` no aparece en la terminal, recargá OpenCode (paso 1) y volvé a tipearlo. Es un command de OpenCode — el CLI lo instala pero OpenCode necesita recargarlo para registrarlo.
|
|
170
170
|
3. **Recargar OpenCode nuevamente** después de que `/install-stack` haya corrido.
|
|
171
171
|
4. Ya puedes usar el agente:
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
172
|
+
```
|
|
173
|
+
@Ostacky
|
|
174
|
+
```
|
|
175
|
+
o seleccionarlo desde la interfaz de OpenCode según la configuración del proyecto. `@Ostacky` invoca al agente que el CLI instaló en `.opencode/agents/ostacky.md`.
|
|
176
176
|
|
|
177
177
|
## Seguridad
|
|
178
178
|
|
|
179
|
-
- Las URLs de descarga usan **tags de GitHub** (ej. `v0.0.
|
|
179
|
+
- Las URLs de descarga usan **tags de GitHub** (ej. `v0.0.3`), nunca `main` — instalaciones reproducibles
|
|
180
180
|
- Cada path de archivo descargado es validado para prevenir **path traversal**
|
|
181
181
|
- Los archivos incluyen **checksum SHA-256** opcional; si el manifest lo define, el contenido se verifica antes de escribir
|
|
182
182
|
- El cache local (`~/.opencode/cache/`) también valida integridad al servir archivos cacheados
|
|
183
183
|
|
|
184
|
+
#### Restricciones de acceso a credenciales
|
|
185
|
+
|
|
186
|
+
- La configuración local de OpenCode (`opencode.jsonc`, por ahora no versionado) bloquea lectura y escritura de `*.env` y `.secret/**` con `deny`.
|
|
187
|
+
- El plugin versionado en `.opencode/plugins/deny-credentials.ts` registra el intento y deja una advertencia con la ruta exacta.
|
|
188
|
+
- Cuando se bloquea un acceso, el mensaje puede empezar así:
|
|
189
|
+
|
|
190
|
+
```text
|
|
191
|
+
>>>> Control: No se puede leer o modificar las credenciales: "/ruta/al/proyecto/.env"
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
- La sesión sigue ejecutándose después del bloqueo porque `experimental.continue_loop_on_deny` está activado.
|
|
195
|
+
|
|
184
196
|
## Cache
|
|
185
197
|
|
|
186
198
|
Los archivos descargados se guardan en:
|