Communitygithub.com

AI-Search-Hub

运行 AI Search Hub 的浏览器自动化脚本,支持 Yuanbao、LongCat、Doubao、Qwen、Gemini、Grok 和 MiniMax。当用户想向这些站点提问、自动启动或附加到 Chrome DevTools 会话(端口 9222)、从用户本地浏览器数据播种隔离的调试浏览器配置文件、检测是否需要登录、等待用户完成登录(如果需要),然后自动继续执行时,使用此技能。

AI-Search-Hub 是什么?

AI-Search-Hub 是一个浏览器自动化技能,专为运行多个 AI 聊天平台的 Playwright 脚本而设计。它支持 Yuanbao、LongCat、Doubao、Qwen、Gemini、Grok 和 MiniMax 等站点,在 macOS、Linux 和 Windows 上自动检测 Chrome/Edge/Brave/Chromium。该技能提供了一个统一的包装器脚本 (run_web_chat.py),可自动执行以下步骤:查找本地 DevTools 端点 (127.0.0.1:9222)、播种隔离的调试配置文件、打开目标站点、检测登录状态(并在需要时提示用户登录),以及分派特定于站点的 Playwright 脚本。它还内置了路由逻辑,可根据问题类型推荐最佳平台(例如,实时社交媒体使用 Grok,微信内容使用 Yuanbao)。此技能最适合于偏好自动化、低摩擦浏览以及希望保持正常浏览器会话不变的开发者。

兼容平台~Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add minsight-ai-info/AI-Search-Hub

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

AI Search Hub

仅将此技能用于此存储库的 AI Search Hub 浏览器自动化脚本:

  • scripts/yuanbao_playwright.py
  • scripts/longcat_playwright.py
  • scripts/doubao_playwright.py
  • scripts/qwen_playwright.py
  • scripts/gemini_playwright.py
  • scripts/grok_playwright.py
  • scripts/minimaxi_playwright.py

何时使用

当用户要求执行以下操作时,使用此技能:

  • 运行此存储库中支持的聊天站点之一
  • 标准化三个脚本之间的调用方式
  • 自动启动 Chromium 系浏览器的调试会话
  • 检测 127.0.0.1:9222 是否可用
  • 如果目标站点未登录,则提示登录,然后自动继续
  • 从用户本地浏览器数据播种隔离的调试配置文件

安装

首次使用前,请确保已安装依赖项。完整的设置步骤请参见 INSTALL.md:

  1. Python 3.10+ 和 pip
  2. pip install playwright
  3. playwright install chromium

包装器自动检测 macOS、Linux 和 Windows 上的 Chrome/Edge/Brave/Chromium。

路由策略

不要将每个问题都发送到所有平台。先分析问题,然后路由到其底层数据世界最有可能包含最佳答案的平台。

完整的决策框架请参见 ROUTING.md。快速参考:

问题类型推荐站点所属公司
Twitter / X / 实时社交媒体grokxAI
Google / 全球网页geminiGoogle
微信公众号 / 微信内容yuanbao腾讯
抖音 / 头条 / 字节跳动趋势doubao字节跳动
美团 / 大众点评 / 本地生活longcat美团
淘宝 / 阿里 / 通用中文qwen阿里巴巴
用户明确要求 MiniMax / MiniMax AgentminimaxiMiniMax

如何运行

调用捆绑的包装器脚本,而不是直接调用站点脚本:

python3 scripts/run_web_chat.py --site doubao --prompt "Give me a short Hangzhou food guide."

关键参数:

  • --site yuanbao|longcat|doubao|qwen|gemini|grok|minimaxi
  • --prompt "..." 必需
  • --repo-root <path> 如果当前工作目录不是存储库根目录
  • --cdp-http http://127.0.0.1:9222 重用现有的 DevTools 端点
  • --browser-path <path> 强制指定特定的 Chromium 系浏览器二进制文件
  • --debug-profile-dir <path> 控制隔离的调试配置文件位置
  • --user-data-source <path> 强制指定特定的源浏览器用户数据目录
  • --output <path> 控制目标文件

工作流程

包装器脚本是自由度较低的路径,应优先于手动编排操作序列。

它执行以下操作:

  1. 查找存储库根目录和目标站点脚本。
  2. 如果端口 9222 已在监听,则重用 --cdp-http。
  3. 否则,从用户的源浏览器数据播种一个隔离的 Chromium 系调试配置文件,并使用远程调试端口启动浏览器,直接打开请求的站点,而不是留下一个单独的 about:blank 启动标签页。
  4. 对于旧版站点(yuanbao、longcat、doubao),在分派特定于站点的脚本之前,先打开目标站点并检查登录界面。
  5. 对于通用站点(qwen、gemini、grok、minimaxi),打开目标站点,输入提示,并等待回复。
  6. 如果站点需要登录,或由于需要登录而无法生成可用回复,则打印提示并等待登录完成,然后自动继续。
  7. 使用标准化标志和已解析的 --cdp-url 调用匹配的站点脚本。
  8. 尽可能重用单个启动页面,这样浏览器就不会保留多余的空白标签页,并且优先使用 DOM 侧文本输入而不是键盘输入,以减少用户在其他地方工作时造成的意外干扰。

站点说明

  • doubao:需要已登录的会话。访客页面通常不会回答提示。
  • yuanbao:即使页面外壳可见,登录也可能以包含 QQ、微信或上次登录按钮的模态框形式出现。
  • longcat:除非下游请求 --no-new-chat,否则包装器在发送之前会首选新建聊天。
  • qwen、gemini、grok、minimaxi:每个都有自己的 Playwright 入口脚本,并由一个共享的站点聊天核心提供支持。gemini 首先将目标定位到可见的编辑器并尝试发送一次,然后才回退到登录等待循环,因为登录页面即使在账户尚未处于可用聊天状态时也会暴露一个真实的文本框。

约束

  • 对于登录恢复流程,首选有头 Chromium 浏览器。无头模式仅在复制的调试配置文件已经登录时才有意义。
  • 除非用户明确要求,否则不要终止用户的正常浏览器会话。
  • 包装器将浏览器数据复制到隔离的调试配置文件中,并跳过锁定文件,因此用户的正常浏览器可以保持打开状态。
  • 包装器会绕过本地 DevTools 请求的 Python 代理设置,因为 http://127.0.0.1:9222/json/version 否则可能会返回错误的 502。

相关技能