dsh-rewind: In-Window Conversation Rewind Plugin for DeepSeek Harness
sirilee/dsh-rewind
DSH plugin for in-window conversation rewind to any earlier message without forking, with optional workspace file restore, full Claude Code /rewind semantics.
dsh-rewind is a conversation rewind plugin for DeepSeek Harness that lets you rewind to any earlier user message in the same window without forking a new session or switching windows. It also provides a lightweight workspace backup that saves original content before writes, so you can restore modified files along with the rewind, fully matching Claude Code's /rewind semantics. With an append-only design that shadows rather than deletes, history stays auditable, and file restore is idempotent and safe—ideal for developers who frequently revise conversation history or undo code changes.
How to Install
dsh plugin --profile web add dsh-rewind-plugin- Category
- Sessions & Messages
- Platform
- DSH Plugin
- Author
- sirilee
- Distribution
- Plugin
dsh-rewind Key Features
dsh-rewind Repo Summary
What Does It Do?
dsh-rewind is a DSH plugin for DeepSeek Harness that enables in-window conversation rewind to any earlier user message without forking a new session or switching windows. It solves the hassle of undoing or revising past messages, and ships a lightweight workspace backup that restores modified files along with the rewind. Core capabilities include shadow-based conversation rollback, pre-write file backup, idempotent restore, and session-level auto-cleanup, fully matching Claude Code's /rewind semantics.
Core Features
- In-place rewind: rewind to any user message in the same window, no new session or window switch; the target message text is refilled into the input box.
- Lightweight workspace backup: tracks only write-type tools (e.g., write, edit), backs up original content before each write, persists to disk, and does not depend on git.
- Idempotent restore: compares against the real disk before restoring, only touches inconsistent files, so repeated rewinds have zero side effects.
- Safety first: session logs are append-only, file restore is confined to the plugin's own backup directory, and symlinks and path escapes are blocked.
- Multiple triggers: a ↶ rewind button next to each user message, the /rewind command (alias /undo), and keyboard operations.
How to Use This Plugin?
After enabling it in DSH, locate the user message you want to rewind to, click the ↶ rewind button next to it, or type /rewind to open the candidate list and select a target. A mode selection overlay appears, offering "rewind conversation only" or "rewind conversation and code" — the latter shows a file change list for confirmation first. The rewind takes effect immediately, and the withdrawn message text is auto-filled into the input box for editing and resending. Keyboard supports ↑↓ to move, Enter to confirm, Esc to cancel. Snapshots are stored under /rewind-snapshots/, and you can manage global auto-cleanup with the /snapshot-auto-cleanup command.
This page is an independent rewrite of the plugin's official README — for authoritative documentation and the latest changes, refer to the source: sirilee/dsh-rewind. The plugin is third-party code that runs on your machine once installed; inclusion does not imply endorsement — please review the source before installing.
