Português
Documentação
CLI

CLI

Opções e comandos do CLI do OpenCode.

O CLI do OpenCode por padrão inicia a TUI quando executado sem argumentos.

opencode

Mas também aceita comandos conforme documentado nesta página. Isso permite que você interaja com o OpenCode programaticamente.

opencode run "Explain how closures work in JavaScript"

tui

Inicia a interface de usuário de terminal do OpenCode.

opencode [project]

Flags

FlagCurtoDescrição
--continue-cContinuar a última sessão
--session-sID da sessão para continuar
--promptPrompt a usar
--model-mModelo a usar no formato provider/model
--agentAgente a usar
--portPorta para escutar
--hostnameHostname para escutar

Comandos

O CLI do OpenCode também possui os seguintes comandos.


agent

Gerencia agentes para o OpenCode.

opencode agent [command]

attach

Anexa um terminal a um servidor backend do OpenCode já em execução iniciado via comandos serve ou web.

opencode attach [url]

Isso permite usar a TUI com um backend remoto do OpenCode. Por exemplo:

# Inicia o servidor backend para acesso web/mobile
opencode web --port 4096 --hostname 0.0.0.0
 
# Em outro terminal, anexa a TUI ao backend em execução
opencode attach http://10.20.30.40:4096

Flags

FlagCurtoDescrição
--dirDiretório de trabalho para iniciar a TUI
--session-sID da sessão para continuar

create

Cria um novo agente com configuração personalizada.

opencode agent create

Este comando guiará você na criação de um novo agente com prompt de sistema e configuração de ferramentas personalizados.


list

Lista todos os agentes disponíveis.

opencode agent list

auth

Comando para gerenciar credenciais e login para provedores.

opencode auth [command]

login

O OpenCode é alimentado pela lista de provedores em Models.dev (opens in a new tab), então você pode usar opencode auth login para configurar chaves de API para qualquer provedor que deseja usar. Isso é armazenado em ~/.local/share/opencode/auth.json.

opencode auth login

Quando o OpenCode inicia, ele carrega os provedores do arquivo de credenciais. E se houver chaves definidas em suas variáveis de ambiente ou em um arquivo .env no seu projeto.


list

Lista todos os provedores autenticados conforme armazenado no arquivo de credenciais.

opencode auth list

Ou a versão curta.

opencode auth ls

logout

Desconecta você de um provedor removendo-o do arquivo de credenciais.

opencode auth logout

github

Gerencia o agente GitHub para automação de repositórios.

opencode github [command]

install

Instala o agente GitHub no seu repositório.

opencode github install

Isso configura o workflow necessário do GitHub Actions e guia você pelo processo de configuração. Saiba mais.


run

Executa o agente GitHub. Isso é tipicamente usado no GitHub Actions.

opencode github run
Flags
FlagDescrição
--eventEvento mock do GitHub para executar o agente
--tokenToken de acesso pessoal do GitHub

mcp

Gerencia servidores do Model Context Protocol.

opencode mcp [command]

add

Adiciona um servidor MCP à sua configuração.

opencode mcp add

Este comando guiará você na adição de um servidor MCP local ou remoto.


list

Lista todos os servidores MCP configurados e seu status de conexão.

opencode mcp list

Ou use a versão curta.

opencode mcp ls

auth

Autentica com um servidor MCP habilitado para OAuth.

opencode mcp auth [name]

Se você não fornecer um nome de servidor, será solicitado a selecionar entre os servidores disponíveis com capacidade OAuth.

Você também pode listar servidores com capacidade OAuth e seu status de autenticação.

opencode mcp auth list

Ou use a versão curta.

opencode mcp auth ls

logout

Remove credenciais OAuth para um servidor MCP.

opencode mcp logout [name]

debug

Depura problemas de conexão OAuth para um servidor MCP.

opencode mcp debug <name>

models

Lista todos os modelos disponíveis dos provedores configurados.

opencode models [provider]

Este comando exibe todos os modelos disponíveis em seus provedores configurados no formato provider/model.

Isso é útil para descobrir o nome exato do modelo a usar na sua configuração.

Você pode opcionalmente passar um ID de provedor para filtrar modelos por esse provedor.

opencode models anthropic

Flags

FlagDescrição
--refreshAtualiza o cache de modelos do models.dev
--verboseUsa saída de modelo mais detalhada (inclui metadados como custos)

Use a flag --refresh para atualizar a lista de modelos em cache. Isso é útil quando novos modelos foram adicionados a um provedor e você quer vê-los no OpenCode.

opencode models --refresh

run

Executa o opencode em modo não interativo passando um prompt diretamente.

opencode run [message..]

Isso é útil para scripts, automação ou quando você quer uma resposta rápida sem iniciar a TUI completa. Por exemplo.

opencode run "Explain the use of context in Go"

Você também pode anexar a uma instância opencode serve em execução para evitar tempos de inicialização fria do servidor MCP em cada execução:

# Inicia um servidor headless em um terminal
opencode serve
 
# Em outro terminal, executa comandos que se anexam a ele
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"

Flags

FlagCurtoDescrição
--commandO comando a executar, use message para args
--continue-cContinuar a última sessão
--session-sID da sessão para continuar
--shareCompartilhar a sessão
--model-mModelo a usar no formato provider/model
--agentAgente a usar
--file-fArquivo(s) para anexar à mensagem
--formatFormato: default (formatado) ou json (eventos JSON brutos)
--titleTítulo para a sessão (usa prompt truncado se nenhum valor fornecido)
--attachAnexar a um servidor opencode em execução (ex: http://localhost:4096 (opens in a new tab))
--portPorta para o servidor local (padrão é porta aleatória)

serve

Inicia um servidor OpenCode headless para acesso via API. Confira a documentação do servidor para a interface HTTP completa.

opencode serve

Isso inicia um servidor HTTP que fornece acesso via API à funcionalidade do opencode sem a interface TUI. Defina OPENCODE_SERVER_PASSWORD para habilitar autenticação básica HTTP (nome de usuário padrão é opencode).

Flags

FlagDescrição
--portPorta para escutar
--hostnameHostname para escutar
--mdnsHabilitar descoberta mDNS
--corsOrigem(ns) adicional(is) do navegador para permitir CORS

session

Gerencia sessões do OpenCode.

opencode session [command]

list

Lista todas as sessões do OpenCode.

opencode session list
Flags
FlagCurtoDescrição
--max-count-nLimitar às N sessões mais recentes
--formatFormato de saída: table ou json (table)

stats

Mostra estatísticas de uso de tokens e custos para suas sessões do OpenCode.

opencode stats

Flags

FlagDescrição
--daysMostrar estatísticas dos últimos N dias (todo o tempo)
--toolsNúmero de ferramentas a mostrar (todas)
--modelsMostrar detalhamento de uso de modelos (oculto por padrão). Passe um número para mostrar os N principais
--projectFiltrar por projeto (todos os projetos, string vazia: projeto atual)

export

Exporta dados da sessão como JSON.

opencode export [sessionID]

Se você não fornecer um ID de sessão, será solicitado a selecionar entre as sessões disponíveis.


import

Importa dados de sessão de um arquivo JSON ou URL de compartilhamento do OpenCode.

opencode import <file>

Você pode importar de um arquivo local ou de uma URL de compartilhamento do OpenCode.

opencode import session.json
opencode import https://opncd.ai/s/abc123

web

Inicia um servidor OpenCode headless com interface web.

opencode web

Isso inicia um servidor HTTP e abre um navegador web para acessar o OpenCode através de uma interface web. Defina OPENCODE_SERVER_PASSWORD para habilitar autenticação básica HTTP (nome de usuário padrão é opencode).

Flags

FlagDescrição
--portPorta para escutar
--hostnameHostname para escutar
--mdnsHabilitar descoberta mDNS
--corsOrigem(ns) adicional(is) do navegador para permitir CORS

acp

Inicia um servidor ACP (Agent Client Protocol).

opencode acp

Este comando inicia um servidor ACP que se comunica via stdin/stdout usando nd-JSON.

Flags

FlagDescrição
--cwdDiretório de trabalho
--portPorta para escutar
--hostnameHostname para escutar

uninstall

Desinstala o OpenCode e remove todos os arquivos relacionados.

opencode uninstall

Flags

FlagCurtoDescrição
--keep-config-cManter arquivos de configuração
--keep-data-dManter dados de sessão e snapshots
--dry-runMostrar o que seria removido sem remover
--force-fPular prompts de confirmação

upgrade

Atualiza o opencode para a versão mais recente ou uma versão específica.

opencode upgrade [target]

Para atualizar para a versão mais recente.

opencode upgrade

Para atualizar para uma versão específica.

opencode upgrade v0.1.48

Flags

FlagCurtoDescrição
--method-mO método de instalação que foi usado; curl, npm, pnpm, bun, brew

Flags Globais

O CLI do opencode aceita as seguintes flags globais.

FlagCurtoDescrição
--help-hExibir ajuda
--version-vImprimir número da versão
--print-logsImprimir logs para stderr
--log-levelNível de log (DEBUG, INFO, WARN, ERROR)

Variáveis de Ambiente

O OpenCode pode ser configurado usando variáveis de ambiente.

VariávelTipoDescrição
OPENCODE_AUTO_SHAREbooleanCompartilhar sessões automaticamente
OPENCODE_GIT_BASH_PATHstringCaminho para o executável Git Bash no Windows
OPENCODE_CONFIGstringCaminho para o arquivo de configuração
OPENCODE_CONFIG_DIRstringCaminho para o diretório de configuração
OPENCODE_CONFIG_CONTENTstringConteúdo de configuração json inline
OPENCODE_DISABLE_AUTOUPDATEbooleanDesabilitar verificações automáticas de atualização
OPENCODE_DISABLE_PRUNEbooleanDesabilitar limpeza de dados antigos
OPENCODE_DISABLE_TERMINAL_TITLEbooleanDesabilitar atualizações automáticas do título do terminal
OPENCODE_PERMISSIONstringConfiguração de permissões json inline
OPENCODE_DISABLE_DEFAULT_PLUGINSbooleanDesabilitar plugins padrão
OPENCODE_DISABLE_LSP_DOWNLOADbooleanDesabilitar downloads automáticos de servidor LSP
OPENCODE_ENABLE_EXPERIMENTAL_MODELSbooleanHabilitar modelos experimentais
OPENCODE_DISABLE_AUTOCOMPACTbooleanDesabilitar compactação automática de contexto
OPENCODE_DISABLE_CLAUDE_CODEbooleanDesabilitar leitura de .claude (prompt + skills)
OPENCODE_DISABLE_CLAUDE_CODE_PROMPTbooleanDesabilitar leitura de ~/.claude/CLAUDE.md
OPENCODE_DISABLE_CLAUDE_CODE_SKILLSbooleanDesabilitar carregamento de .claude/skills
OPENCODE_DISABLE_MODELS_FETCHbooleanDesabilitar busca de modelos de fontes remotas
OPENCODE_FAKE_VCSstringProvedor VCS falso para fins de teste
OPENCODE_DISABLE_FILETIME_CHECKbooleanDesabilitar verificação de tempo de arquivo para otimização
OPENCODE_CLIENTstringIdentificador do cliente (padrão cli)
OPENCODE_ENABLE_EXAbooleanHabilitar ferramentas de busca web Exa
OPENCODE_SERVER_PASSWORDstringHabilitar autenticação básica para serve/web
OPENCODE_SERVER_USERNAMEstringSobrescrever nome de usuário de autenticação básica (padrão opencode)
OPENCODE_MODELS_URLstringURL personalizada para buscar configuração de modelos

Experimental

Estas variáveis de ambiente habilitam recursos experimentais que podem mudar ou ser removidos.

VariávelTipoDescrição
OPENCODE_EXPERIMENTALbooleanHabilitar todos os recursos experimentais
OPENCODE_EXPERIMENTAL_ICON_DISCOVERYbooleanHabilitar descoberta de ícones
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECTbooleanDesabilitar copiar ao selecionar na TUI
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MSnumberTimeout padrão para comandos bash em ms
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAXnumberMáximo de tokens de saída para respostas LLM
OPENCODE_EXPERIMENTAL_FILEWATCHERbooleanHabilitar observador de arquivos para diretório inteiro
OPENCODE_EXPERIMENTAL_OXFMTbooleanHabilitar formatador oxfmt
OPENCODE_EXPERIMENTAL_LSP_TOOLbooleanHabilitar ferramenta LSP experimental
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHERbooleanDesabilitar observador de arquivos
OPENCODE_EXPERIMENTAL_EXAbooleanHabilitar recursos Exa experimentais
OPENCODE_EXPERIMENTAL_LSP_TYbooleanHabilitar verificação de tipos LSP experimental
OPENCODE_EXPERIMENTAL_MARKDOWNbooleanHabilitar recursos markdown experimentais
OPENCODE_EXPERIMENTAL_PLAN_MODEbooleanHabilitar modo de planejamento