O que são sub-agentes (e quando vale delegar)

Sub-agente é uma instância filha que o agente principal invoca pra delegar tarefa com contexto isolado. Permite paralelismo, proteção do contexto principal e especialização.

Vinícius Coimbra
Vinícius Coimbra
LinkedIn X

Sub-agente é antes de tudo uma decisão sobre gerenciamento de contexto. O agente principal precisa proteger o próprio raciocínio do ruído de uma sub-tarefa. O sub-agente precisa de espaço pra trabalhar sem o histórico inteiro da conversa principal. Quando bem usado, sub-agente é como entregar briefing fechado pra um colega especialista. Quando mal usado, é micromanagement com latência extra. A diferença está em saber quando a tarefa cabe num lugar só e quando precisa ser repartida.

O que é um sub-agente

Sub-agente é uma instância secundária do agente, invocada pelo agente principal pra executar uma tarefa específica num contexto isolado. Quando o agente principal decide delegar, ele passa três coisas pro sub-agente: o objetivo (em linguagem natural), o conjunto de skills e ferramentas relevantes, e os limites (orçamento de tokens, prazo, formato de resposta). O sub-agente roda com janela de contexto própria, executa o trabalho, e devolve só o resultado consolidado, não o histórico inteiro.

A analogia humana é a de um gestor que delega tarefa pra especialista interno. O gestor não precisa saber cada passo que o especialista deu, só o resultado e os trade-offs relevantes. Tudo o que aconteceu no meio fica com o especialista. O gestor preserva atenção pra coordenação; o especialista preserva foco pra execução.

Sub-agente vive dentro do mesmo agent harness do agente principal. Herda a infraestrutura do harness (loop de execução, sistema de prompts, ferramentas), mas tem instância própria de contexto. O harness é quem orquestra a invocação, espera o retorno e injeta o resultado de volta no fluxo principal.

Por que delegar: três motivos que justificam

Sub-agente não é gratuito. Adiciona latência (cada delegação é uma chamada nova), custo (contexto duplicado por instância), e complexidade (mais um ponto de falha). Por isso, delegar precisa ter razão. Três razões justificam.

Isolamento de contexto. Algumas sub-tarefas geram saída longa que polui o contexto principal sem agregar valor depois. Exemplo: ler 10 arquivos pra encontrar uma informação específica. O agente principal precisa só da informação encontrada, não dos 10 arquivos inteiros. Delegar essa busca pra um sub-agente preserva a janela do principal pra trabalho mais valioso.

Paralelismo. Quando há sub-tarefas verdadeiramente independentes, delegar em paralelo é ganho de tempo real. Exemplo: rodar três análises diferentes em três conjuntos de dados que não dependem uns dos outros. Três sub-agentes simultâneos terminam em fração do tempo de um agente sequencial. A condição é que as tarefas sejam independentes; sequência disfarçada de paralelismo é pior que sequência honesta.

Especialização. Sub-agente pode carregar skill específica que o agente principal não precisa carregar pra outras coisas. Exemplo: revisão de código pode ter sub-agente com skill detalhada de revisão de PR, enquanto o agente principal mantém perfil generalista. Especialização permite ter expertise profunda em domínio específico sem inflar o contexto base.

Quando NÃO delegar: quatro anti-padrões

Sub-agente mal usado é uma das fontes mais comuns de fragilidade em sistema agêntico. Quatro padrões que sinalizam que a delegação está errada.

Sincronização forte entre sub-tarefas. Se o sub-agente A precisa do resultado parcial do sub-agente B no meio da execução, e B precisa de A, você tem dependência cíclica. Resolver isso na hora exige protocolo de sincronização entre filhos, o que multiplica ponto de falha. Quando essa sincronização aparece, geralmente significa que a tarefa cabia num agente único.

Output muito grande pra ser útil. Se o sub-agente devolve 50 mil tokens de resultado, o agente principal acaba carregando o que tentou evitar carregar. A delegação só compensa se o resultado consolidado é menor que o trabalho bruto. Quando não é, a melhor saída é instruir o sub-agente a sumarizar antes de devolver, ou repensar se a delegação faz sentido.

Tarefa simples (overhead supera ganho). Cada delegação tem custo fixo: criar instância, passar contexto inicial, esperar retorno, injetar resultado. Se a tarefa em si é menor que o overhead, delegar piora a latência. Tarefa de 200 ms não vale chamada de sub-agente que custa 2 segundos só de setup.

Agente principal precisa do contexto da sub-tarefa pra continuar raciocinando. Se depois da delegação o principal precisa "ver o que aconteceu no meio" pra tomar a próxima decisão, a delegação não preservou nada, só adicionou latência. Esse caso geralmente exige reescrever a tarefa pra que a parte delegada seja realmente atomic.

Como o agente principal coordena os filhos

A coordenação acontece em três momentos. O primeiro é a entrega: o agente principal precisa formular o objetivo de forma que o sub-agente entenda sem perder contexto crítico. Briefing pobre gera execução errada que parece certa.

O segundo é o contrato de retorno: o agente principal define o formato de resposta esperado (sumário, JSON estruturado, citação literal). Sem contrato, o sub-agente devolve o que achar útil, e o principal precisa parsear ad-hoc. Com contrato, o resultado é direto consumível.

O terceiro é a política de erro: o que acontece se o sub-agente falhar? Retry com novo prompt? Fallback pra resultado parcial? Abort com mensagem pro humano? A política precisa estar definida antes da invocação, não improvisada quando o erro chega.

Boa prática observada nos harnesses maduros: o agente principal mantém log curto das delegações que fez, com objetivo, status e resultado. Esse log entra no contexto principal apenas como linha resumida ("delegado: análise X → completed → 3 itens encontrados"), não como dump completo. É auditabilidade barata em token.

Onde sub-agentes existem hoje

Sub-agente é capacidade nativa nos principais agent harnesses maduros, com nome e ergonomia diferentes em cada um.

HarnessNomeCaracterística
Claude CodeTask tool / sub-agentsSub-agentes paralelos via ferramenta Task, com isolamento de contexto
CodexParallel runsExecução paralela de tarefas relacionadas
CursorBackground agentsAgentes que rodam em paralelo no fundo do IDE
Gemini CLIAgentic modeModo agêntico com delegação interna

A diferença principal entre os harnesses está no nível de controle que o usuário tem sobre a invocação. Em alguns, o agente principal decide sozinho quando delegar. Em outros, o usuário escolhe explicitamente. Os dois modelos têm trade-off: decisão automática é mais ergonômica, decisão explícita é mais auditável.

O Translator usando sub-agentes (a analogia que cabe)

A intuição corporativa de sub-agente é a mesma de delegação executiva. Gestor que delega bem libera o próprio foco pra coordenação e desenvolve o time. Gestor que centraliza vira gargalo, mesmo com inteligência de sobra. A IA agêntica replica essa lógica.

Pro Translator, entender quando delegar pra sub-agente é parte do mesmo músculo de saber quando delegar pra pessoa. A pergunta-chave é a mesma: a tarefa é independente o bastante pra ir sozinha? O resultado consolidado vai voltar útil? O custo de coordenar é menor que o custo de centralizar?

Quando essas três respostas são "sim", delegar (humano ou sub-agente) ganha. Quando alguma é "não", trabalhar centralizado é mais honesto. A decisão é a mesma; o que muda é a velocidade de execução.

O que vem depois

Continua a anatomia do agente:

Fazer diagnóstico →