Domando agentes de IA
Setembro de 2026. Entramos no último trimestre do ano, e muita coisa aconteceu. Abaixo estão algumas das descobertas mais interessantes das últimas duas semanas.
Este foi, disparado, o ano em que dei um boost na minha produtividade — profissionalmente falando. De alguém reticente quanto ao uso de IA, passei a ser um entusiasta.
Recebi influência de pessoas como:
Sei que são pessoas polêmicas, por diferentes motivos, mas é inegável que contribuíram muito para o mundo do desenvolvimento de software.
Cada um deles, do seu jeito e em sua área, me fizeram refletir e aprender algo diferente. Senão, vejamos:
- Usar IA no trabalho não é mais uma escolha. Portanto, quero usá-la dentro dos meus termos e do meu jeito;
- O Linux é, de fato, o lugar da IA, assim como já era o lugar da computação para mim há pelo menos 20 anos;
- Domar essas novas ferramentas e incorporá-las ao meu cotidiano é o que faz diferença. Isso me tornou muito mais produtivo e, posso dizer, fez com que eu encontrasse diversão novamente na minha profissão. Encaro o uso de agentes como uma espécie de Rubber Duck que sabe escrever código. Sabe aquele desenvolvedor júnior, cheio de energia e disposição? Esse é o meu agente;
- Escolher uma ferramenta e entender a intenção de quem a criou faz toda a diferença. É justamente esse momento que estou vivendo agora com o Pi.
Memória persistente para agentes
Uma das coisas que mais me incomodavam no uso de agentes era a perda de contexto entre uma sessão e outra. Eu poderia tomar uma decisão importante hoje e, amanhã, o agente não teria como saber dela.
Para resolver isso, passei a usar um vault de memória em Markdown, chamado caxola. Nele registro decisões, descobertas técnicas e resumos de sessões. Os arquivos são versionados com Git e podem ser pesquisados localmente.
Eu já tinha criado uma solução simples baseada em arquivos Markdown, mas o post do Akita, Memória de Agentes 2.0, serviu de inspiração para melhorar essa ideia. A partir dele, passei a pensar na memória não apenas como um lugar para guardar informações, mas como um sistema organizado de decisões, descobertas e histórico de trabalho.
Também criei extensões para integrar esse vault ao Pi. Elas trabalham em três frentes simples:
- No início de uma sessão, consulta o vault e injeta um resumo das decisões, descobertas e logs recentes. Assim, o agente recebe contexto relevante sem depender de lembrar que precisa consultar a memória;
- Ao encerrar uma sessão, pode gerar um rascunho com os pedidos feitos, arquivos alterados e comandos executados. Esse rascunho não é tratado como verdade definitiva: ele precisa ser revisado antes de entrar para a memória oficial;
- Um atalho permite registrar uma decisão ou descoberta sem precisar lembrar o comando completo da ferramenta de memória.
A decisão importante aqui foi não transformar toda a sessão em memória automaticamente. A extensão pode capturar matéria-prima, mas decisões e descobertas relevantes precisam continuar passando por revisão. Memória automática sem revisão também pode preservar erros.
Usando a coleção de prompts do Fabric
Outra descoberta foi o Fabric, de Daniel Miessler. O projeto organiza uma grande coleção de prompts especializados, chamados de Patterns. Há Patterns para resumir textos, analisar afirmações, extrair ideias de vídeos, criar documentos e muitas outras tarefas.
O Fabric é escrito em Go, mas seus prompts são arquivos Markdown. Essa separação é muito interessante: o programa fornece a infraestrutura, enquanto os arquivos definem o comportamento da IA. Assim, é possível melhorar um prompt sem recompilar o programa.
Instalei e configurei o Fabric para usar o Ollama local. Com isso, consigo executar, por exemplo:
cat artigo.md | fabric --pattern summarize
O resultado foi muito bom, especialmente porque a coleção de prompts já é madura e organizada.
Minha primeira ideia foi copiar os Patterns para dentro de uma extensão do Pi. Depois de testar, percebi que isso criaria duplicação e poderia causar divergência entre a extensão e o Fabric. Se os Patterns fossem atualizados no Fabric, teríamos de atualizar também o pacote do Pi.
Por isso, tomei outra decisão: criar apenas um wrapper, isto é, uma camada fina que chama a CLI oficial do Fabric.
A extensão pode ser usada dentro do Pi com comandos como:
/fabric version
/fabric list
/fabric strategies
/fabric run summarize artigo.md
/fabric run analyze_claims artigo.md --strategy self-refine
Na prática, o fluxo é:
Pi → extensão → CLI do Fabric → Ollama local
A extensão não configura modelos, não armazena credenciais e não copia Patterns ou estratégias. Ela pressupõe que o Fabric já foi instalado e configurado corretamente e apenas encaminha o trabalho para ele.
Essa escolha tem algumas vantagens:
- Não duplicamos a configuração de IA do Fabric;
- Não precisamos implementar novamente o runtime do Fabric;
- As atualizações de Patterns continuam sendo responsabilidade do próprio Fabric;
- O pacote da extensão fica pequeno e fácil de manter;
- Outras pessoas podem instalá-lo sem receber uma cópia dos recursos do Fabric.
Coloquei o wrapper em um repositório público no Codeberg: pi-fabric-cli. A ideia é que ele possa ser útil para outras pessoas que usam o Pi e o Fabric.
O que espero a seguir...
- Uma maneira performática de usar IAs localmente. Já consegui isso com alguns modelos da Alibaba via Ollama;
- Fazer o mesmo com uma IA brasileira. Sim, temos uma: Manacá;
- Continuar explorando memória para agentes e aprimorar o sistema inspirado pelo post do Akita;
- Tornar o uso de agentes cada vez mais integrado ao meu fluxo de trabalho, sem perder controle sobre as decisões e os dados que ficam registrados.
Tenho estes desafios pela frente. Stay tuned!