CLI
Opções e comandos da CLI do opencode.
A CLI do opencode, por padrão, inicia o TUI quando executada sem argumentos.
opencodeMas 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
Inicie a interface de usuário do terminal do opencode.
opencode [project]Opções
| Flag | Curto | Descrição |
|---|---|---|
--continue | -c | Continue a última sessão |
--session | -s | ID da sessão para continuar |
--fork | Criar um fork da sessão ao continuar (use com --continue ou --session) | |
--prompt | Prompt a ser usado | |
--model | -m | Modelo a ser usado na forma de provider/model |
--agent | Agente a ser usado | |
--port | Porta para escutar | |
--hostname | Nome do host para escutar |
Comandos
A CLI do opencode também possui os seguintes comandos.
agent
Gerencie agentes para o opencode.
opencode agent [command]attach
Anexe 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 opencode remoto. Por exemplo:
# Inicie o servidor backend para acesso web/mobileopencode web --port 4096 --hostname 0.0.0.0
# Em outro terminal, anexe o TUI ao backend em execuçãoopencode attach http://10.20.30.40:4096Opções
| Flag | Curto | Descrição |
|---|---|---|
--dir | Diretório de trabalho para iniciar o TUI | |
--continue | -c | Continuar a última sessão |
--session | -s | ID da sessão para continuar |
--fork | Bifurcar a sessão ao continuar (use com --continue ou --session) | |
--password | -p | Senha de autenticação básica (padrão: OPENCODE_SERVER_PASSWORD) |
--username | -u | Usuário de autenticação básica (padrão: OPENCODE_SERVER_USERNAME ou opencode) |
create
Crie um novo agente com configuração personalizada.
opencode agent createEste comando irá guiá-lo na criação de um novo agente com um prompt de sistema personalizado e configuração de ferramentas.
list
Liste 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, então você pode usar opencode auth login para configurar chaves de API para qualquer provedor que você gostaria de usar. Isso é armazenado em ~/.local/share/opencode/auth.json.
opencode auth loginQuando o opencode é iniciado, ele carrega os provedores do arquivo de credenciais. E se houver chaves definidas em seus ambientes ou em um arquivo .env em seu projeto.
list
Lista todos os provedores autenticados conforme armazenado no arquivo de credenciais.
opencode auth listOu a versão curta.
opencode auth lslogout
Desconecta você de um provedor limpando-o do arquivo de credenciais.
opencode auth logoutgithub
Gerencie o agente do GitHub para automação de repositórios.
opencode github [command]install
Instale o agente do GitHub em seu repositório.
opencode github installIsso configura o fluxo de trabalho necessário do GitHub Actions e o guia pelo processo de configuração. Saiba mais.
run
Execute o agente do GitHub. Isso é tipicamente usado em GitHub Actions.
opencode github runOpções
| Flag | Descrição |
|---|---|
--event | Evento simulado do GitHub para executar o agente |
--token | Token de acesso pessoal do GitHub |
mcp
Gerencie servidores do Model Context Protocol.
opencode mcp [command]add
Adicione um servidor MCP à sua configuração.
opencode mcp addEste comando irá guiá-lo na adição de um servidor MCP local ou remoto.
list
Liste todos os servidores MCP configurados e seu status de conexão.
opencode mcp listOu use a versão curta.
opencode mcp lsauth
Autentique-se com um servidor MCP habilitado para OAuth.
opencode mcp auth [name]Se você não fornecer um nome de servidor, será solicitado que você selecione entre os servidores disponíveis habilitados para OAuth.
Você também pode listar servidores habilitados para OAuth e seu status de autenticação.
opencode mcp auth listOu use a versão curta.
opencode mcp auth lslogout
Remova credenciais OAuth para um servidor MCP.
opencode mcp logout [name]debug
Depure problemas de conexão OAuth para um servidor MCP.
opencode mcp debug <name>models
Liste todos os modelos disponíveis dos provedores configurados.
opencode models [provider]Este comando exibe todos os modelos disponíveis entre seus provedores configurados no formato provider/model.
Isso é útil para descobrir o nome exato do modelo a ser usado em sua configuração.
Você pode opcionalmente passar um ID de provedor para filtrar modelos por esse provedor.
opencode models anthropicOpções
| Flag | Descrição |
|---|---|
--refresh | Atualiza o cache de modelos a partir do models.dev |
--verbose | Use uma 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ê deseja vê-los no opencode.
opencode models --refreshrun
Execute o opencode em modo não interativo passando um prompt diretamente.
opencode run [message..]Isso é útil para scripts, automação ou quando você deseja uma resposta rápida sem iniciar o TUI completo. Por exemplo.
opencode run Explique o uso de context em GoVocê também pode se anexar a uma instância em execução do opencode serve para evitar tempos de inicialização a frio do servidor MCP em cada execução:
# Inicie um servidor sem cabeça em um terminalopencode serve
# Em outro terminal, execute comandos que se anexam a eleopencode run --attach http://localhost:4096 "Explique async/await em JavaScript"Opções
| Flag | Curto | Descrição |
|---|---|---|
--command | O comando a ser executado, use mensagem para argumentos | |
--continue | -c | Continue a última sessão |
--session | -s | ID da sessão para continuar |
--fork | Criar um fork da sessão ao continuar (use com --continue ou --session) | |
--model | -m | Modelo a ser usado na forma de provider/model |
--agent | Agente a ser usado | |
--file | -f | Arquivo(s) a serem anexados à mensagem |
--format | Formato: padrão (formatado) ou json (eventos JSON brutos) | |
--title | Título para a sessão (usa o prompt truncado se nenhum valor for fornecido) | |
--attach | Anexe a um servidor opencode em execução (por exemplo, http://localhost:4096) | |
--password | -p | Senha de autenticação básica (padrão: OPENCODE_SERVER_PASSWORD) |
--username | -u | Usuário de autenticação básica (padrão: OPENCODE_SERVER_USERNAME ou opencode) |
--dir | Diretório de execução, ou caminho no servidor remoto ao anexar | |
--variant | Variante do modelo (nível de raciocínio específico do provedor) | |
--thinking | Mostrar blocos de pensamento | |
--port | Porta para o servidor local (padrão para porta aleatória) |
serve
Inicie um servidor opencode sem cabeça para acesso à API. Confira a documentação do servidor para a interface HTTP completa.
opencode serveIsso inicia um servidor HTTP que fornece acesso à funcionalidade do opencode sem a interface TUI. Defina OPENCODE_SERVER_PASSWORD para habilitar a autenticação básica HTTP (o nome de usuário padrão é opencode).
Opções
| Flag | Descrição |
|---|---|
--port | Porta para escutar |
--hostname | Nome do host para escutar |
--mdns | Habilitar descoberta mDNS |
--cors | Origem(ns) de navegador adicionais para permitir CORS |
session
Gerencie sessões do opencode.
opencode session [command]list
Liste todas as sessões do opencode.
opencode session listOpções
| Flag | Curto | Descrição |
|---|---|---|
--max-count | -n | Limitar às N sessões mais recentes |
--format | Formato de saída: tabela ou json (tabela) |
stats
Mostre o uso de tokens e estatísticas de custo para suas sessões do opencode.
opencode statsOpções
| Flag | Descrição |
|---|---|
--days | Mostre estatísticas dos últimos N dias (todo o tempo) |
--tools | Número de ferramentas a serem mostradas (todas) |
--models | Mostre a divisão do uso de modelos (oculto por padrão). Passe um número para mostrar os N principais |
--project | Filtrar por projeto (todos os projetos, string vazia: projeto atual) |
export
Exporte dados da sessão como JSON.
opencode export [sessionID]Se você não fornecer um ID de sessão, será solicitado que você selecione entre as sessões disponíveis.
import
Importe dados da sessão de um arquivo JSON.
opencode import <file>opencode import session.jsonweb
Inicie um servidor opencode sem cabeça com uma interface web.
opencode webIsso inicia um servidor HTTP e abre um navegador para acessar o opencode através de uma interface web. Defina OPENCODE_SERVER_PASSWORD para habilitar a autenticação básica HTTP (o nome de usuário padrão é opencode).
Opções
| Flag | Descrição |
|---|---|
--port | Porta para escutar |
--hostname | Nome do host para escutar |
--mdns | Habilitar descoberta mDNS |
--cors | Origem(ns) de navegador adicionais para permitir CORS |
acp
Inicie um servidor ACP (Agent Client Protocol).
opencode acpEste comando inicia um servidor ACP que se comunica via stdin/stdout usando nd-JSON.
Opções
| Flag | Descrição |
|---|---|
--cwd | Diretório de trabalho |
--port | Porta para escutar |
--hostname | Nome do host para escutar |
uninstall
Desinstale o opencode e remova todos os arquivos relacionados.
opencode uninstallOpções
| 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
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 upgradePara atualizar para uma versão específica.
opencode upgrade v0.1.48Opções
| Flag | Curto | Descrição |
|---|---|---|
--method | -m | O método de instalação que foi usado; curl, npm, pnpm, bun, brew |
Opções Globais
A CLI do opencode aceita as 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_GIT_BASH_PATH | string | Caminho para o executável do 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 de atualização automática |
OPENCODE_DISABLE_PRUNE | boolean | Desabilitar a poda 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 do servidor 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 + habilidades) |
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_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 de autenticação básica (padrão opencode) |
OPENCODE_MODELS_URL | string | URL personalizada para buscar configuração de modelos |
Experimental
Essas variáveis de ambiente habilitam recursos experimentais que podem mudar ou ser removidos.
| Variável | Tipo | Descrição |
|---|---|---|
OPENCODE_EXPERIMENTAL | boolean | Habilitar recursos experimentais sob o sinalizador global |
OPENCODE_EXPERIMENTAL_ICON_DISCOVERY | boolean | Habilitar descoberta de ícones |
OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT | boolean | Desabilitar cópia ao selecionar no TUI |
OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS | number | Tempo limite 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 monitoramento de arquivos para todo o diretório |
OPENCODE_EXPERIMENTAL_OXFMT | boolean | Habilitar formatador oxfmt |
OPENCODE_EXPERIMENTAL_LSP_TOOL | boolean | Habilitar ferramenta LSP experimental |
OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER | boolean | Desabilitar monitoramento de arquivos |
OPENCODE_EXPERIMENTAL_EXA | boolean | Habilitar recursos experimentais do Exa |
OPENCODE_EXPERIMENTAL_LSP_TY | boolean | Habilitar TY LSP para arquivos python |
OPENCODE_EXPERIMENTAL_PLAN_MODE | boolean | Habilitar modo de plano |
OPENCODE_EXPERIMENTAL_EVENT_SYSTEM | boolean | Habilitar sistema de eventos experimental |
OPENCODE_EXPERIMENTAL_NATIVE_LLM | boolean | Habilitar caminho nativo de requisição LLM |
OPENCODE_EXPERIMENTAL_PARALLEL | boolean | Habilitar execução paralela de busca web |
OPENCODE_EXPERIMENTAL_SCOUT | boolean | Habilitar subagente Scout |
OPENCODE_EXPERIMENTAL_WORKSPACES | boolean | Habilitar suporte a espaços de trabalho |