发布日期

Agent 点错元素、token 爆炸:用 chrome-devtools-axi 压短浏览器任务

真实浏览器自动化又贵又脆时:用 AXI CLI 聚合导航与页面状态,减少轮次与 token,并带下一步操作提示。

查看 GitHub 仓库 →

Agent 浏览器任务又贵又脆时

chrome-devtools-axichrome-devtools-mcp 上封装符合 AXI 的 CLI:让 Agent 用更少 token、更少轮次完成真实浏览器任务。

你卡住时为什么需要它

  • 点错元素、选择器脆弱,来回重试烧 token
  • 原始 DOM/JSON 上下文过大
  • 要同时看 Console / Network / 性能,工具链太散

它把导航、取页面状态与下一步建议收成短反馈,适合作为 Web 应用模块的第一枚浏览器 Skill。

核心优势

  • Token 更省:输出采用 TOON 编码,相对原始 JSON 约减少 40% token
  • 操作更聚合:一条命令可完成导航、截取页面状态并给出后续建议
  • 上下文提示:每次结果都带 actionable next-step hints
  • Skill 即安装:推荐通过 Agent Skills 安装,无需单独 npm install

快速安装 Skill

使用 npx skills 安装 Agent Skill:

npx skills add kunchenguid/chrome-devtools-axi --skill chrome-devtools-axi -g

安装后,Agent 会在识别到真实浏览器任务时自动加载该 Skill,并通过:

npx -y chrome-devtools-axi

按需拉取 CLI。-g 表示全局安装到例如 ~/.claude/skills/;去掉 -g 则只安装到当前项目。

Agent 看到的交互形态

$ chrome-devtools-axi open https://example.com
page: {title: "Example Domain", url: "https://example.com", refs: 1}
snapshot:
RootWebArea "Example Domain"
  heading "Example Domain"
  paragraph "This domain is for use in illustrative examples..."
  uid=g1:1 link "More information..."
help[1]:
  Run `chrome-devtools-axi click @g1:1` to click the "More information..." link

快照中的 uid= 引用带有 g: 代际前缀。页面重新渲染后旧引用会失效并报 STALE_REF,促使 Agent 重新 snapshot,而不是静默点错元素。

其他安装方式

零配置直接跑

Execute `npx -y chrome-devtools-axi` to get browser automation tools.

Session Hook

npm install -g chrome-devtools-axi
chrome-devtools-axi setup hooks

可为 Claude Code / Codex / OpenCode 安装 SessionStart hook,在会话开始时注入当前浏览器状态。安装后需要重启 agent 会话。

源码安装

git clone https://github.com/kunchenguid/chrome-devtools-axi.git
cd chrome-devtools-axi
pnpm install --frozen-lockfile
pnpm run build
pnpm link

工作原理

chrome-devtools-axi (CLI)
        │ HTTP localhost:9224
  Bridge Server(持久化进程)
        │ stdio
 chrome-devtools-mcp(Headless Chrome / CDP)
  • Bridge 会跨命令保持 MCP 会话,避免每次重启 Chrome
  • 首次命令自动拉起 bridge,状态落在 ~/.chrome-devtools-axi/
  • 可解析 accessibility tree,提取可交互元素引用
  • 结构化元数据使用 TOON,进一步压缩 token

常用命令速查

导航

命令说明
open <url>打开页面并 snapshot
snapshot捕获当前页面状态
screenshot [path]截图
scroll <dir>滚动
back后退
wait <ms|text>等待时间或文本出现
eval <expr>执行 JS 表达式

交互

命令说明
click @ref点击元素
fill @ref <value>填写表单
type <text>在当前焦点输入
press <key>按键
hover @ref悬停
fillform @ref=...批量填表

调试与性能

命令说明
console查看控制台消息
network查看网络请求
lighthouse跑 Lighthouse
perf-start / perf-stop性能追踪
heap [path]堆快照

配置要点

默认 bridge 端口为 9224

export CHROME_DEVTOOLS_AXI_PORT=9225

连接到已有 Chrome:

export CHROME_DEVTOOLS_AXI_BROWSER_URL=http://127.0.0.1:9222

多会话隔离可用:

CHROME_DEVTOOLS_AXI_SESSION=worker-1 chrome-devtools-axi open https://example.com

在本站中的定位

Web 应用模块下的浏览器自动化入口:抓取、流程回归、前端排障、性能审计可先走这一条。

你现在可以做的下一步

  1. 按上文安装 Skill,让 Agent 在真实浏览器任务时自动加载。
  2. 用一条导航 + 取页面状态命令跑通。
  3. 成功判据:轮次/输出比直接塞 DOM JSON 明显更短,且能按 next-step hints 继续点选。

参考链接