为 DeepSeek Harness 打造的 TRAE 风格会话回滚插件
33.5/100
综合分
5
GitHub 星标
448
npm 周下载
—/5
用户评分
数据截至 2026/10/26 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add @domitor-syh/dsh-rollbacknpm 源 · @domitor-syh/dsh-rollback 的发布者账号已校验与本仓库一致
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · security
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 9 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包@domitor-syh/dsh-rollback @ 0.5.1
✓Node 引擎要求 >=18 · 基线 Node 22.19 满足
✓dsh CLI 依赖要求 >=0.1.5-rc.2 <0.2.0-0 || >=0.2.0-rc.2 <0.3.0-0 · 最新 0.2.1-rc.2 兼容
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/28 23:39:27
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件
查看扫描证据(共 45 处,展示前 18 条)
- 读取本地文件lib/index.js:472
const mode = await stat(hostPath).then((info) => info.mode & 4095).catch(() => void 0); - 写入本地文件lib/index.js:479
await rename(tempPath, hostPath); - 删除本地文件lib/index.js:485
await unlink(tempPath); - 读取本地文件lib/index.js:499
const buffer = await readFile(hostPath, signal === void 0 ? {} : { signal }); - 读取本地文件lib/index.js:1824
const info = await lstat(hostPath); - 读取本地文件lib/index.js:1842
const before = await lstat(hostPath); - 读取本地文件lib/index.js:1851
const bytes = await readFile(hostPath); - 读取本地文件lib/index.js:1861
const after = await lstat(hostPath); - 删除本地文件lib/index.js:2001
await unlink(hostPath); - 写入本地文件lib/index.js:2088
mkdirSync(entry); - 写入本地文件lib/index.js:2095
writeFileSync(handle, JSON.stringify(transaction), "utf8"); - 写入本地文件lib/index.js:2099
renameSync(temporary, path); - 删除本地文件lib/index.js:2103
if (existsSync(temporary)) unlinkSync(temporary); - 删除本地文件lib/index.js:2110
unlinkSync(path); - 写入本地文件lib/index.js:2258
mkdirSync(dirname(file), { recursive: true }); - 写入本地文件lib/index.js:2263
writeFileSync(fd, text, "utf8"); - 删除本地文件lib/index.js:2271
unlinkSync(temp); - 删除本地文件lib/index.js:2488
unlinkSync(temporary);
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh@deepseek-ai/dsh-client-ui-primitives@deepseek-ai/dsh-commands@deepseek-ai/dsh-compaction@deepseek-ai/dsh-fs@deepseek-ai/dsh-sandbox-policy@deepseek-ai/dsh-session@deepseek-ai/dsh-system-prompt@deepseek-ai/dsh-token-meter@deepseek-ai/dsh-tools@deepseek-ai/dsh-working-directory给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
界面预览
1 张 · 点击查看大图功能亮点
- 会话回滚
最近更新
在 GitHub 查看全部 →v0.5.12026-10-19
· 修复切换工作目录后的相对路径捕获:文件工具的前镜像与宿主使用同一会话有效目录,派发前重新获取目录与目标;已记录的绝对路径不随后续目录切换变化。父子目录同名文件不会混用恢复依据;仅切换工作目录不新增文件修改归属。
· 目标不一致改为逐操作持久恢复缺口:工具派发结果或最终结果回报的规范路径与捕获目标不同时,排除该操作的不可信恢复收据,不拼接不同文件的前后态,也不覆盖原工具结果。独立持久记录调用 id、原始轮次、工具及预期/回报的规范路径,不保存文件正文;后处理失败前已发现的不一致也保留为缺口。
· 只阻断跨越存活缺口轮次的回退:后续正常轮次继续记录检查点,满足其余恢复条件时可回退;已知缺口在预览与执行时、文件或对话表层发生变更前阻止 fromTurn <= 缺口原始轮次 的整个回退后缀,并报告缺口及之后可用的起始轮次。轮次列表只提供缺口之后的起点。重启后限制不变;同轮后续成功、no-op、净变化为零及检查点裁剪均不清除缺口。不提供跳过缺口的部分回退或仅撤回对话模式。恢复记录写入、读取等原有失败仍保守拒绝,可能阻止更大范围的回退,不承诺后续每次回退必然成功。
· 恢复事务重查晚到缺口:旧预览不能绕过新增缺口;恢复事务在文件操作前与对话标记提交前重查。如果文件恢复途中才发现缺口,停止继续恢复、保留事务与对话,允许 /rollback abort 补偿已执行的文件操作,不将中途失败误报为完全没有修改文件。
· 新版宿主回归:覆盖目录切换后的创建、编辑、重启恢复、绝对路径、旧宿主目录回退分支、目标不一致,以及真实宿主的版本放行和旧入口加载;上下文分类统计验证更新为新版相邻 prune 定价协议。
· 当前适配目标更新为 DSH 0.2.1-rc.2:开发用 DSH API 包精确锁定到 0.2.1-rc.2,Cordis 更新为 4.0.5;新增 dsh-working-directory 的开发依赖与纯类型增强,支持宿主可选读取会话有效工作目录。旧宿主保留目录回退路径,原兼容范围未收窄;旧版本在本次适配中未重新验证。
· 兼容闸门使用当前字段:将无效的嵌套 dsh.engines.dsh 移至顶层 engines.dsh,与保留的宿主 peer 范围保持一致;版本放行不等于功能验证。
· 移除退役 invariant 服务依赖:删除 dsh-invariants 的 peer、开发依赖和类型导入;公开 ./invariant 入口保留为已弃用的空操作,无必需服务注入,避免旧配置因入口消失而加载失败;主插件不依赖 companion。
· 文档与检查入口同步:中英文 README 说明当前目标、旧版验证边界及遗留入口;宿主类型检查说明更新到当前 API 版本,继续保留全部诊断。36 个测试文件、728 项测试以及类型检查、双语文档检查与构建全部通过;尚未进行 profile 安装、宿主重启或 GUI 端到端验收。
npm:@domitor-syh/dsh-rollback@0.5.1
完整变更:v0.5.0...v0.5.1
v0.5.02026-10-09
· 0.5.0
0.4.0 之后累积的全部工作:架构与存储加固、回退执行边界、Web 客户端与文档。
· 界面决策:消息照常隐藏,刻度条不处理
· 撤销「隐藏右侧轮次刻度条」:刻度是等距绝对定位的,隐藏只会留下一格空槽;要合上必须从外部重排组件布局,而组件每次重渲染都会写回自己的位置 —— 结论是刻度条原样不动。
· 被回退的对话消息照常隐藏,改由宿主给出「回退边界」这一个数字驱动(/rollback state),不再依赖回退标记是否到达客户端切片。
· 正确性修复
· 重复回退同一轮:目标已被回退过时明确拒绝且不写入任何事件(此前会写入零宽区间、替换掉上一条标记,连带销毁其隐藏窗口)。
· 标记的 sourceEventSeqs 写法改为非升序:存储层会压缩严格升序的连续序号,而运行时字段只接受扁平整数 —— 压缩落盘的会话再也打不开。
· 其它
· 版本 0.5.0;package.json 顺带修掉一个 UTF-8 BOM。
· 门:683/683 测试(35 文件)· typecheck 无可静默项 · 中英 README 一致性校验通过。
npm: @domitor-syh/dsh-rollback@0.5.0 · shasum 9cdb097b1ceb4816ac82c9265caa2f74ffb48fc6
v0.4.02026-10-02
0.4.0 - 对齐官方桌面端 UI,并修掉三处实测暴露的正确性问题
· 正确性修复
· 「新建文件」曾被记成 update:0.2.0 的 write 不发 create 标记,而 before:"" 无法区分「新建」与「写入一个原本为空的文件」。现在由插件在工具运行前用 ctx.fs.stat 自己判定,回退到建之前时该文件被删除,而不是被恢复成空文件。
· 欢迎页之上的过程行不再残留:syncHides 原先只遍历聊天切片里的节点,表层替换留下的孤儿 DOM 座位从未被考虑,所以 contentLeft: 0 时屏幕上仍有一行。新增 Pass 4 直接移除——幽灵行不再能活过下一条消息。
· 边界扫描的归属修正:扫描发现的变化一律记在「发现它的那次边界」,不再记到确认过该文件的下一轮。此前会把删除记到前一轮,于是回退真正删除它的那一轮时,窗口把该记录排除,「找回」条目从预览里静默消失。
· 界面与交互(对齐官方)
· 回退弹窗的文件列表改为只读回执(要打开文件走右侧文件树)。
· 按钮圆角改为 --dsw-radius-sm(8px,与官方动作条按钮同值),图标 15→17px、描边 1.4→1(17px/1px 取自官方 end-of-turn 变体);弹窗圆角改为 --dsw-radius-panel(28px,与官方 Modal / 输入框同值)。
· 命令
· /rollback 弹出官方 popupSelect 轮次选择,选中后打开与「回退」按钮完全相同的确认弹窗,因此继承受影响文件预览与图片回填。
· 适配与验证
· 适配 DSH 0.2.0-rc.2;engines.dsh = >=0.1.5-rc.2 =0.2.0-rc.2 <0.3.0-0。
· typecheck 零静音 · 206 用例 / 14 文件 · check:readmes · 宿主探针 18/18 · 中运行守卫 3/3 · 兼容闸门 6/6 · 指令菜单 10/10 · 双座位表 OK · 截断 6/6 · 标记准入 6/6。
· npm:@domitor-syh/dsh-rollback@0.4.0
已知限制:没有任何官方接口能把「文件」送回输入框(图片可以);@路径 参考芯片回退后不回来,回来的只有那段文字。
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。
README
由 DeepSeek 最新模型翻译生成dsh-rollback · TRAE 式「回退」插件
中文 · English
Awesome DSH Plugin
为 DeepSeek Harness(DSH)Web 端提供按轮次回退:恢复已跟踪的文件变更,同时撤回对应的模型可见对话,继续使用原会话。
功能
- 按轮次回退:选择最近保留的 10 轮检查点,通过按钮或 /rollback 发起。
- 文件与对话同步恢复:恢复旧内容、找回删除的文件、撤销新建;首尾状态相同的文件不做操作。
- 确认后执行:弹窗展示受影响文件及外部修改警告。
- 草稿回填:通过确认弹窗回退后,尝试将原消息和可恢复附件放回输入框。
- 恢复进度保留:失败后可重试或尝试补偿文件操作。
安装
Web 端(dsh web):
dsh plugin --profile web add @domitor-syh/dsh-rollback
桌面端(官方渠道)——在插件的安装处填入包名 @domitor-syh/dsh-rollback,或使用等价命令:
dsh plugin --profile desktop add @domitor-syh/dsh-rollback
安装后:Web 端重启 dsh web 并刷新页面;桌面端重启桌面应用。从 DSH 源码运行时,在上述命令前加 pnpm。
当前适配目标为 DSH 0.2.1-rc.3。
展开完整文档(README 剩余 1 节)
dsh-rollback · TRAE 式「回退」插件 中文 · English Awesome DSH Plugin 为 DeepSeek Harness(DSH)Web 端提供按轮次回退:恢复已跟踪的文件变更,同时撤回对应的模型可见对话,继续使用原会话。 功能 - 按轮次回退:选择最近保留的 10 轮检查点,通过按钮或 /rollback 发起。 - 文件与对话同步恢复:恢复旧内容、找回删除的文件、撤销新建;首尾状态相同的文件不做操作。 - 确认后执行:弹窗展示受影响文件及外部修改警告。 - 草稿回填:通过确认弹窗回退后,尝试将原消息和可恢复附件放回输入框。 - 恢复进度保留:失败后可重试或尝试补偿文件操作。 安装 Web 端(dsh web): dsh plugin --profile web add @domitor-syh/dsh-rollback 桌面端(官方渠道)——在插件的安装处填入包名 @domitor-syh/dsh-rollback,或使用等价命令: dsh plugin --profile desktop add @domitor-syh/dsh-rollback 安装后:Web 端重启 dsh web 并刷新页面;桌面端重启桌面应用。从 DSH 源码运行时,在上述命令前加 pnpm。 当前适配目标为 DSH 0.2.1-rc.3。该版本对插件使用的主机 API 无行为变化,客户端改动仅为新增导航自定义、埋点和 Tooltip 自适应放置,因此无需修改插件代码。声明的兼容范围仍为 >=0.1.5-rc.2 <0.2.0-0 || >=0.2.0-rc.2 <0.3.0-0(已覆盖 0.2.1-rc.3),旧版本在本次适配中未重新验证。 0.5.1 修复了切换会话工作目录后,相对路径文件可能捕获到原目录同名文件的问题;回退继续使用修改时记录的目标路径。 使用 提供三种使用方式: 1. 回退按钮:点击已结束轮次中的「回退」按钮 → 查看受影响文件 → 确认回退。 2. /rollback:输入不带参数的 /rollback → 打开轮次选择弹窗 → 选择目标轮次 → 查看受影响文件并确认回退。 3. /rollback + Space(空格):手动输入 /rollback 后按空格 → 打开子命令菜单 → 选择命令或参数 → 按回车执行。选择菜单项只补全参数,不立即执行;preview 会打开轮次子菜单,按 Esc 可返回。 | 命令 | 用途 | | /rollback | 选择轮次并打开确认弹窗 | | /rollback latest | 直接回退最近的检查点 | | /rollback <n> | 直接回退到第 n 轮之前 | | /rollback list | 查看可回退轮次 | | /rollback preview <n> | 预览受影响文件 | | /rollback retry | 继续未完成的恢复 | | /rollback abort | 对话尚未提交撤回时,尝试补偿文件操作 | | /rollback rescues | 查看文件救援点,不自动恢复 | | /rollback state | 查看当前回退状态 | | /rollback diagnose | 查看诊断信息 | latest 和数字命令直接执行,不显示确认弹窗。 如需先检查,请使用界面入口或 preview。 运行中不能回退。回退只处理具备恢复依据的已跟踪文件,不是整个工作区备份;外部修改警告提示相关内容可能被覆盖。恢复失败后先按提示使用 retry 或 abort,报错不代表文件操作已自动撤销;对话撤回提交后不能再 abort。回退不会删除原始会话日志。 工具回报的文件路径与捕获目标不一致时,该操作留下持久的恢复缺口。例如第 5 轮出现缺口,第 6 轮起正常保留的检查点仍可回退;从第 5 轮或更早开始的回退会在预览和执行时被拒绝,并提示缺口及之后可用的起始轮次。重启后限制仍保留;不会跳过缺口做部分回退或只撤回对话。恢复记录写入或读取失败仍可能阻止更大范围的回退。 开发 构建工具链要求 Node ^22.18.0 || >=24.11.0。 pnpm --config.verify-deps-before-run=false install --ignore-scripts pnpm --config.verify-deps-before-run=false typecheck pnpm --config.verify-deps-before-run=false test pnpm --config.verify-deps-before-run=false check:readmes pnpm --config.verify-deps-before-run=false build DSH 0.2.1 已退役 invariant 服务,插件不再依赖 @deepseek-ai/dsh-invariants。公开的 ./invariant 入口保留为已弃用的空操作,旧配置可继续加载,也可移除该条目。宿主版本范围由顶层 engines.dsh 声明;旧宿主缺少 workingDirectory 时保留原有目录回退路径。 修改后需将构建产物安装到目标配置档,再重启 DSH 并刷新页面。版本变更见 更新日志。 许可证 MIT
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
domitor-syh/dsh-rollback
为 DeepSeek Harness 打造的 TRAE 风格会话回滚插件
相关插件 · 安全 / 权限
智能体逆向工程morluto/rea
用智能体逆向工程任何东西,从应用行为到原生二进制。
★ 426,451已汉化DSH
73.3
智能体集群框架ruvnet/ruflo
面向 Claude Code 与 Codex 的智能体元基座meta-harness。
★ 80,777已汉化MCP
71.8
WorkBuddy 模型接入corrinehu/dsh-workbuddy-connect
2026 年 10 月 20 日起,WorkBuddy…
★ 1,604已汉化DSH
71.7
主动编码智能体deepseek-ai/dsh-superagent-prototype
研究原型,仅供参考,不是 DeepSeek 官方产品。…
★ 15,535已汉化DSH
71.6
破甲一键通z91772524-ai/pojia-next
🌐 官网国内推荐从这里进:
★ 1,021已汉化DSH
71.6
Agent 操作层agentic-os-org/ANOLISA
ANOLISA(Agentic Nexus Operating Layer & Interface System Architecture)|智能体操作系统,带运行时、安全、可观测性,以及 Tokenless 响应压缩,降低 token 用量与成本。
★ 656已汉化DSH
70.7
这是你的仓库?认领条目