/config, e compõe com os demais sem regressão de performance no caminho padrão.
Premissa de design: opt-in por padrão. Com
CHATCLI_QUALITY_* sem configuração, o pipeline roda com zero post-hooks — Pipeline.Run degenera em uma chamada direta a agent.Execute. Você só paga pelos padrões que ativar.Os sete padrões
#1 — ReAct
Reason → Act → Observe. O loop base que todo worker executa. Já estava presente; agora emite eventos estruturados e auto-atacha effort hints.
#2 — Plan-and-Solve / ReWOO
PlannerAgent emite JSON estruturado; PlanRunner executa passos em ordem topológica com placeholders #E1.head=200.#3 — Reflexion
Detecta erro, alucinação ou qualidade baixa; destila uma Lesson via LLM e persiste em
memory.Fact para retrieval futuro via RAG.#4 — RAG + HyDE
Hypothesis-based keyword expansion (3a) + busca por cosseno em vetores (3b — Voyage/OpenAI, backend pure-Go).
#5 — Self-Refine
RefinerAgent crítica o rascunho e reescreve. Multi-pass com convergência por EpsilonChars.#6 — Chain-of-Verification
VerifierAgent gera perguntas de verificação independentes, responde cada uma e reescreve se houver discrepância.#7 — Reasoning Backbone
Abstração cross-provider:
thinking_budget na Anthropic, reasoning_effort na OpenAI. Auto-attach para agents críticos.Configuração
Env vars
CHATCLI_QUALITY_*, /config quality, e os cinco slash commands: /thinking, /plan, /refine, /verify, /reflect.Como os padrões se conectam
Tabela de disparo
| Padrão | Slash | Env var | Default | Gatilho automático |
|---|---|---|---|---|
| #1 ReAct | — | — | sempre on | sempre |
| #2 Plan-First | /plan [task] | CHATCLI_QUALITY_PLAN_FIRST_MODE | auto | complexity ≥ 6 |
| #3 Reflexion | /reflect <lição> | CHATCLI_QUALITY_REFLEXION_ENABLED | on | erro, CoVe flagou, refine baixo |
| #4 HyDE | — (transparente) | CHATCLI_QUALITY_HYDE_ENABLED | off | toda retrieval |
| #5 Refine | /refine on|off | CHATCLI_QUALITY_REFINE_ENABLED | off | pós-worker |
| #6 CoVe | /verify on|off | CHATCLI_QUALITY_VERIFY_ENABLED | off | pós-worker |
| #7 Reasoning | /thinking on|off | CHATCLI_QUALITY_REASONING_MODE | auto | para AutoAgents |
Prioridade de overrides
Para um dado turno, o effort hint é resolvido nesta ordem (último ganha):
Para hooks de Refine / Verify / Reflexion:
Para Plan-First:
Custo e latência
Defaults foram calibrados para steady-state idêntico ao chatcli pré-pipeline. Padrões caros (Refine, Verify, HyDE) iniciam desligados; você opt-in quando o contexto justifica.
| Padrão | Chamadas LLM extras por turn | Observações |
|---|---|---|
| ReAct | 0 (já parte do loop) | — |
| Plan-First (auto) | +1 (planner) quando disparado | Passos reutilizam o dispatcher |
| Reflexion | +1 (lesson gen), em background | Nunca bloqueia o turn |
| HyDE 3a | +1 (hipótese), barato | Budget de 200 tokens |
| HyDE 3b | +1 (query embed) + backfill lazy | embedding API ~$0.00002/1k tokens |
| Self-Refine | +N (um por pass, default 1) | Convergência corta cedo |
| CoVe | +1 (verifier) por ponto de uso | Internamente N=3 perguntas |
| Reasoning auto | 0 calls extras; +tokens na thinking hospedada | Anthropic budget = 8k default |
Observabilidade
Todo padrão ativo aparece em/config quality:
Próximos passos
Tutorial: Plan-and-Solve
Comece pelo padrão com maior impacto em tarefas multi-step.
Configurar HyDE com vetores
Ative embeddings (Voyage ou OpenAI) para retrieval semântico.
Referência de slashes
/thinking, /plan, /refine, /verify, /reflect.Lista completa de env vars
Todos os
CHATCLI_QUALITY_* e CHATCLI_EMBED_*.