O que Orquestrador Multi-Agente Chrome faz?
Ative de 1 a 5 agentes Claude Code paralelos, cada um com seu próprio navegador Chrome, para executar tarefas de navegador simultaneamente.
Quando Usar
- Enviar formulários de contato em uma lista de sites
- Preencher inscrições em múltiplas plataformas
- Raspar páginas renderizadas por JS que precisam de interação real com o navegador
- Qualquer tarefa repetitiva de navegador onde a execução sequencial é muito lenta
Arquitetura
Área de trabalho de negócios (orquestrador)
├── active/multi-chrome-agent/
│ ├── chat.md # Arquivo de coordenação compartilhado
│ ├── launch_chrome.sh # Cria instâncias Chrome nas portas 9223-9227
│ ├── kill_chrome.sh # Encerra todas as instâncias Chrome
│ ├── chrome-agent-1/ # Área de trabalho do Agente 1
│ │ ├── .mcp.json # Chrome DevTools na porta 9223
│ │ └── CLAUDE.md # Instruções de comportamento do agente
│ ├── chrome-agent-2/ # Porta 9224
│ ├── chrome-agent-3/ # Porta 9225
│ ├── chrome-agent-4/ # Porta 9226
│ └── chrome-agent-5/ # Porta 9227
Orquestração Passo a Passo
1. Determine quantos agentes são necessários
Analise a tarefa. Se houver 10 formulários de contato para preencher, 3-5 agentes é bom. Se houver 3, use 2-3. Não superdimensione.
2. Inicie as instâncias Chrome
bash /Users/nicksaraev/Business/active/multi-chrome-agent/launch_chrome.sh [COUNT]
Isso cria COUNT instâncias Chrome nas portas 9223+. Aguarde a confirmação "READY" para cada uma.
3. Redefina o arquivo de chat
Limpe o arquivo de chat e escreva as atribuições de tarefas:
# Chat do Multi-Agente Chrome
## Orquestrador
[2026-03-05 14:30] Iniciando 3 agentes para envio de formulário de contato.
### Tarefas do Agente 1
1. Ir para https://exemplo1.com/contato -> preencher nome: "Maria Silva", email: "[email protected]", mensagem: "Olá, tenho interesse em..."
2. Ir para https://exemplo2.com/contato -> mesmo preenchimento de formulário
### Tarefas do Agente 2
1. Ir para https://exemplo3.com/contato -> preencher formulário
2. Ir para https://exemplo4.com/contato -> preencher formulário
### Tarefas do Agente 3
1. Ir para https://exemplo5.com/contato -> preencher formulário
2. Ir para https://exemplo6.com/contato -> preencher formulário
## Agente 1
## Agente 2
## Agente 3
4. Crie os agentes Claude Code
Para cada agente, abra um novo terminal e execute:
cd /Users/nicksaraev/Business/active/multi-chrome-agent/chrome-agent-N && claude
Onde N é 1-5. Cada agente irá:
- Ler seu CLAUDE.md (instruções do trabalhador do navegador)
- Conectar-se à sua instância Chrome via seu .mcp.json local
- Ler chat.md para suas atribuições de tarefas
- Executar tarefas e relatar status de volta para chat.md
Lançamento programático via osascript: O Claude Code bloqueia sessões aninhadas através da variável de ambiente CLAUDECODE. Para lançar agentes programaticamente de dentro de uma sessão existente, use osascript com env -u para remover as variáveis de ambiente bloqueadoras:
for i in 1 2 3 4 5; do
osascript -e "tell application \"Terminal\" to do script \"cd /Users/nicksaraev/Business/active/multi-chrome-agent/chrome-agent-$i && env -u CLAUDECODE -u CLAUDE_CODE_ENTRYPOINT -u CLAUDE_AGENT_SDK_VERSION -u CLAUDE_CODE_ENABLE_SDK_FILE_CHECKPOINTING -u CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS claude --dangerously-skip-permissions -p 'Você é o Agente $i. Leia /Users/nicksaraev/Business/active/multi-chrome-agent/chat.md, encontre suas tarefas na seção Agente $i e execute-as. Use o Chrome DevTools MCP para navegar em sites, pesquisar listagens e coletar dados. Escreva seus resultados como uma tabela markdown de volta para chat.md na seção Agente $i. Marque-se como [WORKING] enquanto estiver ativo e [DONE] quando finalizar.'\""
sleep 2
done
Isso abre janelas separadas do Terminal.app, cada uma executando uma sessão Claude Code independente com seu próprio Chrome DevTools MCP.
Fallback manual: Se o osascript não funcionar, informe ao usuário para abrir N abas do terminal:
Aba 1: cd ~/Business/active/multi-chrome-agent/chrome-agent-1 && claude
Aba 2: cd ~/Business/active/multi-chrome-agent/chrome-agent-2 && claude
...
5. Monitore o progresso
Leia o arquivo de chat periodicamente para verificar o status dos agentes:
cat /Users/nicksaraev/Business/active/multi-chrome-agent/chat.md
Procure pelas tags [DONE], [ERROR] ou [WORKING] de cada agente.
6. Encerre
Quando todos os agentes reportarem [DONE]:
bash /Users/nicksaraev/Business/active/multi-chrome-agent/kill_chrome.sh
Protocolo de Chat
Os agentes se comunicam através do arquivo chat.md compartilhado:
| Tag | Significado |
|---|---|
[WORKING] | Agente está processando ativamente uma tarefa |
[DONE] | Agente concluiu todas as tarefas atribuídas |
[ERROR] | Agente encontrou um bloqueio (CAPTCHA, timeout, etc.) |
[WAITING] | Agente está ocioso, aguardando novas tarefas |
Mapa de Portas
| Agente | Porta Chrome | Área de Trabalho |
|---|---|---|
| 1 | 9223 | chrome-agent-1/ |
| 2 | 9224 | chrome-agent-2/ |
| 3 | 9225 | chrome-agent-3/ |
| 4 | 9226 | chrome-agent-4/ |
| 5 | 9227 | chrome-agent-5/ |
A porta 9222 é reservada para o Chrome DevTools MCP principal (não paralelo).
Casos Extremos
- CAPTCHA: O agente reporta
[ERROR] CAPTCHA em https://...no chat. O orquestrador pode reatribuir ou pular. - Limitação de taxa: Se um site bloquear após N requisições, distribua as URLs por mais agentes para que cada um acesse o site menos vezes.
- Login necessário: Pré-autentique em cada instância Chrome antes de atribuir tarefas, ou inclua etapas de login na lista de tarefas.
- Tarefas de longa duração: Os agentes verificam chat.md a cada 30s. Se o orquestrador precisar abortar, escreva
[ABORT]na seção do Orquestrador.