← Últimos Posts do Blog

🎵 Podcast no Spotify

A evolução da inteligência artificial generativa tem exposto uma limitação fundamental nos agentes de linguagem: a incapacidade de gerenciar tarefas complexas e estender a autonomia ao longo do tempo. Agentes de IA tradicionais são frequentemente descritos como "rasos" (shallow), operando em loops de chamada de ferramenta reativos simples que inevitavelmente falham em fluxos de trabalho de múltiplas etapas. O framework deepagents da LangChain aborda esta limitação não com um novo algoritmo de modelo de linguagem, mas com uma arquitetura de agente que permite que a IA "mergulhe fundo" em tópicos e execute de forma autônoma por horizontes de tempo mais longos. Este framework é uma "plataforma" (harness) opinativa empacotada em uma biblioteca Python standalone, inspirada em aplicações robustas como Claude Code.

Um "Deep Agent" é definido por quatro componentes arquitetônicos essenciais, projetados para superar a falta de planejamento e gerenciamento de contexto. Em primeiro lugar, ele utiliza um Prompt de Sistema Detalhado que instrui o agente sobre como planejar e executar. Complementando isso, o agente possui uma Ferramenta de Planejamento integrada (write_todos), que força a decomposição explícita de tarefas complexas em etapas discretas, permitindo o acompanhamento de progresso e adaptação. Em segundo lugar, o sistema emprega Subagentes gerados através de uma ferramenta task integrada, crucial para o isolamento de contexto. O agente principal pode delegar uma subtarefa a um especialista, mantendo seu próprio contexto limpo e focado. Por fim, um Sistema de Arquivos (acesso a ferramentas como ls, read_file, write_file) é vital; ele permite que o agente descarregue grandes resultados de ferramentas ou documentos para o disco, prevenindo o transbordamento da janela de contexto do LLM.

Estrategicamente, o deepagents reside no nível mais alto de abstração dentro do ecossistema LangChain. Enquanto o LangGraph é o runtime de baixo nível usado para construir fluxos de trabalho cíclicos e com estado, e o LangChain é a abstração central para construir o loop do agente do zero, o deepagents é a Plataforma de Aplicação opinativa construída sobre ambos. Sua função é fornecer uma solução pronta para uso para problemas de agentes autônomos, como planejamento e gerenciamento de estado, tornando o poder complexo do LangGraph mais acessível ao desenvolvedor.

A maturação arquitetônica do framework, notavelmente na versão 0.2, focou em garantir a persistência. Anteriormente, o sistema de arquivos do agente era efêmero. A v0.2 introduziu a abstração de Backends Conectáveis (Pluggable Backends), permitindo que qualquer sistema de armazenamento seja conectado como o "sistema de arquivos" do agente. O recurso mais poderoso é o Composite Backend, que permite ao desenvolvedor mapear subdiretórios específicos (como /memories/) para diferentes backends (e.g., o sistema de arquivos local ou um StoreBackend), concedendo ao agente um espaço de trabalho efêmero e um "cérebro" persistente de longo prazo.

O DeepAgents CLI é a aplicação prática construída sobre esta biblioteca. Por padrão, o CLI utiliza o Anthropic Claude Sonnet 4 como modelo de linguagem e o Tavily para busca na web, exigindo chaves de API (ANTHROPIC_API_KEY, TAVILY_API_KEY) carregadas de um arquivo .env para configuração. A proposta de valor central do CLI é o sistema de memória persistente, que resolve a "amnésia" entre sessões. Este sistema é regido pelo "Protocolo Memory-First". O agente é instruído a pesquisar seu diretório /memories/ antes de iniciar uma nova tarefa, verificar sua memória se ficar incerto durante a execução, e salvar automaticamente novas informações (como convenções de API) para sessões futuras. Isso transforma o agente de uma ferramenta reativa em um "par" de programação júnior que acumula conhecimento específico do projeto ao longo do tempo.

A segurança é uma preocupação crítica, visto que agentes autônomos executam código. O CLI aborda isso com duas camadas: o sandboxing e a intervenção humana. A integração de sandboxes de parceiros como Daytona e Modal permite que o agente execute código e operações de sistema de arquivos em um ambiente remoto e isolado, protegendo a máquina local do usuário contra código arbitrário ou malicioso. Como segunda camada, o Human-in-the-Loop (HITL) exige aprovação explícita para ações sensíveis, como comandos shell ou modificação de arquivos. O agente apresenta um diff das mudanças propostas ao usuário antes da execução, garantindo que os desenvolvedores mantenham o controle, embora o HITL possa ser desativado via flag --auto-approve ou Ctrl+T.

É vital distinguir a biblioteca do aplicativo de demonstração. Embora o DeepAgents CLI utilize padrões comerciais (Anthropic) que geraram uma "crise de percepção" na comunidade sobre o suporte a LLMs locais, a biblioteca deepagents é, na realidade, agnóstica a modelo. Um estudo de caso de pesquisa de ações confirmou isso, demonstrando a construção de um sistema multiagente de três camadas que utilizou o framework deepagents em conjunto com LLMs locais via Ollama, provando sua total compatibilidade com modelos de código aberto para tarefas complexas.

Em avaliação final, o framework deepagents é um acelerador opinativo ideal para equipes que buscam implementar uma arquitetura complexa de agente sem ter que construir planejamento, gerenciamento de estado e memória do zero. A recomendação estratégica é clara: ignorar os padrões da CLI e avaliar a biblioteca deepagents e sua arquitetura de Backend como o ativo real, utilizando exemplos como o blueprint de arquitetura de três camadas para integração de LLMs locais.