omni-research
Research any topic by querying multiple AI services through your own browser.
No API keys — uses your existing Perplexity Pro, X Premium, Gemini Advanced subscriptions.
How It Works
- 1. Connects to your running browser via CDP (Chrome DevTools Protocol)
- Opens parallel tabs to Perplexity, Grok, and Gemini (you're already logged in)
- Submits your query, waits for response, extracts answer from each
- Synthesizes all results into a unified summary
Prerequisites
- - Python 3.10+ with
httpx and INLINECODE1 - Chrome, Edge, or any Chromium browser running with CDP:
# Add to your browser shortcut or launch command (one-time)
--remote-debugging-port=9222
- - Logged into your AI services in the browser
Usage
CODEBLOCK1
Available Sources
| Source | Type | Requires |
|---|
| INLINECODE2 | Browser | Perplexity Pro login |
| INLINECODE3 |
Browser | X Premium / Grok login |
|
gemini | Browser | Google account login |
|
gemini-api | API | OpenAI-compatible endpoint |
Configuration
Optional ~/.config/omni-research/config.json:
CODEBLOCK2
Architecture
CODEBLOCK3
For IrisGo
The BrowserBridge in browser.py is an abstract interface.
Current implementation uses direct CDP via WebSocket.
IrisGo runtime provides native browser APIs — just swap the bridge layer.
CODEBLOCK4
omni-research
通过自有浏览器查询多个AI服务,研究任意主题。
无需API密钥——使用您现有的Perplexity Pro、X Premium、Gemini Advanced订阅。
工作原理
- 1. 通过CDP(Chrome DevTools协议)连接到您正在运行的浏览器
- 在Perplexity、Grok和Gemini中打开并行标签页(您已登录)
- 提交查询,等待响应,从每个服务提取答案
- 将所有结果综合成统一摘要
前置条件
- - Python 3.10+,包含httpx和websockets
- Chrome、Edge或任何支持CDP的Chromium浏览器:
bash
# 添加到浏览器快捷方式或启动命令(一次性设置)
--remote-debugging-port=9222
使用方法
bash
所有浏览器源(Perplexity + Grok + Gemini)
python3 research.py 2026年AIPC市场趋势
指定源
python3 research.py --sources perplexity,grok 主题
仅API模式(无需浏览器)
python3 research.py --sources gemini-api 快速问题
JSON输出
python3 research.py --json 查询内容
可用源
| 源 | 类型 | 要求 |
|---|
| perplexity | 浏览器 | Perplexity Pro登录 |
| grok |
浏览器 | X Premium / Grok登录 |
| gemini | 浏览器 | Google账号登录 |
| gemini-api | API | 兼容OpenAI的端点 |
配置
可选 ~/.config/omni-research/config.json:
json
{
cdp_port: 9222,
cliproxy_url: http://127.0.0.1:8317/v1,
cliproxy_key: your-key,
synthesis_model: glm-4.7,
geminiapimodel: gemini-2.5-flash
}
架构
用户浏览器(Chrome/Edge/Comet/Arc,CDP :9222)
├── 标签页:perplexity.ai → 用户的Pro会话
├── 标签页:grok.com → 用户的Premium会话
└── 标签页:gemini.google.com → 用户的Google会话
↓ WebSocket(CDP Input.insertText + dispatchKeyEvent)
BrowserBridge(browser.py — httpx + websockets)
↓ ← IrisGo运行时替换此层
omni-research技能(并行查询 + 提取 + 综合)
↓
包含各源章节和综合结果的Markdown输出
针对IrisGo
browser.py中的BrowserBridge是一个抽象接口。
当前实现通过WebSocket直接使用CDP。
IrisGo运行时提供原生浏览器API——只需替换桥接层。
python
skill.json要求
{ requirements: { tools: [browser] } }