Skip to content

Releases

v1.0.1 — fix: CDP 路径静默失败

Choose a tag to compare

@hermes-ai-2026 hermes-ai-2026 released this 15 Oct 19:15

修了什么

currentCdpTarget / cdpClick / cdpType 是模块级函数,而 bridge 实例在 apply() 里用 const 声明 —— 它们够不着。

于是 CDP 路径每次都抛 ReferenceError: bridge is not defined,被 catch 吞掉后静默回退到渲染层路径。表现是「能点,但不是真实 CDP 事件」,返回值里只留一个 cdpError: "bridge is not defined"。

修法:把 bridge 提为模块级 let,在 apply() 里赋值。

怎么发现的:在内置浏览器里按 ref 点击时,读返回值看到 cdpError 字段 —— 不是靠猜,是靠工具自己报出来。

影响

之前 现在
点击/输入走合成事件 CDP 真实事件(isTrusted: true)
hover 类菜单不可靠 可靠
engine 显示 renderer-dom cdp-input

升级

github:hermes-ai-2026/dsh-browser-agent#v1.0.1

装完重启 DSH(宿主半不热重载)。

测试:verify-e2e 53 项 + verify-guard 7 项,全绿。

v1.0.0 — 19 browser_* tools for DSH's built-in browser

Choose a tag to compare

@hermes-ai-2026 hermes-ai-2026 released this 15 Oct 15:43

dsh-browser-agent v1.0.0

给 DeepSeek Harness 的 agent 一个真正能用的浏览器 —— 就用 DSH 右侧侧边栏那个。

DSH 自带那个浏览器只给人用:官方 bundle 只注册了一个 UI 页签,宿主半是一行空 apply() {}。
本插件以非侵入式加装的方式补上 agent 动作面 —— 不改 app.asar、不动应用签名、无额外安装步骤。

安装

github:hermes-ai-2026/dsh-browser-agent#v1.0.0

DSH → 插件 → 添加插件 → 填上面这行 → 安装 → 立即启用 → 重启 DSH。

19 个工具

能力 工具
读取 browser_read(ax 语义树带稳定 ref / text / html / links / dom)
操作 browser_click browser_type browser_scroll browser_press
证据 browser_screenshot(full 整页 / clip 区域) browser_assets
导航 browser_open browser_history browser_tabs
网络 browser_network browser_policy(mock / redirect / block / header 拦截改写)
会话 browser_cookies(含 httpOnly,登录跨重启保留)
高级 browser_inject(document-start 注入) browser_viewport(8 种设备预设) browser_instance(多开) browser_cdp(任意 CDP)
兜底 browser_eval browser_status(含能力矩阵)

设计要点

  • 零运行时依赖 —— 只用 Node 内置模块 + 自带的一个 CDP 客户端
  • 常驻系统提示段 —— 写进系统提示词,新会话不会忘记调用
  • 虚拟鼠标 —— 操作时页面里出现指针 + 蓝色光环,用户看得见 agent 在点哪里
  • 独立 CLI —— 零依赖,17 个子命令,每个动作后自动回报页面状态
  • 能力矩阵 —— browser_status 逐项报告每类能力走哪条路径,不让你猜

已验证的边界(不假装能做到)

边界 原因
真正的代理服务器 CDP 无此域
权限授予 webview 在 partition 的独立 BrowserContext,CDP 看不到
browser_press 窗口失焦时 无 OS 级键盘焦点时 CDP 键盘事件被丢弃

测试

verify-e2e 53 项 + verify-guard 7 项 + verify-prompt,全绿。

可选:CDP 调试端口

核心能力不需要任何启动参数。以下能力需要 --remote-debugging-port=9222:
browser_cdp · browser_press · 原生截图 · browser_policy · browser_cookies · browser_inject · 设备预设。
没开也能用,browser_status 会告诉你哪些走了降级路径。

安全提醒:调试端口一开,本机任何进程都能完全控制 DSH。只在需要时开。

MIT License