Gemini CLI passa a ter recurso de subagentes
(developers.googleblog.com)- O Gemini CLI passou a oferecer suporte oficial a uma arquitetura multiagente que pode delegar tarefas complexas e repetitivas a subagentes especializados
- Cada subagente é executado em um ambiente isolado, com janela de contexto independente, instruções de sistema personalizadas e conjunto de ferramentas dedicado
- Subagentes personalizados são definidos com arquivos Markdown e YAML frontmatter, e podem ser compartilhados com a equipe em nível global ou de projeto
- É possível executar vários subagentes em paralelo, reduzindo bastante o tempo total necessário para múltiplas tarefas, como pesquisa e refatoração
- Junto com os agentes embutidos padrão (generalist, cli_help, codebase_investigator), a sintaxe @agent permite delegação explícita de tarefas, ampliando a escalabilidade de workflows de desenvolvimento baseados em CLI
Conceito de subagentes e principais vantagens
- Os subagentes são agentes especializados que trabalham junto com a sessão principal do Gemini CLI. Ao receber uma tarefa complexa, o Gemini CLI atua como um orquestrador estratégico e delega subtarefas ao subagente mais adequado
- Cada subagente possui seus próprios tools, servidores MCP, instruções de sistema e janela de contexto, sendo executado de forma totalmente isolada
- Toda a execução do subagente, incluindo dezenas de chamadas de ferramenta, busca de arquivos e execução de testes, é consolidada em uma única resposta e retornada ao agente principal
- Isso evita que a janela de contexto principal fique cheia e mantém a velocidade e a eficiência de custo das interações seguintes
- Três vantagens principais:
- O agente principal pode se concentrar no objetivo geral, na tomada de decisões e na resposta final
- É possível acelerar o trabalho executando subagentes especializados em paralelo para pesquisa, exploração de código, análise e testes
- Como os subagentes retornam resumos ou respostas formatadas, eles evitam context rot e context pollution na sessão principal
Criação de subagentes personalizados
- Use YAML frontmatter em arquivos Markdown (
.md) para definir subagentes personalizados - Ao colocá-los em
~/.gemini/agents, eles são registrados como agentes globais para workflow pessoal; se forem commitados em.gemini/agentsno repositório, podem ser compartilhados com a equipe no nível do projeto - Também é possível empacotá-los como parte de uma extensão incluindo os arquivos de definição de agente no diretório
agents/de Gemini CLI extensions - Exemplo de configuração do agente
frontend-specialist:- Define no frontmatter
name,description,tools(read_file, grep_search, glob, list_directory, web_fetch, google_web_search),model: inheritetc. - Nas instruções de sistema, define o papel de Senior Frontend Specialist e UI/UX Architect
- Como princípios centrais, especifica arquitetura modular, otimização de desempenho baseada em Core Web Vitals e conformidade de acessibilidade com WCAG 2.1+
- As diretrizes incluem priorizar APIs nativas do navegador, design de componentes Atomic, feedback visual por estado (carregamento, skeleton, erro, estado vazio, sucesso), Progressive Enhancement e projeto orientado à manutenção
- O papel desse agente é limitado à análise e à sugestão de melhorias, e ele não modifica código diretamente
- Define no frontmatter
- Se o arquivo for colocado em
.gemini/agents/frontend-specialist.md, o Gemini CLI reconhece imediatamente o novo especialista
Execução em paralelo
- O Gemini CLI oferece suporte à execução paralela de subagentes, permitindo rodar vários subagentes ou várias instâncias do mesmo subagente ao mesmo tempo
- Ao pesquisar 5 tópicos diferentes ou refatorar vários componentes individuais, é possível despachar múltiplos agentes simultaneamente, reduzindo bastante o tempo total necessário
- Exemplo de solicitação explícita: "Run the frontend-specialist on each package in parallel."
- Observações:
- Em grandes tarefas de edição de código, o uso de subagentes em paralelo pode causar conflitos e risco de sobrescrita de código entre agentes
- Como as solicitações são enviadas ao mesmo tempo, a execução paralela pode fazer você atingir mais rapidamente os usage limits
Subagentes embutidos e como usar
- Três subagentes já vêm embutidos no Gemini CLI:
- generalist: agente genérico com acesso a todas as ferramentas, adequado para tarefas intensivas em turnos, como refatorações em lote ou execução de comandos com grande volume de saída (basicamente uma cópia do agente normal do Gemini CLI usada como subagente)
- cli_help: agente especialista no próprio Gemini CLI, com acesso direto à documentação do Gemini CLI para responder perguntas sobre funcionalidades
- codebase_investigator: especializado em exploração de codebase, mapeamento de arquitetura, análise da causa raiz de bugs e entendimento de dependências em todo o sistema
- O Gemini CLI faz roteamento automático com base na description dos subagentes, mas também é possível delegar explicitamente uma tarefa a um agente específico usando a sintaxe @agent
- Ex.:
@frontend-specialistpedir revisão do app e sinalização de pontos de melhoria - Ex.:
@generalistatualizar cabeçalhos de licença em todo o projeto - Ex.:
@codebase_investigatormapear o fluxo de autenticação
- Ex.:
- Ao colocar o nome do subagente após o símbolo @, a tarefa é processada dentro da janela de contexto isolada desse agente
- Para ver todos os subagentes configurados no momento, execute o comando
/agentsdentro do Gemini CLI
1 comentários
Eu só queria que o Gemini CLI pelo menos funcionasse direito, mas ele vive travando.