Português
Documentação
CLI

CLI

Opções e comandos do CLI do OpenCode.

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

opencode

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

opencode run "Explain how closures work in JavaScript"

tui

Iniciar 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
--forkBifurcar a sessão ao continuar (usar com --continue ou --session)
--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

Gerenciar agentes para o OpenCode.

opencode agent [command]

attach

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

opencode attach [url]

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

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

Flags

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

create

Criar um novo agente com configuração personalizada.

opencode agent create

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


list

Listar 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 API para qualquer provedor que desejar. 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 nas suas variáveis de ambiente ou em um arquivo .env no seu projeto.


list

Lista todos os provedores autenticados armazenados 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

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

opencode github [command]

install

Instalar o agente do 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

Executar o agente do 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

Gerenciar servidores de Model Context Protocol.

opencode mcp [command]

add

Adicionar um servidor MCP à sua configuração.

opencode mcp add

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


list

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

opencode mcp list

Ou a versão curta.

opencode mcp ls

auth

Autenticar-se 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 com capacidade OAuth disponíveis.

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

opencode mcp auth list

Ou a versão curta.

opencode mcp auth ls

logout

Remover credenciais OAuth para um servidor MCP.

opencode mcp logout [name]

debug

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

opencode mcp debug <name>

models

Listar todos os modelos disponíveis dos provedores configurados.

opencode models [provider]

Este comando exibe todos os modelos disponíveis dos 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
--refreshAtualizar o cache de modelos do models.dev
--verboseUsar saída de modelos mais detalhada (inclui metadados como custos)

Use o 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

Executar 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 o TUI completo. Por exemplo.

opencode run "Explain the use of context in Go"

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

# Iniciar um servidor headless em um terminal
opencode serve
 
# Em outro terminal, executar comandos que se conectam 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
--forkBifurcar a sessão ao continuar (usar com --continue ou --session)
--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 for fornecido)
--attachConectar 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

Iniciar 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 HTTP básica (o 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

Gerenciar sessões do OpenCode.

opencode session [command]

list

Listar 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

Mostrar estatísticas de uso de tokens e custos das suas sessões do OpenCode.

opencode stats

Flags

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

export

Exportar 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

Importar 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

Iniciar 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 HTTP básica (o 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

Iniciar 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

Desinstalar o OpenCode e remover 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

Atualizar 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 os seguintes flags globais.

FlagCurtoDescrição
--help-hExibir ajuda
--version-vImprimir número da versão
--print-logsImprimir logs no 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 servidores 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_USERNAMEstringSubstituir nome de usuário da 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 no 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 o 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 experimentais Exa
OPENCODE_EXPERIMENTAL_LSP_TYbooleanHabilitar verificação de tipos LSP experimental
OPENCODE_EXPERIMENTAL_MARKDOWNbooleanHabilitar recursos experimentais de markdown
OPENCODE_EXPERIMENTAL_PLAN_MODEbooleanHabilitar modo plano