DeepSeek Harness plugin

dsh-edit-resend

DSH plugin: edit already-sent messages and resend (stop an in-flight reply, edit, resend), plus branch-based edit/reroll/retry and a version timeline.

Jump to install

Source facts

Repository
mbj733/dsh-edit-resend
Latest update
Aug 14, 2026
Category
UI Enhancements
GitHub stars
4
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/mbj733/dsh-edit-resend
Plugin: dsh-edit-resend
Author: mbj733

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer3 files
README.mdSource · read only

dsh-edit-resend

DeepSeek Harness (DSH) 插件:在消息已发送之后原位编辑并重新发送——包括停止正在进行的回复、编辑、重新发送,以及重生成 / 重试任意回合。单对话模式:修改后旧版本自动归档、标题不变,侧边栏始终只保留一个对话。

与上游 dsh-message-edit 的关键区别:本插件的版本元数据存在会话日志之外DSH_HOME/storages/dsh-edit-resend/versions.json),从不往会话日志写自定义事件类型,因此不会触发宿主重启后的 SessionFormatUnsupportedError,会话始终可恢复。

功能

  • 停止并编辑重发:回复进行中,标题栏出现「■ 停止」;停止后,最后一条消息仍可编辑,点「编辑」→ 修改 →「重新发送」,从该消息开始重新生成。不会产生重复消息,旧版本自动归档。
  • 编辑已落定消息:编辑用户文本、助手思考(reasoning)与助手回复(response)。
  • 重生成:用原输入重新生成最后一条已落定回复。
  • 重试任意回合:在 Timeline 中选任意历史回合重跑。
  • 级联策略truncate(默认,截断后续)/ preserve(保留后续用户输入依次重跑)。
  • 单对话模式:每次编辑 / 重生成 / 重试都会归档旧版本并沿用原标题,侧边栏只保留一个对话;「编辑与重发」标签页可查看当前版本与消息。

安装

dsh plugin --profile web add dsh-edit-resend
# 或本地开发(符号链接):
dsh plugin --profile web add -w link:/path/to/dsh-edit-resend

安装后重启 dsh(dsh web)即生效。

构建

npm install
npm run build

生成 index.mjs(Host 插件)与 client.js(Browser 插件)。

架构

  • Host 半src/host.ts,注入 sessions/agents/sessionQuery/workspaceRegistry/webServer):通过 ctx.agents.create({ seed, meta }) 事务缝从目标回合之前分支;parentSession 落在会话头建立谱系,版本效果元数据落在插件私有 JSON 存储。
  • Client 半src/client/*,注入 slots/conversation/connection/sessions):注册 conversation.view(「编辑与重发」标签页)与 conversation.session.header.actions(停止 / 重生成),并用 MutationObserver 把「编辑 / 重试」按钮注入到消息操作行。
  • HTTP 接口GET /edit-resend?sessionId=(时间线投影)、POST /edit-resendedit/reroll/retry)。

范围边界

  • 不原地改写会话事件;历史 append-only。
  • 不联动恢复工作区文件 / 外部命令副作用。
  • 不修改 DSH 引擎或官方 UI 包。