Pré-requisitos
Git
Necessário para clonar o repositório e para que o Go baixe dependências.
Go 1.25+
Apenas para go install ou compilação do código-fonte.
API Key ou OAuth
Chave de API de um provedor LLM ou conta com plano ativo para OAuth.
1. Instalação
Binário (Recomendado)
go install
Código-Fonte
Docker
A maneira mais fácil. Baixe o binário para seu sistema diretamente da página de Releases.# Linux/macOS — ajuste o nome do arquivo conforme o release
chmod +x chatcli
sudo mv chatcli /usr/local/bin/
Disponível para Linux, macOS e Windows em arquiteturas amd64 e arm64.
Se você tem o Go instalado:go install github.com/diillson/chatcli@latest
O binário será instalado em $GOPATH/bin. Garanta que está no PATH:export PATH=$PATH:$(go env GOPATH)/bin
Adicione a linha acima ao seu .bashrc ou .zshrc para persistir entre sessões. Para quem quer compilar localmente ou contribuir:Clone o repositório
git clone https://github.com/diillson/chatcli.git
cd chatcli
Compile
go mod tidy
go build -o chatcli
(Opcional) Build com informações de versão
VERSION=$(git describe --tags --always --dirty 2>/dev/null || echo "dev")
COMMIT_HASH=$(git rev-parse --short HEAD)
BUILD_DATE=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
go build -ldflags "\
-X github.com/diillson/chatcli/version.Version=${VERSION} \
-X github.com/diillson/chatcli/version.CommitHash=${COMMIT_HASH} \
-X github.com/diillson/chatcli/version.BuildDate=${BUILD_DATE}" \
-o chatcli main.go
Isso injeta dados de versão no binário, acessíveis via /version ou chatcli --version.Mova para o PATH
sudo mv chatcli /usr/local/bin/
2. Configurar um Provedor
Crie um arquivo .env na sua pasta de usuário ou na raiz do projeto.
OpenAI
Anthropic (Claude)
Google (Gemini)
xAI (Grok)
Ollama (Local)
OAuth (sem API key)
LLM_PROVIDER=OPENAI
OPENAI_API_KEY="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# (Opcional) Modelo específico — padrão: gpt-4o-mini
# OPENAI_MODEL="gpt-4o"
LLM_PROVIDER=CLAUDEAI
ANTHROPIC_API_KEY="sk-ant-xxxxxxxxxxxxxxxxxxxxxxxx"
# (Opcional) Modelo — padrão: claude-sonnet-4-5
# ANTHROPIC_MODEL="claude-sonnet-4-20250514"
LLM_PROVIDER=GOOGLEAI
GOOGLEAI_API_KEY="AIzaxxxxxxxxxxxxxxxxxxxxxxxx"
# (Opcional) Modelo — padrão: gemini-2.5-flash
# GOOGLEAI_MODEL="gemini-2.5-flash"
LLM_PROVIDER=XAI
XAI_API_KEY="xai-xxxxxxxxxxxxxxxxxxxxxxxx"
# (Opcional) Modelo — padrão: grok-4-latest
# XAI_MODEL="grok-4-latest"
LLM_PROVIDER=OLLAMA
OLLAMA_ENABLED=true
OLLAMA_BASE_URL="http://localhost:11434"
OLLAMA_MODEL="llama3"
Nenhuma API key necessária. Instale o Ollama em ollama.com e baixe um modelo com ollama pull llama3. Se possui ChatGPT Plus/Codex, Claude Pro ou GitHub Copilot:chatcli
# Dentro do modo interativo:
/auth login openai-codex # OpenAI (PKCE OAuth)
/auth login anthropic # Anthropic (PKCE OAuth)
/auth login github-copilot # GitHub Copilot (Device Flow)
O navegador abrirá automaticamente. Consulte a documentação de OAuth para detalhes.
Você só precisa configurar os provedores que pretende usar. O ChatCLI detecta automaticamente quais estão disponíveis pelas chaves encontradas.
Variáveis de Ambiente Adicionais
| Variável | Descrição | Padrão |
|---|
CHATCLI_DOTENV | Caminho customizado para o arquivo .env | .env |
CHATCLI_LANG | Força um idioma específico (ex: pt-BR, en) | Auto-detectado |
LOG_LEVEL | Nível de log: debug, info, warn, error | info |
ENV | Modo de log: dev (terminal + arquivo), prod (só arquivo) | dev |
MAX_RETRIES | Tentativas máximas para chamadas de API | 5 |
Para a lista completa de variáveis, consulte a Referência de Variáveis de Ambiente.
3. Verificar a Instalação
Verifique a configuração ativa
chatcli
# Dentro do modo interativo:
/config
Faça sua primeira pergunta
O que é a equação de Dirac?
Se você receber uma resposta da IA, parabéns! O ChatCLI está pronto.
Próximos Passos