Octop Browser
Octop Browser 是一款面向智能体的轻量级浏览器自动化工具,通过直接连接 Chrome DevTools Protocol(CDP)而非 Playwright 来提升元素定位的准确性与可靠性。它支持基于 ref 的稳定元素引用、多层级 DOM、登录状态持久化、记录与回放以及 MCP 服务。
访问 TencentCloud/octop-browser项目简介
Octop Browser 是一款轻量级浏览器使用工具,旨在让智能体操作浏览器时更加精准可靠。它启动真实的 Chromium,并直接通过 Chrome DevTools Protocol(CDP)通信,而不是将每个操作都经过 Playwright 转发,从而移除中间层,使元素定位基于稳定、实时的 DOM 引用。其设计目标是让智能体能够自信地操作浏览器:准确点击、低 token 成本、登录状态持久,并通过一组小型、规整的工具和对应的 CLI 来实现。
核心功能
- 直连 CDP,无需 Playwright 或中间层;基于 ref 的稳定元素定位,可经受布局重排和重新渲染;多层级 DOM 构建器,保持提示词精简;基于配置文件的登录状态持久化,跨会话保持登录;无状态的 browser_tool 提供约 20 个操作,并对应完整的 CLI;支持记录与回放工作流,可转为技能引导的智能体执行,同时提供 MCP 服务器,供任何支持 MCP 的智能体使用。
适用场景
- 可用于让 AI 智能体在真实网页上导航、点击、输入、填写和提取数据;自动化表单填写、截图、标签页管理和历史导航等浏览器工作流;记录真实浏览会话并作为技能引导的智能体执行进行回放;通过内置 MCP 服务器将浏览器工具开放给任何支持 MCP 的智能体。
快速开始
- 需要 Python 3.11 或更高版本,运行 pip install octop-browser,然后执行 octop-browser install-browser 获取 Chromium 二进制文件。可作为库使用,例如 BrowserSession.create(profile="default"),或使用无状态的 browser_tool(action="navigate", url=..., profile="work")。也可作为 CLI 使用,例如 octop-browser --help、octop-browser navigate
部署与要求
- 需要 Python 3.11+,已在 3.11 和 3.12 上验证;基于它构建的上层应用(例如 Octop)可能需要更新的 Python,请遵循其自身文档。需要 Chromium 或 Chrome 二进制文件,install-browser 会自动下载。可选环境配置包括 BROWSER_USE_MODE、BROWSER_USE_CDP_WS_URL 和 BROWSER_USE_PROFILES_DIR。对于远程或 Docker 中的 Chrome,可设置 BROWSER_USE_CDP_WS_URL 直接连接到现有的 DevTools
采用前须知
- 许可证:MIT。在使用、修改或分发项目前,请确认其具体条款。