CLI
Opções e comandos do CLI do OpenCode.
O CLI do OpenCode por padrão inicia o TUI quando executado sem argumentos.
opencodeMas 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
| Flag | Curto | Descrição |
|---|---|---|
--continue | -c | Continuar a última sessão |
--session | -s | ID da sessão para continuar |
--fork | Bifurcar a sessão ao continuar (usar com --continue ou --session) | |
--prompt | Prompt a usar | |
--model | -m | Modelo a usar no formato provider/model |
--agent | Agente a usar | |
--port | Porta para escutar | |
--hostname | Hostname 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:4096Flags
| Flag | Curto | Descrição |
|---|---|---|
--dir | Diretório de trabalho para iniciar o TUI | |
--session | -s | ID da sessão para continuar |
create
Criar um novo agente com configuração personalizada.
opencode agent createEste 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 listauth
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 loginQuando 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 listOu a versão curta.
opencode auth lslogout
Desconecta você de um provedor removendo-o do arquivo de credenciais.
opencode auth logoutgithub
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 installIsso 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 runFlags
| Flag | Descrição |
|---|---|
--event | Evento mock do GitHub para executar o agente |
--token | Token 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 addEste 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 listOu a versão curta.
opencode mcp lsauth
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 listOu a versão curta.
opencode mcp auth lslogout
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 anthropicFlags
| Flag | Descrição |
|---|---|
--refresh | Atualizar o cache de modelos do models.dev |
--verbose | Usar 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 --refreshrun
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
| Flag | Curto | Descrição |
|---|---|---|
--command | O comando a executar, use message para args | |
--continue | -c | Continuar a última sessão |
--session | -s | ID da sessão para continuar |
--fork | Bifurcar a sessão ao continuar (usar com --continue ou --session) | |
--share | Compartilhar a sessão | |
--model | -m | Modelo a usar no formato provider/model |
--agent | Agente a usar | |
--file | -f | Arquivo(s) para anexar à mensagem |
--format | Formato: default (formatado) ou json (eventos JSON brutos) | |
--title | Título para a sessão (usa prompt truncado se nenhum valor for fornecido) | |
--attach | Conectar a um servidor opencode em execução (ex: http://localhost:4096 (opens in a new tab)) | |
--port | Porta 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 serveIsso 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
| Flag | Descrição |
|---|---|
--port | Porta para escutar |
--hostname | Hostname para escutar |
--mdns | Habilitar descoberta mDNS |
--cors | Origem(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 listFlags
| Flag | Curto | Descrição |
|---|---|---|
--max-count | -n | Limitar às N sessões mais recentes |
--format | Formato de saída: table ou json (table) |
stats
Mostrar estatísticas de uso de tokens e custos das suas sessões do OpenCode.
opencode statsFlags
| Flag | Descrição |
|---|---|
--days | Mostrar estatísticas dos últimos N dias (todo o período) |
--tools | Número de ferramentas a mostrar (todas) |
--models | Mostrar detalhamento de uso por modelo (oculto por padrão). Passe um número para mostrar os top N |
--project | Filtrar 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/abc123web
Iniciar um servidor OpenCode headless com interface web.
opencode webIsso 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
| Flag | Descrição |
|---|---|
--port | Porta para escutar |
--hostname | Hostname para escutar |
--mdns | Habilitar descoberta mDNS |
--cors | Origem(ns) adicional(is) do navegador para permitir CORS |
acp
Iniciar um servidor ACP (Agent Client Protocol).
opencode acpEste comando inicia um servidor ACP que se comunica via stdin/stdout usando nd-JSON.
Flags
| Flag | Descrição |
|---|---|
--cwd | Diretório de trabalho |
--port | Porta para escutar |
--hostname | Hostname para escutar |
uninstall
Desinstalar o OpenCode e remover todos os arquivos relacionados.
opencode uninstallFlags
| Flag | Curto | Descrição |
|---|---|---|
--keep-config | -c | Manter arquivos de configuração |
--keep-data | -d | Manter dados de sessão e snapshots |
--dry-run | Mostrar o que seria removido sem remover | |
--force | -f | Pular 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 upgradePara atualizar para uma versão específica.
opencode upgrade v0.1.48Flags
| Flag | Curto | Descrição |
|---|---|---|
--method | -m | O método de instalação que foi usado; curl, npm, pnpm, bun, brew |
Flags globais
O CLI do opencode aceita os seguintes flags globais.
| Flag | Curto | Descrição |
|---|---|---|
--help | -h | Exibir ajuda |
--version | -v | Imprimir número da versão |
--print-logs | Imprimir logs no stderr | |
--log-level | Nível de log (DEBUG, INFO, WARN, ERROR) |
Variáveis de ambiente
O OpenCode pode ser configurado usando variáveis de ambiente.
| Variável | Tipo | Descrição |
|---|---|---|
OPENCODE_AUTO_SHARE | boolean | Compartilhar sessões automaticamente |
OPENCODE_GIT_BASH_PATH | string | Caminho para o executável Git Bash no Windows |
OPENCODE_CONFIG | string | Caminho para o arquivo de configuração |
OPENCODE_CONFIG_DIR | string | Caminho para o diretório de configuração |
OPENCODE_CONFIG_CONTENT | string | Conteúdo de configuração json inline |
OPENCODE_DISABLE_AUTOUPDATE | boolean | Desabilitar verificações automáticas de atualização |
OPENCODE_DISABLE_PRUNE | boolean | Desabilitar limpeza de dados antigos |
OPENCODE_DISABLE_TERMINAL_TITLE | boolean | Desabilitar atualizações automáticas do título do terminal |
OPENCODE_PERMISSION | string | Configuração de permissões json inline |
OPENCODE_DISABLE_DEFAULT_PLUGINS | boolean | Desabilitar plugins padrão |
OPENCODE_DISABLE_LSP_DOWNLOAD | boolean | Desabilitar downloads automáticos de servidores LSP |
OPENCODE_ENABLE_EXPERIMENTAL_MODELS | boolean | Habilitar modelos experimentais |
OPENCODE_DISABLE_AUTOCOMPACT | boolean | Desabilitar compactação automática de contexto |
OPENCODE_DISABLE_CLAUDE_CODE | boolean | Desabilitar leitura de .claude (prompt + skills) |
OPENCODE_DISABLE_CLAUDE_CODE_PROMPT | boolean | Desabilitar leitura de ~/.claude/CLAUDE.md |
OPENCODE_DISABLE_CLAUDE_CODE_SKILLS | boolean | Desabilitar carregamento de .claude/skills |
OPENCODE_DISABLE_MODELS_FETCH | boolean | Desabilitar busca de modelos de fontes remotas |
OPENCODE_FAKE_VCS | string | Provedor VCS falso para fins de teste |
OPENCODE_DISABLE_FILETIME_CHECK | boolean | Desabilitar verificação de tempo de arquivo para otimização |
OPENCODE_CLIENT | string | Identificador do cliente (padrão cli) |
OPENCODE_ENABLE_EXA | boolean | Habilitar ferramentas de busca web Exa |
OPENCODE_SERVER_PASSWORD | string | Habilitar autenticação básica para serve/web |
OPENCODE_SERVER_USERNAME | string | Substituir nome de usuário da autenticação básica (padrão opencode) |
OPENCODE_MODELS_URL | string | URL personalizada para buscar configuração de modelos |
Experimental
Estas variáveis de ambiente habilitam recursos experimentais que podem mudar ou ser removidos.
| Variável | Tipo | Descrição |
|---|---|---|
OPENCODE_EXPERIMENTAL | boolean | Habilitar todos os recursos experimentais |
OPENCODE_EXPERIMENTAL_ICON_DISCOVERY | boolean | Habilitar descoberta de ícones |
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT | boolean | Desabilitar copiar ao selecionar no TUI |
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS | number | Timeout padrão para comandos bash em ms |
OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX | number | Máximo de tokens de saída para respostas LLM |
OPENCODE_EXPERIMENTAL_FILEWATCHER | boolean | Habilitar observador de arquivos para o diretório inteiro |
OPENCODE_EXPERIMENTAL_OXFMT | boolean | Habilitar formatador oxfmt |
OPENCODE_EXPERIMENTAL_LSP_TOOL | boolean | Habilitar ferramenta LSP experimental |
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER | boolean | Desabilitar observador de arquivos |
OPENCODE_EXPERIMENTAL_EXA | boolean | Habilitar recursos experimentais Exa |
OPENCODE_EXPERIMENTAL_LSP_TY | boolean | Habilitar verificação de tipos LSP experimental |
OPENCODE_EXPERIMENTAL_MARKDOWN | boolean | Habilitar recursos experimentais de markdown |
OPENCODE_EXPERIMENTAL_PLAN_MODE | boolean | Habilitar modo plano |