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]Flags
| 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:
# Start the backend server for web/mobile accessopencode web --port 4096 --hostname 0.0.0.0
# In another terminal, attach the TUI to the running backendopencode 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
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 runFlags
| 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 anthropicFlags
| 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 Explain the use of context in 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:
# Start a headless server in one terminalopencode serve
# In another terminal, run commands that attach to itopencode run --attach http://localhost:4096 "Explain async/await in JavaScript"Flags
| 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) | |
--share | Compartilhe a sessão | |
--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) | |
--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).
Flags
| 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 listFlags
| 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 statsFlags
| 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 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.jsonopencode import https://opncd.ai/s/abc123web
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).
Flags
| 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.
Flags
| 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 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
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.48Flags
| Flag | Curto | Descrição |
|---|---|---|
--method | -m | O método de instalação que foi usado; curl, npm, pnpm, bun, brew |
Flags 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_AUTO_SHARE | boolean | Compartilhar sessões automaticamente |
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_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 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 todos os recursos experimentais |
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 verificação de tipo LSP experimental |
OPENCODE_EXPERIMENTAL_MARKDOWN | boolean | Habilitar recursos experimentais de markdown |
OPENCODE_EXPERIMENTAL_PLAN_MODE | boolean | Habilitar modo de plano |