Ferramentas compatíveis
O OpenSpec funciona com muitos assistentes de programação com IA. Ao executar openspec init, ele configura as ferramentas selecionadas de acordo com o perfil/fluxo de trabalho ativo e o modo de distribuição.
Como funciona
Seção intitulada “Como funciona”Para cada ferramenta selecionada, o OpenSpec pode instalar:
- Skills (se o modo de distribuição incluir skills):
.../skills/openspec-*/SKILL.md - Comandos (se o modo de distribuição incluir comandos): arquivos de comando
opsx-*específicos da ferramenta
O Codex usa apenas skills: o OpenSpec instala .agents/skills/openspec-*/SKILL.md para o Codex mesmo quando o modo de distribuição está definido como commands, e não gera arquivos de prompt personalizados para ele. As skills existentes gerenciadas pelo OpenSpec no caminho legado .codex/skills são conciliadas depois que suas substitutas são gravadas; arquivos personalizados ou divergentes são preservados.
Por padrão, o OpenSpec usa o perfil core, que inclui:
proposeexploreapplyupdatesyncarchive
Você pode habilitar os fluxos expandidos (new, continue, ff, verify, bulk-archive, onboard) com openspec config profile e depois executar openspec update.
Como invocar
Seção intitulada “Como invocar”Esta documentação usa /opsx:propose como nome canônico, mas cada ferramenta o
escreve conforme carrega o arquivo criado pelo OpenSpec. Encontre o caminho do comando
da sua ferramenta na Referência de diretórios das ferramentas abaixo e compare-o com os formatos desta tabela.
| Arquivo de comando gravado pelo OpenSpec | Como invocar | Ferramentas |
|---|---|---|
.../commands/opsx/<id>.* — a pasta opsx/ define o namespace |
/opsx:<id> |
Claude Code, CodeBuddy, Crush, Gemini CLI, Lingma, Qoder, ZCode |
.../opsx-<id>.* — o nome do arquivo é o comando |
/opsx-<id> |
Todas as demais ferramentas com arquivos de comando gerados, exceto Amazon Q e Devin |
.devin/workflows/opsx-<id>.md — lido por apenas um dos dois agentes Devin |
/opsx-<id> no Devin Desktop, /openspec-<skill> no Devin Local |
Devin Desktop**** |
.amazonq/prompts/opsx-<id>.md — um prompt, não um comando |
@opsx-<id> |
Amazon Q Developer |
| nenhum — somente skills | /openspec-<skill> |
CodeArts, ForgeCode, Hermes, MiniMax Code, Mistral Vibe, Zed Agent, .agents compartilhado |
| nenhum — Kimi Code | /skill:openspec-<skill> |
Kimi Code |
| nenhum — Codex CLI | $openspec-<skill> |
Codex (/openspec-<skill> não é reconhecido) |
Assim, /opsx:propose é /opsx-propose no Cursor, @opsx-propose no Amazon Q e
$openspec-propose no Codex.
Dois elementos variam de forma independente, por isso as linhas não podem ser combinadas:
- O nome. As linhas 1–2 diferem apenas na forma como o arquivo nomeia o comando; a
base
opsx-<id>/opsx:<id>é a mesma em todas as ferramentas com arquivos de comando gerados. - O invólucro. O Amazon Q carrega os arquivos em uma biblioteca de prompts invocada com
@. Ferramentas que usam apenas skills não geram arquivos de comando, então as três últimas linhas usam nomes de skills — listados em Nomes de skills geradas — que não correspondem um a um aos IDs de comando (/opsx:applycorresponde à skillopenspec-apply-change).
Os padrões de caminho dos comandos acima não especificam a extensão (.*) de propósito: a
extensão depende da ferramenta (.toml para Gemini CLI, .prompt para Continue,
.prompt.md para Kiro e GitHub Copilot), e algumas ferramentas mostram o nome com
a extensão no seletor. Compare o formato do diretório, não a extensão.
Os arquivos gerados pelo OpenSpec e a indicação “Primeiros passos” exibida após a configuração já usam o formato correto para as ferramentas selecionadas — portanto, a resposta mais rápida é ler essa indicação.
Referência de diretórios das ferramentas
Seção intitulada “Referência de diretórios das ferramentas”| Ferramenta (ID) | Padrão do caminho de skills | Padrão do caminho de comandos |
|---|---|---|
Amazon Q Developer (amazon-q) |
.amazonq/skills/openspec-*/SKILL.md |
.amazonq/prompts/opsx-<id>.md |
Antigravity (antigravity) |
.agent/skills/openspec-*/SKILL.md |
.agent/workflows/opsx-<id>.md |
Auggie (auggie) |
.augment/skills/openspec-*/SKILL.md |
.augment/commands/opsx-<id>.md |
IBM Bob Shell (bob) |
.bob/skills/openspec-*/SKILL.md |
.bob/commands/opsx-<id>.md |
Claude Code (claude) |
.claude/skills/openspec-*/SKILL.md |
.claude/commands/opsx/<id>.md |
Cline (cline) |
.cline/skills/openspec-*/SKILL.md |
.clinerules/workflows/opsx-<id>.md |
Command Code (command-code) |
.commandcode/skills/openspec-*/SKILL.md |
.commandcode/commands/opsx-<id>.md |
CodeArts (codeartsagent) |
.codeartsdoer/skills/openspec-*/SKILL.md |
Não gerado (sem adaptador de comandos; use invocações /openspec-* baseadas em skills) |
CodeBuddy (codebuddy) |
.codebuddy/skills/openspec-*/SKILL.md |
.codebuddy/commands/opsx/<id>.md |
Codex (codex) |
.agents/skills/openspec-*/SKILL.md |
Não gerado (somente skills; use $openspec-*) |
Devin Desktop, anteriormente Windsurf (devin) |
.devin/skills/openspec-*/SKILL.md |
.devin/workflows/opsx-<id>.md**** |
ForgeCode (forgecode) |
.forge/skills/openspec-*/SKILL.md |
Não gerado (sem adaptador de comandos; use invocações /openspec-* baseadas em skills) |
Continue (continue) |
.continue/skills/openspec-*/SKILL.md |
.continue/prompts/opsx-<id>.prompt |
CoStrict (costrict) |
.cospec/skills/openspec-*/SKILL.md |
.cospec/openspec/commands/opsx-<id>.md |
Crush (crush) |
.crush/skills/openspec-*/SKILL.md |
.crush/commands/opsx/<id>.md |
Cursor (cursor) |
.cursor/skills/openspec-*/SKILL.md |
.cursor/commands/opsx-<id>.md |
Factory Droid (factory) |
.factory/skills/openspec-*/SKILL.md |
.factory/commands/opsx-<id>.md |
Gemini CLI (gemini) |
.gemini/skills/openspec-*/SKILL.md |
.gemini/commands/opsx/<id>.toml |
GitHub Copilot (github-copilot) |
.github/skills/openspec-*/SKILL.md |
.github/prompts/opsx-<id>.prompt.md** |
Hermes Agent (hermes) |
.hermes/skills/openspec-*/SKILL.md*** |
Não gerado (sem adaptador de comandos; use invocações /openspec-* baseadas em skills) |
iFlow (iflow) |
.iflow/skills/openspec-*/SKILL.md |
.iflow/commands/opsx-<id>.md |
Junie (junie) |
.junie/skills/openspec-*/SKILL.md |
.junie/commands/opsx-<id>.md |
Kilo Code (kilocode) |
.kilocode/skills/openspec-*/SKILL.md |
.kilo/command/opsx-<id>.md |
Kimi Code (kimi) |
.kimi-code/skills/openspec-*/SKILL.md |
Não gerado (sem adaptador de comandos; use invocações /skill:openspec-* baseadas em skills) |
Kiro (kiro) |
.kiro/skills/openspec-*/SKILL.md |
.kiro/prompts/opsx-<id>.prompt.md |
Lingma (lingma) |
.lingma/skills/openspec-*/SKILL.md |
.lingma/commands/opsx/<id>.md |
MiniMax Code (minimax-code) |
~/.minimax/skills/openspec-*/SKILL.md |
Não gerado (sem adaptador de comandos; use as skills do MiniMax Code) |
Mistral Vibe (vibe) |
.vibe/skills/openspec-*/SKILL.md |
Não gerado (sem adaptador de comandos; use invocações /openspec-* baseadas em skills) |
Oh My Pi (oh-my-pi) |
.omp/skills/openspec-*/SKILL.md |
.omp/commands/opsx-<id>.md |
OpenCode (opencode) |
.opencode/skills/openspec-*/SKILL.md |
.opencode/commands/opsx-<id>.md |
Pi (pi) |
.pi/skills/openspec-*/SKILL.md |
.pi/prompts/opsx-<id>.md |
SourceCraft Code Assistant for VS Code (codeassistant) |
.codeassistant/skills/openspec-*/SKILL.md |
.codeassistant/commands/opsx-<id>.md |
Qoder (qoder) |
.qoder/skills/openspec-*/SKILL.md |
.qoder/commands/opsx/<id>.md |
Qwen Code (qwen) |
.qwen/skills/openspec-*/SKILL.md |
.qwen/commands/opsx-<id>.md |
Rovo Dev CLI (rovodev) |
.rovodev/skills/openspec-*/SKILL.md |
Não gerado. O Rovo não oferece comandos de barra — encontra skills automaticamente ou por solicitação (por exemplo, “use a skill openspec-propose”); /skills serve apenas para gerenciá-las. O conteúdo gerado menciona as skills pelo nome, nunca como comandos /openspec-*. |
Zoo Code (roocode) |
.roo/skills/openspec-*/SKILL.md |
.roo/commands/opsx-<id>.md |
Trae (trae) |
.trae/skills/openspec-*/SKILL.md |
.trae/commands/opsx-<id>.md |
Zed Agent (zed) |
.agents/skills/openspec-*/SKILL.md |
Não gerado (somente skills; use /openspec-* ou @openspec-*) |
ZCode (zcode) |
.zcode/skills/openspec-*/SKILL.md |
.zcode/commands/opsx/<id>.md |
Skills compartilhadas .agents (agents) |
.agents/skills/openspec-*/SKILL.md |
Não gerado (sem adaptador de comandos; use invocações /openspec-* baseadas em skills) |
** Os arquivos de prompt do GitHub Copilot são reconhecidos como comandos de barra personalizados nas extensões de IDE (VS Code, JetBrains, Visual Studio). Atualmente, a CLI do Copilot não consome diretamente .github/prompts/*.prompt.md. Selecionar github-copilot também pode configurar o agente de codificação na nuvem hospedado no GitHub — consulte Agente de codificação na nuvem do GitHub Copilot abaixo.
*** Por padrão, Hermes carrega skills de ~/.hermes/skills/. Para usar skills do OpenSpec locais ao projeto, adicione o diretório .hermes/skills/ do projeto a skills.external_dirs em ~/.hermes/config.yaml; Hermes então disponibiliza as skills com comandos de barra voltados ao usuário, como /openspec-propose.
**** O Windsurf foi renomeado para Devin Desktop em 2 de junho de 2026, e seu diretório de configuração mudou: .devin/ é o local preferencial para leitura e gravação; .windsurf/ é um local legado somente para leitura. O OpenSpec acompanha a mudança de nome: o ID da ferramenta é devin, e --tools windsurf continua sendo resolvido para esse ID, para que os scripts de configuração existentes continuem funcionando. Se um projeto ainda tiver arquivos do OpenSpec em .windsurf/, a próxima execução de openspec update oferecerá movê-los; se você recusar, eles permanecerão no lugar, e arquivos criados por você nunca serão alterados. Os fluxos são invocados pelo nome do arquivo, então .devin/workflows/opsx-apply.md é /opsx-apply. O agente Devin Local não oferece suporte a fluxos de trabalho — apenas a skills, e não lê .windsurf/ —, portanto, quando o OpenSpec grava skills para o Devin, o conteúdo delas e a indicação inicial usam invocações /openspec-*, compatíveis com os dois agentes. Com a distribuição somente de comandos, nenhuma skill é gravada, e ambos usam /opsx-*.
O suporte ao SourceCraft Code Assistant destina-se à extensão do VS Code. Seus comandos personalizados e skills estão disponíveis apenas no VS Code. Esta integração não configura o SourceCraft na web nem no JetBrains.
Com a distribuição somente de skills, peça ao Code Assistant que use a skill openspec-propose para trabalhar na sua ideia. As skills são ativadas conforme a correspondência com a solicitação; o OpenSpec não gera comandos /openspec-* para essa ferramenta.
MiniMax Code é uma integração global que usa apenas skills. O OpenSpec grava somente seus
diretórios openspec-* em ~/.minimax/skills/; ele não cria
diretórios .minimax ou .mavis locais ao repositório. A distribuição somente de comandos deixa
intactas as skills globais existentes do MiniMax Code, para que a configuração de distribuição de um projeto
não possa remover skills usadas por outro.
Agente de codificação na nuvem do GitHub Copilot
Seção intitulada “Agente de codificação na nuvem do GitHub Copilot”O agente de codificação do Copilot do GitHub é executado no GitHub, em um ambiente do GitHub Actions — separado do Copilot no editor. O OpenSpec pode configurá-lo para usar a CLI do OpenSpec, gerando dois arquivos:
.github/workflows/copilot-setup-steps.yml— installs@fission-ai/openspecin the agent’s environment.github/agents/openspec.agent.md— tells the agent how to drive OpenSpec
Como isso grava um fluxo do GitHub Actions no repositório, o recurso é opcional:
| Como | Comportamento |
|---|---|
openspec init (interativo) |
Pergunta se deve configurar os arquivos na nuvem. O padrão é Não. |
openspec init --copilot-cloud |
Configura-os sem perguntar (para scripts/CI). |
openspec init --no-copilot-cloud |
Ignora-os sem perguntar e remove os arquivos gerados anteriormente. |
openspec update |
Nunca pergunta. Atualiza os arquivos somente se você optou por usá-los (ou se o projeto já os tiver). Se você optou por não usá-los, remove os arquivos de nuvem gerenciados pelo OpenSpec. |
Sua escolha é salva em openspec/config.yaml como githubCopilot.cloudAgent: true|false, e é respeitada por atualizações não interativas. O OpenSpec só grava ou remove arquivos cujo conteúdo tenha gerado — se você personalizar copilot-setup-steps.yml ou openspec.agent.md, ou se já tiver arquivos próprios, eles não serão alterados (e init/update informarão isso).
Quando escolher o destino compartilhado .agents
Seção intitulada “Quando escolher o destino compartilhado .agents”agents é a opção independente de fornecedor: grava skills em .agents/skills/, a
raiz compartilhada lida por muitas ferramentas de agente, em vez de usar um diretório específico da ferramenta.
| Situação | Escolha |
|---|---|
| Sua ferramenta tem uma linha própria acima | O ID dela — você terá a integração específica, incluindo comandos de barra se houver suporte |
Vários agentes no mesmo repositório, todos lendo .agents/skills |
agents — uma árvore de skills em vez de uma por ferramenta |
Sua ferramenta ainda não está listada, mas lê .agents/skills |
agents |
Você pode selecioná-la junto com um ID específico de ferramenta; normalmente cada um grava em sua
própria raiz. Codex e Zed Agent são exceções porque usam a mesma raiz canônica
.agents root. If Codex is selected with Zed or agents, OpenSpec keeps one
Codex-led tree. Its handoffs name both $openspec-* for Codex and
/openspec-* for other agents, so --tools all and existing multi-agent
setups keep working without two writers overwriting the same files.
O OpenSpec também oferece essa opção automaticamente quando o projeto tem um diretório .agents/skills/ —
um .agents/ vazio não basta, pois as ferramentas também usam essa raiz para regras
e definições de subagentes. Observe que .agents não é .agent: o diretório no singular
pertence ao Antigravity.
Há duas coisas importantes:
- Somente skills. Não existe adaptador de comandos, então nenhum arquivo de comando
opsx-*é gravado; com um modo de distribuição que inclui comandos,openspec initlistaagentsentre as ferramentas informadas emCommands skipped for: … (no adapter). Invoque os fluxos de trabalho pelo nome da skill — a maioria dos assistentes que leem.agents/skillsusa/openspec-propose, o formato indicado pela mensagem de configuração do OpenSpec. O destino é independente de fornecedor, então confira a documentação do assistente se ele usar outro formato. - Nenhum
AGENTS.mdé criado ou editado. O destino é o diretório.agents/. Se oAGENTS.mdraiz ainda contiver blocos marcadores do OpenSpec de uma versão anterior,openspec updateos removerá — consulte o Guia de migração.
O suporte ao Zed aqui é para o Zed Agent integrado. Zed External Agents e Terminal Threads usam suas próprias integrações. Agent Skills requerem Zed v1.4.2 ou superior. As skills locais ao projeto ficam indisponíveis em uma árvore de trabalho não confiável até que você conceda confiança.
Como .agents/skills/ é compartilhado pelo Codex, pelo Zed Agent e pelo destino independente de fornecedor,
vale a pena saber o que o OpenSpec gerencia nesse local:
o OpenSpec grava, atualiza e remove apenas os diretórios de skills openspec-* dos
fluxos de trabalho selecionados, além de um marcador .openspec-target que registra se o Codex,
Zed Agent ou o destino independente de fornecedor criou essa árvore compartilhada. Todo o restante desse
diretório é preservado. Considere os nomes openspec-* e o marcador como pertencentes ao OpenSpec —
alterações dentro deles serão substituídas na próxima execução de openspec update, assim como acontece com
qualquer outra ferramenta.
Em projetos sem marcador, o OpenSpec infere a propriedade pelas referências das skills gerenciadas:
$openspec-* indica Codex, e /openspec-* indica o destino independente de fornecedor. Uma
árvore canônica genérica ao lado de .codex/skills legado é tratada como uma instalação
antiga com dois destinos e consolidada na árvore compartilhada compatível.
openspec update também respeita essa propriedade. Se o projeto usa .agents como
destino independente de fornecedor e uma instalação antiga do Codex for detectada apenas por
arquivos de prompt avulsos, a atualização mantém a árvore agents estabelecida em vez de
reescrevê-la com a sintaxe do Codex, e preserva esses arquivos de prompt legados
em vez de excluí-los. Para transferir a árvore compartilhada ao Codex, execute explicitamente
openspec init --tools codex.
Configuração não interativa
Seção intitulada “Configuração não interativa”Para CI/CD ou configurações feitas por script, use --tools (e, se necessário, --profile):
# Configure specific toolsopenspec init --tools claude,cursor
# Configure all supported toolsopenspec init --tools all
# Skip tool configurationopenspec init --tools none
# Override profile for this init runopenspec init --profile coreIDs de ferramentas disponíveis (--tools) — windsurf também é aceito como alias de devin: amazon-q, antigravity, auggie, bob, claude, cline, command-code, codeartsagent, codex, devin, forgecode, codebuddy, continue, costrict, crush, cursor, factory, gemini, github-copilot, hermes, iflow, junie, kilocode, kimi, kiro, lingma, minimax-code, vibe, oh-my-pi, opencode, pi, qoder, qwen, roocode, codeassistant, trae, zed, zcode, agents
Instalação conforme o fluxo de trabalho
Seção intitulada “Instalação conforme o fluxo de trabalho”O OpenSpec instala artefatos de fluxo de trabalho de acordo com os fluxos selecionados:
- Perfil core (padrão):
propose,explore,apply,update,sync,archive - Seleção personalizada: qualquer subconjunto de todos os IDs de fluxo de trabalho:
propose,explore,new,continue,apply,update,ff,sync,archive,bulk-archive,verify,onboard
Em outras palavras, a quantidade de skills e comandos depende do perfil e do modo de distribuição, não é fixa.
Nomes de skills geradas
Seção intitulada “Nomes de skills geradas”Quando selecionadas na configuração do perfil/fluxo de trabalho, o OpenSpec gera estas skills:
openspec-proposeopenspec-exploreopenspec-new-changeopenspec-continue-changeopenspec-apply-changeopenspec-update-changeopenspec-ff-changeopenspec-sync-specsopenspec-archive-changeopenspec-bulk-archive-changeopenspec-verify-changeopenspec-onboard
Consulte Comandos para entender o comportamento dos comandos e CLI para ver as opções de init/update.
Conteúdo relacionado
Seção intitulada “Conteúdo relacionado”- Referência da CLI — comandos de terminal
- Comandos — comandos de barra e skills
- Primeiros passos — configuração inicial
HagiCode
HagiCode é um ambiente de programação com agentes, fluxos estruturados, execução multiagente e visualizações Hero Dungeon.
Transforme ideias em software útil com um fluxo de trabalho com agentes mais inteligente, rápido e agradável.

- SmartFluxos estruturados transformam intenções em um caminho executável da ideia à entrega.
- EfficientFluxos multiagente mantêm pesquisa, implementação e revisão em andamento simultaneamente.
- FunO Hero Dungeon torna longas sessões de programação mais visuais e colaborativas.
Sites do ecossistema
Links rápidos
Comunidade
© 2026 HagiCode