DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

liuhuishang /

liuhuishang/dsh-five-session-evolution

Verified

每五次项目会话结束自动复盘,积累可追溯经验与工作流候选。Evidence-backed project memory and workflow drafts for DeepSeek Harness.

★ 1 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@13574cce

五会话自进化 · Five-session Evolution

English · MIT · DeepSeek Harness 插件

让项目经验积累下来:每五个不同的项目会话结束后,自动复盘一次,提炼有来源的经验与工作流候选,在后续会话中带入项目记忆。

适合长期维护代码、反复调试、文档生产和其他有重复流程的项目。学习结果保存在 DSH 自己的持久存储中,按工作目录隔离;使用当前 DSH 默认模型,无需另配记忆服务账户。

工作方式

同一项目的 5 个不同会话结束
  → 持久队列
  → 独立、无工具的复盘 Agent
  → JSON 校验与来源检查
  → 项目经验 + 工作流候选 + 复盘记录
  → 后续会话自动获得项目经验
  • 默认每 5 个不同的根会话组成一批,可配置为 2–20 个。
  • 同一会话 ID 只计一次;恢复后再次关闭,计数保持原值。
  • 子 Agent、插件自身复盘会话,以及标记为 automation / subagent / goal 的自动会话跳过。
  • 每条经验和每个工作流候选必须引用本批至少两个不同的会话 ID。插件校验来源 ID 和结果结构;事实正确性仍需结合当前项目核对。
  • 有新证据时,同名主题经验与同名候选更新;默认保留最近 30 条经验、20 个候选和 100 次复盘记录。
  • 待处理批次跨重启保留。失败按 60 秒、120 秒退避,默认第 3 次失败后暂停该项目的队首批次,等待手动重试。
  • 同一个 DSH Host 内,复盘按顺序执行。成功结果与批次出队在同一持久记录中提交,避免重复应用学习结果。

这是运行层的经验积累与流程提炼,模型权重保持原样。工作流候选以草稿记录保存,安装和执行由用户决定;项目源代码、既有技能和宿主提示词由原有流程管理。

安装与兼容性

初版面向 DSH 0.2.1-rc.5、Node.js 22+。依赖 DSH 的 Agent、模型、预设、工具和 storageDomain 服务。插件包自带组合补丁,启用后挂载一个 Host 插件行。

在 DSH 的插件管理中使用“从包 / URL 安装”,填写 v0.1.0 安装包 URL:

https://github.com/liuhuishang/dsh-five-session-evolution/releases/download/v0.1.0/dsh-five-session-evolution-0.1.0.tgz

GitHub 仓库 · Release 安装包

支持自定义 Discover 源的客户端,可在插件管理 → 发现 / Discover → 添加索引源中填入:

https://raw.githubusercontent.com/liuhuishang/dsh-five-session-evolution/main/market-index.json

刷新后搜索 五会话自进化 / Five-session Evolution。索引使用固定 40 位 Git 提交;添加此源后即可发现,社区市场的公共目录收录另行审核。请以你的客户端支持的安装来源为准。安装后检查 five-session-evolution 插件行已启用,使用下方状态工具确认加载。

市场维护流程见 PUBLISHING.md。

什么算一次“会话结束”

本插件订阅 DSH 的根 Agent agent/disposed 生命周期。关闭、切换或清空会话是否触发计数,取决于当前客户端是否真正销毁该 Agent。一条回答结束、一个 turn 结束、界面暂时闲置,都不等于一次会话结束。

会话需要包含非空用户文本,并至少出现过一个 turn/end。失败或中断过的会话也可进入复盘,以便记录教训。新建空白会话跳过。计数从启用插件后实际观察到的结束事件开始,历史存档保持原样。

去重依据是项目目录和会话 ID。移动项目目录会形成新的记忆分区;符号链接路径可能形成不同分区。进程被强制终止时,尚未来得及持久化的结束事件可能丢失。推荐让 DSH 正常结束会话。

配置

在已安装插件行的 config 中调整:

batchSize: 5
injectMemory: true
timeoutMs: 300000
maxSessionChars: 12000
maxMemories: 30
maxCandidates: 20
maxAttempts: 3
provider: ''
model: ''
字段 默认值 含义
batchSize 5 每批会话数,2–20;建议在批次处理完后调整
injectMemory true 向根会话动态带入该项目的经验,最多约 10,000 个 JSON 字符
timeoutMs 300000 单次复盘截止时间,覆盖创建、初始化及模型轮次,10 秒至 30 分钟
maxSessionChars 12000 每个会话保留的末尾对话文本字符数,1,000–40,000
maxMemories 30 经验数量上限,1–100
maxCandidates 20 候选数量上限,1–100
maxAttempts 3 自动尝试次数,1–10
provider / model 空 两者都空则跟随当前 DSH 默认模型;固定模型时两者一起填写

切换配置保留已入队批次的原始成员。单项目最多保留 100,000 个已计数会话的哈希和 100 个待复盘批次;达到容量时停止新批次准入并记录警告,避免静默丢弃去重信息。

查看结果与重试

插件注册两个工具,可以直接对 DSH 说:

  • “调用 evolution_status,显示这个项目的自进化进度和经验。”
  • “调用 evolution_retry,重试这个项目最早的失败批次。”

evolution_status 返回计数、待满批数量、队列、经验、工作流候选、复盘摘要和最近错误,省略保留的对话正文。evolution_retry 重置队首批次的尝试次数并排队,运行时会消耗所选模型的 tokens。

经验通过动态系统提示段提供给后续根会话,并保留来源 ID。它们是可核查、可过时的参考资料;工作流候选可通过状态工具读取,再按项目的技能开发流程进行评估和安装。

数据与模型调用

  • 持久记录位于 DSH storageDomain 的 five_session_evolution domain、workspaces 表中,物理位置由宿主存储配置决定。
  • 本插件额外保留每个待处理会话的用户/助手文本摘录、会话 ID、时间与预设名;原始工具输出、隐藏推理和图片跳过。对话里的个人资料仍可能出现在摘录中。
  • 提交前按常见令牌、Authorization、密码字段和私钥格式做尽力脱敏;格式之外的敏感文本仍可能保留。
  • 复盘会把这一批摘录和已有经验发送到所选 DSH 模型提供方,并产生模型费用。它通常是一次模型轮次,实际请求量取决于提供方重试和错误重试。
  • 成功提交后,本插件记录移除该批摘录;DSH 原有的会话日志、复盘 Agent 日志和备份仍由宿主保留策略管理。
  • 复盘 Agent 隐藏工具 schema 并阻止工具执行;插件只接受经校验的结构化结果,并负责写入自己的 domain。
  • 适用于一个写入 Host 管理同一存储;多个进程并发写同一后端尚未验证。卸载会停止后台任务并释放 domain,持久数据由宿主存储管理。

开发与验证

在与目标 DSH 版本匹配的开发环境中安装依赖,然后执行:

npm run check
npm test
npm pack --dry-run

测试覆盖第五次结束触发、去重、项目隔离、持久队列恢复、失败保留、来源校验、工具隔离,以及真实 Cordis 的插件加载和卸载。模型返回使用固定测试数据;实际模型联网和真实桌面完整流程需在安装后验收。

发布脚本、索引与社区提交步骤见 PUBLISHING.md。

—/ 5

No ratings yet

Verified DSH bundle

Commit 13574ccea8aa

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout