A plataforma de IA unificada para terminal, servidor e Kubernetes.
12 provedores. 12 agentes autônomos. Um único binário.
English • Documentação completa
ChatCLI conecta os maiores modelos de linguagem do mercado a uma interface única e extensível — do
chatcli -pno seu terminal até um operador Kubernetes com pipeline AIOps autônomo, passando por um servidor gRPC production-ready com autenticação, fallback e métricas.
| Multi-provider de verdade | 12 provedores de LLM com fallback automático, backoff exponencial e cooldown inteligente. |
| Agentes autônomos | 12 agentes especializados com motor ReAct (Reason + Act) e execução em paralelo. |
| Production-ready | gRPC + TLS, JWT + RBAC, AES-256-GCM, rate limiting, audit logging, Prometheus metrics. |
| Kubernetes-native | Operador com 17 CRDs e pipeline AIOps autônomo: 54+ ações de remediação automatizada. |
| Extensível | Plugins com verificação de assinatura, skills multi-registry (skills.sh, ClawHub), hooks de lifecycle, MCP. |
# Homebrew (macOS / Linux)
brew tap diillson/chatcli && brew install chatcli
# Go install
go install github.com/diillson/chatcli@latest
# Binários pre-compilados
# https://github.com/diillson/chatcli/releasesCompilação a partir do código-fonte
git clone https://github.com/diillson/chatcli.git && cd chatcli
go mod tidy && go build -o chatcli
# Com informações de versão
VERSION=$(git describe --tags --always --dirty 2>/dev/null || echo "dev")
go build -ldflags "-X github.com/diillson/chatcli/version.Version=${VERSION}" -o chatcliCrie um arquivo .env na raiz ou exporte as variáveis:
LLM_PROVIDER=OPENAI # OPENAI, CLAUDEAI, GOOGLEAI, XAI, ZAI, MINIMAX, COPILOT, OLLAMA, STACKSPOT, OPENROUTER
OPENAI_API_KEY=sk-xxx # Chave do provider escolhidoReferência completa de variáveis por provider
| Provider | API Key | Model | Extras |
|---|---|---|---|
| OpenAI | OPENAI_API_KEY |
OPENAI_MODEL |
OPENAI_MAX_TOKENS, OPENAI_USE_RESPONSES |
| Anthropic | ANTHROPIC_API_KEY |
ANTHROPIC_MODEL |
ANTHROPIC_MAX_TOKENS |
| Google Gemini | GOOGLEAI_API_KEY |
GOOGLEAI_MODEL |
GOOGLEAI_MAX_TOKENS |
| xAI | XAI_API_KEY |
XAI_MODEL |
XAI_MAX_TOKENS |
| ZAI | ZAI_API_KEY |
ZAI_MODEL |
ZAI_MAX_TOKENS |
| MiniMax | MINIMAX_API_KEY |
MINIMAX_MODEL |
MINIMAX_MAX_TOKENS |
| GitHub Copilot | GITHUB_COPILOT_TOKEN |
COPILOT_MODEL |
ou /auth login github-copilot |
| GitHub Models | GITHUB_TOKEN |
GITHUB_MODELS_MODEL |
GH_TOKEN, GITHUB_MODELS_TOKEN |
| StackSpot | CLIENT_ID, CLIENT_KEY |
- | STACKSPOT_REALM, STACKSPOT_AGENT_ID |
| OpenRouter | OPENROUTER_API_KEY |
- | OPENROUTER_MAX_TOKENS, OPENROUTER_FALLBACK_MODELS |
| Ollama | - | OLLAMA_MODEL |
OLLAMA_ENABLED=true, OLLAMA_BASE_URL |
O ChatCLI adapta-se ao seu contexto — da máquina de um desenvolvedor a um cluster Kubernetes em produção.
|
Para desenvolvedores individuais. Terminal inteligente com TUI (Bubble Tea), contexto de projeto, tool calling e agentes. chatcli
chatcli -p "Explique este repo"
git diff | chatcli -p "Resuma" |
Para equipes e plataformas. Servidor centralizado com TLS, autenticação, fallback, métricas Prometheus, MCP e discovery de plugins. chatcli server --port 50051 \
--token meu-token
chatcli connect \
--server host:50051 \
--token meu-token |
Para operações em escala. Pipeline AIOps autônomo com 17 CRDs, 54+ ações de remediação, SLO monitoring e post-mortems automatizados. helm install chatcli-operator \
oci://ghcr.io/diillson/charts/chatcli-operator \
--namespace aiops-system \
--create-namespace |
Comandos contextuais do modo CLI
Injete dados do ambiente diretamente no prompt:
| Comando | O que faz |
|---|---|
@git |
Status, branches e commits recentes |
@file <path> |
Conteúdo de arquivos/diretórios |
@env |
Variáveis de ambiente |
@history |
Últimos comandos do shell |
@command <cmd> |
Executa e injeta a saída |
Exemplo de manifesto Kubernetes (Instance CRD)
apiVersion: platform.chatcli.io/v1alpha1
kind: Instance
metadata:
name: chatcli-prod
spec:
provider: ZAI
model: glm-5
replicas: 2
fallback:
enabled: true
providers:
- name: OPENAI
model: gpt-5.4
- name: MINIMAX
model: MiniMax-M2.7helm install chatcli oci://ghcr.io/diillson/charts/chatcli \
--namespace chatcli --create-namespace \
--set llm.provider=OPENAI --set secrets.openaiApiKey=sk-xxx12 provedores com interface unificada. Fallback automático entre providers com classificação inteligente de erros.
| Provider | Default Model | Tool Calling | Vision |
|---|---|---|---|
| OpenAI | gpt-5.4 | Nativo | Sim |
| Anthropic (Claude) | claude-sonnet-4-6 | Nativo | Sim |
| Google Gemini | gemini-2.5-flash | Nativo | Sim |
| xAI (Grok) | grok-4-1 | XML fallback | - |
| ZAI (Zhipu AI) | glm-5 | Nativo | Sim |
| MiniMax | MiniMax-M2.7 | Nativo | Sim |
| GitHub Copilot | gpt-4o | Nativo | Sim |
| GitHub Models | gpt-4o | Nativo | Sim |
| StackSpot AI | StackSpotAI | - | - |
| OpenRouter | openai/gpt-4o | Nativo | Sim |
| Ollama | (local) | XML fallback | - |
| OpenAI Assistants | gpt-4o | Assistants API | - |
# Fallback chain configurável
CHATCLI_FALLBACK_PROVIDERS=OPENAI,CLAUDEAI,ZAI,MINIMAX,OPENROUTERClassificação de erros (rate limit, timeout, auth, context overflow), backoff exponencial e cooldown por provider.
Motor ReAct (Reason + Act) com 12 agentes especializados executando em paralelo.
/coder "Refatore o módulo auth para usar JWT"
chatcli -p "Crie testes para o pacote utils" --agent-auto-execOs agentes operam de forma coordenada, decompondo tarefas complexas em subtarefas e delegando para os workers mais adequados:
| Agente | Responsabilidade |
|---|---|
| File | Leitura, escrita e manipulação de arquivos |
| Coder | Geração e edição de código |
| Shell | Execução de comandos no sistema |
| Git | Operações de versionamento |
| Search | Busca em código e arquivos |
| Planner | Decomposição de tarefas complexas |
| Reviewer | Code review automatizado |
| Tester | Geração e execução de testes |
| Refactor | Refatoração segura de código |
| Diagnostics | Análise e debug de problemas |
| Formatter | Formatação e linting |
| Deps | Gerenciamento de dependências |
Segurança não é um feature flag. É a fundação de cada camada do ChatCLI.
O ChatCLI implementa segurança defense-in-depth, da autenticação ao armazenamento, da rede ao plugin system.
|
Autenticação e autorização
Criptografia
Rede
|
Plugin e agent security
Auditoria e compliance
CI/CD security
|
Autenticação OAuth integrada
/auth login openai-codex # OAuth PKCE + callback local
/auth login anthropic # OAuth PKCE + code manual
/auth login github-copilot # Device Flow (RFC 8628)
/auth status # Status de todos os providers
Credenciais armazenadas com AES-256-GCM em ~/.chatcli/auth-profiles.json.
Cada feature foi projetada para compor com as demais. Plugins descobrem skills. Hooks acionam tools. Contextos alimentam agentes.
| Feature | Descrição |
|---|---|
| Tool calling nativo | Chamadas estruturadas via API da OpenAI, Anthropic, Google, ZAI, MiniMax e OpenRouter. Cache ephemeral para Anthropic. XML fallback automático para providers sem suporte nativo. |
| MCP (Model Context Protocol) | Integração com servidores MCP via stdio e SSE para contexto expandido. |
| Contextos persistentes | /context create, /context attach — injeta projetos inteiros no system prompt com cache hints. |
| Bootstrap e Memória | SOUL.md, USER.md, IDENTITY.md, RULES.md + memória de longo prazo com facts e decay. |
| Plugins | Sistema extensível com auto-detecção, schema validation, verificação de assinatura e plugins remotos. |
| Skills | Registry multi-source (skills.sh, ClawHub, ChatCLI.dev) com busca fuzzy, auditorias de segurança, preferências de source e instalação atômica. |
| Agentes customizáveis | Personas em Markdown com frontmatter YAML (model, tools, skills). |
| Hooks | Lifecycle events (PreToolUse, PostToolUse, SessionStart) com shell commands e webhooks. |
| WebFetch / WebSearch | Busca DuckDuckGo e fetch de páginas com extração de texto. |
| Cost tracking | Custo por sessão com pricing tables por provider. |
| Git Worktrees | Trabalho isolado em branches paralelas. |
| K8s Watcher | Monitoramento multi-target com métricas, logs, events e Prometheus scraping. |
| i18n | Interface em Português e Inglês com detecção automática. |
| Session management | Save, load, fork e export de conversas. |
Exemplo de configuração MCP
// ~/.chatcli/mcp_servers.json
{
"servers": [
{
"name": "filesystem",
"transport": "stdio",
"command": "npx",
"args": ["-y", "@anthropic/mcp-server-filesystem", "/workspace"]
},
{
"name": "search",
"transport": "sse",
"url": "http://mcp-search:8080/sse"
}
]
}chatcli/
cli/ Interface TUI (Bubble Tea), modo agente, multi-agent workers
llm/ 12 providers, registry auto-registro, fallback chain, catalog
pkg/registry/ Skill registries multi-source (skills.sh, ClawHub, custom), instalação atômica
pkg/persona/ Skills, agentes customizáveis, resolução por preferência
server/ Servidor gRPC com TLS, JWT auth, metrics e MCP
operator/ Kubernetes Operator — 17 CRDs, pipeline AIOps autônomo
k8s/ Watcher (collectors, store, summarizer)
models/ Tipos compartilhados (ToolDefinition, ToolCall, LLMResponse)
auth/ OAuth PKCE, Device Flow, token refresh, store encriptado (AES-256-GCM)
config/ ConfigManager com migração versionada
i18n/ Internacionalização (embed.FS + golang.org/x/text)
Princípio de design: cada pacote define suas interfaces e se auto-registra no sistema. O
llm/registry permite adicionar um novo provider implementando uma única interface. Ooperator/coordena CRDs independentes via controller pattern.
- Fork o repositório
- Crie uma branch a partir da
main:git checkout -b feature/minha-feature - Commit e push
- Abra um Pull Request
