v0.5.26:跨机器的 Git 同步,以及 DSH 0.2.1 上的记忆子 Agent
- Git 仓库同步(#335)。存储下新增一个开关,可以把记忆发布到你自己的 Git 仓库,并在另一台机器上恢复。它默认关闭:打开之前,这一行只显示标题与开关,也不会执行任何 Git 命令。
- 通过 OAuth 设备码流程用 GitHub 登录,再选择或新建一个仓库。令牌保存在 DSH 的凭据服务中,只提供给
https://github.com上的仓库;其他托管平台可以使用可选的 token 字段。 - 推送与拉取都需要确认,也都要求
writeEnabled,并且与 ZIP 备份走同一套校验与导入。推送前会先合并分支上已有的内容;每次导出都会记录删除,因此较旧的副本不会把删掉的记忆带回来。 - 自动备份按 1 小时到 7 天的间隔重复推送,默认关闭。
- 备份列出分支历史中每台机器的推送;检查远端逐条比较分支与本机的记忆。
- 整理记忆让模型给出合并方案,并记录下来等待审查。只有你接受方案后才会执行,而且可以逐条操作执行。
- 同步内容就是 Mnemon Pack,只包含记忆内容。ZIP 备份不变,安全导入仍然只新增。
- 通过 OAuth 设备码流程用 GitHub 登录,再选择或新建一个仓库。令牌保存在 DSH 的凭据服务中,只提供给
- 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。
- 现在 DSH 提供
- 严格读取运行时记忆条目(#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。