撤回最后一条消息,对话与文件同步回退
29.9/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/21 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Zok66/dsh-recall该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · other
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 12 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
dsh 撤回插件:只撤最后一条用户消息,对话与工作区文件一起回退
README
由 DeepSeek 最新模型翻译生成dsh-recall
DSH 的「撤回」插件:只撤最后一条用户消息,把对话与工作区文件一起回退到这一轮开始前,并生成一个新的干净分支会话。
功能
- 最后一条用户消息的动作条上会出现一个回旋箭头「撤回」按钮。
- 点击后弹窗确认,然后:
1. 生成一个不含这条消息及之后内容的新分支会话,原文与附件回到新会话输入框,可改动后重发。
2. 工作区里这一轮被 AI 改动过的文件还原、本轮新增的文件删除(基于每轮开始前的快照)。
3. 原会话保留在会话列表中可回看,不会被删除。
- 只允许撤最后一条用户消息;更早的消息用框架自带的「分支」。
- 撤回按钮即时跟随最后一条消息:发出新消息后自动移挂,无需重进会话刷新。
安装
dsh plugin --profile web add https://github.com/Zok66/dsh-recall
装完手动重启 dsh web(或刷新页面)即生效。
确认方式:grep -i recall ~/.dsh/dsh-web.log | tail,看到 [recall] 已启用…、[recall] 附件读取路由已注册… 等字样即成功。
更新
DSH 目前没有插件原地更新能力,「检查更新」会报 PLUGIN_MANAGER_EXIT_1 卡死。
展开完整文档(README 剩余 1 节)
dsh-recall DSH 的「撤回」插件:只撤最后一条用户消息,把对话与工作区文件一起回退到这一轮开始前,并生成一个新的干净分支会话。 功能 - 最后一条用户消息的动作条上会出现一个回旋箭头「撤回」按钮。 - 点击后弹窗确认,然后: 1. 生成一个不含这条消息及之后内容的新分支会话,原文与附件回到新会话输入框,可改动后重发。 2. 工作区里这一轮被 AI 改动过的文件还原、本轮新增的文件删除(基于每轮开始前的快照)。 3. 原会话保留在会话列表中可回看,不会被删除。 - 只允许撤最后一条用户消息;更早的消息用框架自带的「分支」。 - 撤回按钮即时跟随最后一条消息:发出新消息后自动移挂,无需重进会话刷新。 安装 dsh plugin --profile web add https://github.com/Zok66/dsh-recall 装完手动重启 dsh web(或刷新页面)即生效。 确认方式:grep -i recall ~/.dsh/dsh-web.log | tail,看到 [recall] 已启用…、[recall] 附件读取路由已注册… 等字样即成功。 更新 DSH 目前没有插件原地更新能力,「检查更新」会报 PLUGIN_MANAGER_EXIT_1 卡死。更新请直接卸载重装: node <插件目录>/lib/uninstall.js # ① 还原前端补丁 dsh plugin --profile web remove dsh-recall # ② 摘掉旧插件 dsh plugin --profile web add https://github.com/Zok66/dsh-recall # ③ 装最新版 跑完手动重启 dsh web(或刷新页面)生效。 <插件目录> 一般是 ~/.dsh/profiles/web/node_modules/dsh-recall;其他 profile 把 web 换成对应名字。 卸载 node <插件目录>/lib/uninstall.js # ① 还原前端补丁(移除撤回按钮) dsh plugin --profile web remove dsh-recall # ② 摘掉插件本身 撤回按钮通过改写 dsh-client-ui-chat/lib/client.js 注入,remove 不会自动还原被改的前端文件,所以必须先跑 ①。uninstall.js 会先校验「备份 + 补丁 = 当前文件」才还原,防 DSH 升级后用旧备份降级前端;还原前另存当前版本,可反悔。支持 --status / --dry-run。 顺带清掉快照(可选):rm -rf ~/.dsh/.recall-snapshots 撤回语义 本插件的「撤回」是分支 + 文件回退: - 对话:fork 一个新会话,从「被撤消息之前」开始,之前的对话保留;被撤消息及之后内容不在新会话里,原会话完整保留。 - 文件:每轮开始前对工作区做快照,撤回时按快照还原被改文件、删除本轮新增文件。 适用场景:发了一条消息、AI 改了一堆文件,后悔了,想「连话带文件一起回到这一轮之前」再重来。 文件还原只在点「撤回」按钮时触发,框架自带的「分支」不会回退文件。 注意事项 1. 撤回会动工作区文件,请在意的目录上谨慎使用。 2. 撤回是一次性的:还原后不保留「撤回的撤回」。 3. 超过 8MB 的文件不备份、无法恢复改动,但路径会登记进快照,保证不被误删。 4. 文件快照在 $DSH_HOME/.recall-snapshots/,单文件上限 8MB、单会话总计 512MB,超出从最旧轮次清理。 5. 撤回按钮通过补丁注入宿主前端,插件每次启动会自检补丁标记、被覆盖就自动补回;DSH 升级后按钮若消失,重启一次 DSH 即自动恢复。 6. 插件自身目录受保护:撤回时不会把插件自己的文件当成 AI 产物删掉。 7. 若撤回的是会话里唯一一条用户消息,无法在保留内容的同时移除它(新分支会空白),此时只把原文与附件放回当前输入框,不创建分支。 实现原理(给维护者) 撤回按钮通过 client-patch.js 改写宿主前端 dsh-client-ui-chat/lib/client.js 注入到用户消息动作条——这是被实测证明「点击一定有效」的方案。原因是宿主只给助手回复开放了 conversation.chat.assistant-actions 插槽,用户消息侧没有官方入口;v2.0~v2.1 尝试的官方插槽(位置在 AI 回复下)与 DOM 注入(App WebView 里点击无反应)都被否决,最终回到补丁方案。 代价是补丁改动框架文件,因此: - 插件每次启动自检补丁标记(@@DSH_RECALL_PATCH_v9@@),被 DSH 的「环境安装与修复」覆盖后会自动补回; - 卸载前必须跑 lib/uninstall.js,用 .orig-recall 基线还原前端(带校验防降级)。 附件回填走两条通道:图片用会话自带 session.readAttachment;普通文件由主机侧路由 /api/recall.attachment 流式读回字节后组装成 File 放回输入框。文件还原由撤回时显式 POST /api/recall.restore 触发,与框架「分支」共用 sessions.fork 但通过显式端点区分,避免点普通分支误回退文件。 目录结构 dsh-recall/ ├── package.json # 插件元信息 + dsh.bundle 声明 ├── cordis.patch.yml # bundle 挂载声明 ├── README.md └── lib/ ├── index.js # 主机入口:补丁自愈 + 快照 + 撤回还原 ├── client-patch.js # 前端补丁注入(改写 client.js 加撤回按钮) ├── attachment-route.js # 附件读取 + 撤回还原 + 自检路由 ├── snapshot-store.js # 工作区文件快照 / 还原核心 └── uninstall.js # 卸载时还原前端补丁 许可 MIT
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
Zok66/dsh-recall
撤回最后一条消息,对话与文件同步回退
相关插件 · 其他
模型破甲清洗YuJunZhiXue/dsh-purge
⚔️ DeepSeek Harness 网络安全红队工具dsh-purge
★ 14,822已汉化DeepSeek 客户端
73
逆向分析桥接Fanqi89/dsh-rea
REA(Reverse Engineer Anything)MCP 桥接,用来把 REA 逆向工具接入 DSH 插件
★ 51已汉化DSH
72
红队越狱测试套件Minglink/dsh-infinite-gen-5
DeepSeek v4.1 flash 逆向工具无限五代 求 Star 收藏 ⭐欢迎大家提交项目的改进
★ 3,759已汉化DSH
71.4
语音女友beiyege-01/dsh-voice-ai-girlfriend
语音 AI 女友Voice AI girlfriend for DeepSeek Harness:Whisper…
★ 718已汉化DSH
71.2
协同办公空间dream-num/univer-workspace
一个让人类与 AI Agent 共同创作、协作和审阅的开源 Office 工作空间。
★ 2,261已汉化DSH
70.7
破甲评测WoYun520/dsh-purge
在本机分离宿主拦截与模型拒绝,做受控红队评测
★ 199已汉化DSH
69.7