.env na raiz do projeto ou no HOME.
Ordem de Prioridade
1
Flags de linha de comando
Ex:
--provider, --model (maior prioridade)2
Variáveis de Ambiente do Sistema
export LLM_PROVIDER=OPENAI3
Variáveis no arquivo .env
LLM_PROVIDER=OPENAI4
Valores Padrão
Valores internos do ChatCLI (menor prioridade)
Configuração Geral
Tema de Cores
A variávelCHATCLI_THEME escolhe a paleta de cores que reskina toda a interface — chat, cards do /coder e /agent, bordas, markdown, code blocks e spinners. Diferente do CHATCLI_CODER_UI, o tema é estado global do processo, então a troca vale na próxima renderização, sem reiniciar.
São 11 temas: dark e light (variantes calibradas do ChatCLI) + nove paletas da comunidade — dracula, nord, tokyo-night, solarized-dark, solarized-light, gruvbox, catppuccin-mocha, monokai, one-dark. Previews em cores reais de cada um estão no Sistema de Tema.
CHATCLI_THEME=light ao seu .env — o mutator emite essa dica após cada troca e nunca reescreve seu .env sozinho. Em pipes, CI ou terminais sem cor (NO_COLOR, dumb), a saída degrada para texto limpo. Detalhes completos no Sistema de Tema.
UI Styles
A variávelCHATCLI_CODER_UI controla como os modos /coder e /agent desenham tool calls, raciocínio e resultados na timeline. Antes da v1.119 ela só afetava /coder; a partir dessa versão vale também para /agent — quem já tinha CHATCLI_CODER_UI=compact setado vai ver o /agent ficar compacto também.
Trocar a UI em runtime
A partir da v1.119 dá pra trocar o estilo sem reiniciar o ChatCLI, direto no prompt:CHATCLI_CODER_UI=compact (ou outro valor) no seu .env — o mutator emite essa dica logo após cada troca.
Mudanças visuais paralelas (v1.119)
- Footer dos cards agora termina no tamanho do conteúdo (
╰────╯), não estica até a borda do terminal. - Erros em vermelho real (
✗,❌ FALHA NA EXECUÇÃO) em vez de roxo. Se seu terminal mapeia ANSI 31 para outra cor via theme, ajuste a paleta. - Banner unificado para
/codere/agent: mesmo card de entrada com Objetivo/Tarefa, Workspace e Política. - Menu do
/agentreorganizado em 3 colunas (Execução · Edição & Contexto · Visualização) — antes era lista vertical de 12 linhas. - Prompt prefix agrupa todos os badges (
[🌐 ⏵ ▶2⏳1 🅿1]) em vez de listar[remote] [watch] [jobs:…] [🅿️ resume:…]separadamente. - Header de turno do chat: nova moldura
╭─ model ─── 1.4s · 312↑ 1800↓ ─╮ … ╰─╯no modo conversa, com latência e tokens estimados.
Compressão de Contexto e Saída
Controle em runtime da Compressão de Contexto (CCR) e da redução de tokens de saída. As mudanças valem imediatamente; defina as variáveis no.env para um padrão permanente.
@compress/@recall expõem a compressão sob demanda ao modelo. Veja a página Compressão de Contexto para detalhes, variáveis de ambiente e garantias de não-degradação.
Autenticação OAuth
Além das chaves de API tradicionais, o ChatCLI suporta autenticação via OAuth para OpenAI, Anthropic e GitHub Copilot. Com o OAuth, você pode usar seu plano existente (ChatGPT Plus, Codex, Claude Pro, GitHub Copilot) sem gerar API keys.
As credenciais são armazenadas com criptografia AES-256-GCM em
~/.chatcli/auth-profiles.json. A chave de criptografia é gerada automaticamente e salva em ~/.chatcli/.auth-key (permissão 0600).
Use/auth login openai-codex,/auth login anthropicou/auth login github-copilotno modo interativo para iniciar o fluxo OAuth. Consulte a documentação completa de OAuth para mais detalhes.
Configuração de Provedores
OpenAI
Anthropic (Claude)
Google (Gemini)
xAI (Grok)
Ollama (Local)
StackSpot
ZAI (Zhipu AI)
Rotação automática de JWT: Chaves no formato
id.secret ativam automaticamente a geração de tokens JWT (HMAC-SHA256) com header customizado {"alg": "HS256", "sign_type": "SIGN"}. Os tokens são cacheados por 30 minutos e regenerados com 5 minutos de margem. Chaves sem ”.” continuam funcionando como Bearer tokens tradicionais. Totalmente automático, sem configuração adicional.MiniMax
Endpoint Anthropic-compatível: Defina
MINIMAX_API_COMPAT=anthropic para usar https://api.minimax.io/anthropic/v1/messages com formato Anthropic Messages (system como campo top-level, content blocks). O header anthropic-version: 2023-06-01 é adicionado automaticamente. A mesma autenticação Bearer é usada. O tool use nativo é desabilitado neste modo (fallback para XML). Disponível também via Helm (secrets.minimaxApiCompat: "anthropic") ou Docker (MINIMAX_API_COMPAT=anthropic).Moonshot (Kimi)
Modo Thinking vs Instant: O default
auto deixa o modelo decidir; enabled força raciocínio explícito (mais caro em latência e tokens); disabled força resposta direta. Útil para alternar entre tarefas que se beneficiam de chain-of-thought e respostas rápidas (extração, classificação). A flag é injetada via extra_body.thinking.type no payload OpenAI-compatible.OpenRouter
Gateway multi-provedor: O OpenRouter é um gateway que unifica o acesso a modelos de OpenAI, Anthropic, Google, Meta, Mistral, DeepSeek e dezenas de outros provedores. Os modelos usam o formato
provedor/nome-do-modelo (ex: openai/gpt-4o, anthropic/claude-sonnet-4). O modelo padrão é openai/gpt-4o. Configure no .env:GitHub Copilot
AWS Bedrock
O Bedrock não usa API key — a autenticação é feita pela cadeia de credenciais do AWS SDK: env vars →
~/.aws/credentials → ~/.aws/config (SSO, assume-role) → IAM role (EC2/ECS/EKS).* É necessário ao menos uma fonte de credenciais: AWS_PROFILE, AWS_ACCESS_KEY_ID, profile SSO em ~/.aws/config, credenciais em ~/.aws/credentials, ou IAM role. Para detalhes completos (SSO, proxy, inference profiles), consulte a documentação do AWS Bedrock.
* Para OpenAI, Anthropic e GitHub Copilot, a chave de API é obrigatória apenas se você não utilizar autenticação OAuth (/auth login). Ambos os métodos podem coexistir.
Configuração do Modo Agente
Multi-Agent (Orquestração Paralela)
Para detalhes completos sobre o sistema multi-agent, consulte a documentação de Orquestração Multi-Agent.
Configuração do Modo Servidor (chatcli server)
Fallback de Provedores
Para detalhes completos, consulte a documentação de Fallback de Provedores.
MCP (Model Context Protocol)
Arquivos no ~/.chatcli/mcp/
Além do mcp_servers.json, o subsistema MCP gerencia automaticamente um diretório próprio para state durável:
Para detalhes completos, consulte a documentação de MCP e MCP Channels.
Busca Web (WebSearch)
Os backends são keyless (sem API key de terceiro). DuckDuckGo é o default zero-config; SearxNG self-hosted é preferido em ambientes corporativos. Veja Web Tools para a cadeia de fallback e como habilitar a JSON API do SearxNG.
Bootstrap e Memória
Para detalhes completos, consulte a documentação de Bootstrap e Memória.
Skill Registry (Multi-Registry)
O sistema de registries é configurado via arquivo
~/.chatcli/registries.yaml (criado automaticamente com registries padrão: chatcli e clawhub). As variáveis acima servem como overrides.
Para detalhes completos, consulte a documentação do Skill Registry.
Segurança e Controle
Segurança do Modo Agente
Autenticação e Tokens
Segurança de Rede e Servidor
Segurança de Plugins
Segurança do Operador K8s
Para detalhes completos sobre segurança, consulte a documentação de Segurança e Hardening.