前言¶
在 DSH 里做浏览器相关任务时,常见做法是另起一个无头 Chromium,或通过独立自动化流程打开页面。登录态、Cookie 和你在日常 Chrome 里已经打开的标签页往往无法直接复用,智能体要操作「你已经登录过的那个窗口」时,又要单独传凭据或重新登录。
下面介绍 CQin04 维护的配置型插件 dsh-playwright-mcp:把微软官方 @playwright/mcp 以 Chrome 扩展模式(--extension) 接到 DSH,让智能体通过 MCP 工具操作你正在运行的 Chrome,而不是再开一套浏览器实例。
这是什么¶
dsh-playwright-mcp 是 DeepSeek Harness(DSH)的配置型插件(configuration-only bundle)。仓库里只有 package.json、cordis.patch.yml、locale 与图标,没有第三方业务代码;DSH 侧用内置 MCP 客户端 @deepseek-ai/dsh-mcp-client 启动微软官方的 @playwright/mcp。
- 维护者:CQin04
- 分类:联网工具(社区目录 SkillHub 插件页)
- 源码与说明:GitHub — CQin04/dsh-playwright-mcp
- 当前包版本(
package.json):0.1.0 - 许可证:MIT
核心价值可以概括为三句话:不另开浏览器、尽量不丢登录态、不把账号密码写进仓库——扩展访问 token 由你在本地配置文件中填写。
核心功能¶
安装并连上 Chrome 后,智能体会获得以 mcp__playwright__browser_* 为前缀的一组 MCP 工具。README 中列出的能力包括:页面导航、点击、输入、页面快照、截图、控制台与网络信息、标签页管理等。自动化引擎始终是官方 @playwright/mcp;本插件只负责用 DSH 的 bundle patch 机制把它以 --extension 方式挂进来。
与「删掉 --extension、走独立 Chromium」相比,扩展模式面向的是已有 Chrome 会话;若你更需要无头或隔离环境,应改配并按 @playwright/mcp 文档自行调整(README 中有说明,且需先执行 npx playwright install chromium)。
前置条件¶
使用前请逐项确认:
- DSH:支持
dsh.bundle.patch插件包的版本。 - Node.js:系统可用
npx。 - Chrome + Playwright 扩展:在 Chrome 应用商店搜索 “Playwright Extension”,扩展 ID 为
mmlmfjhmonkocbjadbfplnigmagldckm。 - 扩展访问 token:见下一节。
获取扩展 token¶
扩展安装后需要读出连接用的 token,并写入本地配置(不要提交到公开仓库)。
- 打开扩展的欢迎/状态页(扩展详情页里有入口,或点击扩展图标)。
- 页面上会显示一行形如
PLAYWRIGHT_MCP_EXTENSION_TOKEN=...的内容。 - 复制等号后面的值,供安装步骤使用。
安装与启用¶
本插件通过本地插件包安装,而非在文中臆造一条 dsh plugin add 形式的远程命令。官方 README 流程如下。
- 获取插件目录:下载 dsh-playwright-mcp 仓库内容到本地(仅配置文件,无需构建、无需
npm install)。 - 填写 token:打开目录中的
cordis.patch.yml,将占位符REPLACE_WITH_YOUR_EXTENSION_TOKEN替换为你的扩展 token。 - 在 DSH 中安装:设置 → 插件 → 安装本地插件包,选择该目录;或通过插件管理器指向该目录。
- 验证工具:安装后工具列表应出现
mcp__playwright__browser_*;首次使用时 MCP 会自动尝试连接你已运行的 Chrome。 - 保持连接:Chrome 需保持运行;扩展的 connect 相关标签页不要关闭(关闭后连接会断,可再通过扩展图标重连)。
cordis.patch.yml 中与平台相关的启动方式(摘自 README):
- Windows 默认使用:
cmd.exe /c npx -y @playwright/mcp@latest --extension
(README 说明:Windows 下裸 npx 无法直接 spawn。)
- macOS / Linux 应改为
command: npx,args为:
-y
@playwright/mcp@latest
--extension
其他常用配置项(资料中明确出现):
toolCallTimeoutMs: 120000:长页面或大操作时拉长超时。failOnStartupError: false:MCP 启动失败时降级为「没有这些工具」,而不是阻止整个 DSH 启动。
典型用法(工作流)¶
经过上面的步骤,智能体在对话或任务里调用 mcp__playwright__browser_* 即可驱动你当前 Chrome 里已打开或可导航的标签页,例如在已登录状态下打开后台页面、点击元素、填表、抓快照或截图。具体参数以 @playwright/mcp 与 DSH 暴露的工具 schema 为准;本仓库不附带额外封装代码。
使用扩展模式时,请保持:
- Chrome 进程在运行;
- 扩展连接页处于可用状态;
- 本地
cordis.patch.yml中的 token 与扩展页面显示一致。
适用场景与注意¶
适合谁
- 需要在 DSH 智能体里操作真实 Chrome 会话(含登录态)的开发者。
- 已在使用或愿意使用微软
@playwright/mcp,并希望用 DSH 插件机制统一挂载 MCP 的用户。 - 接受「浏览器控制权绑在扩展 token 上」这一安全模型,并能把配置放在私有环境的人。
安全与权限
- README 明确:token 等同浏览器控制权,勿提交到公开仓库或发给他人;仓库内仅为占位符。
- 插件以当前 DSH 进程权限运行;安装前应自行查看源码(本包主要是配置)与 MIT 许可证,评估是否满足你的环境策略。
- 社区目录 SkillHub 与 DeepSeek / 幻方无官方从属关系,它只是 DSH 生态的独立收录站点——安装来源以你信任的 GitHub 仓库与本地包为准。
与独立 Chromium 模式的取舍
若不想用扩展、需要无头或隔离浏览器,可按 README 去掉 --extension 及相关 env,并按 @playwright/mcp 文档配置,且需先安装 Chromium 运行时(npx playwright install chromium)。
结尾¶
dsh-playwright-mcp 用最小配置把官方 Playwright MCP 接到 DSH,重点解决「智能体操作你已登录 Chrome」而不是「再起一个陌生浏览器」的问题。查阅说明与下载配置包见 GitHub 仓库;在社区目录浏览元信息见 SkillHub 插件页。