ChisaAlter/dsh-plugin-message-edit

DSH消息撤回插件。兼容性预览:编辑并重新发送最新的DeepSeek Harness用户消息。

Project Overview项目介绍

This is a native web plugin built exclusively from official DSH builds that adds an “Edit and resend” button to the most recent user message. When the button is clicked, it creates a child conversation session immediately before the edited message, loads the original message text into the child session’s composer, and leaves the original source session completely unchanged. It can be installed directly from DSH’s Settings > Plugins menu on up-to-date compatible DSH builds, or manually via the DSH CLI with the command dsh plugin --profile web add github:ChisaAlter/dsh-plugin-message-edit#<commit-sha>.

The plugin only enables the edit action for the latest text-only user message, and disables the action entirely for running sessions and messages that include non-text content like images. It locks the action to prevent duplicate clicks while the child session is being forked, and shows a clear localized error notice in the composer if the fork fails for any reason. It is built specifically for DSH users who need to correct earlier prompts or adjust conversation context mid-conversation without unintended altering the original session or losing any prior progress.

The plugin requires three full specific host capabilities from official DSH to work correctly: conversation.chat.user-actions, session.fork.beforeSeq, and session.fork.blank. It will disable itself automatically or fail closed on incompatible DSH hosts, so it cannot create incorrect full-history forks on older legacy hosts that do not implement the full required capabilities. Local development working correctly requires Node.js 22.19 or later and pnpm 11.7.0, all prebuilt dependencies are committed to the repository, and the full plugin is released under the open source MIT license for any user free use, modification, and redistribution for contributing changes.

这是一款原生的DeepSeek Harness(DSH)网页插件,它为最新的用户消息提供「编辑并重发」功能。触发后,它会在目标消息之前创建一个子会话,将原消息文本加载到输入框供编辑,同时保留原对话会话不变,不会将旧消息和旧的助手响应带入子会话。用户可以在DSH的插件设置界面直接安装,也可以通过dsh CLI命令指定GitHub仓库的提交哈希手动安装。

插件仅对最新的已提交文本消息生效,点击编辑按钮后不会立即发送,还会对重复点击加锁避免多次创建子会话,编辑失败会在原界面提示原因。仅支持聊天视图下的纯文本消息编辑,需要等待当前响应生成完成才能操作,图片等非文本消息暂不支持编辑。它面向需要修正对话上下文、调整提问方式的DSH用户。

该插件有严格的兼容性检查,要求DSH主机具备conversation.chat.user-actions、session.fork.beforeSeq、session.fork.blank三个能力,不满足条件的主机会禁用插件避免出错。插件采用MIT许可协议,开发需要Node.js 22.19以上版本和pnpm 11.7.0,依赖已经提交到仓库,无需额外构建。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 2 stars - very few users, little community feedback星标只有 2,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add github:ChisaAlter/dsh-plugin-message-edit

把 ChisaAlter/dsh-plugin-message-edit 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-plugin-message-edit

English | 中文

A DeepSeek Harness web plugin that adds Edit and resend to the latest user message. It creates a child session immediately before that message, opens the child, and restores the original text to the composer. The source session remains unchanged, and the old message and old assistant response are not included in the child.

[!IMPORTANT] This plugin requires the named host capabilities below. Compatible DSH hosts reject missing capabilities before activation. Legacy hosts that do not implement the compatibility manifest safely leave the browser plugin disabled, so they cannot create an incorrect full-history fork. The current public 0.1.0-rc.6 host does not provide this feature.

Required host capabilities

The host must provide all of the following:

  • conversation.chat.user-actions
  • session.fork.beforeSeq
  • session.fork.blank

The manifest declares these exact feature IDs. Installation and browser composition fail closed on a compatible host when any requirement is missing; the browser half also checks the slot API before registering.

Behavior

  • Only the newest committed user message shows the pencil action.
  • Clicking the pencil does not send immediately.
  • A child session is forked before the selected message's turn.
  • The original text is restored to the child composer for editing.
  • Running sessions and messages containing non-text blocks show an unavailable action with a reason.
  • A pending fork locks the action against duplicate clicks.
  • A failed fork leaves the source selected and reports a localized composer notice.

Installation

Install it from Settings > Plugins when your DSH build exposes all required host capabilities. Manual installation is equivalent to:

dsh plugin --profile web add github:ChisaAlter/dsh-plugin-message-edit#<commit-sha>

The repository commits lib/ and defines no lifecycle build scripts, so GitHub installation does not require an allowBuilds exception.

Development

Requires Node.js 22.19 or later and pnpm 11.7.0.

pnpm install --frozen-lockfile
pnpm verify
pnpm pack:check

pnpm verify runs strict TypeScript checking, 21 behavior tests, a clean production build, and release-artifact validation.

Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →

← 上一个 Prev dsh-shuttle 下一个 Next dsh-llm-kiro →