DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Undo — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins

dsh-undo

Undo

适用于 DeepSeek Harness 的持久化多级上下文撤销/重做,支持针对每条用户消息的 WebUI 操作。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add dsh-undo@0.2.0
README兼容性版本

兼容性与来源证明

Undo 以 dsh-undo 发布,当前版本为 0.2.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
any
发布来源
npm
Registry 更新时间
2026/9/20

版本

0.2.0stable
2026/8/13
0.1.1stable
2026/8/13
0.1.0stable
2026/8/13
查看其余 1 个版本收起版本
0.3.0-preview.1prerelease
2026/8/13
最新版
0.2.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
36 kB
文件数
13
Surface
any
许可证
MIT
发布源
npm
GitHub
★ 0
周下载
133
安全扫描
✓ v0.2.0 扫描通过
查看源码 ↗项目主页 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

README

dsh-undo

User-side undo/redo plugin for DeepSeek Harness (dsh), inspired by the undo/redo experience in coding agents like opencode.

The plugin registers two slash commands (never sent to the model):

  • /undo — rolls the transcript back to before the last message. If the last message is an assistant reply, its whole closing reply flow (assistant fragments and tool results) is shadowed out of the visible context; if the last message is yours, that message is removed. The durable session log keeps every rolled-back event, so nothing is lost.
  • /redo — restores the messages the most recent /undo removed, re-adding them exactly as they were.

How it works

The session log is append-only, so /undo never deletes events. Instead it appends one empty-content assistant/message whose surface replace op shadows the targeted messages. Empty assistant content derives to no message, so the transcript and the model context show exactly the pre-undo state, while the log remains a complete, replayable, reversible history. /redo re-appends fresh copies of the shadowed events as ordinary surface appends (with re-minted message identities; tool results keep their call correlation, so transcript tool-call → tool-result adjacency is preserved).

Design notes:

  • Undo unit is the last reply — one /undo removes the closing reply flow of the last turn (or the trailing user message), returning to your last input. Repeated /undo calls walk back one reply at a time.
  • Redo is invalidated by new user input — any new user-role message clears the redo stack (standard undo/redo semantics). Redo copies carry their source seqs and never invalidate it.
  • Durability — every operation flushes through the shared session durability barrier (ctx.sessions.flush) before reporting success; if persistence cannot be proven, the command reports an error rather than lying.
  • Undo history is process-local — like a browser's undo stack, the redo stack is in memory. Restarting the process keeps the log consistent (markers stay shadowed, copies stay restored) but clears the redo stack.

Install

The package is a dsh bundle: package.json declares dsh.bundle pointing at cordis.patch.yml, which activates the plugin row.

From npm:

dsh plugin --profile demo add dsh-undo

From git (source checkout — the prepare script builds lib/ on install; authorize the build in the profile's pnpm-workspace.yaml first):

dsh plugin --profile demo add github:LingLambda/dsh-undo#<sha>

For local development against a source checkout of deepseek-harness, load the plugin directly as an overlay:

pnpm dsh web --patch ./cordis.patch.yml --patch /absolute/path/to/dsh-undo/overlay.yml

where overlay.yml references the source entry:

- insert:
    - id: undo
      name: /absolute/path/to/dsh-undo/src/index.ts

Usage

Type /undo in the composer to roll back to your last input, then /redo to restore what was undone:

/undo
/redo

Each command's result is shown in the transcript as a command card (已回滚 N 条消息 / 已恢复 N 条消息, or an error such as 没有可撤销的内容).

Develop

yarn install
yarn typecheck
yarn test
yarn build

License

MIT