Howardzhangdqs/dsh-recap

Howardzhangdqs★ 1TypeScript最后同步: 2026-08-17

在 GitHub 打开

DSH recap plugin: distills every model request (turn:step) into one sentence, rendered inline in the conversation flow

README 摘要

dsh-recap DeepSeek Harness(DSH)的会话回顾总结插件:把 每一次模型请求(turn:step)新增的数据 总结成一句话,按时间顺序追加成一条「回顾链」——不必重放整个对话,即可看清这个会话做了什么。 设计要点: - 缓存友好的增量生成 。第 k 次总结请求的输入由三部分组成:固定的 system 指令+已有句子 1..k-1(逐字作为前缀)+本次新增数据 Δk。相邻两次请求的输入只在最新一句之后才开始不同,因此 除 Δk 外的输入几乎全部命中 provider 的前缀缓存 ;历史以已总结的句子形式进入提示词,输入长度每次调用仅增长约 40 token(若重放原始数据则约 640 token),长会话不会超出上下文窗口。 - 对 agent loop 零侵入 。捕获是 session/event 的只读监听;生成是与主循环并行的辅助 ctx.llm.stream 调用( purpose: 'recap' ,任何观察者均可据此过滤); 不向会话日志写入任何事件、不注入消息 ——持久化走插件自有文件( /.dsh/recap/sessions/ .jsonl )。 - 无思考生成 。总结调用默认 reasoningEffort: 'off' (DeepSeek 适配器映射为 thinking: disabled );不支持 off 的路由自动降级为 low ,并按路由记住该选择。 - 总结路由由用户指定 。设置页的 recap 分区可单独指定 provider 与 model——总结任务无需强模型,指定一个低成本模型即可;未指定时先跟随会话当前路由,再退到宿主默认模型。 界面 :S ] 坐标前缀的浅色卡片)穿插在对话流的工具调用节点之间" - 对话内联回顾行(独立运行,不依赖其他插件) :每句总结 穿插在模型回复之间 ——直接插在产生它的那次模型请求的全部内容(回复文本与工具调用行)之后,而不是集中列在轮末。某次请求的行未渲染(例如请求被中断)时,回退到同一 turn 内更早的请求行。默认 step-end 触发:请求结束后(约 1.5 秒防抖)即开始总结,结果在下一次轮询(2.5 秒间隔)内出现在对应位置;页面隐藏时轮询暂停。 - 设置页 :插件在 DSH 设置界面注册「会话回顾」分区,提供启用开关、总结间隔、provider、model 与思考等级,经插件自有的 /recap/api/settings 路由读写(DSH 的 settings RPC 不向配置客户端开放第三方命名空间),修改实时生效。provider/model 为级联下拉(数据来自 /recap/api/providers ,后者调用 ctx.llm.listProviders/listModels 并按 provider 缓存;列表加载失败时降级为手动输入)。 安…

在 GitHub 查看完整 README →
工具/开发cordisdeepseekdeepseek-harnessdshdsh-pluginagent

分类