Guia de comandos do OpenCode

Comandos do OpenCode: comandos personalizados, argumentos e uso seguro

A diferença principal é simples: os comandos slash integrados controlam a TUI atual, enquanto os comandos personalizados do OpenCode transformam um prompt repetível em um fluxo com nome. Comece com um arquivo Markdown em .opencode/commands/, use $ARGUMENTS apenas quando a entrada realmente variar e revise o prompt gerado antes de permitir alterações em arquivos ou comandos Shell. Este guia cobre comandos integrados, configuração Markdown e JSON, argumentos posicionais, saída do Shell, referências de arquivos, permissões e falhas comuns.

Palavra-chave
comandos do OpenCode
Documentação verificada
19 de agosto de 2026
Leitura
14 minutos
Diagrama de um terminal OpenCode ligado a comandos integrados, arquivos Markdown e configuração JSON
Os comandos do OpenCode unem ações da TUI a definições reutilizáveis.

Resposta rápida

Os comandos do OpenCode têm três camadas úteis

Escolha a menor camada que resolve a tarefa para que o atalho continue fácil de revisar.

CamadaFunçãoExemplo
Comando integrado da TUIControla a sessão atual ou uma ação incluída./help, /undo
Comando personalizadoExpande um prompt nomeado a partir de Markdown ou JSON./review com $ARGUMENTS
Comando ShellExecuta no terminal como uma superfície independente.npm test, git status

Um comando personalizado não substitui a instalação da CLI, o provider ou a política de permissões. Se opencode não for encontrado, consulte o guia de implantação; para modelos, o guia de providers; para alterações, o guia de permissões. Confirme os nomes na documentação oficial de Commands e em /help.

Comandos integrados

Use comandos slash na TUI atual

O OpenCode inclui /init, /undo, /redo, /share e /help. Eles não são aliases de Shell nem entradas para package.json. Digite-os na interface do OpenCode e leia o resultado antes de continuar.

/help é a primeira verificação quando a lista da versão instalada não está clara. /undo e /redo não substituem commits do Git. Com /share, confira quais dados da sessão ficarão visíveis antes de usá-lo com código privado. A lista integrada pode mudar entre versões.

Exemplo Markdown

Comece com um comando personalizado do projeto

Um arquivo Markdown pode ser revisado no Git e fica perto do repositório que o utiliza.

  1. Crie .opencode/commands/review.md na raiz do projeto.
  2. Adicione uma descrição curta e uma tarefa com limite claro.
  3. Teste em uma branch pequena e revise o prompt e o diff.

.opencode/commands/review.md

O exemplo pede um plano de revisão sem escrever automaticamente.

---
description: Review the current changes
---
Review the current Git changes. Explain risky behavior,
missing tests, and the smallest safe follow-up.
Do not edit files until I approve the plan.

O nome do arquivo vira o nome do comando: neste caso, /review. Use ~/.config/opencode/commands/ para fluxos pessoais globais e .opencode/commands/ para caminhos, testes e regras da equipe. “Revise as alterações e proponha um plano” é mais verificável que “conserte tudo”.

Configuração JSON

Use o objeto command junto das configurações do projeto

Também é possível definir comandos no objeto command da configuração JSON ou JSONC. Isso ajuda quando o fluxo precisa escolher um agent ou modelo específico. Caminhos, Schema e precedência pertencem ao guia opencode.jsonc.

{
  "$schema": "https://opencode.ai/config.json",
  "command": {
    "test-review": {
      "template": "Review the latest test output and list the first three fixes.",
      "description": "Review test output",
      "agent": "plan"
    }
  }
}
OpçãoUsoVerificação
templatePrompt enviado ao executar.Existe e limita a tarefa.
descriptionDescrição curta para descoberta.Explica o resultado.
agentSeleciona um agent nomeado.Ferramentas e permissões são adequadas.
modelSubstitui o modelo do fluxo.O provider oferece o ID.

A configuração não é um cofre de segredos. Chaves e tokens devem ficar no fluxo de credenciais do provider. Um comando que usa arquivos ou Shell deve ser revisado como um script.

Argumentos e contexto

Use variáveis apenas quando o fluxo realmente mudar

$ARGUMENTS recebe a string completa; $1 e $2 separam valores posicionais.

Diagrama de argumentos do OpenCode passando do terminal para um modelo Markdown, um arquivo JSON e a saída do Shell
Os argumentos devem entrar em um modelo pequeno com destino explícito e resultado revisável.
---
description: Create a file with supplied values
---
Create a file named $1 in directory $2.
Use this content: $3
Show the proposed path before writing.

/create-file config.json src "{ \"key\": \"value\" }" fornece três valores. O modelo deve explicar o uso de cada um e mostrar o caminho antes de escrever. Para uma frase livre, $ARGUMENTS é mais simples.

Use @src/components/Button.tsx para referenciar um arquivo e !`npm test` ou !`git log --oneline -10` para inserir saída do Shell no prompt. Como o comando roda a partir da raiz, evite operações destrutivas ou segredos nos modelos reutilizáveis.

Argumentos são entradas, não permissões. Comece com uma verificação somente leitura, aprove uma alteração pequena e automatize apenas em um repositório confiável.

Uso seguro

Mantenha nomes, prompts e permissões previsíveis

Um comando personalizado com o mesmo nome pode substituir um comando integrado. Evite help, undo e share salvo se essa troca for intencional. Um nome como review-tests comunica melhor o resultado.

Revise os arquivos de comando como código: diff do prompt, resposta, arquivos citados e Shell proposto. Verifique agents e modelos no guia de Agents; para Skills e MCP, use os guias de Skills e MCP.

SintomaCamada provávelPrimeira verificação
Comando slash não apareceCaminho ou nomeRevise arquivo, pasta, frontmatter e raiz.
Resultado incorretoPrompt ou argumentosTeste uma solicitação pequena e um argumento.
Saída do Shell arriscadaContexto do ShellExecute manualmente e confira pasta e permissões.
Comportamento integrado mudouColisão de nomesRenomeie e compare com /help.

Verificação

Seis verificações antes do uso pela equipe

  1. Escopo: descreva entrada e saída em uma frase.
  2. Local: escolha projeto ou global e documente.
  3. Entradas: teste valores normais, ausentes, entre aspas e caminhos.
  4. Contexto: revise arquivos e saída antes de editar.
  5. Permissões: comece com ask ou leitura e aprove mudanças pequenas.
  6. Reversão: mantenha no Git e anote como desativar o comando.

Assim fica mais fácil separar falhas: comando ausente aponta para caminho, resultado ruim para prompt ou argumentos, alteração recusada para permissões e falha de modelo para o provider.

Perguntas frequentes

Perguntas sobre comandos do OpenCode

Para que servem os comandos do OpenCode?

Os integrados controlam a TUI; os personalizados agrupam prompts repetíveis para revisões, testes e modelos de arquivos.

Onde fica a pasta de comandos personalizados?

Comandos do projeto ficam em .opencode/commands/ e comandos globais em ~/.config/opencode/commands/. O nome do arquivo vira o comando.

Como passar argumentos a um comando?

Use $ARGUMENTS para a string completa ou $1, $2 para valores separados. Coloque entre aspas valores com espaços ou JSON.

Por que o comando não aparece?

Confira pasta, raiz, nome, frontmatter e colisões; depois compare /help com a documentação oficial.

Fontes oficiais

Verifique detalhes sensíveis à versão

Esta página foi verificada em 19 de agosto de 2026 com a documentação oficial do OpenCode. Nomes e caminhos podem mudar.

Resumo

Use comandos integrados para a TUI, Markdown para fluxos de projeto revisáveis e JSON quando o comando deve ficar junto da configuração. Mantenha argumentos explícitos, trate a saída do Shell como contexto não confiável, evite colisões e teste cada mudança com uma tarefa pequena e reversível.