🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

历史消息编辑 capooai/dsh-msg-edit

DeepSeek Harness
capooai3 天前有提交已提供中文文档扫描:未发现敏感能力

改写历史提问与回复,可选是否重新生成

29.8/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/11/3 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add capooai/dsh-msg-edit
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · chat
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 3 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

发起外部网络请求
查看扫描证据(共 1 处,展示前 1 条)
  • 发起网络请求
    client.js:114
    const rpc = (method, args) => fetch(`/api/msg-edit/${method}`, {
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

README

由 DeepSeek 最新模型翻译生成
dsh-msg-edit · 历史消息编辑插件 给 DeepSeek Harness Web 的聊天记录加上「修改」能力:改自己的提问、改 AI 的思考与回复,并且可以选择改完是否重新生成。 An unofficial plugin for DeepSeek Harness Web: edit past user messages and assistant replies/reasoning in place, with an option to regenerate. 消息右下角的修改按钮 功能 | 对象 | 操作 | 说明 | | 用户消息 | 右下角 铅笔按钮 → 编辑器 | 提供「仅保存修改」与「保存并重新生成」两种方式 | | 用户消息 | 保存并重新生成 | 改写模型看到的历史,并从这条消息重新回答;旧回答折叠隐藏,原始日志保留 | | 用户消息 | 仅保存修改 | 只改写这一条消息,保留后面的回答 | | 助手回复 | 修改这条回复 | 直接改写正文 + 思考过程;仅对最后一条可见回复开放 | | 助手回复 | 重新生成回复 | 从该回复所属的真实提问重新生成;适用于较早的回复 | 历史用户消息编辑器 改过的消息会带「已修改」标记,鼠标悬停可看原文;刷新页面后依然生效。
展开完整文档(README 剩余 1 节)
dsh-msg-edit · 历史消息编辑插件

给 DeepSeek Harness Web 的聊天记录加上「修改」能力:改自己的提问、改 AI 的思考与回复,并且可以选择改完是否重新生成。

An unofficial plugin for DeepSeek Harness Web: edit past user messages and assistant replies/reasoning in place, with an option to regenerate.

消息右下角的修改按钮

功能

| 对象 | 操作 | 说明 |
| 用户消息 | 右下角 铅笔按钮 → 编辑器 | 提供「仅保存修改」与「保存并重新生成」两种方式 |
| 用户消息 | 保存并重新生成 | 改写模型看到的历史,并从这条消息重新回答;旧回答折叠隐藏,原始日志保留 |
| 用户消息 | 仅保存修改 | 只改写这一条消息,保留后面的回答 |
| 助手回复 | 修改这条回复 | 直接改写正文 + 思考过程;仅对最后一条可见回复开放 |
| 助手回复 | 重新生成回复 | 从该回复所属的真实提问重新生成;适用于较早的回复 |

历史用户消息编辑器

改过的消息会带「已修改」标记,鼠标悬停可看原文;刷新页面后依然生效。

兼容性

- 已在 @deepseek-ai/dsh 0.2.1-rc.5(Web profile)上实测:Host 接口在线、Client 半加载、按钮与编辑器可用(2026-11-01)。
- 插件依赖官方的 Slot 名称(conversation.chat.node / chat.reasoning.body / chat.assistant-actions)与会话 surface 机制;DSH 大版本升级后可能需要适配。

安装

本插件以本地 bundle 的形式安装到 web profile(包名 @local/dsh-msg-edit)。

git clone https://github.com/capooai/dsh-msg-edit.git
dsh plugin --profile web add /absolute/path/to/dsh-msg-edit

也可以在支持插件管理器的环境里用 plugin_manager 的 install_bundle,目标指向本仓库目录。

安装完成后刷新浏览器页面:

- Host 半(index.js)改动后,需要重新启用一次 bundle 或重启 dsh web 才会加载新代码;
- Client 半(client.js)改动在开启 client HMR 时热更新。

卸载:

dsh plugin --profile web remove @local/dsh-msg-edit

使用

修改用户消息

1. 把鼠标移到任意历史用户消息上,点击气泡右下角的铅笔按钮;
2. 在编辑器里改写正文;
3. 选择其中一种:

| 按钮 | 效果 |
| 保存并重新生成 | 把这条消息之后的模型可见历史替换掉,并从这条消息重新回答(旧回答在界面上折叠隐藏,日志不删) |
| 仅保存修改 | 只替换这条消息本身,后面的回答原样保留 |
| 取消 | 不改动任何内容 |

修改助手回复

- 操作条上的 修改这条回复 可以同时改「思考过程 + 正文」,但只对最后一条可见回复开放;
- 较早的回复请用 重新生成回复,它会从该回复对应的真实提问重新生成。

工作原理

DSH 的会话日志是 append-only 的,插件并不改写历史日志,而是追加官方的 surface replace 操作:

- 用户消息编辑:追加一条 user/message replace 副本(surfaceOp: { op: 'replace', startSeq, endSeq }),模型看到的是新表面,原始事件仍在日志里;
- 重新生成:replace 会遮蔽该用户消息之后的所有模型可见节点,再追加一条零宽 continuation 用户消息来唤醒下一轮生成(Client 把这一行隐藏);
- 助手回复改写:运行时不允许 assistant/message 的 replace 副本携带 sourceEventSeqs,因此改用「空 developer 消息遮蔽旧节点 + 在尾部 append 改写后的 assistant 消息」实现;
- tokenMeter 补丁:为了让 replay 接受「没有配对 step/start 的 append assistant 消息」,插件对 tokenMeter._foldEvent 做了最小包装,只在事件本身缺少配对时临时提供该事件自己的 turn/step。

HTTP 接口

插件挂载在 Host 的 /api/msg-edit/ 下,全部为 POST + JSON:

| 路径 | 请求体 | 作用 |
| /api/msg-edit/get-user | { sessionId, seq, messageId? } | 读取当前表面上的用户消息 |
| /api/msg-edit/get-message | { sessionId, seq, messageId? } | 读取当前表面上的助手消息(正文 + 思考) |
| /api/msg-edit/edit-user | { sessionId, seq, text, mode: "regenerate" \| "direct" } | 修改用户消息,重新生成或仅保存 |
| /api/msg-edit/rewrite-message | { sessionId, seq, text?, reasoning? } | 改写最后一条助手回复 |
| /api/msg-edit/regenerate | { sessionId, seq, messageId? } | 从对应提问重新生成答复 |
| /api/msg-edit/edits | { sessionId } | 列出该会话内已记录的编辑 |

交互日志(Client 侧错误诊断)会记录在 Host 内存里,通过 /api/msg-edit/logs 读取。

目录结构

| 文件 | 作用 |
| index.js | Host 插件:/api/msg-edit/ 接口、surface replace、重新生成唤醒 |
| client.js | Client 插件:消息操作按钮、编辑器、编辑结果投影、旧轮次隐藏 |
| cordis.patch.yml | Host 行(msg-edit-host);浏览器半通过 package.json 的 dsh.client 自动发现 |
| locale/*.json | 插件管理器列表中的标题与说明 |
| icon.svg | 插件图标 |
| docs/ | 截图 |

已知限制

- 助手回复的直接改写只支持最后一条可见回复;更早的回复请使用「重新生成回复」。
- 「保存并重新生成」会遮蔽该消息之后的所有模型可见节点:界面上旧轮次被隐藏,日志保留但不再进入模型上下文。
- 卸载插件不会自动撤销 tokenMeter 的运行时补丁(补丁只在事件缺少配对 step/start 时生效)。
- 接口没有额外的权限校验:任何能访问该 dsh web 实例的人都能调用这些编辑接口。不要把 DSH Web 暴露到不可信网络。
- Client 半是 web 平台插件,非 web(如 headless / SDK)profile 不会渲染按钮。

开发与验证

Host 侧类型检查(本仓库只有两个运行时 JS 文件,无构建步骤)
node --check index.js
node --check client.js

改完代码后的生效方式:

- Client 半:在 dsh web 开启 client HMR 时自动热更新,否则刷新页面;
- Host 半:重新启用一次 bundle,或重启 dsh web。

验证建议:打开一个有历史消息的会话 → 检查用户消息右下角铅笔 → 打开编辑器确认三个按钮 → 在副本会话里做一次编辑并刷新,确认「已修改」标记与旧轮次折叠都正确。

License

MIT © capooai

本项目是个人开发的非官方插件,与 DeepSeek 官方无关。
预览分享卡片长什么样 ↓capooai/dsh-msg-edit
分享 · DeepSeek Harness Hub
capooai/dsh-msg-edit

改写历史提问与回复,可选是否重新生成

这是你的仓库?认领条目

回到顶部