dsh-turn-rewind
Turn-level conversation and workspace rewind for DeepSeek Harness, powered by a persistent Change Ledger
一句话定位
Turn-level conversation and workspace rewind for DeepSeek Harness, powered by a persistent Change Ledger
安装方式
在 DSH 的 web profile 中执行下面的命令;装完刷新页面即可。
$ dsh plugin --profile web add @anionex/dsh-turn-rewind@0.3.12
兼容的 DSH 版本
0.2.1-rc.3 || >=0.1.0-rc.8 <0.2.0 || ^0.1.1-rc.1 || ^0.1.2-alpha.1 || ^0.1.5-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.2 || 0.2.1-rc.5
作者与热度
Anionex · ★ 145 · 更新于 2026-11-06
关于这个插件
DSH Turn Rewind
中文说明
Message-anchored project-file recovery for DeepSeek Harness, with an option to restart from the restored request.
Turn Rewind is the user-facing feature, repository, and Profile Bundle name. Change Ledger is the durable restore engine underneath it: the ctx.changeLedger service, on-disk format, and storage path keep that name because they describe the reusable snapshot and recovery layer rather than the Web action alone.
Change Ledger gives a DSH session an explicit safety boundary around workspace mutations:
It never commits, stashes, resets, switches branches, edits the Git index, or decides automatically that a change should be reverted. What's new
Most recent work first: File rewind works in ordinary directories (0.3.0) — when the working directory is not a Git repository it is snapshotted as an ordinary directory (.git and node_modules excluded by default, plus an optional .dsh-rewindignore), so messages-only rewind is no longer the only option. The fastest path is now the default (0.3.8) — the new auto mode uses Git-native checkpoints in a Git worktree (reusing the repository object database, so committed content is never stored twice) and the plugin's own store for ordinary directories. Unchanged files are no longer re-read (0.3.5) — each workspace keeps a persistent path identity cache; a measured 20 000-file / 351 MB workspace dropped from 237 s to about 7 s per capture. One oversized file no longer discards a whole checkpoint (0.3.3) — it is skipped and reported while the rest is still captured, and a restore never touches a path its checkpoint did not record, so a file that was too large then and small now is never deleted. Checkpoint budget 5 s → 60 s, parallel capture (0.3.4) — a 5-second budget in a large directory could only ever report a skip. Rewind button and messages-only fixes (0.2.2 / 0.2.3) — adapted to
Rewind appears as an icon-only third action under each user message, after its timestamp and native Copy action:
Opening it shows the affected files and offers three choices: restore the files and restart from before that message, restore only the files, or rewind only the messages and leave the files untouched:
Why it has a Change Ledger engine
A diff button can show current changes, but it does not own a durable restore lifecycle. Change Ledger owns: content-addressed restore-point manifests; Git worktree, HEAD, branch, and in-progress-operation fences; stale-plan detection between review and mutation; exact two-step confirmation plus DSH human approval; automatic pre-restore rescue points; post-restore hash verification; rollback after a failed restore; startup reconciliation of interrupted restore journals; a public ctx.changeLedger service that other plugins can consume.
相似插件
archify
Turn any idea, plan, or codebase into a beautiful interactive diagram. An agent skill for Claude Code, Codex, and more.
nuwa-skill
女娲:把任何人蒸馏成可运行的思维 Skill。
distilly
Distill source material into reusable Person Profiles for AI agents.