AI代理需要浏览器。 无论您的代理机刮取数据、填充表格、管理多个账户或导航多步骤工作流程, 它都会通过协议控制浏览器。 对于每个主要代理机框架来说, 协议是 CDP (Chrome DevTools Protocol)。 问题在于: 将您的代理机与标准的 Chromium 实例连接起来, 会在几分钟内检测到并屏蔽它。 一个用于AI代理机的 CDP 浏览器需要的不仅仅是WebSocket 端点。 它需要管理的指纹、 代理路由和会话隔离, 所有这些都可以通过您代理机已经发言过的同样的 CDP 界面访问 。
TL;DR: CDP是用于控制浏览器的标准协议AI代理. Standard Chrome 暴露了反机器人系统即时检测到的自动化信号. Clawbrowser是一个具有Native CDP的Chromium叉,管理跨20+表面的指纹,内置代理路由和MCP server,你的代理连接到一个不会被屏蔽的真浏览器.
什么是Chrome DevTools Protocol?
CDP是一个基于WebSocket的协议,它赋予外部程序对一个Chromium浏览器的全部控制,它是为Chrome DevTools(您用F12打开的检查器)而建的,但它已经成为浏览器自动化(browser automation)的事实上的标准.
通过CDP,客户端可以:
- 导航到 URL 并管理标签
- 在页面上下文中执行任意 JavaScript
- 抓取截图和 PDF
- 拦截和修改网络请求
- 管理饼干、存储和缓存
- 模拟用户输入:点击、按键、滚动
连接模式是直截了当的。 启动 Chrome 时有一个调试端口, 任何 WebSocket 客户端都可以连接 :
# Start Chrome with CDP enabled
chrome --remote-debugging-port=9222// Connect from Node.js with Puppeteer
const browser = await puppeteer.connect({
browserWSEndpoint: 'ws://localhost:9222/devtools/browser/...'
});
const page = await browser.newPage();一个协议,一个端点,一个完整的浏览器控制。这就是为什么 CDP 赢了。
为什么每个AI代理框架都使用CDP
CDP是AI代理和浏览器之间的通用连接器. 每个主要代理框架都期望一个CDP endpoint:
| 代理框架 | CDP 连接 |
|---|---|
| Claude Code | MCP server或 CDP endpoint |
| OpenAI Codex | connect_over_cdp() |
| Cursor | CDP WebSocket |
| Browser Use | CDP endpoint |
| Hermes Agent | CDP endpoint |
| OpenClaw | CDP endpoint |
| Kilo Code | CDP endpoint |
| Puppeteer | 本地 CDP 客户端 |
| Playwright( Chromium) | connect_over_cdp() |
当您的代理需要浏览器时, 它会期望 ws://localhost:9222。不是Juggler(Firefox的协议),也不是WebDriver BiDi,也不是专有的REST API. CDP.
因此,基于Firefox的Anti-Detect Browser无法插入大多数没有适配器层的代理工作流程,因为它们完全使用不同的协议。如果您的堆栈是 Agent → CDP → Browser,浏览器必须基于Chromium。
问题:标准Chromium得到检测
标准色调 --remote-debugging-port 在目标站点检查自动化之前,工作是好的。 Cloudflare、DataDome和PerimeterX等反机器人系统通过多个信号检测CDP驱动的Chrome:
1. navigator.webdriver 旗帜。 Chrome 设置此标记为 true 这是反机器人脚本检查的第一件事
2. CDP运行时间文物。Runtime.evaluate 调用在 JavaScript 执行语境中留下了不同于真实用户交互的痕迹.
3. 默认指纹。 新鲜的 Chrome 实例返回工厂默认的 Canvas、 WebGL 和 AudioContext 值。 真正的浏览器具有由 GPU、 驱动器和 OS 配置形成的独特指纹。
4. 缺少浏览器配置文件。 没有浏览历史, 没有饼干, 没有缓存字体, 没有扩展。 干净的安装是机器人信号 。
5. 无头模式泄漏。 even --headless=new 生成可检测到的在渲染行为,插件阵列和屏幕维度上的差异.
结果: 您的代理连接到Chrome, 导航到目标并点击 CAPTCHA 墙壁或静态块。 CDP 连接工作完美。 浏览器是您失败的原因 。
正在连接您的代理到 Clawbrowser
Clawbrowser 是一个为这个使用案例而建的 Chromium 叉: 一个用于在浏览器级别处理anti-detect的AI代理的 CDP 浏览器。 您的代理连接到一个标准的 CDP endpoint。 浏览器处理其他所有事宜 。
以管理下的指纹启动会话
# Start Clawbrowser with a managed fingerprint profile
clawctl session start --profile residential-us-1
# CDP endpoint is immediately available
# ws://localhost:9222/devtools/browser/...从 Playwright 或 Puppeteer 连接
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
# Connect to Clawbrowser's CDP endpoint, same as any Chrome
browser = p.chromium.connect_over_cdp("ws://localhost:9222")// Puppeteer: zero changes to existing code
const browser = await puppeteer.connect({
browserWSEndpoint: 'ws://localhost:9222/devtools/browser/...'
});
const page = await browser.newPage();以代理路由运行多个孤立会话
# Session 1: US residential proxy, unique fingerprint
clawctl session start --profile us-east --proxy socks5://us-proxy:1080
# Session 2: EU residential proxy, different fingerprint
clawctl session start --profile eu-west --proxy socks5://eu-proxy:1080每个会话都获得完整,内部一致的指纹配置。 Canvas 使已报告的 GPU 匹配。 WebGL 参数与图形卡匹配。 导航属性与 OS 和浏览器版本匹配。 Timezone 匹配代理位置。 Anti-bot 系统会看到一个真实的浏览器, 因为每个表面都讲同样的故事 。
CDP + MCP: 两项协议, 1 Claw浏览器
CDP给予你低级浏览器控制. MCP(Model Context Protocol)给予AI代理高级工具访问权限. Clawbrowser在同一实例上支持两者.
使用 CDP , 您的代理发送颗粒命令 : 导航到 URL, 点击坐标的元素, 执行 JavaScript 。 完全控制, 完全灵活, 更多的代码 。
使用 MCP,您的代理调用工具函数 : navigate, screenshot, extract_text。 MCP server将这些功能在内部翻译为 CDP 操作。代码较少,集成速度更快,但颗粒控制较少。
实际分裂:
- 当您的代理运行自定义自动化脚本,需要网络截取或直接使用Puppeteer/Playwright时,使用 CDP.
- 当您的代理是需要工具级浏览器访问的LLM时使用MCP(Claude Code, Codex 或任何MCP兼容代理).
- 同时使用两者:当 orchestrator 通过 CDP 管理 session,而各个 LLM agent 通过 MCP 交互时。
没有其他Anti-Detect Browser在同一实例上提供两种协议.
CDP 浏览器选项比较
| 特性 | Clawbrowser | Chrome | Browserbase | Steel | Camoufox |
|---|---|---|---|---|---|
| Native CDP | 对 | 对 | 对 | 对 | 否(Juggler) : |
| anti-detect | 20+ 个表面 | None | 对 | 对 | 对 |
| 管理的指纹 | 对 | 没有 | 对 | 对 | 是 (BrowserForge) |
| 路线路线 | 内建 | 没有 | 对 | 对 | 手动 |
| MCP server | 内建 | 没有 | 没有 | 没有 | 没有 |
| 调动 | 当地/自行托管 | 当地 | 仅云 | 仅云 | 当地 |
| 价格 | 免费 | 免费 | 从150美元/月 | 从99美元/摩 | 免费 |
Clawbrowser是将Native CDP,管理指纹,内置代理路由和MCP server合并的唯一选项,并且是免费的. Cloud 替代品(Browserbase, Steel)每集收费,并在您的代理机和浏览器之间添加网络空闲度. Camoufox是免费的,但使用Firefox和Juggler,这意味着CDP与代理机框架没有兼容性.
开始
# Install Clawbrowser
clawctl install
# Start a session with default fingerprint
clawctl session start --profile default您现有的 CDP 代码工作不变。 将您的代理指定在端点。 浏览器自动处理指纹、 代理路由和anti-detect 。
财务问题
Clawbrowser 是否兼容 Puppeteer 和 Playwright?
是的, Clawbrowser 显示一个标准的 CDP endpoint。 使用 puppeteer.connect() 或 playwright.chromium.connect_over_cdp() 使用 WebSocket URL 与常规 Chrome 一样。不需要更改代码 。
我能同时进行多个会话吗?
是。 每个会话都获得自己的 CDP endpoint、 指纹配置、 cookie 和可选代理。 运行的会话数与您支持的硬件一样多。 会话被完全隔离, 没有它们之间的共享状态 。
Clawbrowser 免费用于商业用途吗?
是的, Clawbrowser 是免费和开源的。 没有使用限制, 没有按会话定价, 没有需要的 API 密钥。 在生产中、 在 CI/CD 中或者在您的本地机器上使用 。
Clawbrowser 的 CDP 和 MCP 有什么区别?
CDP(Chrome DevTools Protocol)提供低级浏览器控制:导航,点击,执行JavaScript,截取网络请求. MCP(Model Context Protocol)提供高级工具访问:导航,截图,摘录文本. Clawbrowser在同一浏览器实例上同时支持两者.
它在Docker和无头模式下有效吗?
是的, Clawbrowser 在多克运行, 并暴露相同的 CDP endpoint。 使用 --headless 用于服务器环境。所有指纹管理都以无头模式相同。
继续阅读


