zugzbot 1.0.6 → 1.0.8

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 (63) hide show
  1. package/.opencode/commands/web.md +17 -0
  2. package/.opencode/plugins/sdd-bridge.ts +83 -1
  3. package/.utils/docs_opencode/acp.md +165 -0
  4. package/.utils/docs_opencode/acp.pdf +0 -0
  5. package/.utils/docs_opencode/agents.md +803 -0
  6. package/.utils/docs_opencode/agents.pdf +0 -0
  7. package/.utils/docs_opencode/commands.md +354 -0
  8. package/.utils/docs_opencode/commands.pdf +0 -0
  9. package/.utils/docs_opencode/custom-tools.md +209 -0
  10. package/.utils/docs_opencode/custom-tools.pdf +0 -0
  11. package/.utils/docs_opencode/ecosystem.md +81 -0
  12. package/.utils/docs_opencode/ecosystem.pdf +0 -0
  13. package/.utils/docs_opencode/formatters.md +142 -0
  14. package/.utils/docs_opencode/formatters.pdf +0 -0
  15. package/.utils/docs_opencode/keybinds.md +205 -0
  16. package/.utils/docs_opencode/keybinds.pdf +0 -0
  17. package/.utils/docs_opencode/lsp.md +202 -0
  18. package/.utils/docs_opencode/lsp.pdf +0 -0
  19. package/.utils/docs_opencode/mcp-servers.md +565 -0
  20. package/.utils/docs_opencode/mcp-servers.pdf +0 -0
  21. package/.utils/docs_opencode/models.md +234 -0
  22. package/.utils/docs_opencode/models.pdf +0 -0
  23. package/.utils/docs_opencode/permissions.md +248 -0
  24. package/.utils/docs_opencode/permissions.pdf +0 -0
  25. package/.utils/docs_opencode/plugins.md +409 -0
  26. package/.utils/docs_opencode/plugins.pdf +0 -0
  27. package/.utils/docs_opencode/rules.md +189 -0
  28. package/.utils/docs_opencode/rules.pdf +0 -0
  29. package/.utils/docs_opencode/sdk.md +522 -0
  30. package/.utils/docs_opencode/sdk.pdf +0 -0
  31. package/.utils/docs_opencode/server.md +324 -0
  32. package/.utils/docs_opencode/server.pdf +0 -0
  33. package/.utils/docs_opencode/skills.md +235 -0
  34. package/.utils/docs_opencode/skills.pdf +0 -0
  35. package/.utils/docs_opencode/themes.md +378 -0
  36. package/.utils/docs_opencode/themes.pdf +0 -0
  37. package/.utils/docs_opencode/tools.md +364 -0
  38. package/.utils/docs_opencode/tools.pdf +0 -0
  39. package/.utils/export_opencode_session.py +242 -0
  40. package/.utils/toggle_model.py +441 -0
  41. package/.utils/zugzweb/client/README.md +73 -0
  42. package/.utils/zugzweb/client/eslint.config.js +22 -0
  43. package/.utils/zugzweb/client/index.html +13 -0
  44. package/.utils/zugzweb/client/package-lock.json +3707 -0
  45. package/.utils/zugzweb/client/package.json +36 -0
  46. package/.utils/zugzweb/client/public/favicon.svg +1 -0
  47. package/.utils/zugzweb/client/public/icons.svg +24 -0
  48. package/.utils/zugzweb/client/src/App.tsx +1357 -0
  49. package/.utils/zugzweb/client/src/assets/hero.png +0 -0
  50. package/.utils/zugzweb/client/src/assets/react.svg +1 -0
  51. package/.utils/zugzweb/client/src/assets/vite.svg +1 -0
  52. package/.utils/zugzweb/client/src/index.css +185 -0
  53. package/.utils/zugzweb/client/src/main.tsx +10 -0
  54. package/.utils/zugzweb/client/tsconfig.app.json +25 -0
  55. package/.utils/zugzweb/client/tsconfig.json +7 -0
  56. package/.utils/zugzweb/client/tsconfig.node.json +24 -0
  57. package/.utils/zugzweb/client/vite.config.ts +11 -0
  58. package/.utils/zugzweb/daemon.js +297 -0
  59. package/README.md +40 -1
  60. package/bin/init.js +25 -6
  61. package/models.json +8 -0
  62. package/opencode.json +5 -7
  63. package/package.json +3 -1
Binary file
@@ -0,0 +1,354 @@
1
+ # Comandos
2
+
3
+ Cree comandos personalizados para tareas repetitivas.
4
+
5
+ Los comandos personalizados le permiten especificar un mensaje que desea ejecutar cuando ese comando se ejecuta en TUI.
6
+
7
+ **File**:
8
+
9
+ ```bash
10
+ /my-command
11
+ ```
12
+
13
+ Los comandos personalizados se suman a los comandos integrados como `/init`, `/undo`, `/redo`, `/share`, `/help`. [Más información](https://opencode.ai/docs/tui#commands).
14
+
15
+ ---
16
+
17
+ ## [Crear archivos de comando](#crear-archivos-de-comando)
18
+
19
+ Cree archivos de Markdown en el directorio `commands/` para definir comandos personalizados.
20
+
21
+ Crear `.opencode/commands/test.md`:
22
+
23
+ **File**: .opencode/commands/test.md
24
+
25
+ ```md
26
+ ---
27
+ description: Run tests with coverage
28
+ agent: build
29
+ model: anthropic/claude-3-5-sonnet-20241022
30
+ ---
31
+
32
+ Run the full test suite with coverage report and show any failures.
33
+ Focus on the failing tests and suggest fixes.
34
+ ```
35
+
36
+ El frontmatter define las propiedades del comando. El contenido se convierte en la plantilla.
37
+
38
+ Utilice el comando escribiendo `/` seguido del nombre del comando.
39
+
40
+ **File**:
41
+
42
+ ```bash
43
+ "/test"
44
+ ```
45
+
46
+ ---
47
+
48
+ ## [Configuración](#configuración)
49
+
50
+ Puede agregar comandos personalizados a través de la configuración OpenCode o creando archivos de Markdown en el directorio `commands/`.
51
+
52
+ ---
53
+
54
+ ### [JSON](#json)
55
+
56
+ Utilice la opción `command` en su OpenCode [config](https://opencode.ai/docs/config):
57
+
58
+ **File**: opencode.jsonc
59
+
60
+ ```json
61
+ {
62
+ "$schema": "https://opencode.ai/config.json",
63
+ "command": {
64
+ // This becomes the name of the command
65
+ "test": {
66
+ // This is the prompt that will be sent to the LLM
67
+ "template": "Run the full test suite with coverage report and show any failures.\nFocus on the failing tests and suggest fixes.",
68
+ // This is shown as the description in the TUI
69
+ "description": "Run tests with coverage",
70
+ "agent": "build",
71
+ "model": "anthropic/claude-3-5-sonnet-20241022"
72
+ }
73
+ }
74
+ }
75
+ ```
76
+
77
+ Ahora puedes ejecutar este comando en TUI:
78
+
79
+ **File**:
80
+
81
+ ```bash
82
+ /test
83
+ ```
84
+
85
+ ---
86
+
87
+ ### [Markdown](#markdown)
88
+
89
+ También puede definir comandos utilizando archivos de Markdown. Colócalos en:
90
+
91
+ - Global: `~/.config/opencode/commands/`
92
+ - Por proyecto: `.opencode/commands/`
93
+
94
+ **File**: ~/.config/opencode/commands/test.md
95
+
96
+ ```markdown
97
+ ---
98
+ description: Run tests with coverage
99
+ agent: build
100
+ model: anthropic/claude-3-5-sonnet-20241022
101
+ ---
102
+
103
+ Run the full test suite with coverage report and show any failures.
104
+ Focus on the failing tests and suggest fixes.
105
+ ```
106
+
107
+ El nombre del archivo de Markdown se convierte en el nombre del comando. Por ejemplo, `test.md` permite que lo ejecutes:
108
+
109
+ **File**:
110
+
111
+ ```bash
112
+ /test
113
+ ```
114
+
115
+ ---
116
+
117
+ ## [Configuración de indicaciones](#configuración-de-indicaciones)
118
+
119
+ Las indicaciones para los comandos personalizados admiten varios marcadores de posición y sintaxis especiales.
120
+
121
+ ---
122
+
123
+ ### [Argumentos](#argumentos)
124
+
125
+ Pase argumentos a comandos usando el marcador de posición `$ARGUMENTS`.
126
+
127
+ **File**: .opencode/commands/component.md
128
+
129
+ ```md
130
+ ---
131
+ description: Create a new component
132
+ ---
133
+
134
+ Create a new React component named $ARGUMENTS with TypeScript support.
135
+ Include proper typing and basic structure.
136
+ ```
137
+
138
+ Ejecute el comando con argumentos:
139
+
140
+ **File**:
141
+
142
+ ```bash
143
+ /component Button
144
+ ```
145
+
146
+ Y `$ARGUMENTS` será reemplazado por `Button`.
147
+
148
+ También puede acceder a argumentos individuales utilizando parámetros posicionales:
149
+
150
+ - `$1` - Primer argumento
151
+ - `$2` - Segundo argumento
152
+ - `$3` - Tercer argumento
153
+ - Etcétera…
154
+
155
+ Por ejemplo:
156
+
157
+ **File**: .opencode/commands/create-file.md
158
+
159
+ ```md
160
+ ---
161
+ description: Create a new file with content
162
+ ---
163
+
164
+ Create a file named $1 in the directory $2
165
+ with the following content: $3
166
+ ```
167
+
168
+ Ejecute el comando:
169
+
170
+ **File**:
171
+
172
+ ```bash
173
+ /create-file config.json src "{ \"key\": \"value\" }"
174
+ ```
175
+
176
+ Esto reemplaza:
177
+
178
+ - `$1` con `config.json`
179
+ - `$2` con `src`
180
+ - `$3` con `{ "key": "value" }`
181
+
182
+ ---
183
+
184
+ ### [Salida del shell](#salida-del-shell)
185
+
186
+ Utilice *!`command`* para inyectar la salida de [comando bash](https://opencode.ai/docs/tui#bash-commands) en su mensaje.
187
+
188
+ Por ejemplo, para crear un comando personalizado que analice la cobertura de la prueba:
189
+
190
+ **File**: .opencode/commands/analyze-coverage.md
191
+
192
+ ```md
193
+ ---
194
+ description: Analyze test coverage
195
+ ---
196
+
197
+ Here are the current test results:
198
+ !`npm test`
199
+
200
+ Based on these results, suggest improvements to increase coverage.
201
+ ```
202
+
203
+ O para revisar cambios recientes:
204
+
205
+ **File**: .opencode/commands/review-changes.md
206
+
207
+ ```md
208
+ ---
209
+ description: Review recent changes
210
+ ---
211
+
212
+ Recent git commits:
213
+ !`git log --oneline -10`
214
+
215
+ Review these changes and suggest any improvements.
216
+ ```
217
+
218
+ Los comandos se ejecutan en el directorio raíz de su proyecto y su salida pasa a formar parte del mensaje.
219
+
220
+ ---
221
+
222
+ ### [Referencias de archivos](#referencias-de-archivos)
223
+
224
+ Incluya archivos en su comando usando `@` seguido del nombre del archivo.
225
+
226
+ **File**: .opencode/commands/review-component.md
227
+
228
+ ```md
229
+ ---
230
+ description: Review component
231
+ ---
232
+
233
+ Review the component in @src/components/Button.tsx.
234
+ Check for performance issues and suggest improvements.
235
+ ```
236
+
237
+ El contenido del archivo se incluye automáticamente en el mensaje.
238
+
239
+ ---
240
+
241
+ ## [Opciones](#opciones)
242
+
243
+ Veamos las opciones de configuración en detalle.
244
+
245
+ ---
246
+
247
+ ### [Plantilla](#plantilla)
248
+
249
+ La opción `template` define el mensaje que se enviará al LLM cuando se ejecute el comando.
250
+
251
+ **File**: opencode.json
252
+
253
+ ```json
254
+ {
255
+ "command": {
256
+ "test": {
257
+ "template": "Run the full test suite with coverage report and show any failures.\nFocus on the failing tests and suggest fixes."
258
+ }
259
+ }
260
+ }
261
+ ```
262
+
263
+ Esta es una opción de configuración **obligatoria**.
264
+
265
+ ---
266
+
267
+ ### [Descripción](#descripción)
268
+
269
+ Utilice la opción `description` para proporcionar una breve descripción de lo que hace el comando.
270
+
271
+ **File**: opencode.json
272
+
273
+ ```json
274
+ {
275
+ "command": {
276
+ "test": {
277
+ "description": "Run tests with coverage"
278
+ }
279
+ }
280
+ }
281
+ ```
282
+
283
+ Esto se muestra como descripción en TUI cuando escribe el comando.
284
+
285
+ ---
286
+
287
+ ### [Agente](#agente)
288
+
289
+ Utilice la configuración `agent` para especificar opcionalmente qué [agente](https://opencode.ai/docs/agents) debe ejecutar este comando. Si se trata de un [subagente](https://opencode.ai/docs/agents/#subagents), el comando activará una invocación de subagente de forma predeterminada. Para desactivar este comportamiento, establezca `subtask` en `false`.
290
+
291
+ **File**: opencode.json
292
+
293
+ ```json
294
+ {
295
+ "command": {
296
+ "review": {
297
+ "agent": "plan"
298
+ }
299
+ }
300
+ }
301
+ ```
302
+
303
+ Esta es una opción de configuración **opcional**. Si no se especifica, el valor predeterminado es su agente actual.
304
+
305
+ ---
306
+
307
+ ### [Subtarea](#subtarea)
308
+
309
+ Utilice el booleano `subtask` para forzar que el comando active una invocación de [subagente](https://opencode.ai/docs/agents/#subagents). Esto es útil si desea que el comando no contamine su contexto principal y **obligue** al agente a actuar como subagente. incluso si `mode` está configurado en `primary` en la configuración de [agente](https://opencode.ai/docs/agents).
310
+
311
+ **File**: opencode.json
312
+
313
+ ```json
314
+ {
315
+ "command": {
316
+ "analyze": {
317
+ "subtask": true
318
+ }
319
+ }
320
+ }
321
+ ```
322
+
323
+ Esta es una opción de configuración **opcional**.
324
+
325
+ ---
326
+
327
+ ### [Modelo](#modelo)
328
+
329
+ Utilice la configuración `model` para anular el modelo predeterminado para este comando.
330
+
331
+ **File**: opencode.json
332
+
333
+ ```json
334
+ {
335
+ "command": {
336
+ "analyze": {
337
+ "model": "anthropic/claude-3-5-sonnet-20241022"
338
+ }
339
+ }
340
+ }
341
+ ```
342
+
343
+ Esta es una opción de configuración **opcional**.
344
+
345
+ ---
346
+
347
+ ## [Integrados](#integrados)
348
+
349
+ opencode incluye varios comandos integrados como `/init`, `/undo`, `/redo`, `/share`, `/help`; [más información](https://opencode.ai/docs/tui#commands).
350
+
351
+ > [!NOTE]
352
+ > Los comandos personalizados pueden anular los comandos integrados.
353
+
354
+ Si define un comando personalizado con el mismo nombre, anulará el comando integrado.
@@ -0,0 +1,209 @@
1
+ # Herramientas personalizadas
2
+
3
+ Cree herramientas que LLM pueda llamar en opencode.
4
+
5
+ Las herramientas personalizadas son funciones que usted crea y que el LLM puede llamar durante las conversaciones. Trabajan junto con las [herramientas integradas](https://opencode.ai/docs/tools) de opencode como `read`, `write` y `bash`.
6
+
7
+ ---
8
+
9
+ ## [Crear una herramienta](#crear-una-herramienta)
10
+
11
+ Las herramientas se definen como archivos **TypeScript** o **JavaScript**. Sin embargo, la definición de la herramienta puede invocar secuencias de comandos escritas en **cualquier idioma**: TypeScript o JavaScript solo se utilizan para la definición de la herramienta en sí.
12
+
13
+ ---
14
+
15
+ ### [Ubicación](#ubicación)
16
+
17
+ Se pueden definir:
18
+
19
+ - Localmente colocándolos en el directorio `.opencode/tools/` de tu proyecto.
20
+ - O de forma global, colocándolos en `~/.config/opencode/tools/`.
21
+
22
+ ---
23
+
24
+ ### [Estructura](#estructura)
25
+
26
+ La forma más sencilla de crear herramientas es utilizar el asistente `tool()` que proporciona seguridad de tipos y validación.
27
+
28
+ **File**: .opencode/tools/database.ts
29
+
30
+ ```ts
31
+ import { tool } from "@opencode-ai/plugin"
32
+
33
+ export default tool({
34
+ description: "Query the project database",
35
+ args: {
36
+ query: tool.schema.string().describe("SQL query to execute"),
37
+ },
38
+ async execute(args) {
39
+ // Your database logic here
40
+ return `Executed query: ${args.query}`
41
+ },
42
+ })
43
+ ```
44
+
45
+ El **nombre de archivo** se convierte en el **nombre de la herramienta**. Lo anterior crea una herramienta `database`.
46
+
47
+ ---
48
+
49
+ #### [Múltiples herramientas por archivo](#múltiples-herramientas-por-archivo)
50
+
51
+ También puede exportar varias herramientas desde un solo archivo. Cada exportación se convierte en **una herramienta independiente** con el nombre **`_`**:
52
+
53
+ **File**: .opencode/tools/math.ts
54
+
55
+ ```ts
56
+ import { tool } from "@opencode-ai/plugin"
57
+
58
+ export const add = tool({
59
+ description: "Add two numbers",
60
+ args: {
61
+ a: tool.schema.number().describe("First number"),
62
+ b: tool.schema.number().describe("Second number"),
63
+ },
64
+ async execute(args) {
65
+ return args.a + args.b
66
+ },
67
+ })
68
+
69
+ export const multiply = tool({
70
+ description: "Multiply two numbers",
71
+ args: {
72
+ a: tool.schema.number().describe("First number"),
73
+ b: tool.schema.number().describe("Second number"),
74
+ },
75
+ async execute(args) {
76
+ return args.a * args.b
77
+ },
78
+ })
79
+ ```
80
+
81
+ Esto crea dos herramientas: `math_add` y `math_multiply`.
82
+
83
+ ---
84
+
85
+ #### [Colisiones de nombres con herramientas integradas](#colisiones-de-nombres-con-herramientas-integradas)
86
+
87
+ Las herramientas personalizadas están codificadas por el nombre de la herramienta. Si una herramienta personalizada utiliza el mismo nombre que una herramienta integrada, la herramienta personalizada tiene prioridad.
88
+
89
+ Por ejemplo, este archivo reemplaza la herramienta `bash` integrada:
90
+
91
+ **File**: .opencode/tools/bash.ts
92
+
93
+ ```ts
94
+ import { tool } from "@opencode-ai/plugin"
95
+
96
+ export default tool({
97
+ description: "Restricted bash wrapper",
98
+ args: {
99
+ command: tool.schema.string(),
100
+ },
101
+ async execute(args) {
102
+ return `blocked: ${args.command}`
103
+ },
104
+ })
105
+ ```
106
+
107
+ > [!NOTE]
108
+ > Prefiera nombres únicos a menos que intencionalmente desee reemplazar una herramienta integrada. Si desea deshabilitar una herramienta integrada pero no anularla, use [permisos](https://opencode.ai/docs/permissions).
109
+
110
+ ---
111
+
112
+ ### [Argumentos](#argumentos)
113
+
114
+ Puedes usar `tool.schema`, que es simplemente [Zod](https://zod.dev), para definir tipos de argumentos.
115
+
116
+ **File**:
117
+
118
+ ```ts
119
+ args: {
120
+ query: tool.schema.string().describe("SQL query to execute")
121
+ }
122
+ ```
123
+
124
+ También puedes importar [Zod](https://zod.dev) directamente y devolver un objeto simple:
125
+
126
+ **File**:
127
+
128
+ ```ts
129
+ import { z } from "zod"
130
+
131
+ export default {
132
+ description: "Tool description",
133
+ args: {
134
+ param: z.string().describe("Parameter description"),
135
+ },
136
+ async execute(args, context) {
137
+ // Tool implementation
138
+ return "result"
139
+ },
140
+ }
141
+ ```
142
+
143
+ ---
144
+
145
+ ### [Contexto](#contexto)
146
+
147
+ Las herramientas reciben contexto sobre la sesión actual:
148
+
149
+ **File**: .opencode/tools/project.ts
150
+
151
+ ```ts
152
+ import { tool } from "@opencode-ai/plugin"
153
+
154
+ export default tool({
155
+ description: "Get project information",
156
+ args: {},
157
+ async execute(args, context) {
158
+ // Access context information
159
+ const { agent, sessionID, messageID, directory, worktree } = context
160
+ return `Agent: ${agent}, Session: ${sessionID}, Message: ${messageID}, Directory: ${directory}, Worktree: ${worktree}`
161
+ },
162
+ })
163
+ ```
164
+
165
+ Utilice `context.directory` para el directorio de trabajo de la sesión. Utilice `context.worktree` para la raíz del árbol de trabajo de git.
166
+
167
+ ---
168
+
169
+ ## [Ejemplos](#ejemplos)
170
+
171
+ ### [Escribir una herramienta en Python](#escribir-una-herramienta-en-python)
172
+
173
+ Puede escribir sus herramientas en cualquier idioma que desee. Aquí hay un ejemplo que suma dos números usando Python.
174
+
175
+ Primero, cree la herramienta como un script de Python:
176
+
177
+ **File**: .opencode/tools/add.py
178
+
179
+ ```python
180
+ import sys
181
+
182
+ a = int(sys.argv[1])
183
+ b = int(sys.argv[2])
184
+ print(a + b)
185
+ ```
186
+
187
+ Luego cree la definición de herramienta que la invoca:
188
+
189
+ **File**: .opencode/tools/python-add.ts
190
+
191
+ ```ts
192
+ import { tool } from "@opencode-ai/plugin"
193
+ import path from "path"
194
+
195
+ export default tool({
196
+ description: "Add two numbers using Python",
197
+ args: {
198
+ a: tool.schema.number().describe("First number"),
199
+ b: tool.schema.number().describe("Second number"),
200
+ },
201
+ async execute(args, context) {
202
+ const script = path.join(context.worktree, ".opencode/tools/add.py")
203
+ const result = await Bun.$`python3 ${script} ${args.a} ${args.b}`.text()
204
+ return result.trim()
205
+ },
206
+ })
207
+ ```
208
+
209
+ Aquí estamos usando la utilidad ``[Bun.$](https://bun.com/docs/runtime/shell) para ejecutar el script Python.
@@ -0,0 +1,81 @@
1
+ # Ecosistema
2
+
3
+ Proyectos e integraciones construidas con OpenCode.
4
+
5
+ Una colección de proyectos comunitarios construidos en OpenCode.
6
+
7
+ > [!NOTE]
8
+ > ¿Quieres agregar tu proyecto relacionado con OpenCode a esta lista? Envíe un PR.
9
+
10
+ También puedes consultar [awesome-opencode](https://github.com/awesome-opencode/awesome-opencode) y [opencode.cafe](https://opencode.cafe), una comunidad que agrega el ecosistema y la comunidad.
11
+
12
+ ---
13
+
14
+ ## [Complementos](#complementos)
15
+ [opencode-daytona](https://github.com/daytonaio/daytona/tree/main/libs/opencode-plugin)[opencode-helicone-session](https://github.com/H2Shami/opencode-helicone-session)[opencode-type-inject](https://github.com/nick-vi/opencode-type-inject)[opencode-openai-codex-auth](https://github.com/numman-ali/opencode-openai-codex-auth)[opencode-gemini-auth](https://github.com/jenslys/opencode-gemini-auth)[opencode-antigravity-auth](https://github.com/NoeFabris/opencode-antigravity-auth)[opencode-devcontainers](https://github.com/athal7/opencode-devcontainers)[opencode-google-antigravity-auth](https://github.com/shekohex/opencode-google-antigravity-auth)[opencode-dynamic-context-pruning](https://github.com/Tarquinen/opencode-dynamic-context-pruning)[opencode-vibeguard](https://github.com/inkdust2021/opencode-vibeguard)[opencode-websearch-cited](https://github.com/ghoulr/opencode-websearch-cited.git)[opencode-pty](https://github.com/shekohex/opencode-pty.git)[opencode-shell-strategy](https://github.com/JRedeker/opencode-shell-strategy)[opencode-wakatime](https://github.com/angristan/opencode-wakatime)[opencode-md-table-formatter](https://github.com/franlol/opencode-md-table-formatter/tree/main)[opencode-morph-plugin](https://github.com/morphllm/opencode-morph-plugin)[oh-my-opencode](https://github.com/code-yeongyu/oh-my-opencode)[opencode-notificator](https://github.com/panta82/opencode-notificator)[opencode-notifier](https://github.com/mohak34/opencode-notifier)[opencode-zellij-namer](https://github.com/24601/opencode-zellij-namer)[opencode-skillful](https://github.com/zenobi-us/opencode-skillful)[opencode-supermemory](https://github.com/supermemoryai/opencode-supermemory)[@plannotator/opencode](https://github.com/backnotprop/plannotator/tree/main/apps/opencode-plugin)[@openspoon/subtask2](https://github.com/spoons-and-mirrors/subtask2)[opencode-scheduler](https://github.com/different-ai/opencode-scheduler)[micode](https://github.com/vtemian/micode)[octto](https://github.com/vtemian/octto)[opencode-background-agents](https://github.com/kdcokenny/opencode-background-agents)[opencode-notify](https://github.com/kdcokenny/opencode-notify)[opencode-workspace](https://github.com/kdcokenny/opencode-workspace)[opencode-worktree](https://github.com/kdcokenny/opencode-worktree)[opencode-sentry-monitor](https://github.com/stolinski/opencode-sentry-monitor)
16
+
17
+ | Nombre Descripción |
18
+ | --- |
19
+ | Ejecute automáticamente sesiones OpenCode en entornos sandbox aislados de Daytona con git sync y vistas previas en vivo |
20
+ | Inyecte automáticamente encabezados de sesión de Helicone para agrupación de solicitudes |
21
+ | Inyecte automáticamente tipos TypeScript/Svelte en lecturas de archivos con herramientas de búsqueda |
22
+ | Utilice su suscripción ChatGPT Plus/Pro en lugar de créditos API |
23
+ | Utilice su plan Gemini existente en lugar de la facturación API |
24
+ | Utilice los modelos gratuitos de Antigravity en lugar de la facturación API |
25
+ | Aislamiento de contenedores de desarrollo de múltiples ramas con clones superficiales y puertos asignados automáticamente |
26
+ | Complemento Google Antigravity OAuth, compatible con la Búsqueda de Google y manejo más sólido de API |
27
+ | Optimice el uso de tokens eliminando los resultados de herramientas obsoletas |
28
+ | Redacta secretos/PII en marcadores de posición estilo VibeGuard antes de las llamadas a LLM; restaura localmente |
29
+ | Agregue soporte de búsqueda web nativa para proveedores compatibles con el estilo basado en Google |
30
+ | Permite a los agentes de IA ejecutar procesos en segundo plano en un PTY y enviarles información interactiva. |
31
+ | Instrucciones para comandos de shell no interactivos: evita bloqueos de operaciones dependientes de TTY |
32
+ | Seguimiento del uso de OpenCode con Wakatime |
33
+ | Limpiar tablas de Markdown producidas por LLMs |
34
+ | Edición Fast Apply, búsqueda de código con WarpGrep y compactación de contexto a través de Morph |
35
+ | Agentes en segundo plano, herramientas LSP/AST/MCP prediseñadas, agentes seleccionados, compatible con Claude Code |
36
+ | Notificaciones de escritorio y alertas sonoras para sesiones OpenCode |
37
+ | Notificaciones de escritorio y alertas sonoras para eventos de permiso, finalización y error |
38
+ | Nomenclatura automática de sesiones Zellij impulsada por IA basada en el contexto OpenCode |
39
+ | Permitir que los agentes OpenCode carguen mensajes de forma diferida a pedido con descubrimiento e inyección de habilidades |
40
+ | Memoria persistente entre sesiones utilizando Supermemory |
41
+ | Revisión interactiva del plan con anotaciones visuales y uso compartido privado/sin conexión |
42
+ | Amplíe opencode /commands a un potente sistema de orquestación con control de flujo granular |
43
+ | Programe trabajos recurrentes usando launchd (Mac) o systemd (Linux) con sintaxis cron |
44
+ | Lluvia de ideas estructurada → Planificar → Implementar flujo de trabajo con continuidad de sesión |
45
+ | Interfaz de usuario interactiva del navegador para lluvia de ideas de IA con formularios de preguntas múltiples |
46
+ | Agentes en segundo plano estilo Claude Code con delegación asíncrona y persistencia de contexto |
47
+ | Notificaciones nativas del sistema operativo para OpenCode: sepa cuándo se completan las tareas |
48
+ | Arnés de orquestación multiagente incluido: 16 componentes, una instalación |
49
+ | Árboles de trabajo de Git de fricción cero para OpenCode |
50
+ | Rastree y depure sus agentes de IA con Sentry AI Monitoring |
51
+
52
+
53
+ ---
54
+
55
+ ## [Proyectos](#proyectos)
56
+ [kimaki](https://github.com/remorses/kimaki)[opencode.nvim](https://github.com/NickvanDyke/opencode.nvim)[portal](https://github.com/hosenur/portal)[opencode plugin template](https://github.com/zenobi-us/opencode-plugin-template/)[opencode.nvim](https://github.com/sudo-tee/opencode.nvim)[ai-sdk-provider-opencode-sdk](https://github.com/ben-vargas/ai-sdk-provider-opencode-sdk)[OpenChamber](https://github.com/btriapitsyn/openchamber)[OpenCode-Obsidian](https://github.com/mtymek/opencode-obsidian)[OpenWork](https://github.com/different-ai/openwork)[ocx](https://github.com/kdcokenny/ocx)[CodeNomad](https://github.com/NeuralNomadsAI/CodeNomad)
57
+
58
+ | Nombre Descripción |
59
+ | --- |
60
+ | Bot de Discord para controlar sesiones OpenCode, basado en el SDK |
61
+ | Complemento Neovim para avisos compatibles con el editor, creado en API |
62
+ | Interfaz de usuario web móvil para OpenCode a través de Tailscale/VPN |
63
+ | Plantilla para crear complementos OpenCode |
64
+ | Interfaz de Neovim para opencode: un agente de codificación de IA basado en terminal |
65
+ | Proveedor Vercel AI SDK para usar OpenCode a través de @opencode-ai/sdk |
66
+ | Aplicación web/de escritorio y extensión VS Code para OpenCode |
67
+ | Complemento de Obsidian que incorpora OpenCode en la interfaz de usuario de Obsidian |
68
+ | Una alternativa de código abierto a Claude Cowork, impulsada por OpenCode |
69
+ | Administrador de extensiones OpenCode con perfiles portátiles y aislados. |
70
+ | Aplicación de escritorio, web, móvil y de cliente remoto para OpenCode |
71
+
72
+
73
+ ---
74
+
75
+ ## [Agentes](#agentes)
76
+ [Agentic](https://github.com/Cluster444/agentic)[opencode-agents](https://github.com/darrenhinde/opencode-agents)
77
+
78
+ | Nombre Descripción |
79
+ | --- |
80
+ | Agentes y comandos modulares de IA para un desarrollo estructurado |
81
+ | Configuraciones, avisos, agentes y complementos para flujos de trabajo mejorados |