AI Search Hub
Use esta skill apenas para os scripts de automação de navegador do AI Search Hub deste repositório:
scripts/yuanbao_playwright.pyscripts/longcat_playwright.pyscripts/doubao_playwright.pyscripts/qwen_playwright.pyscripts/gemini_playwright.pyscripts/grok_playwright.pyscripts/minimaxi_playwright.py
Quando Usar
Use esta skill quando o usuário solicitar:
- executar um dos sites de chat suportados por este repositório;
- normalizar a execução entre os três scripts;
- iniciar automaticamente uma sessão de navegador Chromium em modo debug;
- detectar se
127.0.0.1:9222está disponível; - solicitar login se o site alvo não estiver logado, e então continuar automaticamente;
- criar um perfil de depuração isolado a partir dos dados do navegador local do usuário.
Instalação
Antes do primeiro uso, verifique se as dependências estão instaladas. Consulte INSTALL.md para a sequência completa de configuração:
- Python 3.10+ com pip
pip install playwrightplaywright install chromium
O wrapper detecta automaticamente Chrome/Edge/Brave/Chromium no macOS, Linux e Windows.
Estratégia de Roteamento
Não envie todas as perguntas para todas as plataformas. Analise a pergunta primeiro e direcione para a(s) plataforma(s) cujo mundo de dados subjacente tenha maior probabilidade de conter a melhor resposta.
Consulte ROUTING.md para a estrutura de decisão completa. Referência rápida:
| Tipo de Pergunta | Site Recomendado | Empresa Controladora |
|---|---|---|
| Twitter / X / redes sociais em tempo real | grok | xAI |
| Google / web global | gemini | |
| 微信公众号 / conteúdo WeChat | yuanbao | 腾讯 |
| 抖音 / 头条 / tendências ByteDance | doubao | 字节跳动 |
| 美团 / 大众点评 / vida local | longcat | 美团 |
| 淘宝 / 阿里 / chinês geral | qwen | 阿里巴巴 |
| Usuário explicitamente pediu MiniMax / MiniMax Agent | minimaxi | MiniMax |
Como Executar
Execute o script wrapper incluído em vez de chamar o script do site diretamente:
python3 scripts/run_web_chat.py --site doubao --prompt "Dê-me um breve guia gastronômico de Hangzhou."
Principais argumentos:
--site yuanbao|longcat|doubao|qwen|gemini|grok|minimaxi--prompt "..."obrigatório--repo-root <caminho>se o diretório de trabalho atual não for a raiz do repositório--cdp-http http://127.0.0.1:9222para reutilizar um endpoint DevTools existente--browser-path <caminho>para forçar um binário específico de navegador da família Chromium--debug-profile-dir <caminho>para controlar a localização do perfil de depuração isolado--user-data-source <caminho>para forçar um diretório de dados de usuário de navegador de origem específico--output <caminho>para controlar o arquivo de destino
Fluxo de Trabalho
O script wrapper é o caminho de baixa liberdade e deve ser preferido em vez de criar a sequência manualmente.
Ele faz o seguinte:
- Encontra a raiz do repositório e o script do site alvo.
- Reutiliza
--cdp-httpse a porta9222já estiver escutando. - Caso contrário, cria um perfil de depuração isolado da família Chromium a partir dos dados do navegador de origem do usuário e inicia o navegador com uma porta de depuração remota, abrindo o site solicitado diretamente, em vez de deixar uma aba inicial
about:blankseparada. - Para sites legados (
yuanbao,longcat,doubao), abre o site alvo e verifica a interface de login antes de despachar o script específico do site. - Para sites genéricos (
qwen,gemini,grok,minimaxi), abre o site alvo, insere o prompt e aguarda uma resposta. - Se o site exigir login ou não produzir uma resposta utilizável porque o login é necessário, exibe um prompt e aguarda até que o login seja concluído, então continua automaticamente.
- Invoca o script do site correspondente com sinalizadores padronizados e a
--cdp-urlresolvida. - Reutiliza a única página inicial quando possível, para que o navegador não mantenha uma aba extra em branco, e prefere a inserção de texto pelo lado do DOM em vez de digitação por teclado para reduzir interferências acidentais do usuário trabalhando em outro lugar.
Notas sobre os Sites
doubao: requer uma sessão logada. A página de visitante geralmente não responde a prompts.yuanbao: o login pode aparecer como um modal com botões QQ, WeChat ou último login, mesmo quando o shell da página está visível.longcat: o wrapper prefere iniciar um novo chat antes de enviar, a menos que--no-new-chatseja solicitado downstream.qwen,gemini,grok,minimaxi: cada um tem seu próprio script de entrada Playwright apoiado por um núcleo de chat de site compartilhado. Ogeminiprimeiro mira no compositor visível e tenta o envio uma vez antes de cair no loop de espera de login, porque a página de destino expõe uma caixa de texto real mesmo quando a conta ainda não está em um estado de chat utilizável.
Restrições
- Prefira navegadores Chromium com interface gráfica para fluxos de recuperação de login. O modo headless só faz sentido quando o perfil de depuração copiado já está logado.
- Não encerre a sessão normal do navegador do usuário, a menos que o usuário solicite explicitamente.
- O wrapper copia os dados do navegador para um perfil de depuração isolado e ignora arquivos de bloqueio (lock files), para que o navegador normal do usuário possa permanecer aberto.
- O wrapper ignora as configurações de proxy do Python para requisições locais do DevTools, porque
http://127.0.0.1:9222/json/versionpode, caso contrário, retornar um falso502.