dsh-self-evolve
其他 活跃维护

dsh-self-evolve

CraZY222123/dsh-self-evolve

支持从用户历史会话中自主学习,可在每轮对话步骤自动注入符合Token预算的个人偏好摘要,提供/memory快捷指令、记忆工具与可调参数设置,实现个性化记忆的动态适配。

4
Stars 标星
0
Forks 分支
4
Watchers 关注
0
Open Issues
JavaScript
主要语言
MIT
开源协议
186 KB
仓库大小
1 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:CraZY222123/dsh-self-evolve
git clone https://github.com/CraZY222123/dsh-self-evolve.git
git clone git@github.com:CraZY222123/dsh-self-evolve.git
README.md master

dsh-self-evolve

让 DeepSeek Harness(DSH)越用越懂你的自进化记忆插件:从你自己的历史会话中学习习惯,
分层记忆 + token 预算 + 无感注入。日常使用完全隐形——没有横幅、没有弹窗;只有你主动
查看时(/memory 命令、memory 工具、设置页面板)它才可见。

话题:dsh-plugin | 许可证:MIT | 纯 JS,零构建,零外部依赖 | 版本:v0.7.3

它是什么

一个安装在 DSH 宿主上的记忆插件。它持续观察你的工作方式(对话、习惯、纠正、工具使用),
沉淀成结构化的"习惯档案",并在每次会话的提示词里按 token 预算注入最相关的偏好摘要——
让每个新会话都带着你的历史经验,从"工具"变成"伙伴"。

有什么用

痛点 解决方式
每次新会话"失忆",反复重述偏好 → 重复解释的 token 浪费 L0 偏好摘要按预算注入每步提示词,无需重述
跑偏→纠正→重做 → 纠错回合的 token 浪费 教训类记忆 + 相关性检索,首次交付更准
记忆越攒越多 → 上下文膨胀 → 模型变笨 固定预算 + 主动遗忘 + 档案收敛(上限 500 条)
学习需要反馈,但反馈会打扰 脚手架淡出:只确认新观察;成熟习惯静默生效

亮点

  • 三层记忆(L2/L1/L0):原始日志永不进提示词 → 结构化档案 → 每步注入的摘要,固定成本不随记忆增长
  • 无感注入:L0 按 token 预算(默认 600 字符)注入每一步系统提示词,随会话压缩自动重建
  • 相关性检索:memory 工具按当前任务主题取 Top-K,查完即弃,不残留上下文
  • 人脑学习机制:遗忘衰减、睡眠巩固、强化、情绪显著性(直教 = 永久条目)、脚手架淡出
  • token 经济学:挖掘/巩固纯代码实现(零 LLM 成本);记忆开销默认 < 2% 会话 token;/memory eval 显示账本
  • fail-silent:任何故障静默降级,绝不影响正常会话
  • 数据本地:全部数据在你的 $DSH_HOME/self-evolve/,无任何外发;可导出、可清空、删插件即完全移除
  • 设置面板:可视化档案管理——直教(可指定强度 1-9)、取消固定、编辑/删除、强度调整、待确认观察、知识缺口、旋钮配置、学习动态(最近 3 天/30 天/全部)
  • 状态栏可拖动:侧边栏底部的「自进化 · 运行中」状态栏可按住拖到页面任意位置(位置自动记忆,刷新后保持),浮动胶囊带「分析」与「↩ 回到侧边栏」;点击/拖动自动区分,不影响原有启停与分析弹窗
  • 一键归档闲置长会话:分析中心自动扫描闲置 >24h 且(新鲜输入>20万 或 缓存>5000万)的长会话并给出建议,点「归档闲置长会话」即用 DSH 原生归档机制批量隐藏(文件保留、可取消归档恢复),清理侧边栏

安装

前置要求

  • DSH ≥ 0.1.0-rc.6:依赖 sys.context(动态提示词注册)与 sessionPersistence(会话读取)等较新宿主 API,旧版本会静默不加载(无报错但 /memory 无反应)。
  • zstd:分析中心与 /memory mine 需要解压会话文件。安装:macOS brew install zstd / Ubuntu apt install zstd。缺失时仅这两项功能静默降级,其余正常。

步骤(全局生效:所有 DSH 模式自动可用)

  1. 将包放入加载解析根:

    cp -r dsh-self-evolve "$DSH_HOME/profiles/node_modules/"
  2. 把插件行追加到宿主组合补丁(参考 preset/plugin-row.yml):

    cat preset/plugin-row.yml >> "$DSH_HOME/profiles/web/cordis.patch.yml"   # 全局生效
  3. 重启 DSH(宿主组合在启动时加载)。

  4. 任意模式的新会话输入 /memory eval 确认生效;/memory mine 完成首次基线挖掘。

插件不发布任何服务,仅消费宿主能力,因此可安全置于宿主组合:所有模式(standard/code/minimal/cordis)与所有会话自动获得记忆能力,无需选择专门预设。

使用

命令(/memory)

子命令 作用
teach <习惯> [板块] [强度] 直教一条永久习惯(最高置信度,永不自动淘汰;强度 1-9 默认 5)
search <主题> 检索相关习惯
list [板块] 查看生效条目
confirm <id> 确认一条模型记录的待定观察
reload 从磁盘重载档案
consolidate 巩固:合并重复、衰减过期、淘汰低值
eval 档案 + token 账本仪表 + ROI 对比
log [天数] 学习时间线(直教/记录/确认/巩固/挖掘)
review 列出到期复核条目
gap <问题> / gaps 管理知识缺口清单
config <键> <值> 调整旋钮(见下)
mine [数量] 纯代码挖掘历史会话,产出纠错率/重复解释基线
export / clear yes 导出 / 清空全部档案

旋钮(/memory config 或设置面板)

键 默认 上限 作用
l0MaxChars 600 4000 L0 注入预算(字符)
searchLimit 5 100 相关性检索返回条数
mineLimit 20 200 基线挖掘的会话数
reviewBaseDays 3 365 间隔复核起始间隔(天)
autoConsolidateThreshold 5 100 会话结束自动巩固的待定阈值
confirmPerSession 1 10 每会话自然确认询问上限

模型工具(memory,模型自动调用,用户无感)

  • search(topic) — 按任务主题检索用户偏好
  • summary() — 当前生效偏好摘要(即 L0)
  • note(observation) — 静默记录一条观察,进入待定区

注意事项

  • 数据隐私:所有数据在 $DSH_HOME/self-evolve/{profile.json, ledger.jsonl},本地存储,无任何外发;插件只含"学习机制",不含任何个人数据——每个用户的档案都从自己的历史会话中独立习得。
  • 冷启动:刚安装时档案为空,插件需要一段时间积累观察才显效果;可用 /memory teach 直接注入你最在意的几条习惯加速。
  • 待确认观察:模型自动记录的观察会以自然语言浮现在 L0(每会话至多一次),你认可就用 /memory confirm 确认,不认可会自动淡出。
  • 主动遗忘:非永久条目 30 天未使用会降强度直至淘汰——这是防膨胀设计,不是丢记忆;永久条目(直教)永不淘汰。
  • 写盘安全:所有档案写入走原子写(tmp+rename)+ 串行临界区,进程崩溃不会损坏档案。

License

MIT