运行时依赖
安装命令
点击复制技能文档
Chrome AI Action — 浏览器自动化技能 AI 代理。通过 Chrome AI Action (CAA) 桥接服务,以 Puppeteer (CDP) 模式编程控制 Chrome 浏览器,支持导航、点击、输入、截图、内容提取、网络拦截、Cookie 管理、PDF 导出等 60+ 操作。
何时使用 / 场景 调用 用户需要在浏览器中打开网页、搜索、填写表单、提取数据 是 用户需要网页截图 是 用户希望自动化浏览器操作 是 用户问代码/调试相关(不涉及浏览器) 否
重要说明:调用 navigate 时,URL 中如果包含中文字符,智能体必须先用 encodeURIComponent 对查询参数值进行编码。例如 wd=妻子的浪漫旅行 必须写成 wd=%E5%A6%BB%E5%AD%90%E7%9A%84%E6%B5%AA%E6%BC%AB%E6%97%85%E8%A1%8C。
正确写法 {"action": "navigate", "params": {"url": "https://www.baidu.com/s?wd=%E5%A6%BB%E5%AD%90%E7%9A%84%E6%B5%AA%E6%BC%AB%E6%97%85%E8%A1%8C"}} 错误写法 {"action": "navigate", "params": {"url": "https://www.baidu.com/s?wd=妻子的浪漫旅行"}}
如何在 Node.js 中编码 const encoded = encodeURIComponent('妻子的浪漫旅行'); // Result: %E5%A6%BB%E5%AD%90%E7%9A%84%E6%B5%AA%E6%BC%AB%E6%97%85%E8%A1%8C
前提条件 要求 检查方式 自动处理 已安装 Chrome / Chromium 自动检测常用安装路径 否(用户需安装) Chrome 以 CDP 模式运行 启动时检测 是(自动启动) Node.js 18+ node --version 否
启动协议 首次加载时,AI 智能体必须执行以下启动脚本。脚本会自动在后台启动桥接服务,智能体无需单独管理进程。 node /scripts/startup.js
执行流程 检查是否桥接服务已运行:GET /health on port 9876 → 跳过如果 OK 确保 npm 包已安装:npm list -g chrome-ai-action → 安装 via npm install -g chrome-ai-action 如果缺失 启动桥接服务:chrome-ai-action --port 9876,等待健康检查 自动启动 Chrome:如果 Chrome 未运行以 CDP 模式,桥接服务会自动启动它(跨平台)
环境变量 变量 默认值 描述 CAA_BRIDGE_PORT 9876 桥接服务 HTTP 服务器端口 CAA_STARTUP_TIMEOUT 30000 最大等待桥接服务准备时间(毫秒) CHROME_PATH 自动检测 自定义 Chrome 可执行文件路径 CHROME_USER_DATA_DIR 平台依赖 Chrome 配置文件目录
API 协议 端点:http://127.0.0.1:9876/ 端点地址 方法 路径 描述 GET /health 健康检查 — 返回桥接服务和 CDP 状态 GET /schema 完整操作模式(64+ 操作) POST / 执行操作(s)
请求格式 {"type": "action", "action": "", "params": {...}, "requestId": "optional-id"} 批量请求 {"type": "batch", "actions": [ {"action": "navigate", "params": {"url": "https://example.com"}}, {"action": "getTitle"} ]}
响应格式 {"success": true, "data": {...}, "requestId": "req-1", "timestamp": 1712345678901} 错误响应 {"success": false, "error": {"code": "ACTION_ERROR", "message": "..."}, "requestId": "req-1", "timestamp": 1712345678901}
可用操作(64+) 导航 navigate, goBack, goForward, reload, getUrl, getTitle 页面内容 getText, getHtml, getLinks, getImages, getHeadings, getMetaTags, getFormFields, getFocusableElements 元素交互 click, type, pressKey, scroll, scrollIntoView, findElement, focus, hover, select 数据提取 getValue, getAttribute, getAttributeAll, getBoundingBox, getCookies, getPerformanceMetrics, getSelectedValue, getSelectOptions JavaScript evaluate, injectScript, injectCSS 截图与导出 screenshot (PNG/JPEG), getPdf (A4/Letter) 标签页管理 listTabs, newTab, closeTab, switchTab, getCurrentTab 等待 waitForElement, waitForTimeout, waitForNavigation Cookie 管理 setCookie, deleteCookie 网络拦截 blockUrls, unblockUrls, mockResponse, getNetworkRequests, clearNetworkRequests 存储 getLocalStorage, setLocalStorage, removeLocalStorage, clearLocalStorage 文件操作 uploadFile, setInputFiles, downloadFile 视口 getViewport, setViewport 控制台日志 getConsoleLogs, clearConsoleLogs 无障碍 getAccessibilityTree 工具 ping, connect, disconnect, getBrowserInfo, highlight, dispatchEvent
典型工作流 导航:navigate → 跳转到目标 URL(编码中文查询参数) 等待:waitForElement → 等待关键内容 读取:getText / getHtml / getLinks → 了解页面 交互:click / type / pressKey → 执行操作 提取:getTe...