Agent Skills
返回列表
CDP 实时页面编辑

CDP 实时页面编辑

AI Agent 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_bda4ca23/cdp。

技能介绍

要解决什么问题

在改前端样式或做页面实验时,常见路径是改仓库、重编译、刷新——成本高,且未必能立刻在真实用户环境里验证。若你已经在用 headed Chrome 与 xbrowser 一类工具,更希望 Agent 能直接对当前 Tab 动手,而不是只给出一段要你粘贴的代码。

本技能围绕 Chrome DevTools Protocol (CDP):通过 WebSocket 连接已开启远程调试的 Chrome,在运行时执行 Runtime.evaluate 注入 JS/CSS,不修改源文件,变更在页面上立即可见。

技能如何工作

前置:Chrome 需以 --remote-debugging-port(如 9222)启动,并配置 --remote-allow-origins=*(Chrome ≥ 90);Node.js 侧通常依赖 ws 模块,也可用 curl 做轻量注入。

典型三步:

  1. 查找目标页面——从 CDP 的页面列表里定位要编辑的 Tab(URL / id)。
  2. 注入代码——经 WebSocket 发送 eval,改 DOM、插样式、改 localStorage 等;复杂会话可用 --keep-open 复用连接。
  3. 验证——肉眼查看或经 CDP Page.captureScreenshot 截图落盘。

文档中还整理了常见操作(标题、颜色、字体、布局、隐藏元素、液态渐变示例等)、一键撤销注入修改、DOM 快照,以及多 Tab 并发(各 Agent 连不同 tab id)、控制台与网络监听等进阶用法;connect_cdp.js 一类脚本内置超时与 CDP 错误回传,便于排查端口、WebSocket 拒绝、eval 语法错误等问题。

适用边界与注意点

  • 所有效果都是运行时临时态,刷新或关 Tab 后除非页面自身持久化,否则不会写回工程源码。
  • 依赖本机 Chrome CDP 可达;页面 JS 卡死可能导致 WebSocket 异常断开,需刷新重连。
  • 选择器或语法错误会以 CDP Error 形式返回,需先用 document.querySelector 等确认目标元素存在。
  • 多 Tab 场景需明确 tab id,避免连错页面;并发编辑时用户需自行切换到对应 Tab 查看效果。

使用场景

  • 已在 headed Chrome 打开需登录的 staging 页,想改主背景色和标题文案验证视觉稿,又不想动仓库或重新构建。
  • 用 xbrowser 让 Agent 连 CDP,对当前 Tab 执行 eval 隐藏侧边栏后截图,供设计评审一张无干扰的页面图。
  • 同一 Chrome 实例开两个 Tab,分别连不同 tab id,在第二个 Tab 改标题而第一个保持不变,对比多页面改动效果。
  • 页面主题依赖 localStorage,需在真实站点 Tab 里设置 `theme=dark` 并立刻看样式是否生效,再一键撤销注入恢复初态。

适合人员

  • 维护内网后台的前端,经常在带 Cookie 的真实页面上试 CSS 选择器,本地 dev 无法复现登录态布局。
  • 通过 xbrowser + headed Chrome 跑 Agent 的自动化测试者,需要把「改 DOM / 截图验证」写成可重复的 CDP 工作流。
  • 做运营或增长落地页的同学,要在已上线的活动页上快速试 banner 文案和配色,确认后再回工程里正式改代码。
  • 负责多环境联调的全栈,需要在 9222 端口连本地 Chrome,用 curl 或 Node 脚本轻量注入而不装整套 Puppeteer。