前言¶
DeepSeek Harness(DSH)把模型、工具和工作区收进同一套会话里。若你日常在 Cherry Studio 桌面端跑 agent、处理审批卡和会话历史,而希望从 DSH 侧统一编排——不必在浏览器和桌面之间来回切换——就需要一条可信的桥:配对、列设备、读历史、发消息并等到终态,还要能应答提问与审批。
社区插件 dsh-cherry-bridge(npm 包名 dsh-cherry-bridge,插件 id cherry-remote)由维护者 SAXEM1997 发布,分类为联网工具。它在 DSH 与 Cherry Studio 桌面端之间建立 ws:// 传输(Noise XX 记录层加密,不依赖 TLS 终止),暴露 14 个 cherry_* 工具,并附带同源设置页管理设备与工具启用范围。下面介绍定位、安装与典型用法;细节以 GitHub 仓库 为准。
这是什么¶
一句话:把 DeepSeek Harness 桥接到 Cherry Studio 桌面端——在 DSH 会话里直接驱动局域网内 Cherry Studio 的 agent。
插件在宿主侧维护连接池、订阅缓存与作用域;Cherry 端通过 remote access 二维码配对与人工审批。设置页与 HTTP 接口挂在宿主 Web 服务器同源前缀 /cherry-remote/api;导航里对应标签为「Cherry 互联」。
核心功能¶
传输与身份¶
- 传输:
ws://+ Noise XX。 - 配对:桌面端 remote access → 添加设备 出二维码;扫码页复制配对信息,在 DSH 调用
cherry_pair;双向核对 6 位验证码后在桌面端批准。 - 批准后设备写入数据目录下的
devices.json(权限0600),desktopIdentity被 pin;后续连接校验 Noise 对端静态公钥与 pin 一致,降低二维码被劫持后的中间人风险。
14 个 cherry_* 工具¶
工具按工作区决定是否出现在会话工具表里(隐藏而非拒绝);默认全部未启用,需在设置页配置「启用范围」(作用域文档缺失或损坏时 fail-closed,等同未选任何工作区)。
| 工具 | 作用(摘要) |
|---|---|
cherry_pair / cherry_unpair |
配对与解除配对 |
cherry_devices |
已配对设备及连接状态 |
cherry_agents |
设备上的 agent 列表(支持分页游标) |
cherry_workspaces |
agent 已注册工作区 |
cherry_sessions |
会话列表,可按工作区过滤 |
cherry_read |
会话历史快照(默认从新到旧) |
cherry_events |
会话缓冲区内事件流 |
cherry_create |
在工作区创建会话 |
cherry_send |
发消息,默认等待终态并返回助手文本 |
cherry_wait |
等待在途执行收敛 |
cherry_interactions / cherry_respond |
待答提问/审批卡与应答 |
cherry_cancel |
取消在途执行 |
device 参数可用精确 deviceId,或 deviceId/显示名前缀;多项命中返回 ambiguous-device,无匹配返回 not-found。
设置页¶
作为 DSH web client bundle 注册 cherry-remote 区块:设备卡片(启用/停用/删除)、配对向导、启用范围面板,以及经 /cherry-remote/api/events 的 SSE 实时状态。
安装与启用¶
DSH 版本:package.json 声明 engines.dsh 为 >=0.2.0-rc.2 <0.3.0-0。不满足时 bundle 被跳过、设置页中该插件行被禁用;确需在区间外使用可用 dsh plugin allow-version 精确豁免。README 注明 0.3.0 需重新评估兼容性后再放开。
推荐从 npm 安装并钉住版本:
npx @deepseek-ai/dsh plugin --profile web add dsh-cherry-bridge@0.1.9
安装 npm 最新发布版:
npx @deepseek-ai/dsh plugin --profile web add dsh-cherry-bridge
与 npm 同提交的 GitHub 源码安装:
npx @deepseek-ai/dsh plugin --profile web add github:SAXEM1997/dsh-cherry-bridge#v0.1.9
包自带 cordis.patch.yml,由 dsh-plugin-manager 自动插入插件行。手工等价配置示例:
- id: cherry-remote
name: 'dsh-cherry-bridge'
config:
perSessionCacheBytes: 2097152
rateBudgetPerSecond: 32
配置项¶
| 键 | 默认 | 说明 |
|---|---|---|
dataDir |
$DSH_HOME/cherry-remote(回退 ~/.dsh/cherry-remote) |
存放 identity.key 与 devices.json |
perSessionCacheBytes |
2097152(2 MiB) |
每会话本地订阅事件缓存上限 |
rateBudgetPerSecond |
32 |
每设备平滑请求预算(请求/秒) |
注意:cordis.patch.yml 的 config 为整体替换,不与默认值合并。
典型用法¶
首次配对¶
- Cherry Studio 桌面端:remote access → 添加设备,界面显示二维码;配对信息在扫码后的页面。
- 扫码后复制页面上的配对信息。
- 在 DSH 调用
cherry_pair(设置页向导亦可),粘贴配对信息。 - 与桌面端显示的数字核对 6 位验证码,一致后在桌面端批准。
会话操作顺序¶
README 给出的快速路径如下:
cherry_pair → 粘贴扫码页的配对信息,核对 6 位验证码
cherry_devices → 看设备与连接状态(前缀即可选中,如 "dev-A")
cherry_agents → 列设备上的 agent,拿 agentId
cherry_sessions → 列某 agent 的会话,拿 sessionId
cherry_read → 读会话历史(默认取最新 100 条,从新到旧)
cherry_send → 发消息并等待终态,返回助手文本
cherry_interactions → 看待答的提问/审批卡;cherry_respond 作答
在设置页勾选工作区后,上述工具才会出现在对应工作区的 DSH 会话里。
适用场景与注意¶
适合谁:已在局域网部署 Cherry Studio 桌面端、希望从 DSH Web 会话远程列设备、读历史、发消息并处理交互卡的工作流;需要与 Cherry agent 能力对齐、又不想单独维护一套远程控制脚本时。
运行与信任:插件以当前 DSH 进程权限运行,安装前请自行查看 源码 与 MIT 许可证。README 标明 MVP 下 cherry_respond 可代替用户批准 Cherry 端审批卡,信任 DSH 自身工具审批,无额外拦截层。
协议与限制(节选):读方法在重连后单次重放,命令不重放(写操作丢失应答时用原 commandId 重试);单外置内容上限 32 MiB;仅 ws://(Noise 加密),不做 TLS 直连;每设备仅申请 agent capability。长列表与长历史有 truncated、resumeCursor、messagesResumeCursor 等续读语义,见仓库 README「错误与限制」。
DSH 生态理念是「一切皆插件」;SkillHub 目录页 为社区站点,与 DeepSeek / 幻方无官方从属关系。
结尾¶
经过上面的步骤,你可以在 DSH 里完成 Cherry 配对、按工作区启用 14 个 cherry_* 工具,并在同一会话中驱动桌面端 agent。当前 npm 发布版本为 0.1.9。