dsh-fork-diff
by chouyong
DeepSeek Harness 只读分叉感知会话差异插件
Read-only fork-aware conversation diff plugin for DeepSeek Harness
安装
dsh plugin --profile web add github:chouyong/dsh-fork-diffGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
在 DeepSeek Harness 中并排比较相关会话分支。它把当前会话与父分支、子分支或兄弟分支的公开历史对齐,突出回答、工具调用和工具结果的差异,全程只读。
为什么需要它
同一轮对话 fork 后,常见问题不是“有哪些分支”,而是“两个分支的公开历史具体有哪些不同”。逐个打开会话并来回滚动很难比较长回答、工具轨迹和 token 开销。dsh-fork-diff 将这些信息放在一个可筛选的双栏视图中。
功能
- 自动发现当前会话的父、子和兄弟分支,不混入无关会话。
- 对齐用户消息、assistant 最终回答、工具调用和工具结果。
- 区分不变、已修改、仅左侧和仅右侧内容,并提供行级文本高亮。
- 汇总用户消息、回答、工具调用、耗时和可见 token usage。
- 支持比较对象切换、只看变化/显示全部、打开对应会话。
- 支持桌面双栏、移动端单栏、Escape 关闭、焦点陷阱和焦点恢复。
- 完整历史反向分页,包含取消、重复序号、无进展、非连续页和页数上限保护。
- 大历史和长文本会显式进入快速对齐模式,不把近似结果伪装成精确结果。
安装
需要 DeepSeek Harness 0.1.0-rc.5 或兼容版本,以及 Node.js ^22.19.0 || >=24.0.0。
v0.1.0 Release 发布后,可用下面的一行命令安装预构建 tarball 到 web profile:
dsh plugin --profile web add https://github.com/chouyong/dsh-fork-diff/releases/download/v0.1.0/dsh-fork-diff-0.1.0.tgz
启动或重启对应 profile:
dsh --profile web
Release 发布前或需要复核构件时,可先使用本仓库本地已验证的 tarball:
dsh plugin --profile web add .\dsh-fork-diff-0.1.0.tgz
DSH 0.1.0-rc.5 当前从 Git source 安装时会在 prepare 阶段解析到尚未发布的 DSH peer 包,因此不把 Git source 路径描述成可用安装方式。远端 Release 只有在上传后下载并核对与本地验证构件相同的 SHA-256,才视为可用安装源。
网络超时、Git source prepare、入口不显示和历史分页错误的处理方法见 安装与排障。
卸载:
dsh plugin --profile web remove dsh-fork-diff
使用
- 打开一个存在父、子或兄弟分支的 DSH 会话。
- 点击会话标题栏中的“比较分支”。
- 从“比较对象”选择相关分支。
- 在“仅差异”和“全部”之间切换,或从分支摘要中打开对应会话。
没有相关分支时,插件不会显示一个无效的比较入口。
截图
真实 DSH 0.1.0-rc.5,Microsoft Edge,2026-08-16:
兄弟分支差异

父分支选择

移动端单栏

隐私与边界
插件只读取 DSH 浏览器中已公开的会话列表和 sessions.history API:
- 不创建 fork,不写 session event,不修改文件。
- 不恢复后台 Agent,不注入 prompt,不上传会话正文。
- 不读取 Cookie、凭据、隐藏数据库或未公开运行态。
- 不判断哪个分支“更好”,不执行 merge 或 cherry-pick。
- 客户端摘要没有公开持久化
seedLength,因此 v1 不宣称精确 fork 点或事件级共同祖先。
开发
npm install --ignore-scripts --legacy-peer-deps
npm run verify
npm run verify 依次执行类型检查、生产构建、完整测试和 browser bundle contract。浏览器构件使用 DSH window.__ModuleLoader__,并从宿主加载 React、Cordis 和 DSH UI 模块,避免打包第二份 React。
贡献代码前请阅读 贡献指南。 模块边界、数据流和失败关闭策略见 架构文档。
兼容性
| 组件 | 已验证版本 |
|---|---|
| DeepSeek Harness | 0.1.0-rc.5 |
| Node.js | v25.0.0 |
| npm | 11.6.2 |
| pnpm(DSH profile) | 11.7.0 |
License
原始 README: https://github.com/chouyong/dsh-fork-diff/blob/main/README.md ↗
同类插件
查看全部 →
archify
Agent 技能:生成美观、可校验的架构图、工作流图、时序图、数据流图与生命周期图——自包含 HTML、带动画与清晰导出

dsh-turn-rewind
对话回退:基于持久 Change Ledger 回滚会话与工作区状态。

dsh-plugin-cc
把 DeepSeek Harness 接入 Claude Code:评审、批评、委派与会话导入

dsh-interconnect
跨实例互联:经 interconnect 服务在多个 DSH 实例间转发消息与事件。

dsh-chat-import
把 13 家 coding agent(Claude Code、Codex、ChatGPT、Cursor、Gemini、opencode 等)的完整对话历史导入为可续聊的 DeepSeek Harness 会话,并支持反向导出回 Claude Code。

dsh-crew
DSH 插件:从 Claude Code / Codex 向 DSH agent 派活——原生 subagent 进度、宿主内 worker 会话(分级预设),以及为纯文本宿主补上视觉与图像生成的多模态桥