dsh-fork-edit

DSH PLUGIN工具与能力

仓库 homily707/dsh-fork-edit

工具与能力 未标注验证等级 安全审查:未标注 可信度:未标注 可安装插件

dsh-fork-edit 是 DeepSeek Harness web 客户端的回合级对话编辑与重试插件,悬停历史用户消息即可编辑或重放,并以 fork 新会话方式保留原会话。

一句话选型结论

按资料字段整理

dsh-fork-edit 是工具与能力类的 DSH 可安装插件,未做沙盒验证,暂无安全审查结论,列出 4 项功能,没有现成安装命令,需要按仓库 README 接入。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类工具与能力 收录类型可安装插件 验证等级未标注验证等级 安全审查未标注
验证等级 UNKNOWN 未标注验证等级
GitHub 星标 0 复刻 0 · 未关闭 issue 0
最近更新 2026-09-22 创建于 2026-09-08
README 4.7 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
  1. 1
    确认版本与运行环境

    仓库没有标注兼容版本与 Node.js 要求,先确认你的 DSH 版本能装,再继续。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本未标注版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名未发布到 npm可用 npm view 查看包信息

能做什么

4 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

dsh-fork-edit:DeepSeek Harness 里可编辑历史消息的回合分叉插件

  • 悬停历史消息即可编辑或重试
  • 编辑支持粘贴图片并自动执行
  • 侧边栏按谱系分组展示分支
  • 归档时级联归档整棵子树

上游标签

dsh-plugin

验证等级与安全审查

未标注验证等级
自动化流程结论,不是人工审核
验证等级未标注验证等级上游未给出验证结论,安装前请自行确认
安全审查未标注静态分析结论,未标注不代表已通过审查
仓库健康度未标注按仓库活跃度与最近更新时间给出
可信度未标注综合仓库活跃度与验证结果

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 列出了 4 项功能,能直接看出它解决什么问题。

先想清楚的地方

  • 安全审查还没结论,装之前先看仓库改了什么、要什么权限。
  • 没有现成安装命令,要按仓库 README 手动接入。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在工具与能力场景里给 DSH 补能力的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-fork-edit当前 未做沙盒验证 未标注 0 未标注 无
huashu-design 未做沙盒验证 未标注 3.0 万 未标注 有
loopx 未做沙盒验证 未标注 6,233 未标注 无
agy-staff 未做沙盒验证 未标注 870 未标注 有
dsh-startup-screen 未做沙盒验证 未标注 633 未标注 有
minara-skills L4 · 沙盒安装通过 中风险 360 未标注 有

仓库档案

工具与能力
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方homily707仓库 dsh-fork-edit · 默认分支 main
分类工具与能力tools
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言JavaScript仓库主语言
许可证MIT商用或二次分发前请确认条款原文
星标 / 复刻 / issue0 / 0 / 0收录时的数值,非实时
创建 / 更新2026-09-08 · 2026-09-22最后推送 2026-09-22
本站收录2026-09-13首次进入本站目录的时间

README 全文

4.7 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-fork-edit

dsh (DeepSeek Harness) web 客户端的回合级对话编辑插件。

在任意一条已落定的历史用户消息上悬停,即可看到 ✎ 编辑图标:

  • 编辑 —— 修改那条消息的输入(支持直接粘贴图片),从该回合之前分叉出一个新会话并自动执行;原样保存不改一字即等价于重试。

原会话原样保留,随时可以切回。

> 0.9.0 起独立的 ↻ 重试入口已裁掉:官方 turn 尾部的 branch 按钮覆盖「另开分支」场景,「重跑本回合」用编辑弹窗原样保存即可(纯图片回合除外,见 HTTP API 的 retry-turn)。

为什么用 fork 实现

常见的做法是给消息编辑写一套自定义事件(版本树 + undo/redo),但自定义事件写入 session log 后,历史会话可能因事件白名单拒读而无法冷加载。

dsh-fork-edit 反其道而行:不写入任何自定义事件。编辑 = 在目标回合之前的闭合边界处 fork 出新会话,编辑后的文本作为新会话里的普通用户回合执行。谱系关系只靠 parentSession header meta 记录。

结果:

  • 日志里只有核心已知事件,历史会话永远可读;
  • 编辑语义天然简单 —— 分支就是一个普通会话,没有任何待修复的历史数据;
  • 核心事务在源 Agent 的 runMaintenance() 缝隙内执行,失败时逐项回滚,不产生半成品会话。
inverses = []
child = agents.create({ seed: 目标回合之前的闭合边界前缀, meta: { parentSession, seedLength, cwd, agentPreset } })
inverses.push(() => child.dispose())
workspace? → attachSession(childId)
await sessions.flush(child.session)     # 耐久性屏障
child.agent.followup(编辑后文本 || 原回合用户输入)   # 新会话自动执行
失败 → recoverOperation(inverses.reverse())        # 无半成品残留

功能

编辑

  • 悬停任意已落定的用户消息行,官方操作按钮旁出现 ✎ 图标;对话进行中按钮也会在数秒内自动出现,无需刷新或切换会话。
  • 编辑弹窗预填原输入;输入框内可直接粘贴图片(持久化后作为 image block 并入新消息),纯图片编辑亦可提交。
  • Enter 直接提交,Shift+Enter 换行;输入法组合态不误触发。
  • 弹窗内带会话 timeline:纵排列出所有已闭合的用户回合(序号 + 单行预览),点击即在弹窗内跳转切换编辑目标。
  • 新分支自动以首条用户输入命名,各分支一眼可辨;新会话自动打开。

侧边栏分支分组

官方侧边栏是平铺展示的,fork 出的后代挤在顶部难以辨认。本插件以 sessions.list 谱系为权威,把根会话的全部后代分组渲染在根行下方:

  • 单一层级,视觉缩进 + 树状连接线(└ 形),一组连线自成一体;
  • 行识别基于 React fiber 的会话 id,标题只作降级兜底 —— 不受 fork 子会话暂无标题、标题重名的影响;
  • 根行(或根不可见时的组头行)带折叠开关,折叠状态存 localStorage,随会话切换智能展开;
  • 官方只渲染最近 N 个会话时,后代自动锚定到最近可见的祖先,整组不散架。

级联归档

官方的「归档会话」只归档单个会话。本插件在 client 侧对服务方法做级联包装:归档任一会话时,自动收集并归档其整棵后代子树(部分失败不静默)。

注意:归档目前没有官方 unarchive 入口,不可逆。

HTTP API

Host 侧通过 ctx.webServer.register 暴露路由,Client 以同源 fetch 调用:

请求 作用
GET /fork-edit?sessionId=… 已落定回合列表
POST /fork-edit { kind: "prefill", sessionId, turn? } 目标回合原文本
POST /fork-edit { sessionId, turn?, mode, text? } 执行分叉

mode 取值:edit-user(编辑用户输入)/ retry-turn(重试回合;0.9.0 起 UI 不再暴露,保留给纯图片回合等不便走编辑弹窗的调用方)。出错返回结构化错误(400 参数 / 409 业务)。

安装

~/.dsh/profiles/web/package.json:

{
"dependencies": {
"dsh-fork-edit": "link:/path/to/dsh-fork-edit"
}
// 并在 bundles 数组加入 "dsh-fork-edit"
}

> 若同时装有同类消息编辑插件(如 dsh-message-edit),请移除 —— 相同注入点会出双按钮。

工程结构

dsh-fork-edit/
├── package.json      # dsh.bundle.patch / dsh.client 注入清单
├── cordis.patch.yml  # 插件注册入口
├── index.mjs         # host 侧:fork 事务 + HTTP 路由
├── client.js         # client 侧:按钮注入 + 编辑弹窗 + 侧边栏分组
└── README.md

License

MIT

常见问题

7 问
答案由本站依据条目字段整理,不引用上游原文
dsh-fork-edit 怎么安装?

本站没有抓到该条目的安装命令,请到仓库主页确认安装方式;这类条目多数是生态应用或尚未发布安装包的项目。

dsh-fork-edit 的验证等级是什么意思?

未标注验证等级。上游未给出验证结论,安装前请自行确认

dsh-fork-edit 安全吗?

未标注。

dsh-fork-edit 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

dsh-fork-edit 用的是什么许可证?

上游标注为 MIT。商用或二次分发前请到仓库确认许可证原文。

dsh-fork-edit 有哪些功能?

悬停历史消息即可编辑或重试、编辑支持粘贴图片并自动执行、侧边栏按谱系分组展示分支、归档时级联归档整棵子树。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

工具与能力
按星标排序,可作替代方案

huashu-design

huashu-design

在 DeepSeek Harness 里说一句话,就能拿回可交付的设计:网页、App 原型、可编辑 PPTX、动画与信息图,自带 84 种风

未标注验证等级 3.0 万 星

loopx

loopx

LoopX 是面向长周期 Agent 的本地优先控制平面,作为 DSH plugin 为 DeepSeek Harness 提供持久目标、证

未标注验证等级 6,233 星

agy-staff

agy-staff

把 Google Antigravity CLI 作为快速 Gemini 员工接入 DSH,提供子代理侧边栏、编排模式与多种角色技能。

未标注验证等级 870 星

dsh-startup-screen

dsh-startup-screen

DeepSeek Harness 的启动界面与启动动画插件。

未标注验证等级 633 星

dsh-blender-plugin

dsh-blender-plugin

让 AI 模型通过直连 TCP 通道实时驱动 Blender 的 DSH plugin:15 个工具覆盖视口取帧、任意角度渲染、内循环搜索、

未标注验证等级 211 星

homily707 的其它插件

2 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 —。