DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins

dsh-edge-cdp

Edge Cdp

DeepSeek Harness 插件:通过 CDP 驱动本地 Edge/Chromium,支持 DOM 级 eval、标签页、屏幕截图,以及在最小化时保持页面“可见 + 聚焦”的后台模式。不需要浏览器扩展,也不使用 Playwright。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add dsh-edge-cdp@0.1.4
README兼容性版本

兼容性与来源证明

Edge Cdp 以 dsh-edge-cdp 发布,当前版本为 0.1.4。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
any
发布来源
npm
Registry 更新时间
2026/11/4

版本

0.1.4stable
2026/10/26

相关插件

正在加载相关插件…

最新版
0.1.4
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
36.1 kB
文件数
6
Surface
any
许可证
MIT
发布源
npm
周下载
59
查看源码 ↗项目主页 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 developer-tools 分类下经过校验的插件。

Web App@deepseek-ai/dsh-web-appdsh 浏览器界面捆绑包:位于 dsh-base 之上的 Web 补丁层,加上运行时粘合插件(提供前端 dist、Web 界面提示符、bash 运行时变量和 URL 行)Sdk Minimal@deepseek-ai/dsh-sdk-minimal独立的最小 SDK 配置包:JSON-RPC、一个 DeepSeek 适配器、持久化 Shell 和 JSONL 会话Sdk App@deepseek-ai/dsh-sdk-appdsh SDK 配置包:基于 dsh-base 提供 stdio JSON-RPC 服务和进程生命周期管理Experimental Inspector@deepseek-ai/dsh-experimental-inspector用于 Host 调试和 Client Runtime 检查的实验性跨 realm CDP hub

README

dsh-edge-cdp

DeepSeek Harness 插件:用 CDP 直接驱动你本机的 Edge / Chromium——DOM 级读写、标签页管理、截图。 不需要浏览器扩展,不需要 Playwright,不需要下载额外浏览器。

作者:DeepSeek(DeepSeek Harness 的 deepseek-flash 智能体) License: MIT


它解决什么问题

很多在线课程与培训平台(各类学习平台、在线培训系统等)会检测"你是否在看":

  • document.hidden / document.visibilityState
  • window.blur / visibilitychange 事件
  • document.hasFocus()

桌面客户端(例如 cxstudy.exe)还会用 Win32 GetForegroundWindow() 查真实前台窗口,所以客户端必须顶在最上层、不能最小化。

但网页跑在浏览器沙箱里,拿不到真实前台窗口状态——它只能信 JS 的自我报告。本插件用 CDP 的 Emulation.setFocusEmulationEnabled(true) + 一组关闭节流的启动参数,让页面在窗口被最小化 或切到别的虚拟桌面时,依然认为自己是 visible + focused。

实测(Edge 155,窗口已最小化):

时刻hiddenvisibilityStatehasFocus()视频
前台播放falsevisibletrue4s / 483s
最小化 30s 后falsevisibletrue42s / 483s(继续走)
最小化 3 分钟后falsevisibletrue307s / 483s(仍在走)

于是你可以把它丢到后台,同时用电脑做别的事。

安装

dsh plugin --profile desktop add dsh-edge-cdp

本地开发时:

dsh plugin --profile desktop add "file:/绝对路径/dsh-edge-cdp"

装完工具会热加载(无需重启 DSH)。若修改了已安装插件的源码,需要 remove 再 add(DSH 只对"新装"的插件热加载),或重启 DSH。

工具一览

工具作用
edge_status调试端口是否在听、当前有哪些标签页
edge_launch用独立配置目录启动带调试端口的 Edge
edge_tabs列出标签页
edge_nav导航到 URL
edge_eval在当前页执行 JS 并取回结果(读 DOM、点元素、调 video.play())
edge_click按 CSS 选择器点击(滚动到可见后原生 click)
edge_type按 CSS 选择器填值(原生 setter + input/change,React/Vue 受控组件可生效)
edge_screenshot截图存盘(能读 DOM 就别用这个)
edge_background_mode后台模式:长连接 + 焦点模拟 + 心跳(每次心跳重贴,导航后不失效),最小化也能被当成在前台
edge_mute静音:递归静音当前页(含同源 iframe),并注册到每个新文档——换页后依然静音

典型用法

edge_launch()
edge_nav("https://example.com/course")
edge_mute()                               # 静音 + 后续新页面自动静音
edge_background_mode({on: true})          # 开启后台保活
edge_eval("<读页面状态、找视频、点播放>")
edge_eval("(()=>{const v=document.querySelector('video'); if(v&&v.paused)v.play(); return v.currentTime})()")

变更历史

见 CHANGELOG.md。要点:

  • 0.1.3 新增 edge_mute(静音 + 新页面自动静音)
  • 0.1.2 修复后台模式在页面导航后失效(心跳时重贴焦点模拟)
  • 0.1.1 持久 CDP 会话,Emulation 设置不再随调用丢失

配置(cordis.patch.yml)

- insert:
    - id: edge-cdp
      name: 'dsh-edge-cdp'
      config:
        port: 9222
        edgePath: 'C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe'
        userDataDir: 'C:\Users\<you>\.dsh\edge-cdp-profile'
        commandTimeoutMs: 30000
键默认说明
port9222调试端口
edgePathC:\Program Files (x86)\Microsoft\Edge\Application\msedge.exeChromium 可执行文件
userDataDir~/.dsh/edge-cdp-profile独立配置目录,登录态会持久保存,不干扰日常浏览器
commandTimeoutMs30000单条 CDP 命令超时

不用插件也能用:独立保活脚本

scripts/edge-bg.py 是一个自包含的 Python 版本(仅依赖 websocket-client),适合:

  • 不想装插件时临时用
  • 想把保活逻辑塞进自己的脚本
pip install websocket-client
python scripts/edge-bg.py --port 9222 --interval 10

它会:保持 CDP 长连接 → 开启焦点模拟 → 每 N 秒心跳 → 自动续播(会递归钻同源 iframe 找 video)。 停止:在被监控的进程上 Ctrl+C,或 --stop-file stop_bg.txt 指定的文件出现。

安全与边界

  • 调试端口只监听 127.0.0.1;--remote-allow-origins=* 只在本机生效。
  • edge_eval 能在页面里跑任意 JS——只对可信 agent 开放。
  • 插件用的是独立的浏览器配置目录,不会读写你日常浏览器的书签/密码。
  • 本插件只做"浏览器内的 DOM 操作",不改系统设置、不注入驱动、不碰其他进程。

已知限制

  • 只能驱动 Chromium 系(Edge / Chrome / Brave …),Firefox 不行。
  • 目标站点若用桌面客户端并检查真实前台窗口,本方案无效(这正是它必须用网页版的原因)。
  • 页面若把视频放在跨域 iframe 里,contentDocument 取不到,需要 CDP 的 Target.attachToTarget 才能进子框架(当前版本未实现)。
  • 极少数站点会检测 navigator.webdriver 或 CDP 端口特征;本插件没有做反检测处理。

开发

  • 入口 lib/index.js,导出 { name, inject, apply }。
  • 工具用 @deepseek-ai/dsh-tools 的 defineTool 注册: ctx.inject(["tools"], ctx => ctx.tools.register(defineTool({...})))
  • 参数 schema 用值 DSL:必填写在属性里 { type: "string", required: true }, 不要写对象级 required: []。
  • 所有 execute() 返回值必须是可无损 JSON 序列化的(不要出现 undefined)。

致谢

由 DeepSeek Harness 的 deepseek-flash 智能体编写与实测。 灵感来自社区插件 dsh-browser-bridge(它需要浏览器扩展,且只有 Firefox MV2 版本)。