AEmbers/dsh-first-party--packages-recall-lite ↗★ 0
dsh-recall-lite
DSH 消息撤回(轻量第一方实现):工作区文件与对话历史一起回到那条消息之前,消息文本与附件放回输入框。相对上游 dsh-recall-plugin 的核心改动——启动期不再对所有历史工作目录做 eager 预热,改为用到哪个工作区才初始化哪个。 适合需要撤回消息、回填草稿,且希望减少启动期Shell预热开销的用户。
설치
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:AEmbers/dsh-first-party#d31a1cbb99af47662ae8dec24d474e7080fae574&path:packages/recall-lite配置
在 profile 的 cordis.patch.yml 里按 id: recall 重述整行即可覆盖(patch 按行
替换 config,不做深度合并):
- id: recall
name: 'dsh-recall-lite'
config:
warmup: 'lazy' # 默认。启动期零 shell;如需排查启动问题可切 'startup'
gcSnaps: 50 # 每积累多少条快照触发一次 git gc
gcHours: 24 # 距上次 gc 超过多少小时触发
maxFileBytes: 104857600
refillDraft: true # 撤回后把消息文本回填输入框
warmup 可选值:
'lazy'(默认)——启动期不起任何 shell,连 shell 探活轮询也省掉。工作区在 首次被用到时初始化。'startup'——完整保留上游 eager 行为,仅用于 A/B 对照实测。工作区数量 大时会显著拖慢启动。
非法值(拼错、空串、undefined)一律回落 'lazy'。
验证「预热确实已摘掉」
重启后查 host 日志,应出现:
[recall-lite] warmup=lazy:启动期不预热工作区,工作区将在首次使用时初始化
且启动阶段不应再出现大批 pwsh 子进程。