23swccp/dsh-undo-plugin

DeepSeek Harness (dsh) plugin: conversation rollback via Shadow Git snapshots + archive task management (resto

dsh-undo-plugin rolls workspace files and the conversation together back to before the latest completed message with one /undo — the file tree is restored from a plugin-private Shadow Git snapshot (its own GIT_DIR, never your .git) and the conversation is forked into a new Session whose seed is the complete event prefix before the target message, so the model never sees the reverted prompt, reply, or tool calls. Rolled-back sessions land in Settings → Archive Tasks for view/restore/permanent-delete/delete-all, and a revoke-rollback strip above the composer fully restores a mistake. Four triggers exist: the rollback icon on the targeted user message, the session-header rollback button, the /undo command (which opens a lineage node axis with Rollback and View dsh Trajectory petals), and the strip above the composer.

Coding & Development ★ 1 updated 2026-08-24 ⚠️ needs adapt
View on GitHub ↗

Install

dsh plugin --profile web add dsh-undo-plugin

EN edition README.en.md verified 2026-09-02 (repo 23swccp/dsh-undo-plugin; npm dsh-undo-plugin 0.1.0-rc.8 verified — the entry package plus seven internal @dsh-undo/ packages install automatically as dependencies). Installable bundle: standalone workspace that never patches the dsh codebase, using only public dsh APIs published on npm (@deepseek-ai/dsh-@0.1.0-rc.6). Restart dsh to activate. Updates: dsh plugin --profile web update dsh-undo-plugin (npm) or /update in any session (git installs: git pull --ff-only + pnpm install + pnpm run build).

Compatibility

DSH web profile (public @deepseek-ai/dsh-*@0.1.0-rc.6 APIs); Shadow Git snapshots (private GIT_DIR, never your .git).

Details

Recent updates

/undo rolls back files + conversation together; Shadow Git snapshots; 4 triggers; lineage node axis; archive management; revoke-rollback; never patches dsh.

FAQ

What exactly gets rolled back?
Both the workspace files (from a Shadow Git snapshot) and the conversation (forked to before the target message) — the model never sees reverted content.
What if I roll back by mistake?
The revoke-rollback strip above the composer fully restores it; rolled-back sessions also stay manageable under Settings → Archive Tasks.
How do I install it?
dsh plugin --profile web add dsh-undo-plugin (npm 0.1.0-rc.8) and restart dsh.

Alternatives

dpskh/dsh-checkpoint · DfsyJian/dsh-snapshot · cokiscarazo-rgb/dsh-session-management

More plugins in Coding & Development

Browse more in Coding & Development

Guides for Coding & Development plugins