Por que configuração, não código

A aposta filosófica do QueryMT: seu agente de IA deveria ser um arquivo, não um programa.

O problema do código

Hoje quase todos os frameworks de agentes de IA pedem que você escreva código. Python, TypeScript ou qualquer outra coisa: você define comportamento de forma imperativa. Isso implica:

  • Difícil de revisar. Você não consegue bater o olho em um script Python de 200 linhas e saber o que o agente faz.
  • Difícil de compartilhar. Compartilhar um agente costuma significar compartilhar uma árvore de dependências, um virtualenv e esperança.
  • Pouco portátil. O código depende de um runtime. Um agente LangChain não roda igual no navegador ou em um telefone.
  • Difícil de auditar. Um diff entre duas versões não mostra claramente como o comportamento do agente mudou.

Por que TOML

Um arquivo TOML é uma declaração de intenção. Ele diz o que o agente deve fazer, não como. O framework cuida do como.

# Este é um agente completo
[agent]
provider = "anthropic"
model = "claude-sonnet-4-5-20250929"
tools = ["shell", "knowledge_ingest", "knowledge_query"]

[agent.execution]
max_steps = 30

[[middleware]]
type = "limits"
max_turns = 15

O que você recebe

  • Revisável: Abra o arquivo. Leia. Você sabe exatamente o que o agente faz.
  • Compartilhável: Anexe o TOML a uma mensagem no Slack. E só isso.
  • Portátil: A mesma config roda na CLI, dashboard, VS Code, iOS e Android.
  • Auditável: git diff mostra exatamente o que mudou no comportamento do agente.
  • Versionável: As configs vivem no git junto com seu código. Fazer rollback é trivial.

O compromisso

Config-driven significa que você não pode expressar lógica arbitrária. Se precisar de um algoritmo de routing personalizado ou uma tool específica, você deve escrever Rust e compilá-la no framework. O sistema de config cobre 90% dos casos de uso. A API Rust cobre o restante.

É intencional. A config é o produto. O código é a plataforma.