Comandos Internos (/)
| Comando | Descrição |
|---|---|
/help | Mostrar ajuda |
/menu (ou /) | Abre a paleta de comandos interativa — lista navegável de todos os comandos (ver Paleta de Comandos) |
/exit ou /quit | Sair do ChatCLI |
/newsession | Iniciar nova sessão de conversa |
/config, /status ou /settings | Panorama da configuração (aceita subseções — ver abaixo); bare abre a paleta com as seções |
/reload | Recarregar configurações do .env — inclui o provider de embeddings (CHATCLI_EMBED_*): trocar para bedrock/voyage/openai passa a valer sem reiniciar |
/switch | Trocar provedor de LLM ou modelo (com autocomplete dinâmico); bare abre a paleta de provedores/flags |
/provider (ou /providers) | Troca o provedor de LLM ativo pelo nome; bare abre a paleta com os provedores ativos (mesma experiência do /model) |
/model <nome> | Atalho para /switch --model <nome>; bare abre a paleta com os modelos disponíveis |
/max-tokens <num> | Atalho para /switch --max-tokens <num>; sem argumento mostra o valor atual |
/agent ou /run | Iniciar modo agente |
/coder | Iniciar modo coder (engenharia de código) |
/auth | Gerenciar credenciais OAuth |
/clear | Redesenhar/limpar tela |
/connect | Conectar a servidor remoto (gRPC) |
/disconnect | Desconectar do servidor remoto |
/context | Gerenciar contextos persistentes |
/plugin | Gerenciar plugins |
/skill | Gerenciar skills de registries |
/session | Gerenciar sessões (save, load, list, delete, new, fork, search) |
/nextchunk | Carregar próximo chunk de arquivo |
/retry | Retentar último chunk que falhou |
/retryall | Retentar todos os chunks que falharam |
/skipchunk | Pular um chunk de arquivo |
/version | Verificar versão |
/compact | Compactar histórico de conversa (auto ou guiado) |
/rewind | Voltar a um checkpoint anterior da conversa |
/memory | Ver/carregar/editar memória (today, yesterday, week, load, longterm, list, profile, profile set <campo>=<valor>, remember <fato>, forget <trecho>, topics, projects, stats, facts, compact) |
/watch | Status do K8s watcher |
/mcp | Gerenciar servidores MCP (status, tools, restart) |
/hooks | Listar hooks de lifecycle configurados |
/cost | Exibir custo estimado da sessão atual |
/worktree | Gerenciar git worktrees (create, list, remove, status) |
/channel | MCP channels inbox + trigger engine — ver /channel subcomandos |
/websearch | Gerenciar provider de busca web (status, list, provider, reset) |
/thinking | Override cross-provider de reasoning/thinking (on|off|auto|low|medium|high|max|budget=N) — ver #7 Reasoning Backbone |
/plan | Força Plan-and-Solve / ReWOO no próximo /agent ou /coder — ver #2 Plan-and-Solve |
/refine | Toggle do Self-Refine na sessão (on|off|once|auto) — ver #5 Self-Refine |
/verify | Toggle do Chain-of-Verification na sessão (on|off|once|auto) — ver #6 CoVe |
/reflect | Fila durável de lições (status, list, failed, retry, purge, drain) — ver #3 Reflexion |
/schedule | Agenda um job durável (cron / relative / interval / wait-until) — ver Scheduler |
/wait | Aguarda uma condição e opcionalmente dispara ação — ver Scheduler |
/jobs | Gerencia jobs agendados (list, show, tree, cancel, pause, resume, logs, history, daemon, gc) |
/parked | Lista agents estacionados via @park — prune limpa terminais, gc <dur> limpa antigos — ver Agent Park & Resume |
/resume | /resume <token> força retomada imediata de um park (idempotente contra auto-resume) |
/cancel-park | /cancel-park <token> aborta um park: deleta snapshot + cancela job no scheduler |
/ratelimit ou /limits | Mostra os limites de taxa do provider atual, parseados dos headers x-ratelimit-* da última resposta (requests/tokens restantes e reset) |
/export | Exporta a trajetória do agente da sessão atual como JSONL no formato ShareGPT (fine-tuning / análise) |
/moa | Mixture-of-Agents: vários modelos propõem em paralelo e um agregador sintetiza (CHATCLI_MOA_MODELS) — ver Mixture-of-Agents |
/gateway | Roda o ChatCLI como daemon de mensageria desacoplado (start, status, stop): cada mensagem passa pelo agent loop e o progresso é transmitido via Telegram/Slack/Discord/WhatsApp/webhook — ver Chat Gateway |
/hub | Inspeciona e gerencia a conversa compartilhada cross-channel: whoami (principal + conversa ativa), bind <plataforma> <userid> [principal], bindings [principal] — ver Conversation Hub |
/lsp <arquivo> | Diagnósticos de código (erros/avisos) de um arquivo via Language Server Protocol — ver Diagnósticos LSP |
Paleta de Comandos Interativa
Comandos com subcomandos, flags ou valores abrem uma paleta navegável quando digitados sem argumentos e confirmados com Enter — a mesma experiência de quem usa Claude Code. Em vez de só imprimir uma lista, a paleta deixa você navegar com as setas e selecionar.| Como abrir | Resultado |
|---|---|
/ ou /menu + Enter | Paleta raiz: todos os comandos agrupados por categoria |
Um comando “pickável” bare (ex.: /model, /config, /provider, /switch) + Enter | Paleta escopada àquele comando: seus subcomandos/flags/valores reais |
<TAB> sempre mostram exatamente o mesmo conjunto, sem divergência.
Navegação na paleta:
| Tecla | Ação |
|---|---|
↑ / ↓ (ou Ctrl+P / Ctrl+N) | Mover a seleção |
| Digitar | Filtrar (fuzzy) |
→ / Enter | Entrar no subnível ou selecionar (executa o comando) |
Tab | Inserir a seleção como texto |
← / Esc / Backspace | Voltar um nível (ou cancelar na raiz) |
Ctrl+C | Cancelar |
↵): todo picker escopado começa com uma entrada que executa o comando sem argumentos, preservando o comportamento de comandos cujo bare já fazia algo — por exemplo /config mostra o panorama, /switch abre o seletor de provedor. A descrição dessa entrada resume o que o comando faz, então ele nunca parece “vazio”.
A paleta é temática (segue o tema ativo, ver /config ui theme) e roda só no REPL interativo — execuções headless (scheduler, gateway, one-shot) rodam o comando como digitado.
Subcomando externo chatcli daemon
chatcli daemon {start|stop|status|ping|install} [--detach] [--socket <path>] — controla o scheduler daemon em background. Qualquer CLI interativo detecta o daemon e vira thin client via UNIX socket. Veja Scheduler → Daemon mode.
Subcomandos externos chatcli mcp-server e chatcli acp
chatcli mcp-server (alias mcp-serve) — roda o ChatCLI como servidor MCP sobre stdio. Além de chat (ask_chatcli), expõe o agent loop (agent_task), o coder (coder_task) e as built-in tools curadas (read, search, tree, websearch, webfetch), permitindo que um cliente MCP dirija a funcionalidade real do ChatCLI. Use LLM_PROVIDER/LLM_MODEL para escolher o backend. Ver MCP Server (ChatCLI como servidor).
chatcli acp — roda o ChatCLI sobre o Agent Client Protocol (stdio), para integração com editores que falam ACP.
/config security — rules mutáveis
O /config security agora é hierárquico: a forma sem subcomando continua mostrando o panorama; os subcomandos novos mutam o PolicyManager ao vivo e persistem em ~/.chatcli/coder_policy.json. Usado tanto pelo /coder interativo quanto pelo scheduler no preflight.
| Subcomando | Descrição |
|---|---|
/config security | Dump read-only (comportamento anterior) |
/config security rules | Lista rules ativas agrupadas por ação (deny, allow, ask) |
/config security allow "<pattern>" [--yes] | Adiciona rule ALLOW; confirma se o pattern é amplo |
/config security deny "<pattern>" [--yes] | Adiciona rule DENY; confirma [y/N] |
/config security forget "<pattern>" [--yes] | Remove rule; confirma [y/N] |
/config security reload | Força re-read do JSON (após edição externa do arquivo) |
<toolName> <args> como o PolicyManager normaliza (@coder exec <cmd>). Deny sempre bate allow.
/channel — MCP channels inbox e triggers
Gerencia o inbox de MCP Channels e o trigger engine (rules em ~/.chatcli/mcp/triggers.json). Todos os subcomandos suportam autocomplete (Tab após /channel ).
| Subcomando | Argumento | Descrição |
|---|---|---|
/channel ou /channel list | — | Lista até 20 mensagens mais recentes do ring com seq, timestamp, servidor, channel e preview. Mostra contadores total e unread, mais um aviso quando o engine está pausado |
/channel <name> | nome de channel | Filtra a listagem pelas mensagens daquele channel |
/channel ack | — | Marca todas as mensagens como lidas, limpa o banner de notify pendentes. Retorna quantas entradas foram limpas |
/channel inject | — | Injeta as últimas 10 mensagens no histórico como uma system message (legado preservado). Útil quando você quer dar contexto explícito sem esperar a auto-injection das 5 mais recentes |
/channel pause | — | Pausa o trigger engine. Mensagens continuam entrando no ring/persistência, mas nenhuma Action é emitida (zero banners, confirms, autos) enquanto pausado |
/channel resume | — | Reativa o trigger engine |
/channel rules | — | Lista rules ativas com nome, modo, filtros (server/channel/contentRegex) e configs (rate, dedup, tools) |
/channel rules reload | — | Re-lê ~/.chatcli/mcp/triggers.json. Se houver erro de schema, mantém as rules anteriores ativas e mostra o erro |
/channel confirm <id> | id obrigatório | Aceita uma Action confirm pendente (default = yes); roda o agent no template da rule dentro de uma AUTO-AGENT envelope box |
/channel confirm <id> no | id obrigatório | Recusa uma Action confirm pendente sem disparar nada |
/channel run <seq> | seq obrigatório | Dispara o agent manualmente em cima de uma mensagem específica do ring (pegue o seq em /channel list) — útil pra investigar uma mensagem que entrou como notify |
Harness/Pipeline de Qualidade — Atalhos
O ChatCLI implementa sete padrões de agente LLM que podem ser ligados/desligados por sessão via slashes:| Padrão | Slash | Default | O que faz |
|---|---|---|---|
| #1 ReAct | — | sempre on | Loop base |
| #2 Plan-and-Solve | /plan | auto (complexity ≥ 6) | Plano JSON + ReWOO |
| #3 Reflexion | /reflect | on (em erros) | Lições persistidas |
| #4 RAG + HyDE | — | off | Retrieval semântico |
| #5 Self-Refine | /refine on | off | Critique + rewrite |
| #6 CoVe | /verify on | off | Chain-of-Verification |
| #7 Reasoning | /thinking on | auto (planner, refiner, verifier, reflexion) | Cross-provider |
/reflect — subcomandos
A fila durável de Reflexion expõe operações de observabilidade e triagem da DLQ. Todos têm autocomplete via Tab:
| Subcomando | O que faz |
|---|---|
/reflect | Status: queue depth + DLQ size + hint dos subcomandos |
/reflect <texto livre> | Persiste lição manual em memory.Fact (sem LLM) |
/reflect list | Lista pendentes + DLQ com trigger, attempts, age, task preview |
/reflect failed | Só DLQ, com último erro — ideal pra triagem |
/reflect retry <job-id> | Reenfileira job da DLQ (reseta Attempts=0) — Tab autocompleta IDs vivos |
/reflect purge <job-id> | Remove definitivo da DLQ — Tab autocompleta IDs vivos |
/reflect drain | Força replay do WAL (pendências de sessão anterior) |
/config — Panorama e Seções
/config (alias: /status, /settings) tem dois modos: panorama curto (sem argumento — default) e drill-down por seção. Autocomplete de /config <TAB> lista as seções.
| Comando | Descrição |
|---|---|
/config | Panorama curto: provider, modelo, sessão (mensagens, tokens, custo, duração), persona ativa, contadores (plugins, MCP servers, hooks), cadeia de websearch, conexão remota se ativa |
/config all | Dump completo — todas as seções em sequência |
/config general | .env path, locale, logging, version check, history file |
/config providers | Env vars de cada provider (OpenAI, Claude, Bedrock, Copilot, GitHub Models, OpenRouter, ZAI, MiniMax, Moonshot, StackSpot, Ollama) + presença de API keys (sem vazar valores) |
/config agent | Runtime do modo agente: coder UI, workers, subagents, timeouts, tmpdir, denial caps, per-agent overrides, persona ativa |
/config resilience | Payload caps, recovery ladder, stream timeout, confiança TLS global (CA bundle, skip-verify), proxy Bedrock (CA bundle, IMDS), compactação |
/config session | Sessão atual (nome, mensagens, custo, budget), contextos anexados, sistema de memória |
/config integrations | MCP (servers + tool count), hooks, plugins, skill registries, websearch (cadeia ativa), worktrees (se em repo git), watcher K8s, conexão remota |
/config auth | Status OAuth por provider (anthropic, openai-codex, github-copilot, github-models) com expiração do token, keychain backend |
/config security | Política de comandos (allow/denylist, sudo), sandbox de workspace, política do Coder, TLS/proxy, redação |
/config quality | Pipeline dos sete padrões: Self-Refine, CoVe, Reflexion, Plan-First, HyDE (vetores + provider + contagem), Reasoning backbone — ver overview completo |
/config server | Condicional — só renderiza se alguma env de server mode estiver setada (gRPC, JWT, rate limit, fallback chain, watcher, audit, operator) |
/config hub | Conversation Hub: valor efetivo de cada setting (com a fonte — setting/env/default), bindings, e estado da sessão. Mutável — ver abaixo |
/config hub — settings mutáveis
Diferente de /config hub puro (panorama read-only), os subcomandos mudam as settings do hub em runtime — persistidas no hub.db e lidas ao vivo pelo daemon do gateway (cross-process, sem restart):
| Comando | Efeito |
|---|---|
/config hub set enabled <on|off> | Liga/desliga o hub |
/config hub set principal <nome> | Define a identidade compartilhada da conversa |
/config hub set isolate <on|off> | Isola cada canal (bot multi-usuário) vs. colapsar no principal |
/config hub set ttl_hours <n> | Horas até podar conversa ociosa (0 desativa) |
/config hub reset <chave> | Remove o override; volta a env var/default |
/config hub reimprime na hora após cada set/reset, mostrando o novo valor e a fonte. Mutação exige hub local ou /connect.
/websearch — Provider de Busca Web
| Comando | Descrição |
|---|---|
/websearch ou /websearch status | Mostra provider atual + cadeia de fallback ativa |
/websearch list | Lista providers conhecidos e quais estão configurados |
/websearch provider <searxng|duckduckgo|brave|mojeek|auto> | Define provider preferido para a sessão (seta CHATCLI_WEBSEARCH_PROVIDER) |
/websearch reset | Remove override e volta ao modo auto |
duckduckgo (default, scraping HTML), searxng (self-hosted via SEARXNG_URL), brave e mojeek (índices independentes, scraping HTML). Cadeia default: duckduckgo → searxng → brave → mojeek. Ver Web Tools para detalhes.
Troca de Provedor e Modelo (/switch)
| Comando | Descrição |
|---|---|
/switch | Bare abre a paleta de provedores/flags; também aceita as flags abaixo |
/switch --model <nome> | Troca o modelo do provedor ativo |
/switch --model | Lista todos os modelos disponíveis (dinâmico da API) |
/switch --max-tokens <num> | Define máximo de tokens para respostas |
/switch --realm <nome> | Altera realm/tenant (apenas StackSpot) |
/switch --agent-id <id> | Altera agent (apenas StackSpot) |
/provider <nome> | Troca o provedor ativo pelo nome (case-insensitive); bare abre a paleta com os provedores ativos |
/providers | Alias de /provider |
/model <nome> | Atalho de /switch --model <nome> (bare abre a paleta com os modelos) |
/max-tokens <num> | Atalho de /switch --max-tokens <num> (sem argumento, mostra o valor atual) |
/switch --model (e de /model) busca modelos diretamente da API do provedor usando o token/key ativa. Cada sugestão mostra [API] (dinâmico) ou [catalog] (estático). /model e /max-tokens delegam ao /switch, então compartilham exatamente a mesma validação e comportamento.
/provider é o equivalente navegável do seletor de provedor: digite /provider e Enter para abrir a paleta com os provedores ativos (o atual marcado), escolha um e a troca é aplicada — a mesma lógica de troca do /switch, só que pelo nome em vez do índice numérico.
Comandos de Contexto (@)
| Comando | Descrição |
|---|---|
@file <caminho> | Anexa conteúdo de arquivo ou estrutura de diretório |
@file --mode <modo> | Modo: full, summary, chunked, smart |
@command <cmd> | Executa comando e anexa saída como contexto |
@command --ai | Envia saída direto para análise da IA |
@command -i | Modo interativo (ex: ssh, vim) |
@git | Injeta status, diff e log do repositório Git |
@env | Injeta variáveis de ambiente (sensíveis redactadas) |
@history | Injeta histórico de comandos do shell |
Plugins LLM-callable (@<tool>)
Tools que o agente pode invocar via <tool_call> (modos /agent, /coder). Catálogo completo em Plugin System e Tools Atômicos.
| Plugin | Subcomandos | Doc |
|---|---|---|
@coder | read, write, patch, multipatch, tree, search, exec, test, rollback, git-status, git-diff, git-log, git-changed, git-branch, clean | Plugin @coder |
@read | (flat) file, from_line, to_line, head, tail, encoding | Tools Atômicos |
@search | (flat) term, dir, max_results, include | Tools Atômicos |
@tree | (flat) dir, depth, exclude | Tools Atômicos |
@todo | write, list, mark | Tools Atômicos |
@websearch | search | Web Tools |
@webfetch | fetch | Web Tools |
@scheduler | schedule, wait, query, list, cancel | Scheduler |
@park | delay, until, for_url, for_cmd | Agent Park |
Modo Agente — Ações
| Ação | Descrição |
|---|---|
[N] | Executa comando de número N |
a | Executa todos os comandos pendentes |
eN | Edita o comando N |
tN | Simula (dry-run) o comando N |
cN | Pede continuação à IA com saída de N |
pcN | Adiciona contexto pré-execução |
acN | Adiciona contexto pós-execução |
vN | Visualiza saída completa em pager |
wN | Salva saída em arquivo temporário |
p | Alterna visão compacta/completa |
r | Redesenha a tela |
q | Sai do modo agente |
Sessões (/session)
| Comando | Descrição |
|---|---|
/session save <nome> | Salva a conversa atual |
/session load <nome> | Carrega uma conversa salva |
/session list | Lista todas as sessões |
/session delete <nome> | Deleta uma sessão |
/session new | Inicia sessão limpa |
/session fork <nome> | Cria fork independente da sessão atual |
/session search <termo> | Busca full-text nas sessões salvas e mostra trechos com o termo destacado |
Quando conectado a um servidor remoto, sessões podem ser salvas/carregadas local, remoto ou em ambos.
Contextos Persistentes (/context)
| Comando | Descrição |
|---|---|
/context create <nome> ... | Cria snapshot de arquivos/diretórios (--mode knowledge indexa corpora de docs como knowledge base) |
/context update <nome> ... | Atualiza contexto existente |
/context attach <nome> | Anexa contexto à sessão atual |
/context detach <nome> | Desanexa contexto |
/context list | Lista contextos salvos |
/context show <nome> | Mostra detalhes e arquivos |
/context inspect <nome> | Estatísticas detalhadas |
/context delete <nome> | Deleta permanentemente |
/context merge <novo> <c1> <c2> | Combina contextos |
/context attached | Mostra contextos anexados com estimativa de tokens e dicas de cache |
/context export <nome> <arq> | Exporta para JSON |
/context import <arq> | Importa de JSON |
/context metrics | Estatísticas de uso |
Skills (/skill)
| Comando | Descrição |
|---|---|
/skill search <query> | Busca em todos os registries (fan-out paralelo) |
/skill install <name> [--from <reg>] | Instala skill de um registry (específico ou auto-detect) |
/skill uninstall <name> | Remove skill instalada (disambigua se múltiplas sources) |
/skill list | Lista skills instaladas com source e versão |
/skill info <name> [--from <reg>] | Metadados completos (installs, security audits) |
/skill registries | Mostra registries configurados e status |
/skill registry enable <name> | Ativa um registry (hot-reload imediato) |
/skill registry disable <name> | Desativa um registry (hot-reload imediato) |
/skill prefer [name] [source] | Define/mostra preferência de source para skills com conflito |
/skill prefer <name> --reset | Remove preferência (volta ao padrão: local ganha) |
/skill pin <name> | Fixa uma skill na sessão — injetada em todo turno até /skill unpin |
/skill unpin <name> | Remove uma skill do conjunto fixado |
/skill pinned | Lista as skills fixadas na sessão atual |
/skill help | Ajuda do comando /skill |
Flags de Linha de Comando (One-Shot)
| Flag | Descrição |
|---|---|
-p, --prompt | Executa um prompt e sai |
--provider <nome> | Sobrescreve provedor (ex: CLAUDEAI) |
--model <nome> | Sobrescreve modelo |
--timeout <duração> | Tempo limite (ex: 10s, 1m) |
--max-tokens <num> | Limita tokens na resposta |
--agent-auto-exec | Executa primeiro comando seguro no modo agente |
--no-anim | Desabilita animações (útil em scripts) |
-v, --version | Mostra versão |
-h, --help | Mostra ajuda |
Subcomandos
- chatcli server
- chatcli connect
- chatcli watch
Inicia como servidor gRPC para acesso remoto.
| Flag | Descrição | Padrão |
|---|---|---|
--port <int> | Porta gRPC | 50051 |
--token <string> | Token de autenticação | "" |
--tls-cert <path> | Certificado TLS | "" |
--tls-key <path> | Chave TLS | "" |
--provider <nome> | Provedor LLM padrão | Auto |
--model <nome> | Modelo padrão | Auto |
--watch-deployment <nome> | Deployment K8s a monitorar | "" |
--watch-namespace <ns> | Namespace | "default" |
--watch-interval <dur> | Intervalo de coleta | 30s |
--watch-window <dur> | Janela de observação | 2h |
--watch-max-log-lines <n> | Max linhas de log/pod | 100 |
--watch-kubeconfig <path> | Kubeconfig | Auto |
Memória
| Comando | Descrição |
|---|---|
/memory ou /memory today | Mostra as notas de hoje |
/memory yesterday | Mostra as notas de ontem |
/memory <data> | Mostra notas de uma data (YYYY-MM-DD, YYYYMMDD, DD/MM/YYYY) |
/memory week | Notas dos últimos 7 dias |
/memory longterm | Conteúdo do MEMORY.md (fatos de longo prazo) |
/memory list | Lista todos os arquivos de memória (inclui JSONs estruturados) |
/memory load <data> | Carrega notas no contexto da conversa |
/memory profile | Perfil do usuário detectado automaticamente (nome, função, empresa, localização, skills, certificações, metas) |
/memory profile set <campo>=<valor> | Define/atualiza um campo do perfil manualmente (ex.: certifications=CKA, company=ACME). Campos de lista acumulam e deduplicam |
/memory remember <fato> | Adiciona um fato de longo prazo explicitamente (aceita prefixo [categoria]) |
/memory forget <trecho> | Remove fatos de longo prazo que contenham o trecho informado |
/memory topics | Tópicos recorrentes rastreados |
/memory projects | Projetos rastreados com status |
/memory stats | Estatísticas de uso (sessões, horas de pico, erros, features) |
/memory facts [categoria] | Fatos com scores (filtro: architecture, pattern, preference, gotcha, project, personal) |
/memory compact | Força compactação de memória (LLM + limpeza de notas antigas) |
Compactação e Rewind
| Comando | Descrição |
|---|---|
/compact | Compactação automática (pipeline de 3 níveis) |
/compact <instrução> | Compactação guiada — preserva informações específicas |
/rewind | Exibe menu de checkpoints para restaurar |
| Esc+Esc | Atalho rápido para /rewind (2x Esc em menos de 500ms, apenas com input vazio) |
O
/compact aceita uma instrução em linguagem natural. Exemplo: /compact preservar os caminhos de arquivo e decisões.