目录

v0.5.26:跨机器的 Git 同步,以及 DSH 0.2.1 上的记忆子 Agent

在 GitHub 上查看源文件

本补丁版本发布 #335 与 #357。

  • Git 仓库同步(#335)。存储下新增一个开关,可以把记忆发布到你自己的 Git 仓库,并在另一台机器上恢复。它默认关闭:打开之前,这一行只显示标题与开关,也不会执行任何 Git 命令。
    • 通过 OAuth 设备码流程用 GitHub 登录,再选择或新建一个仓库。令牌保存在 DSH 的凭据服务中,只提供给 https://github.com 上的仓库;其他托管平台可以使用可选的 token 字段。
    • 推送与拉取都需要确认,也都要求 writeEnabled,并且与 ZIP 备份走同一套校验与导入。推送前会先合并分支上已有的内容;每次导出都会记录删除,因此较旧的副本不会把删掉的记忆带回来。
    • 自动备份按 1 小时到 7 天的间隔重复推送,默认关闭。
    • 备份列出分支历史中每台机器的推送;检查远端逐条比较分支与本机的记忆。
    • 整理记忆让模型给出合并方案,并记录下来等待审查。只有你接受方案后才会执行,而且可以逐条操作执行。
    • 同步内容就是 Mnemon Pack,只包含记忆内容。ZIP 备份不变,安全导入仍然只新增。
  • DSH 0.2.1-alpha.2 上的记忆子 Agent(#357,issue #356)。DSH 0.2.1-alpha.2 移除了 subagents.start,于是每个记忆子 Agent 在上面都会报 this.subagents.start is not a function,包括 USER.md 或 MEMORY.md 写满后的写入、空闲审查、存入记忆、项目档案归档等委派任务。
    • 现在 DSH 提供 startActivation 时用它启动,在 DSH 0.2.0 上仍用 start。
    • 结果只回到 Mnemon,所以对话不会收到完成通知;取消时也像以前一样会停止子 Agent。
  • 严格读取运行时记忆条目(#335)。运行时记忆只保留 Host 写在条目上的来源与分支范围。memories.json 或 Mnemon Pack 中格式错误的 branches 会被当作没有范围,而不会让运行时投影出错。Git 分支探测会忽略启动器导出的 GIT_* 环境变量。

升级与兼容性

从 v0.5.22 可使用记忆系统 → 状态 → 检查版本 → 更新,完成后重启 DSH。命令行安装或更新到精确版本:

sh
dsh plugin --profile web add dsh-mnemon@0.5.26

安装后重启正在运行的 DSH;新安装可在插件页选择立即启用。明确指定版本可避免 pnpm 发布后 24 小时的等待窗口选中较早的版本。较早的桌面安装升级方式见兼容性与升级。

支持的宿主为 DSH 0.2.0-rc.2(npm latest 与 next),记忆子 Agent 另在 DSH 0.2.1-alpha.2(npm alpha)上验证。完整 Profile 使用 Node ^22.19.0 || >=24.0.0。

无需迁移已有记忆。只有在打开并使用 Git 同步之后,才会写入 state/sync-git.json 和 state/sync/git 下可丢弃的镜像。不新增 Starter SDK 导出,插件 peer 下限不变。

变更的包

包 原版本 新版本
dsh-mnemon 0.5.25 0.5.26
dsh-mnemon-source-runtime 0.5.13 0.5.14

Starter 精确锁定运行时记忆的新版本,其余 16 个组件版本不变,外部依赖的锁定版本也保持不变。

验证

版本化发布验收在 DSH 0.2.0-rc.2 与 0.2.1-alpha.2 上通过添加插件安装发布包。各项改动另有记录:

发布流水线在创建 GitHub Release 前验证完整的锁定组合、Registry 安装与真实升级。

上一版本:v0.5.25。