insane-search - fiz o Claude Code, que desiste ao encontrar 403, continuar tentando até o fim
(github.com/fivetaku)Eu não gostava do Claude Code desistindo quando encontrava 403.
"Leia este post do Naver Blog" → 403. "Selecione teclados abaixo de 100 mil won na Coupang" → 403. "O que diz esta thread do Reddit?" → bloqueado. No fim, eu acabava entrando pelo navegador e copiando e colando tudo manualmente. Era a IA que deveria estar trabalhando, então eu me perguntava por que eu é que estava fazendo o trabalho.
Eu testei MCPs existentes, mas havia problemas. A maioria ficava presa a uma única plataforma específica (só Twitter, só YouTube), exigia cadastro com chave de API/OAuth, ou já vinha com vieses do tipo "este site é bloqueado", então nem tentava. Os sites mudam todos os dias, e um método que não funcionou antes pode funcionar agora; não fazia sentido desistir só porque uma vez foi bloqueado.
Por isso criei uma camada de seleção de método. Não é um scraper, e sim uma skill que tenta, em ordem, endpoints públicos e técnicas padrão até conseguir passar.
Como funciona
Quando o Claude Code acessa uma URL, um escalonador adaptativo de 4 fases ajuda no processo. Ele só avança para a fase seguinte quando a fase anterior falha ou detecta sinal de bloqueio.
- Phase 0: indexa apenas endpoints especiais que não podem ser descobertos por uma cadeia genérica (15 grupos) — X Syndication, Reddit
.json, HN Firebase, yt-dlp com 1.858 sites - Phase 1: sondas leves em paralelo — WebFetch, Jina Reader, curl com UA de Chrome/Mobile/Googlebot, variações de URL
m.{domain}/.json//rss - Phase 2: impersonação de TLS —
curl_cffina ordem safari → chrome → firefox (se não estiver instalado, executapip installautomaticamente) - Phase 3: navegador real — renderização com Playwright MCP + descoberta de APIs ocultas (
network_requests) - se detectar login/paywall, encerra como "autenticação necessária". Não continua tentando à toa
Também extrai tags OGP e dados estruturados JSON-LD de todas as respostas HTML. Mesmo sem conseguir obter o corpo completo, ainda dá para garantir título, preço e perfil.
Funciona especialmente bem em sites coreanos
- Naver Blog → na maioria dos casos, resolve com variação para URL mobile
- Coupang → extrai JSON-LD ItemList com
curl_cffi safarina Phase 2 - DC Inside/FM Korea/Clien/Karrot/Yozm IT/Wishket → leitura completa via Jina Reader ou curl
- Naver Finance → API JSON não oficial
api.finance.naver.com/siseJson.naver(sem autenticação) - 9 veículos de imprensa coreanos → índice de RSS + fallback para Google News RSS
Princípio central
Não criar vieses. Eu não fiz uma lista de "sites difíceis". Também não pula tentativas só porque falta uma dependência — ele instala e tenta. Afinal, tanto o site quanto o método podem funcionar agora.
Instalação
/plugin marketplace add https://github.com/fivetaku/gptaku_plugins.git
/plugin install insane-search
Depois de reiniciar, está pronto. Não há chave de API, cadastro nem variável de ambiente. Basta falar normalmente, e ele é acionado automaticamente em URLs bloqueadas.
2 comentários
O agent browser da vercel-labs é sensacional.
Não daria para fazer ele usar o browser-use diretamente?