dsh-plugin-bridge

49Star3Fork1Issue5Watching

给 DeepSeek Harness WebUI 加 /bridge 命令,把已有内容的会话迁移到另一套工具 preset,零侵入、原会话保留。

机审证据安装命令仓库已核验dsh-plugin Topic许可证READMEAI 百科
语言
JavaScript
License
MIT
分支
main
context-migrationcordisdeepseek-harnessdshdsh-pluginpreset-migrationsession-migration

安装

$ dsh plugin --profile web add github:Totoro-qaq/dsh-plugin-bridge

在终端中运行以上命令,通过 dsh CLI 安装此插件。可在右上角切换 Profile。 第一次用 dsh?看这篇新手教程

对话式安装

帮我安装 DeepSeek Harness 插件 Totoro-qaq/dsh-plugin-bridge:先查看仓库 https://github.com/Totoro-qaq/dsh-plugin-bridge.git 确认安全性,然后执行安装命令并验证插件加载成功。

把这段指令粘贴给 DSH Web GUI 里的助手,由它代你完成安装与验证。

一句话定位

给 DeepSeek Harness WebUI 加一条 /bridge 命令:把已经聊出内容的会话压缩成一份固定五段摘要,在新工具 preset 下开新会话继续,原会话原地保留。

核心能力

  • 在任意会话输入框里输入 /bridge,即可把这个会话迁到其他工具 preset(minimal / standard / code 等),原会话保留不动
  • 迁之前先预览一份交接摘要(目标 / 当前状态 / 关键决策与约定 / 关键文件 / 下一步),确认无误再 --go 执行
  • 摘要写成本地临时文件,可直接编辑后用 --file 走"改完再执行"路径,避免模型来回传话
  • 目标会话默认先复述理解、再暂停等你确认;加 --continue 让复述和下一步合并在同一轮请求
  • 已有识图分析进入摘要时逐字搬运,不经过摘要 worker 改写;未解析原图在 rc.8 下可随首轮提示发给视觉目标
  • 自带 /bridge --doctor 自检:直接列出当前 host 暴露了哪些网关方法、当前模式、生效配置

技术实现

  • 语言: TypeScript (Node.js, ESM)
  • 关键依赖: @deepseek-ai/cordis (peer)、@deepseek-ai/schemastery (配置 schema)
  • 架构模式: 注入宿主进程的 commandsapiProxy 两个 cordis 服务;命令注册用 effect disposer,卸载时命令随 fiber 一起消失
  • 执行引擎: 进程内 ctx.apiProxy(不走 HTTP,但同时提供 CLI 通过回环 HTTP 走同一套代码),整条迁移链路不出进程
  • 入口文件: src/index.ts(apply 注册 /bridge 命令)/ src/command.ts(命令分派:preview / migrate / doctor)

适用场景

你在「通用」模式聊到一半,发现接下来要写代码——模式切换是锁的(因为不同 preset 工具集不兼容,会留下幽灵调用)。Bridge 是那个出口:把当前进展压成摘要,新预设开新会话继续,原会话原地保留。不适合会话刚起步(没什么可带的)或只是想换模型、调整思考强度(这本来就能在会话内切)。

前置依赖与兼容性

依赖最低版本说明
DSH0.1.0-rc.6+rc.6 / rc.7 / rc.8 均逐条核对接口;rc.8 多了持久图片附件读取的可选能力
Node.js≥ 22仓库 CI 覆盖 Node 22 / 24
平台跨平台无原生模块、无操作系统限制
原生模块纯 Node 标准库(fs / os / path)

安装方式

dsh plugin --profile web add github:Totoro-qaq/dsh-plugin-bridge

配置项

默认无须配置即可工作。需要定制时改 ~/.dsh/profiles/web/cordis.patch.yml 里的 dsh-plugin-bridge 块,或设置对应环境变量。

配置类型说明默认值
modelTierflash / current / pro压缩摘要工人用的模型档位;pro 失败方差更小,不建议用 flash 迁 minimalpro
sourceCharBudget数字压缩取材总字符预算(约 30K tokens 输入)60000
summaryCharBudget数字交接摘要正文字符预算(约 900 tokens)2400
goalRounds数字新会话挂为 goal 的自主轮次上限;上游默认 256 轮会自动跑空,Bridge 强制收口1
injectgoal / prompt / both摘要注入方式:goal 是可恢复的目标,prompt 是首轮提示;both 同时挂both
langzh / en / auto摘要输出语言;auto 跟着会话内容走auto
workerProvider字符串强制指定压缩模型所在 provider(换了 provider 的部署用)""
workerModel字符串强制指定压缩模型名""
previewTimeoutMs数字/bridge <preset> 等压缩工人的超时上限180000(3 分钟)

常见问题

Q:安装后必须重启 dsh web 吗?

A:必须。插件在 dsh web 启动时挂载;装好后在输入框里打 /bridge 没反应,多半是没重启。重启后 commands 服务和 apiProxy 服务都到位,命令才会出现。

Q:升级了 DSH 之后还能用吗?

A:先打一次 /bridge --doctor。它会逐项列出 13 个网关方法哪个可用、当前 preset、生效配置;如果缺方法,会直接点名那个方法名,把这行连同你的 DSH 版本号发到 issue 即可。rc.6 / rc.7 / rc.8 都核对过,主链路方法表完全一致。

Q:迁移后新会话"记得"多少?

A:pro 档位下 8 次跑 95% 可用。丢的最常见的是数字被补全成常见值(端口被改写成 3000/8080 之类),所以预览那一步重点扫数字和路径。fix-version 0.2.4 把"旧值复活"作为关键词显式阻断,6 份独立摘要 + 12 个目标会话的关键事实 100% 命中。

Q:为什么不在原会话直接切 preset?

A:上游在网关层硬锁,且锁得对:历史里的工具调用只在原工具集下合法;中途换 preset 会留下新 preset 无法执行的"幽灵调用",容易静默劣化。Bridge 选择搬家而非绕锁。新会话是干净的,复述理解后由你确认。

Q:迁移花多少钱?会让正常会话变贵吗?

A:只安装不迁移时,对正常会话 0 prompt token 贡献——/bridge 是 host 的 slash 命令,不注册技能、不注册工具,命令结果不进模型历史。压缩工人实测约 1.6K 输入 + 0.7K 输出;默认确认模式额外花一个只复述的确认轮,--continue 把复述和工作合并在同一目标轮。token 大头仍是后续 agentic 工作。

Q:摘要里数字或路径错了怎么办?

A:预览会自动把摘要写进一个临时文件并打印路径。直接用编辑器打开那个文件,改正数字或路径,保存后跑 /bridge code --go --file <路径> 即可用改过的摘要执行。文件是唯一事实源,比让模型"记住你刚才说要改哪里"可靠。

Q:迁移后不满意怎么回退?

A:原会话一个字符都没动过,直接点回原会话继续;新会话归档即可。Bridge 不写原会话、不动工作区文件;新会话是在新 preset 下起的"另一个会话"。

Q:和 TotoroPilot 是什么关系?

A:TotoroPilot 是 GUI 弹窗形态,调用同一套迁移流水线;本插件本身可以直接在官方 WebUI 用 /bridge。两者走的是同一份 migrate.ts 编排。

上手难度

入门 — 一条命令安装、重启一次、在输入框里打 /bridge <preset> 就能用;默认配置覆盖绝大多数场景,仅在需要调整压缩档位或多轮 goal 时才动配置。

已知问题与限制

  • 官方 WebUI 安装后目前需要重启一次,并且不允许插件自动跳转到新建会话;Bridge 会在结果里打印新会话的准确标题和 session ID,需要手动切换
  • 默认 DeepSeek 文本模型仍不能读图;Bridge 只保留已有视觉证据,绝不暗中运行本地小视觉模型;rc.8 持久附件不可复用时降级为"未解析"提示
  • 预览通常耗时 20–60 秒,受 previewTimeoutMs(默认 180 秒)上限保护;超时会被取消并以已产出文本兜底
  • 迁移会新建目标会话(占一个工作区槽位),不是原地替换;workspace 已知超额的环境要先清理
  • 升级 DSH 后若主链路方法缺失,迁移会失败——打 /bridge --doctor 即可定位
  • release acceptance 是小样本、修复驱动(每 cell 仅 1 次),不应理解为总体准确率保证

收录徽章

Listed on deepseek-plugin.org
[![Listed on deepseek-plugin.org](https://img.shields.io/badge/listed_on-deepseek--plugin.org-007EC6)](https://deepseek-plugin.org/plugins/Totoro-qaq/dsh-plugin-bridge)

把这段 markdown 粘贴到你的 GitHub README,链接回本插件详情页。徽章只声明已被本站收录,不代表安全认证。

返回插件目录