全部插件

DSH / BUNDLE / CLIENT-UI

dsh-browser

v0.2.1CJYLZS / dsh-browser567c159c1f

可安装组合包UI 与客户端插件社区 · Topic 自动分析Web UI

概览

dsh-browser

A real local browser per DeepSeek Harness conversation: mirrored into the right Sidebar, driven by the agent with six tools, and attachable over its own CDP port.

README / ZH

插件文档

目录摘要

A real local browser per DeepSeek Harness conversation: mirrored into the right Sidebar, driven by the agent with six tools, and attachable over its own CDP port.

dsh.pub 核对固定版本的组合包契约、运行时事实与分发语义;完整 README 请查看源仓库。

在 GitHub 阅读完整 README

LIMITATIONS

已知限制

- **只在 Windows 上验证过。** macOS 与 Linux 一次没跑过:`channel` 的查找、临时目录、进程回收是最可能出差异的部分。 - **没有标签条。** 面板只显示一个页面:当前活动页。打开新标签的链接或 `window.open` 会把镜像与工具一起带到新页面,工具结果里也带标签摘要,但你无法在面板里手工切换页面。 - **在浏览器窗口里手工开的标签不会被跟随。** 带窗口的浏览器里用它的标签条切页,镜像不会跟着走;只有插件被告知的页面(工具调用、页面自己发起的 `window.open`)才会移动它。 - **侧栏里走 IME 的中文输入不工作。** 组合输入期间 `event.key` 是 `Process` 而不是字符,没有可转发的东西。非组合状态下,面板把可打印字符按文本发送、命名键按按键事件发送、带 Ctrl/Alt/Meta(或 Shift)的按键按它本来的组合键发送——所以 `Ctrl+A` 是选中页面而不是往页面里插一个 "a";AltGr 组合仍按文本发送,因为它在 Windows 上就是 Ctrl+Alt。粘贴与直接键入 ASCII 不受影响;agent 的 `browser_type` 也不受影响,它插入文本而不是重放按键。 - **剪贴板快捷键由面板自己处理。** `Ctrl/Cmd+C`、`Ctrl/Cmd+X`、`Ctrl/Cmd+V` 在面板里可用:复制/剪切把**镜像页里的选区**写进你的系统剪贴板,粘贴把你的剪贴板文本发给镜像页(`Input.insertText`,不重放按键)。镜像页自己收不到这些按键——Chromium 把剪贴板快捷键放在浏览器进程,注入的按键事件到不了那里(实测页面连 `keydown` 都没有)——所以走的是面板这一侧,那里的按键是可信事件。只搬纯文本;页面里 JS 调 `navigator.clipboard.writeText`(站点自己的"复制"按钮)写的仍是浏览器进程内部那个剪贴板,headless 下不会到系统剪贴板。 - **对话框在问题被读到之前就要回答。** 页面会阻塞到对话框被回答为止,所以答案必须由打开它的那次调用声明;没声明的那次调用会拒绝(dismiss)它并如实上报。常见形状是两次调用:第一次告诉你页面问了什么,第二次换成另一种回答。 - **只在页面重绘时出帧。** `Page.startScreencast` 是重绘驱动的,完全静止的页面几乎不出帧,面板保留最后一帧。这不是卡住。 - **最小化时不可交互。** 无头模式不受影响,但被最小化的带窗口浏览器会同时停掉画面与输入。 - **`maxInstances` 在面板上没有对应动作。** 到顶时工具调用会失败、新面板会被拒绝,错误信息里点名了这个上限,但面板没有提供释放一个槽位的操作;唯一办法是在某个面板里关掉浏览器,或者让那个会话被销毁。 - **没有 profile 选择器。** 会话的 profile 由它的 id 推导,因此无法让这个对话指向一个已有的 Chrome profile,也没有可供选择的 profile 列表。 - **不处理下载、上传、文件选择器与权限弹窗。** 这些发生在浏览器进程里,既没有呈现在面板上,也无法通过面板应答。 - **不做请求拦截与网络检查。** 这个插件驱动浏览器,它不是代理;要做这类事请用附加的 CDP 端口。 - **没有会话的调用会被拒绝。** 定时任务或没有自己会话的子代理会按设计失败;把它的调用算到别的对话的浏览器上,比失败更糟。 - **截图不能变成图片内容块。** 见[工具](#tools):它需要的那种附件引用在当前版本里不是插件能签发的东西。 - **没有发布到 npm。** 从 GitHub 或本地检出安装——见[安装](#install)。 ----- <a id="dev-note"></a>