dsh-rewind
在终端中运行以下命令:
dsh plugin install liyixuan201211/dsh-rewind
将以下提示词粘贴到 DeepSeek Harness 对话框中:
在 DeepSeek Harness 插件市场中搜索 dsh-rewind(开源地址:https://github.com/liyixuan201211/dsh-rewind),运行 dsh plugin install liyixuan201211/dsh-rewind 即可安装,安装后 agent 会自动学习在危险操作前做快照、用 rewind exec 包裹命令、以 undo --dry-run 到 undo --yes 的流程取代直接撤销。
插件介绍
当 agent 一口气改完四十个文件、重写 .env、删掉一个从未被 git 跟踪的脚本之后,终端里没有 Ctrl+Z,git checkout . 也只认上次提交,工作树里那一小时的改动对它完全透明。dsh-rewind 填的正是这个盲区:对任意目录(仓库或非仓库)做一次内容寻址快照,然后一条命令回到几分钟前的状态,不需要 commit,不需要 stash,也不需要记住时间戳。
它的核心设计只有一句话:撤销本身也是可撤销的。每次执行 undo 之前,当前状态先被存成快照并打印出 id;反悔时拿那个 id 再回滚一次即可。安全边界同样清晰——不递归删除目录、不删除快照中从未捕获过的文件、所有写入走临时文件加原子 rename、符号链接只记录不跟随。零依赖,纯 Node ESM,快照存在同目录的 .rewind/ 下,用 ls 就能翻阅,不引入任何新的启动副作用。
适合的人很明确:日常与 AI coding agent 协作、频繁跑批量 codemod 或文件重写的开发者。它不是备份,不防硬盘故障,粒度是目录级的即时回滚,存储就是同磁盘上的明文文件,没有远端仓库、没有加密配置、没有生命周期脚本。需求窄但精准:把刚才那五分钟的破坏在一条命令内逆转,而这条逆转本身还能再被逆转。
使用场景
- Agent 批量改写文件后一键回滚到之前的状态
- 在非 git 仓库目录中误删未跟踪文件后快速恢复
- 跑完 bulk codemod 发现改错,用快照 id 精确撤销
适合人员
- 日常与 AI coding agent 协作、频繁触发批量文件改写的开发者
- 在非仓库目录中工作、需要即时可逆操作能力的工程师
- 希望用零依赖本地工具替代 git stash 和 cp -r 做即时回滚的用户