让智能体亲手操作并检查真实 Chrome 页面
29.8/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/4 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add DevTarlow/dsh-chrome-devtools该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:待复验
是什么
dsh 原生插件 · browser
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 32 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 1 处,展示前 1 条)
- 写入本地文件verify-live.mjs:72
writeFileSync(out, bytes)
扫描于 2026/11/4(0 天前) · 范围 全包扫描 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-browser-use@deepseek-ai/dsh-experimental-browser-use-chrome-devtools-mcp给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 操控真实Chrome页面
- 检查页面内容
给 DeepSeek Harness 智能体配一个真正的 Chrome 浏览器,用来操控和检查页面。
README
由 DeepSeek 最新模型翻译生成Chrome DevTools
给 DeepSeek Harness 智能体配一个真正的 Chrome 浏览器,让它自己操作、自己检查。
这个插件把 Chrome DevTools MCP 装成 Harness 的浏览器服务商,于是智能体操作的 Chrome 窗口你能亲眼看到。它能打开页面、读取页面、点击和输入、截图、读控制台消息和网络请求、跑脚本、录制性能 trace,还能跑 Lighthouse 审计。
Chrome 归打开它的那个聊天所有。关掉聊天,它的浏览器也跟着关,所以一个会话永远碰不到另一个会话的页面。
你可以让它做什么
- 「打开 example.com,截个图,把控制台报错告诉我。」
- 「打开 localhost:3000 上我的应用,用测试账号注册一下,告诉我确认那一步能不能走通。」
- 「在 localhost:3000 上录一段性能 trace,解释一下最大内容绘制。」
- 「在 localhost:3000 上跑一次 Lighthouse 审计,告诉我无障碍哪里不合格。」
- 「把那个页面按 375 像素宽截图,我要看移动端布局。」
- 「点一下坏掉的那个东西,告诉我网络请求到底返回了什么。」
安装
1. 在 Harness 里,打开左侧边栏的 Plugins。
2. 点 Install。
展开完整文档(README 剩余 1 节)
Chrome DevTools
给 DeepSeek Harness 智能体配一个真正的 Chrome 浏览器,让它自己操作、自己检查。
这个插件把 Chrome DevTools MCP 装成 Harness 的浏览器服务商,于是智能体操作的 Chrome 窗口你能亲眼看到。它能打开页面、读取页面、点击和输入、截图、读控制台消息和网络请求、跑脚本、录制性能 trace,还能跑 Lighthouse 审计。
Chrome 归打开它的那个聊天所有。关掉聊天,它的浏览器也跟着关,所以一个会话永远碰不到另一个会话的页面。
你可以让它做什么
- 「打开 example.com,截个图,把控制台报错告诉我。」
- 「打开 localhost:3000 上我的应用,用测试账号注册一下,告诉我确认那一步能不能走通。」
- 「在 localhost:3000 上录一段性能 trace,解释一下最大内容绘制。」
- 「在 localhost:3000 上跑一次 Lighthouse 审计,告诉我无障碍哪里不合格。」
- 「把那个页面按 375 像素宽截图,我要看移动端布局。」
- 「点一下坏掉的那个东西,告诉我网络请求到底返回了什么。」
安装
1. 在 Harness 里,打开左侧边栏的 Plugins。
2. 点 Install。
3. 粘贴这个仓库的地址:
https://github.com/DevTarlow/dsh-chrome-devtools
4. 安装,然后刷新页面。
5. 开一个新聊天。 智能体在聊天开始时才连浏览器,所以安装时已经开着的聊天不会连上。
安装对话框接受 GitHub 地址、包名或本地文件夹。想锁定这份 README 描述的版本,就粘贴 github:DevTarlow/dsh-chrome-devtools#v0.1.0。如果你更想让智能体自己装,就说:「安装 github:DevTarlow/dsh-chrome-devtools 这个 bundle。」
你需要当前稳定版的 Google Chrome(或 Chrome for Testing)。插件自己会找到它,正常安装不用配置。你还需要一个桌面会话,因为浏览器要开真窗口。
检查是否可用
在新聊天里问:
打开 example.com,告诉我它的标题和控制台报错。
Chrome 窗口会打开、加载页面,智能体根据读到的内容回答。如果你不想开窗口,看 Settings 里的 headless。
Settings
插件的默认值写在 cordis.patch.yml。想改哪一项,就把同样的覆盖写进你自己 Harness 配置档的 cordis.patch.yml——比如 ~/.dsh/profiles/web/cordis.patch.yml——然后开一个新聊天。
- id: browser-use-chrome-devtools
name: '@deepseek-ai/dsh-experimental-browser-use-chrome-devtools-mcp'
config:
mode: launch
headless: true
你没写的设置会回落到插件自己的默认值,而不是这个 bundle 的默认值,所以每次编辑那个块时,把还想保留的值都重新写一遍。
| Setting | Default | What it does |
| mode | launch | launch 会为每个会话启动一个全新的 Chrome。想驱动你自己启动的浏览器,用 attach。 |
| headless | false | false 会打开窗口,方便你盯着看。在服务器或 CI 上没有显示器,就设为 true。 |
| executablePath | 未设置 | 启动哪个 Chrome。不设置时,插件自己去找。安装位置比较特殊,或者要用常见问题里的包装脚本,就设置它。 |
| endpoint | — | attach 必填:你自己启动的浏览器的调试地址,例如 http://127.0.0.1:9222。 |
| toolCallTimeoutMs | 客户端自己的值 | 一次工具调用最多能花多久,单位毫秒。 |
改为驱动你自己的浏览器
launch 给每个会话一个全新的配置档,也就是说启动时是未登录状态。想保留已有的标签页、Cookie 和登录状态,就自己启动 Chrome,再让插件连上去。
google-chrome --remote-debugging-port=9222 --user-data-dir="$HOME/.dsh-chrome"
- id: browser-use-chrome-devtools
name: '@deepseek-ai/dsh-experimental-browser-use-chrome-devtools-mcp'
config:
mode: attach
endpoint: http://127.0.0.1:9222
同一时间只有一个会话占用这个浏览器。会话结束时,插件断开连接,你的浏览器继续运行。
常见问题
浏览器工具不见了。 新开一个会话。插件在创建会话时连接浏览器,所以已经打开的会话没有浏览器。
Chrome 立刻退出,或者智能体报 No usable sandbox!。 在你的机器上,Chrome 无法用自己的沙箱启动。这在容器和 WSL 里很常见,Ubuntu 23.10+ 上 AppArmor 限制非特权用户命名空间时也会出现,另外凡是 /opt/google/chrome/chrome-sandbox 的属主不是 root、权限不是 4755 的地方都会这样。修复它需要 root 权限。否则就通过一个包装脚本启动 Chrome,加上 --no-sandbox,再把 executablePath 指向它:
printf '#!/bin/sh\nexec /usr/bin/google-chrome --no-sandbox "$@"\n' > ~/chrome-no-sandbox
chmod +x ~/chrome-no-sandbox
executablePath: /home/you/chrome-no-sandbox
这样会在没有操作系统沙箱的情况下运行不受信任的页面内容。能修沙箱就修,包装脚本只当最后手段。
Missing X server to start the headful browser。 你的机器没有显示器。设置 headless: true。
页面显示登录墙,或者浏览器启动后是空的。 全新的配置档就是这样。用上面的 attach,接上你自己已登录的浏览器。
截图以文本形式返回,而不是图片。 要让图片到达模型,你的模型路由必须接受图片,你的配置档还需要一个附件存储。
把截图保存到文件被拒绝。 浏览器工具只能写入操作系统的临时目录 —— 项目内的路径会收到 Access denied: path … is not within any of the configured workspace roots。改为以图片形式请求截图;这样能到达模型不碰文件系统。
安装被拒,原因是 peer 不兼容。 这个插件依赖的浏览器包还处于 pre-stable 阶段,并且把 Harness 版本锁得死死的。把 package.json 里那两个 dependencies 改成与你 Harness 版本匹配的版本。
控制台打印 Update available: 1.9.0 -> 1.10.1。 这条提示来自插件挂载的 Chrome DevTools MCP 服务器,不是插件本身,它给出的版本由 DeepSeek Harness 决定。它建议的 npm install 在这里没用:插件启动的是自己那份锁定版本,跑那条命令只会在你执行它的地方多出一个无关依赖。忽略这条提示,或者启动 Harness 时带上 CHROME_DEVTOOLS_MCP_NO_UPDATE_CHECKS=1 把它静音。
限制
- 每个 Harness 只能装一个浏览器插件。不要再装 Playwright 或 Stagehand 浏览器服务商。
- 只支持 Chromium。不提供 Firefox 和 WebKit。
- 启动的浏览器属于某一个聊天。重新加载或恢复聊天会得到全新的浏览器状态;对话不会恢复 cookie 或页面。
- 取消调用无法撤销已经发生的导航或点击。
- 工具定义来自锁定的 chrome-devtools-mcp 版本,不是来自 Harness,所以它们不承诺稳定性。
- 使用统计默认关闭。性能工具的行为与上游文档一致,包括把 trace URL 发送到 Google CrUX API。
卸载
打开 Plugins,找到 dsh-chrome-devtools,卸载它。之后新开的聊天就没有浏览器工具了。如果你加过 cordis.patch.yml 覆盖,把那段也删掉。
面向开发者
这个仓库是纯配置包:两个文件,没有构建步骤。
| 文件 | 负责 |
| cordis.patch.yml | 这个包插入的两行及其默认值 |
| verify-live.mjs | 一个检查脚本,不用 Harness 也能驱动 MCP 服务器 |
verify-live.mjs 会列出工具目录、打开一个 URL、读取页面标题,并写一张截图。在 DeepSeek Harness 源码检出目录里运行它:
cd packages/experimental/browser-use-chrome-devtools-mcp
export DSH_MCP_CLI=$(node --input-type=module -e "import {fileURLToPath} from 'node:url'; console.log(fileURLToPath(import.meta.resolve('chrome-devtools-mcp/build/src/bin/chrome-devtools-mcp.js')))")
cd ../../..
export DSH_MCP_SDK=$PWD/packages/mcp/mcp-client/node_modules/@modelcontextprotocol/client/dist
DSH_MCP_HEADLESS=true node dsh-chrome-devtools/verify-live.mjs https://example.com dsh-chrome-devtools/live-check.png
只有在连不上 X server 的 shell 里才设置 DSH_MCP_HEADLESS=true;这个包本身会开窗口。设置 DSH_MCP_EXECUTABLE 可以测试某个特定的 Chrome 或包装脚本。
package.json 里那两个 dependencies 正是这个插件能在已发布的 Harness 上跑起来的全部原因:浏览器包并不属于已发布的 dsh,所以它们随 bundle 一起安装。从 git spec 安装本仓库的配置档会装上它们。把本目录作为本地 bundle 链接的配置档则不会,此时各行会从 Harness 安装自带的版本解析。
License
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
DevTarlow/dsh-chrome-devtools
让智能体亲手操作并检查真实 Chrome 页面
相关插件 · 浏览器
智能体插件框架deepseek-ai/deepseek-harness
DeepSeek Harnessdsh是由 DeepSeek AI 开发的开源 agent harness智能体框架。
★ 270,422已汉化DSH
71.9
多设备 Agent 看板YaoApp/yao
✨ 所有 Agent 和工作区集中管理,覆盖你的每一台设备。任务看板追踪进度,桌面端、移动端、浏览器、API…
★ 8,147已汉化DSH
71.2
可扩展侧边栏工作台omdsh-dev/DSH-better-sidebar
DSH 的双工作台:原生右侧栏 + 自绘底部面板,并把 ctx.betterSidebar 服务开放给所有插件
★ 4,761已汉化DSH
71.1
浏览器自动化桥Tencent/BrowserSkill
你的 Agent。你的浏览器。连接,就能协作。
★ 9,967已汉化DSH
71
AI 小说创作工作台EthanYoQ/AI-Novel-Writer
AI 小说作家 / AI Novel Writer
★ 1,591已汉化DSH
70.7
智能体浏览器引擎platonai/Browser4
DeepSeek Harness 集成
★ 1,175已汉化DSH
70.4
这是你的仓库?认领条目