DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins

dsh-rewind-plugin

Rewind Plugin

In-window conversation rewind with workspace file restore · 同窗口内对话回退并可还原工作区文件

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add dsh-rewind-plugin@0.20.0
READMECompatibilityVersions
用户消息旁的 ↶ 回退按钮模式选择浮层影响清单/rewind 候选面板「添加插件」弹窗:在输入框填入 dsh-rewind-plugin插件配置卡片:快照备份与自动清理

Compatibility and provenance

Rewind Plugin is published as dsh-rewind-plugin and currently resolves to version 0.20.0. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
npm
Registry updated
11/4/2026

Versions

0.20.0stable
11/4/2026
0.19.2stable
11/3/2026
0.19.1stable
10/26/2026
Show 78 more versionsCollapse versions
0.20.0-alpha.4prerelease
11/3/2026
0.20.0-alpha.3prerelease
11/3/2026
0.20.0-alpha.2prerelease
11/2/2026
0.20.0-alpha.1prerelease
10/28/2026
0.19.0stable
10/24/2026
0.18.1stable
10/24/2026
0.18.0stable
10/21/2026
0.17.1stable
10/19/2026
0.17.0stable
10/18/2026
0.16.0stable
10/17/2026
0.16.0-beta.1beta
10/17/2026
0.16.0-alpha.2prerelease
10/16/2026
0.16.0-alpha.1prerelease
10/9/2026
0.15.3stable
10/9/2026

Related plugins

Loading related plugins…

Latest
0.20.0
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
553.2 kB
Files
40
Surface
web
License
MIT
Source
npm
GitHub
★ 240
Weekly downloads
9,435
Security scan
✓ v0.20.0 scan passed
Last push
11/4/2026
View source ↗Project homepage ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue
0.15.2stable
10/8/2026
0.15.1stable
10/3/2026
0.15.0stable
9/29/2026
0.15.0-beta.2beta
9/29/2026
0.15.0-beta.1beta
9/28/2026
0.14.0stable
9/28/2026
0.14.0-beta.3beta
9/26/2026
0.14.0-beta.2beta
9/24/2026
0.14.0-beta.1beta
9/23/2026
0.14.0-alpha.1prerelease
9/22/2026
0.13.0-alpha.2prerelease
9/18/2026
0.13.0-alpha.1prerelease
9/15/2026
0.12.2stable
9/13/2026
0.12.1stable
9/12/2026
0.12.0stable
9/11/2026
0.11.0stable
9/10/2026
0.11.0-beta.1beta
9/10/2026
0.11.0-alpha.1prerelease
9/9/2026
0.10.0-alpha.2prerelease
9/9/2026
0.9.1stable
9/9/2026
0.10.0-alpha.1prerelease
9/8/2026
0.9.0stable
9/8/2026
0.9.0-alpha.2prerelease
9/7/2026
0.9.0-alpha.1prerelease
9/6/2026
0.8.0-alpha.1prerelease
9/5/2026
0.7.5stable
9/3/2026
0.7.4stable
9/3/2026
0.7.3stable
9/2/2026
0.7.2stable
9/2/2026
0.7.1stable
9/2/2026
0.7.0stable
9/1/2026
0.6.3stable
8/31/2026
0.6.2stable
8/30/2026
0.6.1stable
8/30/2026
0.6.0stable
8/29/2026
0.5.0stable
8/28/2026
0.4.2stable
8/27/2026
0.4.1stable
8/24/2026
0.4.0stable
8/24/2026
0.3.3stable
8/24/2026
0.3.2stable
8/22/2026
0.3.1stable
8/22/2026
0.3.0stable
8/21/2026
0.2.9stable
8/21/2026
0.2.8stable
8/20/2026
0.2.7stable
8/19/2026
0.2.6stable
8/19/2026
0.2.5stable
8/19/2026
0.2.4stable
8/19/2026
0.2.3stable
8/18/2026
0.2.2stable
8/18/2026
0.2.1stable
8/17/2026
0.2.0stable
8/17/2026
0.1.10stable
8/17/2026
0.1.9stable
8/17/2026
0.1.8stable
8/17/2026
0.1.7stable
8/17/2026
0.1.6stable
8/17/2026
0.1.5stable
8/17/2026
0.1.4stable
8/17/2026
0.1.3stable
8/17/2026
0.1.2stable
8/17/2026
0.1.1stable
8/17/2026
0.1.0stable
8/17/2026

Related plugins

More verified plugins in productivity-workflow.

Acp App@deepseek-ai/dsh-acp-appThe dsh ACP profile bundle: automation-only JSON-RPC stdio and process lifecycle over dsh-baseExperimental Schedule Bundle@deepseek-ai/dsh-experimental-schedule-bundleOptional bundle that adds Schedule, its task page, and time context to the Web compositionAb Ocrdsh-ab-ocr--- description: "The out-of-tree ocr tool: recognizes a scanned PDF or image page by page, merges the pages in order only after the last one, and saves one Markdown document with the heading levels the model decided." kind: "package-reference" ---Ds Harness Remoteds-harness-remoteEnd-to-end encrypted remote access to DeepSeek Harness and experimental Codex workspaces from desktop, web, and Android, with dsh-TUI Host support.

README

dsh-rewind

DeepSeek Harness 插件:一键就地回退对话到任意更早的用户消息。
同窗口内完成,不新建分支、不换窗口,可一并还原工作区文件——即完整的 Claude Code /rewind 语义。

English | 中文

回退到更早的消息,可选一并还原文件

刻意聚焦、保持极简,只做一件事:就地回退到任意远的用户消息,还能顺手还原改过的文件。

  • 就地消息回退——目标消息及其之后的内容同时从模型上下文和渲染对话中撤回,目标消息文本自动回填输入框。始终在原会话内完成,不新建分支、不残留副本。
  • 轻量备份还原——对齐 Claude Code:追踪写类工具编辑过的文件,回退时一并还原,已跟踪文件的外部变更也能还原。局部追踪、写前备份、不变不存,不依赖 git。
  • 安全保障——会话日志仅追加回退标记,从不删改;文件备份与还原经安全加固;完备测试,随 DSH 升级长期维护。安全模型:SECURITY.md。

效果预览

每条用户消息的操作行都有一个 ↶ 回退 按钮。点击后弹出模式选择浮层——「仅回退对话」或「回退对话和文件」,后者会先展示文件变更清单再确认。还可以通过 /rewind 和 /undo 命令便捷地选择和回退。

用户消息旁的 ↶ 回退按钮
用户消息旁的 ↶ 回退按钮
模式选择浮层
模式选择浮层
影响清单
「回退对话和文件」影响清单
/rewind 候选面板
/rewind 候选面板

安装

命令行:

dsh plugin --profile <name> add dsh-rewind-plugin

图形界面:侧栏「插件」页 →「添加插件」→ 填 dsh-rewind-plugin → 安装 → 重启 DSH。

「添加插件」弹窗:在输入框填入 dsh-rewind-plugin

默认安装 latest,它适配 DSH 最新稳定版本。若使用的是旧版或内测版 DSH,请在 Releases 页面找到适配的插件版本,并指定版本安装。

[!WARNING] npm 上的 dsh-rewind 属于其他作者,请用 dsh-rewind-plugin 安装。

使用

  1. 在对话中找到要回退的那条用户消息,或输入 /rewind(或其别名 /undo)打开候选列表选择。
  2. 选中它。 小浮层提供两种模式——「仅回退对话」或「回退对话和文件」。
  3. 回退立即生效:对话回到目标消息当时的样子,目标消息的文本自动回填输入框——改完直接重发。

键盘操作:候选列表与模式浮层均支持 ↑↓ 移动、Enter 确认、Esc 取消/返回。

边界说明
  • 回退内容完整保存——被撤回的内容仍在日志中,可在「轨迹」面板查看;也可禁用插件让它们重新显示(仅界面)。
  • 回退无法原地撤销——但可以先禁用插件让被撤回的内容重新显示,再在回退前的位置上点「在新对话中分支」,新会话的上下文即可包含这些内容。
  • 插话也能回退——模型尚未读取的 steering 插话消息,同样可作为回退目标,不会打断当前生成。
  • 回退已读消息会打断当前正在运行的回合——确保回退的安全执行。

存储管理

快照备份(默认开启):用于文件还原;可在本插件的配置卡片中关闭。关闭后不再创建新的快照,关闭期间的文件改动无法还原。快照存储于 <dsh home>/rewind-snapshots/(默认 ~/.dsh/rewind-snapshots/)。手动删除该目录仅清除文件备份,对话回退不受影响,插件可自动重建。

快照自动清理(默认关闭):把长期不活跃的会话快照整目录移除,不影响活动会话与对话日志。可在配置卡片查看与配置(自动清理开关、失活天数),也可用 /snapshot-auto-cleanup 命令查看、设置和运行。详见:快照自动清理。

插件配置卡片:快照备份与自动清理

卸载

# 卸载插件
dsh plugin --profile <name> remove dsh-rewind-plugin

# 如需同时删除本地数据
rm -rf <dsh home>/rewind-snapshots
rm <dsh home>/snapshot-cleanup-last-sweep.json

本插件的配置项保存在当前 Profile 的配置文件 cordis.patch.yml 中。如需彻底清理,可手动删除对应条目。

本插件的作用

相较于默认行为,本插件带来的变化:

维度默认行为本插件
对话回退新建分支对话就地回退——不用新建会话分支、不切窗口,也不产生残留会话副本,回退更便捷
文件还原手动还原 / Git 管理一键还原——写前轻量备份,回退对话时可选一并还原文件,贴合 Agent 工作流
还原依赖常依赖 Git 仓库或完整快照引擎无依赖——不依赖 Git 仓库,也不要求是代码项目,普通目录即可用

原理

整套设计只有两条主线,核心哲学朴素却克制:对话部分「只遮蔽、不删除」,使用 DSH 原生的「隐藏 + 替换」机制;文件部分「局部追踪,写前轻量备份」,参考 Claude Code 的检查点语义。

1. 对话回退:一次「遮蔽」,而不是「删除」

append-only 是铁律:会话日志只追加、从不改写——这是可审计与信息安全的地基。回退从不动历史,它只做一步:往日志末尾追加一条 “空消息”标记,把目标消息及其之后的全部内容「遮蔽 + 替换」掉,让模型和界面都只看得到目标之前的部分。

  • 同一份日志——只在当前会话的日志做简单追加,不新建会话、不新建分支,因此不会留下残留和副本;
  • 标记是规范的——采用与官方 /compact 相同的「隐藏 + 替换」:/compact 把一段历史压缩成摘要,/rewind 则换成一条“空消息”标记。由于其规范性,DSH 的日志重放、压缩、续接检查都能正确识别它,绝不会把它误认为真实对话;
  • 替换内容无感——模型对标记忽略、无感(实测验证)。配合插件对界面显示的处理,模型和你看到的对话就是目标消息当时的样子;
  • 记录完整保留——因为是「遮蔽」而非「删除」,被撤回的内容完整留在日志里,可审计、可追溯,原则上也能手动恢复。

设计点睛:整个对话回退就是一条追加。它确定、可审计,且因为日志从未被破坏,回溯是「干净的」——用最小的动作,实现最完整的语义。

2. 文件还原:轻量检查点,「写前备份」

文件部分对齐 Claude Code 的检查点语义——局部追踪、写前备份 + 每条消息重扫已跟踪文件,而不是整树快照。这项取舍省空间,也让已跟踪文件的外部改动同样可还原:

  • 写前备份:只追踪写类工具(write、edit),写前备份原内容,并记录、追踪被处理的文件——从不备份整个工作区,因此轻量;单个文件过大时不备份。
  • 外部变更也追:每条用户消息边界,插件重新检查所有已跟踪文件——命令执行、手动修改等外部变更同样被记录,回退时一并还原。这让「轻量」却不「残缺」。
  • 不变不存:记录只在有变化时发生——消息边界重扫时无变更的不备份(不留记录);写前备份时若与前一条记录一致,只存指向它的链接(ref)而非复制内容。
  • 还原准确:以备份为唯一标准,对照真实磁盘,只动真正不一致的文件;备份逐字节存储。还原结果与备份一致,无“幽灵影响”。覆盖范围按设计限定:文件回退的追踪边界。
  • 安全与完整性:路径经安全化处理,绝不越出备份根目录;符号/硬链接跳过,避免透过一次还原误伤同名的另一份文件;单个文件失败绝不中止整轮还原;备份与还原日志均原子写落盘(跨重启仍在),断电或崩溃后的半还原可续做或回滚。

设计点睛:这套检查点的「轻」,来自只记录被工具动过、且确实变化的文件——写前备份保证可还原,不变不存与存链接压掉重复;还原时再对照真实磁盘,只动不一致的文件。

范围与分工

本插件刻意保持轻量、聚焦「对话回退」这一件事,以下场景不属于它的职责,各自有更合适的归属(见设计边界):

  • 整树 / Git 级快照——只跟踪写类工具编辑 + 已跟踪文件的外部改动,从未被工具碰过的文件不还原。工作区历史(任意文件、任意时刻)归 Git;Agent 本来就在用 Git,插件不重复造这层。需要工作树级的完整快照回退时,请交给 Git 或项目自选的快照工具。
  • 子代理的编辑——不追踪,子代理会话内也不提供回退(同 Claude Code):子代理运行在自己的会话里,其备份无法由父会话的回退还原,因此也不会为子会话保留备份。
  • fork / 分支回退——DSH 已内置「在新对话中分支」功能,不重复造轮子。

兼容性

  • Node.js >=24.9.0。
  • 支持的 DSH 版本由 package.json 的 engines.dsh 声明。
  • 兼容性定义、验证方法与版本对齐详见 docs/compat/audit.md。

[!WARNING] 本项目与 DeepSeek Harness 均处于开发者预览阶段。可复现环境请 pin 精确版本, 并阅读上述行为说明。

已知限制

  1. 轮次导航保留已回退轮次——右侧轮次导航为已回退轮次保留「未加载」刻度,悬浮可预览已撤回内容。仅显示差异,无功能影响。
  2. 较远回退可能显示空白——回退目标早于已加载的历史时,对话区会显示空白;需点击「加载更早」往前翻,才能看到历史对话。

[!NOTE] 本插件提供浏览器端诊断输出;详见 浏览器诊断。

安全

本插件只向会话日志追加回退标记事件,从不删除或改写已记录的历史。工作区文件仅在「回退对话和文件」时被改写,备份存储于 <dsh home>/rewind-snapshots/;还原以备份为唯一来源。不触碰你的 git 仓库,无网络请求,不访问任何凭据。对长期不活跃的会话,另有默认关闭的快照自动清理可整目录移除其快照,不影响活动会话与对话日志。完整安全模型:SECURITY.md。

开发

npm install            # devDeps 来自 npm registry
npm run check          # 一键全检:typecheck + test + build + verify:host + pack --dry-run
npm run typecheck      # tsc 三面编译(host + client + client-test)
npm test               # vitest:全部单元与兼容性测试套件
npm run build          # esbuild:lib/index.js(host ESM)+ lib/client.js(loader 闭包)+ .d.ts
node scripts/verify-host.mjs   # 端到端验证构建产物

prepack 在打包前执行完整构建,所以 npm pack / npm publish 总会产出完整的 lib/。请从 npm 或打好的 tarball 安装——git 检出的源码里没有构建好的 lib/。

维护者:源码布局与架构见 docs/architecture.md,harness 接口参考见 docs/harness-reference.md。

贡献指南:CONTRIBUTING.md

发布

通过 GitHub Actions Trusted Publishing(OIDC,无存储 NPM_TOKEN)发布:推送 v<版本> tag,CI 即带 Sigstore provenance 发布。

npm version patch && git push origin <branch> --tags

一次性 npm 侧配置与完整流程:见 docs/release/release.md。

许可

MIT