Herramientas compatibles
Qué herramientas de codificación con IA admite OpenSpec y la sintaxis de comandos de cada una.
Cada herramienta de la matriz ejecuta los mismos flujos de trabajo de OpenSpec. Una skill y su comando son las mismas instrucciones de flujo de trabajo. La única diferencia es lo que escribes. Qué forma instala init es la configuración de entrega, cubierta en Configura tu proyecto.
Matriz de compatibilidad
Las invocaciones se muestran para el flujo de trabajo apply. Cada flujo de trabajo sigue la misma estructura. El id se pasa a openspec init --tools <id> para omitir el selector (CLI).
| Herramienta | id de --tools | Skills | Invocación de skill | Comandos | Invocación de comando |
|---|---|---|---|---|---|
| Amazon Q Developer | amazon-q | .amazonq/skills/ | /openspec-apply-change | .amazonq/prompts/ | @opsx-apply |
| Amp | amp | .agents/skills/ | /openspec-apply-change | ninguno | ninguno |
| Antigravity | antigravity | .agents/skills/ | /openspec-apply-change | .agents/workflows/ | /opsx-apply |
| AtomCode | atomcode | .atomcode/skills/ | /openspec-apply-change | .atomcode/commands/ | /opsx-apply |
| Auggie (Augment CLI) | auggie | .augment/skills/ | /openspec-apply-change | .augment/commands/ | /opsx-apply |
| IBM Bob | bob | .bob/skills/ | /openspec-apply-change | .bob/commands/ | /opsx-apply |
| Claude Code | claude | .claude/skills/ | /openspec-apply-change | .claude/commands/opsx/ | /opsx:apply |
| Cline | cline | .cline/skills/ | /openspec-apply-change | .clinerules/workflows/ | /opsx-apply |
| CodeArts | codeartsagent | .codeartsdoer/skills/ | /openspec-apply-change | ninguno | ninguno |
| CodeBuddy Code (CLI) | codebuddy | .codebuddy/skills/ | /openspec-apply-change | .codebuddy/commands/opsx/ | /opsx:apply |
| Code Studio | codestudio | .codestudio/skills/ | /openspec-apply-change | .codestudio/prompts/ | /opsx-apply |
| Codex | codex | .agents/skills/ | $openspec-apply-change | ninguno | ninguno |
| Continue | continue | .continue/skills/ | /openspec-apply-change | .continue/prompts/ | /opsx-apply |
| CoStrict | costrict | .cospec/skills/ | /openspec-apply-change | .cospec/openspec/commands/ | /opsx-apply |
| Crush | crush | .crush/skills/ | /openspec-apply-change | .crush/commands/opsx/ | /opsx:apply |
| Cursor | cursor | .cursor/skills/ | /openspec-apply-change | .cursor/commands/ | /opsx-apply |
| DeepSeek Harness | dsh | .dsh/skills/ | /openspec-apply-change | ninguno | ninguno |
| Devin Desktop (antes Windsurf) | devin | .devin/skills/ | /openspec-apply-change | .devin/workflows/ | /opsx-apply |
| EasyCode | easycode | .easycode/skills/ | /openspec-apply-change | .easycode/commands/opsx/ | /opsx:apply |
| Factory Droid | factory | .factory/skills/ | /openspec-apply-change | .factory/commands/ | /opsx-apply |
| ForgeCode | forgecode | .forge/skills/ | /openspec-apply-change | ninguno | ninguno |
| Gemini CLI | gemini | .gemini/skills/ | /openspec-apply-change | .gemini/commands/opsx/ | /opsx:apply |
| GigaCode | gigacode | .gigacode/skills/ | /openspec-apply-change | .gigacode/commands/ | /opsx-apply |
| GitHub Copilot | github-copilot | .github/skills/ | /openspec-apply-change | .github/prompts/ | /opsx-apply |
| Grok Build | grok | .grok/skills/ | /openspec-apply-change | ninguno | ninguno |
| GSD | gsd | .agents/skills/ | pedir openspec-apply-change | ninguno | ninguno |
| Hermes Agent | hermes | .hermes/skills/ | /openspec-apply-change | ninguno | ninguno |
| iFlow | iflow | .iflow/skills/ | /openspec-apply-change | .iflow/commands/ | /opsx-apply |
| Junie | junie | .junie/skills/ | /openspec-apply-change | .junie/commands/ | /opsx-apply |
| Kilo Code | kilocode | .kilocode/skills/ | /openspec-apply-change | .kilo/command/ | /opsx-apply |
| Kimi Code | kimi | .kimi-code/skills/ | /skill:openspec-apply-change | ninguno | ninguno |
| Kiro | kiro | .kiro/skills/ | /openspec-apply-change | .kiro/prompts/ | /opsx-apply |
| Lingma | lingma | .lingma/skills/ | /openspec-apply-change | .lingma/commands/opsx/ | /opsx:apply |
| MiniMax Code | minimax-code | ~/.minimax/skills/ (global) | /openspec-apply-change | ninguno | ninguno |
| Mistral Vibe | vibe | .vibe/skills/ | /openspec-apply-change | ninguno | ninguno |
| Oh My Pi | oh-my-pi | .omp/skills/ | /openspec-apply-change | .omp/commands/ | /opsx-apply |
| OpenCode | opencode | .opencode/skills/ | /openspec-apply-change | .opencode/commands/ | /opsx-apply |
| Pi | pi | .pi/skills/ | /openspec-apply-change | .pi/prompts/ | /opsx-apply |
| Qoder | qoder | .qoder/skills/ | /openspec-apply-change | .qoder/commands/opsx/ | /opsx:apply |
| Qwen Code | qwen | .qwen/skills/ | /openspec-apply-change | .qwen/commands/ | /opsx-apply |
| Trae | trae | .trae/skills/ | /openspec-apply-change | .trae/commands/ | /opsx-apply |
| Veai | veai | .veai/skills/ | /openspec-apply-change | ninguno | ninguno |
| Warp | warp | .warp/skills/ | /openspec-apply-change | ninguno | ninguno |
| ZCode | zcode | .zcode/skills/ | /openspec-apply-change | .zcode/commands/opsx/ | /opsx:apply |
| Zoo Code | roocode | .roo/skills/ | /openspec-apply-change | .roo/commands/ | /opsx-apply |
| Otro / Universal | agents | .agents/skills/ | /openspec-apply-change | ninguno | ninguno |
- Invocación de skill: si una herramienta registra las skills como entradas tipadas es un comportamiento propio de la herramienta. La columna muestra la grafía que OpenSpec usa en los archivos generados y en la sugerencia que init imprime. Consulta la documentación de tu herramienta si al escribirla no ocurre nada.
- Formatos de archivo de comando: la mayoría de las herramientas usan archivos de comando
.md. EasyCode y Gemini CLI usan.toml, Continue.prompt, y Code Studio, Kiro y GitHub Copilot.prompt.md. La grafía que escribes es la misma en todos los casos.
Notas por herramienta
Una herramienta que no aparece aquí se comporta exactamente como indica su fila.
Amp
- Skills de proyecto: Amp lee las skills de OpenSpec desde
.agents/skills/. - Sin archivos de comando: Amp ejecuta las skills directamente, por lo que init omite la generación de comandos.
- Carpeta compartida: Amp comparte
.agents/skills/con Antigravity, Codex, Zed Agent y el destinoagents. OpenSpec escribe el árbol de skills una sola vez.
Antigravity
- Carpeta actual: Antigravity v1.20.5 y posteriores leen las skills y los flujos de trabajo del espacio de trabajo desde
.agents/. - Carpeta heredada: después de que OpenSpec escribe los reemplazos, elimina los archivos generados equivalentes de
.agent/. Los archivos personalizados y los archivos generados modificados permanecen en.agent/para que los revises. - Skills compartidas: Antigravity comparte
.agents/skills/con Amp, Codex, Zed Agent y el destinoagents. OpenSpec escribe ese árbol de skills una sola vez mientras sigue escribiendo los comandos de Antigravity en.agents/workflows/.
Cline
Cline lee los comandos desde .clinerules/workflows/, no desde su carpeta .cline/. Las skills permanecen en .cline/skills/.
Codex
- CLI y extensión IDE: menciona
$openspec-proposecon tu idea, o ejecuta/skillspara seleccionar la skill. Codex no reconoce/openspec-propose(issue upstream). - Aplicación de escritorio: abre Skills en la barra lateral y selecciona
openspec-propose. La documentación de skills de OpenAI describe ambas interfaces. - Sin archivos de comando: Codex ejecuta las skills directamente, por lo que init omite los comandos incluso cuando la entrega los incluye e imprime
Commands skipped for: codex (uses skills). - Carpeta compartida: las skills de Codex se ubican en
.agents/skills/, el mismo árbol que usan Amp, Antigravity, Zed Agent y el destinoagents. Seleccionar más de uno mantiene un único árbol compatible, y sus handoffs escriben tanto$openspec-*como/openspec-*cuando Codex es el propietario. - Ruta heredada: las skills instaladas bajo
.codex/skills/por versiones anteriores se migran en el próximoopenspec update.
DeepSeek Harness
- Raíz del proyecto: DSH usa el ancestro
.gitmás cercano, o el directorio actual fuera de Git. Ejecutaopenspec init --tools dshallí. Para un proyecto OpenSpec anidado, añade la ruta absoluta a su directorio.dsh/skills/alcustomSkillDirsde DSH. Las skills en la raíz de Git siguen teniendo prioridad si los nombres se superponen (reglas de descubrimiento upstream). - Prioridad:
.dsh/skills/tiene prioridad sobre las skills del mismo nombre en.agents/skills/. - Entrega: usa
skillsoboth. Concommands, no se instalan flujos de trabajo de DSH. Cambia la entrega conopenspec config profiley luego vuelve a ejecutaropenspec init --tools dsh.
Devin Desktop (antes Windsurf)
- Dos agentes: los archivos de comando en
.devin/workflows/solo funcionan en Devin Desktop. Devin Local ejecuta solo skills, por lo que las skills generadas hacen referencia a/openspec-<skill>, que funciona en ambos. - Renombrado:
--tools windsurfsigue resolviendo adevin. Un proyecto que contenga archivos de OpenSpec en la carpeta heredada.windsurf/se le ofrecerá la migración en el próximoopenspec update.
GitHub Copilot
- Extensiones IDE (entrega de comandos): VS Code, JetBrains y Visual Studio cargan
.github/prompts/opsx-<id>.prompt.mdcomo/opsx-<id>. Si un comando desaparece mientras su archivo sigue existiendo, reinicia el IDE. - Copilot CLI (entrega de skills): la CLI ignora
.github/prompts/y carga.github/skills/openspec-*/SKILL.mden su lugar. Invoca una skill como/openspec-<skill>. Si una skill desaparece mientras su archivo sigue existiendo, ejecuta/skills reloady luego/skills info openspec-proposepara confirmar el descubrimiento.
GSD
- Skills de proyecto: GSD lee los flujos de trabajo de OpenSpec desde
.agents/skills/. - Invocación: pide a GSD que use la skill
openspec-<workflow>. GSD también puede seleccionar una skill coincidente a través de su configuración de descubrimiento de skills. - Sin archivos de subagente:
.gsd/agents/contiene las definiciones de subagentes de GSD. OpenSpec no escribe skills de flujo de trabajo allí.
Hermes Agent
Hermes carga skills solo desde ~/.hermes/skills/ por defecto. Añade la carpeta .hermes/skills/ del proyecto a skills.external_dirs en ~/.hermes/config.yaml; init imprime este recordatorio después de la instalación.
MiniMax Code
- Solo global: las skills van a
~/.minimax/skills/. No se escribe nada dentro del repositorio. - Seguro entre proyectos: una entrega de solo comandos deja las skills globales en su lugar, por lo que la configuración de un proyecto no puede eliminar skills que otro proyecto usa.
Warp
- Siempre skills: las skills van a
.warp/skills/incluso cuando la entrega escommands, porque Warp no tiene archivos de comando e invoca las skills directamente. - Lo que OpenSpec gestiona: solo
.warp/skills/. La configuración de Warp yWARP.mdno se crean ni se editan.
Otro / Universal (skills .agents compartidas)
- Cuándo conviene: cualquier herramienta que lea la carpeta compartida
.agents/skills/, incluidas herramientas sin fila en la matriz. Es la opción a elegir cuando tu asistente no aparece en la lista. El cuadro de búsqueda del selector de init lo encuentra poruniversal,other,generic,custom,proprietary,unlisted,unsupported,vendor-neutraloagents.md. - Junto a otros destinos: Amp, Antigravity, Codex, Zed Agent y este destino comparten un único árbol de skills físico. OpenSpec registra un escritor en
.openspec-targety escribe el árbol una vez por ejecución. Los archivos de comando separados de cada herramienta se siguen generando. - Lo que OpenSpec gestiona: solo las carpetas
openspec-*y el marcador.openspec-target. Cualquier otra cosa bajo.agents/se deja intacta. AGENTS.md: no se crea ni se edita. El destino es la carpeta.agents/, no el archivo.