
Aloísio Vítor
Image Processing Expert

Quando seu assistente de IA navega pela web dentro de um container seguro, os CAPTCHAs ainda são o principal obstáculo. Páginas protegidas bloqueiam o agente, formulários não podem ser enviados e tarefas ficam travadas esperando intervenção humana — mesmo quando o agente está em sandbox.
NanoClaw é um framework leve para assistentes de IA que executa agentes Claude em contêineres Linux isolados. Cada agente recebe seu próprio sistema de arquivos, seu próprio navegador e suas próprias ferramentas — completamente separado do host e dos outros agentes. Mas como qualquer automação de navegador, os CAPTCHAs o param imediatamente.
CapSolver muda isso completamente. Ao carregar a extensão CapSolver no navegador Chromium do container, os CAPTCHAs são resolvidos automaticamente e invisivelmente em segundo plano. Nenhum código. Nenhuma chamada de API do seu lado. Nenhuma alteração em como você se comunica com seu assistente de IA.
A melhor parte? Você nem precisa mencionar CAPTCHAs ao IA. Basta dizer a ele para esperar um momento antes de enviar — e quando ele clicar em Enviar, o CAPTCHA já estará resolvido.
E como o NanoClaw executa cada agente em seu próprio container, cada agente recebe seu próprio navegador isolado com sua própria instância do CapSolver — sem conflitos, sem estado compartilhado, sem interferência entre agentes.
NanoClaw é um framework leve para assistentes de IA projetado para segurança e simplicidade. Ele executa agentes Claude em contêineres Linux isolados — dando a cada agente isolação de nível de sistema operacional, em vez de verificações de permissão de nível de aplicativo.
agent-browser para automação webCada contêiner NanoClaw vem com o Chromium Debian e a ferramenta de linha de comando agent-browser. O agente pode:
Pense nisso como dar a cada agente de IA uma janela de navegador isolada dentro de um sandbox restrito.
CapSolver é um serviço líder de resolução de CAPTCHA que fornece soluções com inteligência artificial para contornar diversos desafios de CAPTCHA. Com suporte para vários tipos de CAPTCHA e tempos de resposta rápidos, o CapSolver se integra sem problemas a fluxos automatizados.
A maioria das integrações de resolução de CAPTCHA exige que você escreva código — criar chamadas de API, polpar resultados, injetar tokens em campos ocultos de formulários. É assim que funciona com ferramentas como Crawlee, Puppeteer ou Playwright.
NanoClaw + CapSolver é fundamentalmente diferente:
| Tradicional (Baseado em Código) | NanoClaw (Linguagem Natural) |
|---|---|
Escrever uma classe CapSolverService |
Montar uma extensão no container |
Chamar createTask() / getTaskResult() |
Apenas falar com seu IA |
Injetar tokens via page.$eval() |
A extensão cuida de tudo |
| Tratar erros, repetições, timeout no código | Diga ao IA para "esperar 70 segundos, depois enviar" |
| Código diferente para cada tipo de CAPTCHA | Funciona para todos os tipos automaticamente |
| Estado do navegador compartilhado entre tarefas | Cada agente recebe seu próprio navegador isolado |
A principal descoberta: A extensão CapSolver roda dentro do navegador Chromium do container. Quando o agente navega até uma página com um CAPTCHA, a extensão o detecta, o resolve em segundo plano e injeta o token — tudo antes mesmo que o agente tente enviar o formulário.
Você só precisa dar tempo. Em vez de dizer ao IA "resolva o CAPTCHA", você simplesmente diz:
"Vá para essa página, espere 70 segundos, depois clique em Enviar."
Isso é tudo. O IA não precisa saber nada sobre o CapSolver.
Como o NanoClaw executa cada agente em seu próprio container, você obtém um benefício único: cada agente tem sua própria instância do Chromium com sua própria extensão CapSolver. Isso significa:
Antes de configurar a integração, certifique-se de ter:
Boa notícia: Os containers NanoClaw usam o Chromium Debian (via
apt-get install chromium), que é não marcado e totalmente suporta a opção--load-extension. Ao contrário do Chrome da Google 137+, que removeu silenciosamente o suporte para carregar extensões no meio de 2025, o Chromium Debian funciona de forma nativa.
Você não precisa instalar o Chrome para testes, o Chromium embutido no Playwright ou nenhum navegador alternativo. O Chromium já presente no seu container é o suficiente.
Baixe a extensão do CapSolver para o diretório do seu projeto NanoClaw:
CapSolver.Browser.Extension-chrome-vX.X.X.zipmkdir -p assets/capsolver-extension
unzip CapSolver.Browser.Extension-chrome-v*.zip -d assets/capsolver-extension/
ls assets/capsolver-extension/manifest.json
Você deve ver manifest.json — isso confirma que a extensão está no local correto.
Abra o arquivo de configuração da extensão em assets/capsolver-extension/assets/config.js e substitua o valor apiKey pelo seu próprio:
export const defaultConfig = {
apiKey: 'CAP-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', // ← sua chave aqui
useCapsolver: true,
// ... resto da configuração
};
Você pode obter sua chave de API em seu painel do CapSolver.
O NanoClaw executa agentes em contêineres Docker. O diretório da extensão precisa estar disponível dentro do container em /opt/capsolver-extension.
Opção A: Auto-mount via container runner (recomendado)
Coloque a extensão no diretório assets/capsolver-extension/ do seu projeto NanoClaw. Em seguida, adicione um volume de montagem em src/container-runner.ts:
// Montar extensão do CapSolver se presente
const capsolverPath = path.join(process.cwd(), 'assets', 'capsolver-extension');
if (fs.existsSync(capsolverPath)) {
mounts.push({
hostPath: capsolverPath,
containerPath: '/opt/capsolver-extension',
readonly: true,
});
}
Opção B: Incluir na imagem do container
Adicione ao seu container/Dockerfile:
# Adicionar extensão do CapSolver
COPY ../assets/capsolver-extension/ /opt/capsolver-extension/
Em seguida, reconstrua a imagem do container.
O NanoClaw usa a ferramenta de linha de comando agent-browser para automação de navegador dentro dos contêineres. Ele suporta carregar extensões do Chrome por meio de variáveis de ambiente.
Adicione essas variáveis de ambiente ao container em src/container-runner.ts:
if (fs.existsSync(capsolverPath)) {
args.push('-e', 'AGENT_BROWSER_EXTENSIONS=/opt/capsolver-extension');
args.push('-e', 'DISPLAY=:99');
args.push('-e', 'AGENT_BROWSER_ARGS=--no-sandbox,--disable-gpu,--disable-blink-features=AutomationControlled,--disable-background-timer-throttling');
args.push('-e', 'AGENT_BROWSER_HEADED=true');
}
| Variável de Ambiente | Propósito |
|---|---|
AGENT_BROWSER_EXTENSIONS |
Caminho para a extensão do CapSolver dentro do container |
DISPLAY |
Display virtual para Xvfb (extensões precisam de contexto de display) |
AGENT_BROWSER_ARGS |
Flags do Chrome: sem sandbox, anti-deteção, evitar throttling de extensões |
AGENT_BROWSER_HEADED |
Executar no modo com interface (extensões funcionam de forma mais confiável) |
Extensões do Chrome exigem um display, mesmo em contêineres. Adicione o xvfb ao seu container/Dockerfile e inicie-o automaticamente no entrypoint:
# Adicionar xvfb à lista de instalação do apt-get
RUN apt-get update && apt-get install -y \
chromium \
xvfb \
# ... outros dependências
&& rm -rf /var/lib/apt/lists/*
# Permitir que o Xvfb seja executado por usuário não root
RUN chmod u+s /usr/bin/Xvfb
# Criar diretório de sessão (o agent-browser precisa disso)
RUN mkdir -p /home/node/.claude/session-env && chown -R node:node /home/node/.claude
Atualize o entrypoint para iniciar o Xvfb automaticamente:
#!/bin/bash
set -e
# Iniciar Xvfb para extensões de navegador
if [ -n "$DISPLAY" ]; then
Xvfb $DISPLAY -screen 0 1280x720x24 &
sleep 0.5
fi
# ... resto do entrypoint
# Reinicie o NanoClaw para aplicar as mudanças
npm run dev
# ou se estiver rodando como serviço:
pm2 restart nanoclaw
Envie uma mensagem de teste para seu agente NanoClaw por qualquer canal conectado (Discord, WhatsApp, Telegram):
Vá para https://www.google.com/recaptcha/api2/demo, espere 70 segundos,
depois clique em Enviar e me diga qual texto aparece na página.
Se o CapSolver estiver funcionando, o agente deve relatar: "Verificação bem-sucedida... Hooray!"
Esta é a seção mais importante. Após a configuração, usar o CapSolver com o NanoClaw é extremamente simples.
Não mencione CAPTCHAs ou CapSolver ao IA. Apenas dê tempo antes de enviar formulários.
O agente de IA não precisa saber sobre CAPTCHAs. A extensão cuida de tudo em segundo plano. Tudo o que você precisa fazer é incluir um tempo de espera em suas instruções para que a extensão tenha tempo de resolver o desafio antes do formulário ser enviado.
Envie isso para seu agente NanoClaw (via Discord, WhatsApp, Telegram ou qualquer canal):
Vá para https://example.com, espere 70 segundos,
depois clique em Enviar e me diga qual texto aparece na página.
O que acontece em segundo plano:
Vá para https://example.com/login, preencha o campo de e-mail com
"me@example.com" e o campo de senha com "mypassword123",
depois espere 30 segundos e clique no botão Entrar.
Me diga qual página carrega após fazer login.
Abra https://example.com/contact, preencha o formulário de contato:
- Nome: "John Doe"
- E-mail: "john@example.com"
- Mensagem: "Olá, tenho uma pergunta sobre seus serviços."
Espere 45 segundos, depois clique em Enviar Mensagem. Qual confirmação aparece?
| Tipo de CAPTCHA | Tempo de Resolução Típico | Tempo de Espera Recomendado |
|---|---|---|
| reCAPTCHA v2 (checkbox) | 10-30 segundos | 60-70 segundos |
| reCAPTCHA v2 (invisível) | 5-15 segundos | 45 segundos |
| reCAPTCHA v3 | 3-10 segundos | 30 segundos |
| Cloudflare Turnstile | 3-10 segundos | 30 segundos |
Dica: Quando em dúvida, use 70 segundos. É melhor esperar um pouco mais do que enviar cedo demais. O tempo extra não afeta o resultado. Em nossos testes, 60 segundos foi borderline para reCAPTCHA v2 — 70 segundos funcionou de forma confiável.
Aqui estão frases comprovadas que você pode usar:
Evite esses — podem confundir o IA ou acionar recusas:
Para os curiosos técnicos, aqui está o que acontece quando a extensão CapSolver é carregada dentro de um container NanoClaw:
Sua mensagem Servidor NanoClaw
───────────────────────────────────────────────────
"vá para a página, ──► Router de mensagens recebe a mensagem
espere 60s, envie" │
▼
Container criado para o agente
┌─────────────────────────────────┐
│ Contêiner Docker Isolado │
│ │
│ Agente Claude (via SDK do Agente) │
│ │ │
│ ▼ │
│ agent-browser: navegar até URL │
│ │ │
│ ▼ │
│ Chromium + Extensão CapSolver │
│ ┌───────────────────────────┐ │
│ │ Página com reCAPTCHA │ │
│ │ │ │
│ │ Extensão CapSolver: │ │
│ │ 1. Script de conteúdo detecta │ │
│ │ reCAPTCHA na página │ │
│ │ 2. Worker de serviço chama │ │
│ │ API CapSolver │ │
│ │ 3. Token recebido │ │
│ │ 4. Token injetado em │ │
│ │ campo de formulário oculto │ │
│ └───────────────────────────┘ │
│ │ │
│ ▼ │
│ Agente aguarda 70 segundos... │
│ │ │
│ ▼ │
│ agent-browser: clique em Enviar │
│ │ │
│ ▼ │
│ "Verificação bem-sucedida!" │
└─────────────────────────────────┘
│
▼
Resposta enviada de volta via Discord/WhatsApp/etc.
NanoClaw usa a ferramenta de linha de comando agent-browser, que suporta o carregamento de extensões do Chrome via a variável de ambiente AGENT_BROWSER_EXTENSIONS. Quando essa variável é definida, o agent-browser passa automaticamente --load-extension para o Chromium.
AGENT_BROWSER_EXTENSIONS=/opt/capsolver-extension definidoagent-browser open <url> — o Chromium inicia com a extensão carregadaComo o NanoClaw usa o Chromium Debian (não o Chrome da Google), o sinalizador --load-extension funciona de forma confiável sem nenhuma solução alternativa. E como o agent-browser lida com o sinalizador internamente, você não precisa gerenciar os argumentos de inicialização do Chrome por conta própria.
Sintoma: O agente navega e envia, mas os CAPTCHAs não são resolvidos.
Possíveis causas:
ls /opt/capsolver-extension/manifest.json dentro do containerAGENT_BROWSER_EXTENSIONS esteja definida como /opt/capsolver-extension no containerDISPLAY=:99Sintoma: O agente relata "não é possível criar diretório de sessão em /home/node/.claude/session-env"
Causa: A ferramenta agent-browser precisa de um diretório de sessão gravável. Se o diretório .claude montado não contém isso, a ferramenta falha.
Solução: Certifique-se de que o diretório exista no Dockerfile e no host:
# No Dockerfile:
RUN mkdir -p /home/node/.claude/session-env && chown -R node:node /home/node/.claude
# No host (para o volume montado):
mkdir -p data/sessions/main/.claude/session-env
chmod -R 777 data/sessions/main/.claude
Possíveis causas:
Sintoma: O Chromium trava ou as extensões não funcionam dentro do container.
Solução: Certifique-se de que o Xvfb esteja rodando antes de iniciar o Chromium:
Xvfb :99 -screen 0 1280x720x24 &
export DISPLAY=:99
Adicione esses comandos ao script de entrada do container para que sejam executados automaticamente.
Além do método da extensão do Chrome, o NanoClaw suporta um segundo método de integração usando CapSolver Skills — uma ferramenta CLI do Python que resolve CAPTCHAs via API do CapSolver diretamente.
Em vez da extensão resolver os CAPTCHAs invisivelmente no plano de fundo, o agente explicitamente:
python3 /opt/capsolver-skills/scripts/solver.pyClone o repositório capsolver-skills no seu projeto NanoClaw:
git clone https://github.com/capsolver/capsolver-skills.git assets/capsolver-skills
Adicione python3 e dependências ao seu container/Dockerfile:
RUN apt-get update && apt-get install -y python3 python3-pip \
&& pip3 install --break-system-packages requests python-dotenv
Monte o diretório de habilidades e passe a chave de API em src/container-runner.ts:
// Montar capsolver-skills
const capsolverSkillsPath = path.join(process.cwd(), 'assets', 'capsolver-skills');
if (fs.existsSync(capsolverSkillsPath)) {
mounts.push({
hostPath: capsolverSkillsPath,
containerPath: '/opt/capsolver-skills',
readonly: true,
});
}
// Passar chave de API
args.push('-e', `API_KEY=${capsolverApiKey}`);
Defina CAPSOLVER_API_KEY no seu arquivo .env:
CAPSOLVER_API_KEY=CAP-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
@OpenCrawl Vá para https://www.google.com/recaptcha/api2/demo,
use a habilidade do capsolver para resolver o reCAPTCHA,
depois clique em Enviar e me diga o resultado.
O solucionador de Habilidades do CapSolver suporta todos os principais tipos de CAPTCHA via CLI:
| Comando | Tipo de CAPTCHA |
|---|---|
ReCaptchaV2TaskProxyLess |
reCAPTCHA v2 |
ReCaptchaV3TaskProxyLess |
reCAPTCHA v3 |
AntiTurnstileTaskProxyLess |
Cloudflare Turnstile |
AntiCloudflareTask |
Desafio Cloudflare |
AntiAwsWafTaskProxyLess |
AWS WAF |
GeeTestTaskProxyLess |
GeeTest v3/v4 |
DatadomeSliderTask |
DataDome |
| Extensão do Chrome | Habilidades do CapSolver | |
|---|---|---|
| Como funciona | Invisível, automático | Chamadas de API explícitas |
| Consciência do agente | O agente não sabe sobre os CAPTCHAs | O agente resolve os CAPTCHAs ativamente |
| Complexidade de configuração | Montar extensão + definir variáveis de ambiente | Montar scripts Python + instalar dependências |
| Velocidade | Depende do tempo de espera | Direta — sem necessidade de esperar |
| Flexibilidade | Resolve qualquer CAPTCHA automaticamente | Controle detalhado por tipo de CAPTCHA |
| Melhor para | Tarefas simples de "navegar e enviar" | Workflows complexos que exigem injeção de token |
Dica: Você pode usar os dois métodos simultaneamente. A extensão resolve os CAPTCHAs automaticamente no plano de fundo, enquanto o solucionador de Habilidades dá ao agente controle explícito quando necessário.
Mais tempo de espera é sempre mais seguro. O CAPTCHA geralmente é resolvido em 10-30 segundos, mas latência de rede, desafios complexos ou tentativas podem adicionar tempo. 60-70 segundos é o ponto ideal.
Em vez de:
"Navegue até a URL, espere pelo solucionador de CAPTCHA, depois envie"
Use:
"Vá até a URL, espere cerca de um minuto, depois envie o formulário"
Frase natural funciona melhor com a IA e evita recusas de segurança.
Cada solução de CAPTCHA custa créditos. Verifique seu saldo em capsolver.com/dashboard regularmente para evitar interrupções.
Montar o volume da extensão (em vez de embalá-la na imagem) torna fácil atualizar a extensão sem reconstruir a imagem do container. Basta baixar a nova versão e reiniciar o NanoClaw.
A integração NanoClaw + CapSolver traz resolução de CAPTCHA para agentes de IA containerizados — duas formas:
Ambos os métodos são verificados e funcionam. Use a extensão para fluxos de trabalho simples de "navegar e enviar", e as Habilidades do CapSolver quando você precisar de controle detalhado.
E graças à arquitetura de container do NanoClaw, cada agente tem seu próprio navegador e instância do CapSolver isolados — sem conflitos, sem estado compartilhado, resolução de CAPTCHA com múltiplos agentes.
Essa é a aparência da resolução de CAPTCHA quando você tem um assistente de IA containerizado: invisível, automático, isolado e sem código.
Pronto para começar? Registre-se no CapSolver e use o código promocional NANOCLAW para obter um bônus de 6% extra em seu primeiro recarregamento!
Não. Na verdade, você deve evitar mencionar CAPTCHAs ou CapSolver em suas mensagens. A extensão funciona invisivelmente no plano de fundo. Apenas inclua um tempo de espera em suas instruções (ex.: "espere 70 segundos, depois envie") para dar à extensão tempo para resolver qualquer CAPTCHA na página.
Os containers NanoClaw usam o Chromium Debian instalado via apt-get, que é não marcado. Ao contrário do Chrome da Google 137+ (que removeu silenciosamente o suporte a --load-extension no meio de 2025), o Chromium Debian suporta totalmente o carregamento de extensões. Nenhuma solução alternativa é necessária.
O CapSolver suporta reCAPTCHA v2 (caixa e invisível), reCAPTCHA v3, Cloudflare Turnstile, CAPTCHA AWS WAF e mais. A extensão do Chrome detecta automaticamente o tipo de CAPTCHA e o resolve de acordo.
O CapSolver oferece preços competitivos com base no tipo de CAPTCHA e volume. Visite capsolver.com para os preços atuais. Use o código promocional NANOCLAW para obter 6% a mais em seu primeiro recarregamento.
O NanoClaw é de código aberto (licença MIT) e gratuito para executar em seus próprios hardware. Você precisará de uma chave de API para o modelo de IA — seja uma chave de API da Anthropic diretamente, ou uma chave de API do OpenRouter (que lhe dá acesso a Claude e outros modelos por meio de uma única conta). Para resolução de CAPTCHA, você precisará de uma conta do CapSolver com créditos.
Para a maioria dos CAPTCHAs, 60-70 segundos é suficiente. O tempo real de resolução geralmente é 10-30 segundos, mas adicionar um buffer extra garante confiabilidade. Quando em dúvida, use 70 segundos — em nossos testes, 60 segundos foi borderline para reCAPTCHA v2.
Cada agente NanoClaw roda em seu próprio container Docker com seu próprio navegador Chromium e instância de extensão do CapSolver. Isso significa que múltiplos agentes podem resolver CAPTCHAs simultaneamente sem conflitos — nenhum cookie compartilhado, nenhum estado de navegador compartilhado, nenhuma interferência. Se uma sessão de navegador de um agente tiver problemas, isso não afeta nenhum outro agente.
Sim. Você precisará do Xvfb (X Virtual Framebuffer) para a exibição, já que extensões do Chrome exigem um contexto de exibição. Defina DISPLAY=:99 e execute Xvfb :99 em segundo plano dentro do container.
Aprenda como escalar a coleta de dados para o treinamento de LLM resolvendo CAPTCHAs em larga escala. Descubra estratégias automatizadas para construir conjuntos de dados de alta qualidade para modelos de IA.

Resolva qualquer CAPTCHA no HyperBrowser usando o CapSolver. Automatize reCAPTCHA, Turnstile, AWS WAF e de forma mais fácil.
