All plugins

DSH / BUNDLE / CLIENT-UI

dsh-recall-plugin

v2.4.5limbo947 / dsh-recall-plugin82b2344111

InstallableBundlesUI & client pluginsCommunity · Topic auto-analysisWeb UI

Overview

dsh-recall-plugin

在 DSH 中撤回自己发过的消息:工作区文件与对话历史一起回到那条消息发出之前,消息的文本与附件自动放回输入框,改完即可重发。文件走独立影子 git 快照(不碰项目自身的 git),对话走官方 sessions.fork,原会话归档可找回。

README / EN

Package documentation

Registry summary

在 DSH 中撤回自己发过的消息:工作区文件与对话历史一起回到那条消息发出之前,消息的文本与附件自动放回输入框,改完即可重发。文件走独立影子 git 快照(不碰项目自身的 git),对话走官方 sessions.fork,原会话归档可找回。

dsh.pub verifies the pinned bundle contract, runtime facts, and distribution semantics. The complete README remains in the source repository.

Read the full README on GitHub

LIMITATIONS

Known limitations

设计上接受的边界与尚未覆盖的极端情形,使用前值得先确认。 - 快照在**消息发送时**创建,插件启用前的历史消息没有快照,不显示撤回按钮。 - 快照是**尽力捕获**:从收到消息到 `git add` 之间有约 0.5–1.5 秒窗口(Windows 上仅一次 PowerShell 启动就占约 0.4 秒)。秒级完成的琐碎任务若在这个窗口内改完文件,该快照会连带捕获本轮改动——撤回时文件回退成为空操作(预览面板显示「共 0 个文件将变更」),对话回退不受影响。 - 会话第一条用户消息无法回退对话(仅文件回退),因为 fork 需要更早的 turn 边界。 - 目标工作区的 agent 正在运行时无法发起撤回(防护设计,先停止 agent 再撤回)。 - 支持 Windows(PowerShell 5.1/7 + git CLI)与 Linux/macOS(bash + git CLI)。Windows 真机验证充分;Linux 已在 WSL2(Ubuntu 26.04,bash 5.3 + git 2.53)实测全流程(含中文路径、home 降级、会话清理、gc);macOS 侧脚本按 bash 3.2 兼容编写,尚未真机实测。 - 工作区内嵌套的其他 git 仓库(子目录自带 `.git`)无法索引:快照对其余部分照常(fail-open,页面会提示跳过了哪些路径),但其内容不参与回退。 - 文件名含换行/TAB 的极端情形不在 diff 清单的解析能力内(概率可忽略)。 - **与 dsh-routing-suite(渐进式工具披露路由)的交互**:若同时启用 dsh-routing-suite 的 router-standard 预设,撤回会经 `sessions.fork` 出新会话,导致路由阶段重置为默认(工具面临时收窄)。现象、成因与解决方案见 [docs/routing-interplay.md](docs/routing-interplay.md)。