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.
| Harness | Nome | Característica |
|---|---|---|
| Claude Code | Task tool / sub-agents | Sub-agentes paralelos via ferramenta Task, com isolamento de contexto |
| Codex | Parallel runs | Execução paralela de tarefas relacionadas |
| Cursor | Background agents | Agentes que rodam em paralelo no fundo do IDE |
| Gemini CLI | Agentic mode | Modo 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:
- O que é agent harness — a infraestrutura que permite delegação.
- O que são skills em agentes de IA — o que o sub-agente carrega pra executar a tarefa.
- Equipe de agentes: quando multi-agent vale e quando vira teatro — sub-agente é pré-requisito pra entender quando faz sentido ir além e montar equipe.