← 返回首页
Release history · public

版本与更新日志

当前版本号和每一次公开版本的变化都在这里。详细条目优先来自核心仓库 CHANGELOG.md;历史上只有 Git tag、没有独立 CHANGELOG 条目的版本,会明确标成“Git tag 补全”,内容只取该 tag 区间的提交标题。

当前公开预发布 · npm @next
0.1.0-alpha.31.2
2026-07-21 · 9 条正式记录 · 共收录 30 个版本
说明:版本发布不等于已运行的本地 frozen runtime 自动切换。已有安装仍需执行 npx ihow-memory@next upgrade 并重启对应 Agent;升级器损坏时使用 rescue
0.1.0-alpha.31.2 2026-07-21 正式 CHANGELOG 9 条

本版记录:修复 3 条、变更 2 条、新增 1 条、说明 3 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • 升级安全的原生钩子。 冻结运行时刷新成功后,现在会记录已验证的 Claude Code/Codex 激活代次,而不会重写已经有效的宿主钩子文件,防止软件包更新导致 doctor 降级为 ACTIVATION_WIRING_GENERATION_UNCONFIRMED。缺失的钩子仍保持缺失,原有的损坏或含糊钩子配置不会被覆盖。
  • 定向修复过期注册。 upgrade --runtime <name> 现在会备份所选运行时的现有 MCP 注册,并将其协调到升级后的工作区。当旧注册指向已删除或已移动的工作区时,这为 OpenCode 和其他运行时提供了有界恢复路径,同时不会自动连接所有检测到的应用程序。
  • 帮助路径配置隔离。 子命令帮助回归测试现在还会逐字节保护一个哨兵 OpenCode 配置,并证明不会创建 help-probe 工作区。

  • 稳定的原生钩子引导程序。 面向钩子的 dist/cli.js / 工作区 .runtime/cli.js 现在是字节稳定的启动器,而发布实现字节位于 cli-runtime.js 中。现有 alpha.31.1 安装在首次升级时只刷新一次激活证据,不会重写正确的钩子文件;后续仅涉及实现的升级会保持钩子配置和激活代次不变。
  • 双代激活。 运行时替换仍会先暂存新代次并进行完整性检查,然后再以原子方式交换 .runtime / .runtime.previous。如果 MCP 探测失败,系统会恢复完全一致的上一代自验证运行时,而不会留下部分激活的软件包。

  • 带外救援命令。 npx ihow-memory@next rescue 会通过新下载的 npm 软件包强制安装并探测工作区运行时;--runtime <name> 还会备份并修复所选宿主的注册。此路径不依赖现有冻结 CLI 的健康状态。

  • npm next 是软件包可用性的事实来源。仅完成发布不会替换已经冻结的运行时,也不能证明实时激活成功;现有安装必须运行 upgrade 并重启受影响的宿主,而更新程序损坏时,可以通过全新的软件包调用使用 rescue
  • 自动注册修复仍是显式操作,且严格限定于 --runtime <name>;本版本不会覆盖缺失、损坏、含糊或由用户管理的 Hook 配置,也不会自动连接所有检测到的应用程序。
  • Safe Memory Gardener 仍然坚持审核优先,并且仅生成报告。本版本未增加权威记忆的自动重写、生产认证或完整的企业多租户身份验证/RBAC/管理功能。
0.1.0-alpha.31.1 2026-07-20 正式 CHANGELOG 7 条

本版记录:修复 4 条、说明 3 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • WorkBuddy 有效用户作用域。 用户级 MCP 设置现在会写入当前 WorkBuddy/CodeBuddy CLI 构建实际读取的 ~/.workbuddy/.mcp.json,同时保留现有服务器、备份原文件、使用原子替换、确保 dry-run 不产生更改,并在 JSON 格式错误时以故障关闭方式失败。连接器市场文件和 mcp-approvals.json 保持不变。
  • Codex 最小权限 MCP 审批。 设置过程现在仅为五个缺失的只读连续性工具(memory.statusmemory.continuememory.searchmemory.readmemory.context_probe)添加逐工具的 approval_mode = "approve"。现有的逐工具表——包括更严格的 promptdeny 策略及未知字段——仍具有最高权威性;写入、删除和治理工具绝不会被自动批准。
  • Codex 事务式修复。 在更改注册之前会先解析 TOML;如果审批编辑失败,系统会恢复字节完全一致的配置及原有 MCP 注册,然后通过官方 CLI 验证状态,之后才报告回滚成功。格式错误的 TOML 会以故障关闭方式失败,dry-run 仍不产生任何更改。
  • 自包含冻结运行时。 已锁定的 smol-toml 解析器子集连同其 BSD-3-Clause 许可证一并内置并复制到 dist 中,从而维持工作区冻结 .runtime 软件包和打包安装的零运行时依赖契约。

  • 这是一个 Alpha.31 运行时适配器补丁。它证明了文档所述的 MCP 工具路径和最小权限设置行为;并不声称每个宿主生命周期都是 ACTIVE。缺少已验证生命周期证据的宿主仍会由 doctor 报告为 TOOLS ONLYREADY — WAITING FOR FIRST ACTIVITYNEEDS REPAIR
  • npm next 是软件包可用性的事实来源。发布并不意味着运行时已经激活或获得生产认证,也不会自动替换已冻结的本地运行时;请单独运行 upgrade 并重启相关宿主。
  • Safe Memory Gardener 仍然坚持审核优先并且仅生成报告;此补丁未增加权威记忆的自动重写。团队云、租户隔离、身份验证、RBAC/SSO/SLA 以及广泛的生产用户浸泡测试仍不在已验证范围内。
0.1.0-alpha.31 2026-07-20 正式 CHANGELOG 13 条

本版记录:新增 6 条、变更 4 条、说明 3 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • Alpha.30 评估与审核优先基础。 延续 Alpha.30 的黄金训练/开发/留出数据集、确定性评估框架、故障关闭式记忆提案评估、时序实体召回校准和截止时间观察器稳定性修复。
  • 确定性的轮次证据。 新增内容绑定的轮次回执、持久输入证据、重放前置条件、旧版原子写入覆盖、检查点回执前置要求,以及 Hermes 轮次回执桥接。
  • 普通语言的受治理捕获。 针对普通对话新增有界的偏好/事实/事件/流程意图提取,并包含规范化、秘密筛查、来源追踪、审核优先治理和真实 Hermes 生命周期覆盖。
  • 经过测量的语义激活。 新增可复现的语义门控,以及基于真实 bge-m3 / 1024 维 Metal 的证据,覆盖英文、中文、释义、无答案、新鲜度、隐私、重启身份、延迟、维度真实性、索引并发和回退行为。
  • 审核优先的周期性整理。 新增具有 TTL 和工作区锁定能力、幂等且与回执绑定的整理报告 tick,以及用于 PROPOSED → APPROVED / REJECTED / EXPIRED 的提案审核状态账本。这些只是审核/报告原语:不存在 APPLIED 状态,也不存在权威写入路径。
  • 受隐私边界约束的证据原语。 新增 Grounded Media 元数据证据和有界 Activity Ledger。Grounded Media 不存储原始附件内容,并且只报告 EQUAL_UNTRUSTED;Activity Ledger 会绑定转换意图、CAS、TTL、去重、容量和完整性证据,而 COMMITTED 并不表示任务成功。

  • Hermes 生命周期闭环。 收紧适配器路由别名、持久转录修订处理、检查点/回执关联、共享契约、故障开放式宿主隔离和插件 E2E 覆盖。
  • 规范测试隔离。 保持大多数文件并行运行,仅在全新低负载鉴定后串行处理对截止时间敏感的文件,并按可执行文件/argv 边界检测竞争运行器,而不是依据提示文本子串。
  • CLI 帮助安全性。 任何子命令的 --help / -h 都会在执行设置、升级、工作区、配置或运行时软件包写入之前退出。
  • 运行时回滚身份。 Alpha.31 要求上一软件包恢复绑定精确的完整性清单,而不能只信任版本相等。

  • Alpha.31 是建立在完整 Alpha.30 里程碑之上的本地发布就绪预发布版本。npm next 是软件包可用性的事实来源;发布并不意味着运行时已经激活或获得生产认证。
  • Safe Memory Gardener 仍然坚持审核优先。根据策略,自动连续整合目前仅生成报告:它可以识别重复、过期、冲突或替代候选项,但不会自动重写权威记忆。
  • 团队云、RBAC/SSO/SLA、完整的时序/实体图以及广泛的生产用户浸泡测试仍不在此候选版本的已验证范围内。
0.1.0-alpha.27.1 2026-07-15 正式 CHANGELOG 4 条

本版记录:修复 3 条、说明 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • 显式工作区优先级。 显式管理的 root 现在优先于环境中的 MEMORY_ROOT / IHOW_MEMORY_ROOT,防止嵌入式调用方和临时 fixture 被悄然重定向到现有共享记忆根目录。当两个选项同时提供时,显式 memoryRoot 仍具有最高权威性。
  • 密闭式测试执行。 测试运行器现在会向子进程传递环境副本,并从中移除环境中的记忆、Hermes 和 Codex 路由根目录。单元测试和真实子进程集成测试证明危险路由键确实不存在,同时不会修改父进程环境。
  • PreCompact 测试框架计时。 成功路径的父测试超时现在高于生产环境的 8 s 内部看门狗和 10 s 宿主时限,同时严格的 300 ms 故障开放路径和生产超时契约保持不变。

  • 此补丁更改了测试隔离和工作区选项优先级;它不会清理或重写任何现有共享记忆根目录。
0.1.0-alpha.27 2026-07-15 正式 CHANGELOG 11 条

本版记录:新增 6 条、变更 3 条、说明 2 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • Checkpoint Core。 可变的短期草稿现在会最终形成不可变、按哈希寻址的 CheckpointArtifactV1 JSON,具备确定性规范哈希、32 KiB 硬限制、显式省略计数、原子式禁止覆盖存储、去重/替代、工作区锁定、拒绝审计以及读取/列出/检查 API。声明和引擎收集的锚点仍是独立输入,秘密/schema/完整性失败会以故障关闭方式处理。
  • 原生 PreCompact 和崩溃底线恢复。 Claude Code 和 Codex 的原生 PreCompact 钩子会在 8 s 宿主故障开放看门狗的约束下,最终形成不含转录且有界的检查点;崩溃底线路径可将陈旧但有效的草稿恢复为有界的部分影子检查点。私有的内容绑定索引可避免无界扫描,并保持制品持久化的故障关闭特性。
  • 检查点优先的继续机制。 memory.continue 和 CLI 现在会优先选择完整检查点,其次是部分/影子检查点,最后才是转录和底线日志候选项;在重新计算实时机器锚点之前,检查点声明仍明确标记为 UNVERIFIED。
  • 保护状态。 status 会报告最新的完整、部分和底线证据,陈旧/更新的材料,有界或未知的最坏损失估计,降级的查找状态以及激活降级情况,同时不会抹除已验证的检查点证据。
  • 激活真实性。 本地仅追加证据账本和实时 Claude Code/Codex 钩子接线检查可以区分 ACTIVEREADY — WAITING FOR FIRST ACTIVITYTOOLS ONLYNEEDS REPAIR;静态能力、合成探测、仅启动事件以及格式错误/手工构造的载荷均不能算作实时激活。
  • Hermes 原生生命周期软件包。 npm 接口现在包含 Hermes Plugin(plugin.yaml__init__.py),以及用于有界生命周期召回/检查点分派的 ihow-memory-hermes-bridge 可执行文件。先前适配器通道的真实宿主证据仅表示为 HOST VERIFIED/READY;合并后的软件包无法独立认证为 ACTIVE,仍然仅达到本地发布就绪状态,并且尚未发布。

  • 验证优先的检查点加固。 相同 HEAD 下的 statusHash 漂移为 RED;缺少 statusHash 的检查点候选项会以故障关闭方式失败,而不能获得可信判定。Git 锚点收集会禁用由仓库控制的 textconvcore.fsmonitor 执行,同时保留规范状态哈希。
  • 钩子与运行时完整性。 Claude Code 和 Codex 钩子会使用工作区冻结的 .runtime/cli.js、规范工作区绑定、严格所有权协调、安全 argv 引用、第三方配置保留、带完整性戳的原子运行时刷新,以及替换失败时精确恢复官方 CLI 状态。
  • alpha.27 软件包准备。 本地软件包元数据已提升至 0.1.0-alpha.27,用于候选版本验证。

  • Alpha.27 已通过 v0.1.0-alpha.27 和 npm next dist-tag 发布。
  • 此 alpha 版本并不声称已获得生产认证;运行时支持仍限于文档所述的 alpha 和单机冒烟测试边界。
0.1.0-alpha.26 2026-07-11 正式 CHANGELOG 6 条

本版记录:新增 3 条、变更 1 条、说明 2 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • Recall Quality Gates v1。 新增审核优先、有界且受相关性门控的提示召回,并在 Claude 钩子、Codex/无钩子的 context_probe 以及召回预览/解释之间使用共享的故障关闭式选择器。已删除、不可读、格式错误、被过期重写以及被符号链接替换的来源均不会被注入。
  • 语义就绪度与基准测试真实性。 新增明确的词法回退/就绪度边界、可选的增量语义 RRF、测量底线门控,以及分别用于真实模型质量、中性释义提升和架构证明的机器/报告字段。真实模型结果仍只是特定于 fixture/模型/版本/路径的观测。
  • 运行时与设置一致性。 新增受保护的自动软事实行为、状态/行为绕过门控、新近性/替代折叠、安全的空解释诊断、Claude 官方 CLI 整体结果/幂等性处理,以及打包 CLI 的洁净室覆盖。

  • alpha.26 软件包准备。 本地软件包元数据已提升至 0.1.0-alpha.26,仅用于 RC 就绪;此变更不包含 tag、publish、push、release 或 deploy。

  • 默认检索引擎仍是本地零依赖 FTS5;语义 sidecar 为可选启用,并以增量方式工作。
  • 本版本不声称具有通用语义质量、生产认证,也不声称状态/行为启发式分类器已实现完整覆盖。
0.1.0-alpha.25 2026-07-08 正式 CHANGELOG 9 条

本版记录:新增 5 条、变更 1 条、说明 3 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • Safe Memory Gardener 的 Enterprise Gate Matrix v0。 新增确定性的本地测试和文档,覆盖项目、公开、私有、来源、仅审计、来源本地和来源共享边界。该矩阵检查整理/导出草稿是否保持在请求的作用域内、是否在导出前应用脱敏,以及整理/导出审计事件是否存在。
  • Blocked export fail-closed policy v0。 Markdown 导出现在会拒绝包含 blocked_itemsexport_safe:false 的草稿,而不是悄然输出部分或净化后的子集;同时记录可审计的拒绝元数据,包括 status:refusedreason:blocked_items_presentblockedItemsPolicy:fail-closed
  • Source Adapter Contract v0。 新增仅限本地 fixture 的来源适配器契约,用于验证和呈现由适配器生成文档中的来源通道 Markdown。它要求类型化的适配器/来源元数据,将可见性限制为 source-localsource-shared,要求 slug 作用域,在呈现前对内容脱敏,并将来源 fixture 保持在 Safe Memory Gardener 边界矩阵之内。
  • Audit completeness baseline v0。 新增对候选写入、提升、持久提升、日志追加、回滚、整理和导出事件的覆盖要求,从而可以依据仅追加审计数据重建治理操作,而不必只信任导出的制品。
  • Durable write dedupe/stale/supersede baseline v0。 写入/提升/持久提升接口现在会附加审核优先的策略元数据,用于记录正文指纹重复、自我标记为陈旧/已弃用的内容和可能的替代候选项;dry-run 计划会在写入前公开相同策略。

  • alpha.25 软件包准备。 本地软件包元数据已提升至 0.1.0-alpha.25,仅用于 RC 就绪;此变更不包含 tag、publish、push、release 或 deploy。

  • alpha.25 仍是 alpha 候选版本。这些是本地治理门控和类型化契约,而不是企业就绪的 RBAC/ABAC 产品。
  • 此版本中的来源适配器层仅限 fixture:不存在真实的 Feishu、Obsidian、ima 或其他外部适配器,不导入客户数据,也不读取外部凭据。
  • 持久记忆中的重复/陈旧/替代处理刻意限定为仅记录元数据/审计并坚持审核优先;它不会删除、合并、重写或悄然选择新的权威记忆。
0.1.0-alpha.24 2026-07-08 正式 CHANGELOG 4 条

本版记录:新增 2 条、变更 1 条、说明 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • Safe Memory Gardener RC 证明 fixture。 新增一个确定性、脱敏的企业风格 fixture,用来证明合成工作流事件流入候选/项目记忆状态,随后生成审核优先的整理草稿、证据关联摘要、经过脱敏检查的 Markdown/Obsidian 导出以及整理/导出审计事件。该 fixture 仅使用通用的 Project Orchard 内容,并避免客户数据、私有标识符、生产端点和硬编码的客户本体。
  • Safe Memory Gardener 用户文档。 新增 docs/safe-memory-gardener.md,并在 README/README.zh-CN 中加入 organizeexport-vault 的 CLI 参考,包括事实来源边界:导出的 Markdown 是查看/编辑制品,而不是权威记忆。

  • alpha.24 软件包准备。 本地软件包元数据已提升至 0.1.0-alpha.24,仅用于 RC 就绪;此变更不包含 tag、publish、push、release 或 deploy。

  • Safe Memory Gardener 仍是范围有限的 alpha MVP:以审核优先方式执行整理/导出,并包含安全检查和审计轨迹。它并不声称拥有完整的企业策略自动化能力,例如 RBAC/ABAC、命名空间泄漏矩阵、适配器框架、管理 UI 或持久保留自动化。
0.1.0-alpha.22 2026-07-05 正式 CHANGELOG 6 条

本版记录:新增 3 条、变更 3 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • 自动化可靠性完善。 新增 memory.context_probe,这是一个面向无钩子和部分钩子代理、与运行时无关的 MCP 触发器。它支持 session_startpromptsession_endtick 事件;记录仅追加的探测审计事件;更新新鲜度标记;并返回 verify_anchorsjournalnone 等明确操作,而不是假装每个运行时都具有原生生命周期钩子。
  • 经过审核的 context_probe(prompt) 提示召回。 提示探测现在可以返回有界的 <recalled-memory> 块,其中最多包含三个带引用的已审核/精选片段。该路径采用故障关闭方式:默认排除已标记条目、reviewed:falsetier:auto-promoted 以及日志/底线通道;空提示摘要不执行任何操作。
  • 自动化 doctor 矩阵与指标。 doctor --json 现在会报告 Claude Code、Codex、OpenClaw、Hermes 和通用无钩子运行时之间的自动化矩阵,以及从审计数据得出的探测指标,例如按运行时统计的探测调用、日志建议、探测→日志转化和底线捕获来源。

  • 明确无钩子运行时的写入边界。 WorkBuddy/OpenCode/Gemini 风格的运行时绝不会从 context_probe 收到 floor_journaledsession_end 会返回 action: "journal",因此代理必须显式调用 memory.journal 并提供协作式交接。自动底线写入仍仅保留给拥有可靠转录来源并使用现有脱敏/审计/回滚路径的运行时。
  • 无钩子连续性协议文档。 README 现在记录 alpha.22 连续性协议:在线程开始、收到继续类提示以及任务完成时调用 context_probe;忘记调用不会损坏记忆,但 doctor/指标可以揭示自动化实际上并未触发。
  • 测试框架契约文档。 新增 docs/harness-contract.md,用于 Planner / Generator / Evaluator 工作流:包括明确的角色矩阵、WorkBuddy/无钩子边界、审核包模板、运行账本内容和评估器停止条件。
0.1.0-alpha.21 2026-07-04 正式 CHANGELOG 2 条

本版记录:新增 1 条、变更 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • Codex 原生钩子对等支持。 setup --runtime codexconnect --runtime codex --easy / --yesinstall-hook --runtime codex 现在会将 Codex SessionStart + UserPromptSubmit 钩子安装到 ~/.codex/hooks.json,同时保留现有钩子并拒绝无效 JSON。SessionStart 会发出恢复感知指针,并在线程边界触发仅限 Codex 的确定性捕获底线扫描(仍受正常空闲门控保护,以免提前捕获活跃/暂停的会话);UserPromptSubmit 会运行与 Claude Code 相同的有界相关性门控召回路径。目前刻意不默认安装 Codex Stop,因为 Codex 将 Stop 定义为轮次作用域,因此将其视为会话结束还需要单独进行低噪声设计。

  • Codex 设置现在同时具备机制和策略。 Codex 会保留主动式 ~/.codex/AGENTS.md 记忆循环,用于执行继续/搜索/读取/写入/遗忘纪律,但不再只依赖说明:生命周期钩子提供了机械触发层。README 中的运行时支持/状态表述已更新,删除了过时的“Codex 缺少原生生命周期钩子”声明。
0.1.0-alpha.20 2026-07-02 Git tag 补全 5 条

本版记录:变更 4 条、说明 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • chore(release): 将版本提升至 0.1.0-alpha.20
  • fix(continue): 为首次运行的文档回退提供真实的来源归属
  • chore: 将 package-lock 版本同步至 0.1.0-alpha.19(版本提升提交中遗漏)
  • feat(memory): C4 单动作纠正——无需了解层级即可遗忘/记住

  • 此历史版本在核心 CHANGELOG 中没有专门章节。上述条目根据其 tag 区间内的提交主题生成,并已作相应标记。
0.1.0-alpha.19 2026-07-02 Git tag 补全 10 条

本版记录:变更 9 条、说明 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • chore(release): 将版本提升至 0.1.0-alpha.19
  • feat(governance): knob-2——中文治理标记以指令语气为锚点
  • feat(recall): C3 语义释义召回 + knob-1 意图感知状态界面
  • feat(recall): UX 优先的自动记忆——C1 默认自动化界面 + C2 无缝召回块
  • fix(recall): 修补 r-cjk-3 遗留常见二元词组(必须/相关 + 若是/随后/同样/其他/针对/根据/基于/默认/确认…)
  • fix(recall): 完整的 CJK 常用词拒绝列表消除 r-cjk-2 过度注入长尾问题
  • fix(recall): 消除 CJK 常见二元词组过度注入(red-team r-cjk-1)
  • chore(bench): 自动记忆召回质量测试框架 + CJK 门控探针(§9b 测量基础设施)
  • fix(recall): CJK 相关性门控使用二元词组(与 FTS 索引一致)——中文召回不再悄然失败

  • 此历史版本在核心 CHANGELOG 中没有专门章节。上述条目根据其 tag 区间内的提交主题生成,并已作相应标记。
0.1.0-alpha.18 2026-07-01 Git tag 补全 6 条

本版记录:变更 5 条、说明 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • release: alpha.18——可选启用的语义引擎(通过 red-team 门控)
  • fix(semantic): 标记校验要求与捆绑的 sidecar 路径完全一致(red-team r-alpha18-3)
  • fix(semantic): 处理 red-team r-alpha18-2(模型传播 + 标记绕过)
  • fix(semantic): 处理 OpenClaw red-team r-alpha18(1 个阻塞问题 + 2 个主要问题 + 1 个次要问题)
  • feat(semantic): 一条命令即可选择启用语义引擎(enable-semantic)[alpha.18, RED-TEAM GATED]

  • 此历史版本在核心 CHANGELOG 中没有专门章节。上述条目根据其 tag 区间内的提交主题生成,并已作相应标记。
0.1.0-alpha.17 2026-06-30 正式 CHANGELOG 4 条

本版记录:修复 1 条、新增 3 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • 新用户无法复制粘贴 Quickstart(发布阻塞问题)。 README §“60 秒完成治理式循环”代码块会报错:write-candidate 默认自动提升,因此 promote $CAND 会遇到 candidate_not_found$PROMOTED 返回空值,随后 read "" 解析到记忆根目录并产生晦涩的 EISDIR。该代码块现在传递 --no-auto-promote,以明确展示两阶段门控(与其说明一致);read 在路径为空/缺失时会返回清晰消息和非零退出码,而不是 EISDIRinit 会输出治理循环的下一步;status 会显示自动提升模式。由 tests/quickstart-governed-loop.test.mjs 锁定。

  • 默认引擎上的标准检索基准测试(LongMemEval-oracle,MIT)。 scripts/standard-bench.mjs 使用与仓库内基准测试相同的 write → promote → search 评分器,在默认零依赖 FTS5 引擎engine.id==='fts'cloud=falsemodel=null)上运行公开且采用 MIT 许可证的数据集(arXiv:2410.10813)。--download 会获取语料并进行 sha256 校验;内置的 N=8 切片可在 CI 中离线运行。全集结果:419 个可用实例/831 个会话文档上的 Recall@5 = 0.788、Recall@10 = 0.857、MRR = 0.651(全局语料检索——比逐实例 oracle 更难;recall_any@k;MRR 由我们计算,并非 LongMemEval 的 NDCG)。薄弱点(助手回答/偏好问题)仍保持可见。
  • Gemini CLI 和 Cline 的被动恢复读取器。 跨工具 continue 现在可以读取另外两个运行时的磁盘会话(被动方式——用于恢复/导入,而不是实时捕获;只有 Claude Code 拥有实时捕获钩子)。二者都通过共享会话路径路由,因此锁定的摘要器作用域和秘密脱敏与所有其他运行时完全一致。Gemini CLI 读取 ~/.gemini/tmp/*/logs.json(用户提示日志——Gemini 不会将助手轮次写入磁盘——因此交接内容为会话主题 + git 锚点;已使用真实本地数据验证)。Cline 从 VS Code 系列 globalStorage 和 ~/.cline/data 中读取 tasks/<id>/api_conversation_history.json,并从 environment_details 获取 cwd(有界发现——不会扫描整个主目录;已通过 fixture 测试)。Aider 被刻意推迟:它没有全局会话注册表,因此全局发现需要在会话启动热路径扫描 $HOME
  • 可选嵌入 sidecar 现在随 tarball 一同提供。 examples/ 不在 package.json 的 files[] 中,因此已发布的安装无法找到 sidecar;构建现在会将其复制到 dist/providers/dist/ 会被打包),并由 providerScriptPath() 解析器定位。sidecar 仍只会在显式选择启用时作为派生子进程启动——绝不会导入默认依赖图,因此默认引擎仍是零依赖 FTS5(capabilities.semantic = false)。红线测试禁止任何默认依赖图模块导入它。
0.1.0-alpha.16 2026-06-30 正式 CHANGELOG 2 条

本版记录:新增 2 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • 另外两个接收端运行时:VS Code(Copilot)和 Gemini CLI。 connect --runtime vscode 会写入用户级 VS Code mcp.jsonservers 键、type: "stdio" 条目;适用于 macOS/Linux/Windows 用户数据目录),connect --runtime gemini 会向 ~/.gemini/settings.json 添加 mcpServers 条目。与其他 JSON 运行时相同,二者都会备份现有配置,并拒绝覆盖无法解析的配置。它们只充当接收端——没有可供恢复读取的本地会话存储——但能够访问 memory.search / memory.read / memory.continue,因此可以获取由捕获端运行时记录的验证优先交接包。setup/connect --auto 现在能够检测它们(PATH 中存在 code / gemini,或存在其配置目录)。
  • 交接 schema 文档。 [docs/handoff-schema.md](./docs/handoff-schema.md) 正式规定验证优先的交接契约:机器锚点是唯一事实,叙述内容按原文携带且未经验证,GREEN/YELLOW/RED 判定由代码依据实时 git 计算得出(绝不会产生虚假的 GREEN)。
0.1.0-alpha.15 2026-06-30 Git tag 补全 3 条

本版记录:变更 2 条、说明 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • chore(release): v0.1.0-alpha.15——跨运行时捕获底线
  • feat(floor): 跨运行时确定性捕获底线(alpha.15)

  • 此历史版本在核心 CHANGELOG 中没有专门章节。上述条目根据其 tag 区间内的提交主题生成,并已作相应标记。
0.1.0-alpha.14 2026-06-29 正式 CHANGELOG 6 条

本版记录:变更 3 条、新增 2 条、修复 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • 加标签,不阻断。 被治理机制标记且未经验证的内容不再捕获失败:它会自动提升至持久的*黄色*层级(已验证/未验证/已标记),而不是继续留在被阻断的候选区。已标记条目会持久保存,并可按需查找,但绝不会自动召回,而且会从默认搜索中排除;只有由人工提升且经过引擎锚点验证的记忆才具有权威性。一次误判现在只会产生一个标签,而不会让捕获失败。
  • 更精准的治理分类器。 标记器不再扫描自动派生的 slug/标识符标题,因此名称类似文件的事实性交接(policy-…-root)不会再被误标;散文式标题或正文中的真实规则仍会触发标记。
  • 来源绑定。 command+exitCode 可以让条目持久化,但永远不具备召回资格;只有引擎依据实时 HEAD 验证过的 git 锚点才能获得自动召回资格,而且召回会信任仅追加事件日志,而不是可伪造的 front-matter。

  • promote 接受 candidateId,不再只接受候选文件路径。
  • 已标记条目的 TTL 到期机制——未经审核的已标记记忆会自动过期,避免人工审核积压悄然增长;会话结束钩子会显示等待审核的内容。

  • 修复了外部 red-team 对底线变更进行审核时发现的两个问题:装订在一起的 command+exitCode 可以掩盖伪造的 git 锚点(现在会被硬性拒绝);召回可能信任手写的 provenance_kind: anchor front-matter(召回现在与引擎事件日志绑定)。
0.1.0-alpha.13 2026-06-27 正式 CHANGELOG 5 条

本版记录:新增 3 条、变更 2 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • verify——可复现的自证回执。 覆盖本地存储、每个运行时的 MCP 可达性以及当前检出的 GREEN/YELLOW/RED 恢复判定,每一行都附带你可以自行重新运行的精确命令。任何往返验证失败都会以非零状态退出。无需信任,仅在本地运行。
  • benchmark——对验证优先保证进行确定性本地证明。 通过对抗性场景断言三色恢复判定能够真正区分状态(仅匹配的检出结果为 GREEN;HEAD 漂移 → RED;存在不确定性 → YELLOW),并断言“不得虚假标绿”的底线会阻止未经验证/包含秘密/常驻规则/伪造锚点的内容进入持久记忆。重新运行会得到相同结果;任何保证失败都会以非零状态退出——它无法对自身作出虚假的 GREEN 判定。
  • import——将现有记忆导入可搜索存储。 一条命令即可将你在其他位置编写的记忆(Claude Code 原生 MEMORY.md + 事实文件、ai-memory markdown,或任意 .md 笔记文件夹)导入低权重日志通道:默认为 dry-run,使用 --apply 才会写入;每个条目都可逆;拒绝秘密内容(正文标题);并通过搜索回刚写入的条目进行验证。--update 会让编辑后的事实替代旧事实,并将陈旧副本归档到索引外历史记录,而不是让两个相互矛盾的版本都可被搜索。

  • recall 现在默认开启——仅限已审核层级。 新提示现在默认会召回相关的先前记忆,但只注入 🟢 已审核(人工提升)的记忆,并受相关性门控(离题提示不会注入任何内容)且有界。每个注入条目都会标明信任层级——🟢 已审核与 🟡 自动(由机器依据来源进行门控,并显示判断依据,例如“引用 npm test exit 0”)。由机器判断的 🟡 自动层级仍需选择启用(IHOW_RECALL_INCLUDE_AUTO=1)。可使用 --no-recall 禁用,或在运行时设置 IHOW_RECALL_OFF=1。依据:一项带标签的召回质量评估测得已审核层级约 88% 有用/0 有害(离题提示未注入内容;陈旧条目被丢弃);自动层级约为 25%,因此需要选择启用。
  • tsc --noEmit 类型检查门控现已接入构建和 CI——它可以捕获仅转译构建可能悄然发布的“使用但未导入”死引用问题。
0.1.0-alpha.12 2026-06-25 正式 CHANGELOG 16 条

本版记录:修复 7 条、变更 3 条、加固(发布前复审后) 6 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • continue:GREEN 现在要求接收方位于自身的检出目录。 恢复判定此前信任根据会话已编辑文件推断出的项目,却不检查接收方实际所在位置——在无关仓库 B 中,针对仓库 A 的会话运行 continue --cwd /other-repo 会打印 🟢“可以安全接手”。判定现在会获取调用方 cwd;如果它解析到另一个 git 仓库,则降级为 YELLOW(CLI + MCP)。破坏性叙述的降级规则已与信封的 GREEN 通道禁止集合重新对齐,因此 npm publish / gh release / “向客户发送消息” / “轮换凭据” / “更改默认值”不再能够获得有信心的 GREEN;短于 7 个字符的已记录 HEAD 锚点(此前几乎可以前缀匹配任何实时 HEAD)会被视为不可验证。
  • connect / setup:不再对仅完成往返验证的运行时打印“已验证”。 往返验证通过只能证明 IHOW 自身服务器可以启动,并不能证明接收端运行时(Cursor、WorkBuddy、OpenCode、Claude Desktop、OpenClaw)已经加载它。这些运行时现在会报告为 reachable,而不是 verified(“首次启动时验证”);只有自身 CLI 确认注册的运行时才是 verified--json 中的 connected[] 会为每个运行时提供 verified 标志。
  • connect --runtime <x> 现在也会执行验证。 单运行时路径(README 首先推荐的命令)此前只要写入成功就报告已连接;现在会运行与 setup 相同的连接后往返验证,并报告已验证/可达但待确认/不可达(不可达时以非零状态退出)。--json 新增 reachable / verified / detail
  • doctor --runtime <x> 将 MCP 可达性验证作为 REQUIRED 检查。 doctor 此前只检查本地存储以及“是否传递了运行时标志”,因此即使运行时的 mcp list 为空,也可能显示 doctor: ok。现在它会将已配置服务器的往返验证(以及 CLI 注册)作为必要检查。
  • upgrade 会重新握手;软件包偏差现在是必要错误。 冻结软件包偏差检查此前只是软警告,因此已连接的运行时可能在执行 npm update 后继续运行旧服务器,而 doctor 仍显示绿色;现在它是必要错误。upgrade 会在重新加戳后探测全新服务器,确认新软件包能够往返运行(并且仍会提示你重启运行时)。
  • 自动提升的持久记忆可回滚。 rollback 曾硬编码为“仅限日志条目”,因此自动提升(机器判断、无人工门控)的持久写入无法通过引擎撤销。现在可以撤销(rollback 会删除已提升文件并恢复候选项以供审核);人工确认的提升仍不在支持范围内,并会被拒绝。
  • --json 输出不再被遥测通知破坏。 在非交互模式下,一次性遥测提示曾输出到 stdout,导致解析 --json 载荷的脚本失败;现在它会输出到 stderr。

  • 自动提升的来源由引擎验证,而不是自我声明。 底线此前接受任何存在的来源键,因此 verified: true、自由文本 evidence、单独的 exitCode 或伪造的 git 锚点都能自动提升至持久记忆。现在它要求结构化且可证伪的证据——command + exitCode,或由引擎依据实时 HEAD 检查的 git 锚点(如果针对显式仓库路径声明的 HEAD 不匹配,则作为伪造/陈旧锚点拒绝)。IHOW_AUTO_PROMOTE=0 会在全局强制所有写入保留为候选项(完整人工门控)。对于携带真实证据的内容,单次调用“记住此内容”的 UX 保持不变。
  • 召回只注入经过人工审核的记忆。 未经审核的自动提升条目(tier: auto-promoted / reviewed: false)位于精选路径下,因此仅依靠路径允许列表会将其当作已审核内容注入;召回现在会排除这些条目。(召回仍默认关闭。)
  • Windows CI 会执行往返验证,README 的 Windows 表述也已保持一致(原生 Windows 为实验性支持;WSL 是受支持的路径),不再同时声称“尚未成为受支持的通道”。

  • 对上述修复项进行的对抗性复审发现了四个残留漏洞——其中三个是由这些
  • 修复本身引入的——现均已通过回归测试关闭:
  • continue:空白 cwd 不再能绕过检查获得 GREEN。 接收方上下文门控此前以 cwd 的真值作为条件,因此发送 {"cwd":""} 的 MCP 客户端会跳过检查,直接获得有信心的 GREEN(比省略 cwd 更危险,因为后者会正确执行回退)。现在只要*提供了* cwd 就会触发门控,并将空白 cwd 视为不可验证(YELLOW);MCP 服务器会将空白 cwd 规范化为启动目录。
  • rollback 具有幂等性。 在候选项已由人工重新提升到同一目标后,重放陈旧的自动提升回滚 ID 会盲目删除现在已由人工确认的文件,悄然撤销一次有意的提升。现在,第二次回滚同一事件会被拒绝(rollback_already_rolled_back)。
  • 召回对未审核内容的排除可以容忍大小写和引号差异。 过滤器此前只匹配引擎生成的精确 reviewed: false / tier: "auto-promoted";在共享多代理 vault 中,序列化为 reviewed: "false" / Reviewed: False / tier: 'auto-promoted' 的条目会重新混入。现在均可识别。
  • 当不可达时,connect 会以非零状态退出,包括 --json--auto 退出码契约此前只适用于文本路径;即使没有连接成功,--json--auto --write 也会返回 0——而这些恰好是 --json 字段面向的脚本调用方。
0.1.0-alpha.11 2026-06-25 正式 CHANGELOG 9 条

本版记录:修复 1 条、新增 6 条、变更 2 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • Windows:setup 不再无法准备工作区。 packageDir() 曾通过 new URL('..', import.meta.url).pathname 解析软件包根目录,在 Windows 上会产生无效的 /C:/… 路径,因此 CLI 无法找到自身的 distsetup 报告 could not prepare the workspaceconnect 抛出 runtime_bundle_missing--version 显示 unknown)。现在改用 fileURLToPath 解析。已在真实 Windows 11(ARM64)上完成端到端验证。

  • Windows CI 通道windows-latest、Node 22 + 24):执行构建、可捕获 packageDir 回归的版本冒烟测试、connect 冒烟测试和完整测试套件,防止 Windows 再次悄然损坏。
  • 自动提升符合条件的记忆。 memory.write_candidate 现在只需一次调用即可记住内容:引擎会将携带来源信息(metadata 中的 evidence / anchors / command / repo / verified)的低风险内容自动提升至持久记忆,而不是将所有内容留作必须单独提升的候选项。传递 autoPromote: false 可仅暂存候选项。
  • 强制执行的自动提升底线。 哪些内容能够进入持久记忆由引擎门控,而不是代理的自我判断:类似秘密的内容、常驻规则/策略/访问/身份/破坏性陈述以及没有来源的内容都会保留为候选项(并附带原因)。底线会扫描完整候选项,包括标题和元数据,而不只是正文。自动提升的记忆会标记为 tier: auto-promoted / reviewed: false(审计 actor 为 agent-auto),以便与人工确认的记忆区分开来。(在召回中降低未审核条目排名权重是已跟踪的后续事项。)
  • 连接后验证:只有运行时实际可达时,setup 才会报告“connected”。 写入 MCP 配置后,它会对已配置服务器执行往返验证(initialize + memory.status),对于有官方 CLI 的运行时,还会确认服务器确实已经注册——绝不会只依据写入成功作出判断。配置服务器能够往返运行的运行时(包括没有 CLI 的直接配置运行时)会被报告为已连接;往返失败或 CLI 表示未注册的运行时会显示为 unverified(配置已写入但不可达)。--json 新增 unverified 列表,connect --auto 也会执行同样的验证。Hermes 连接器现在会运行 hermes gateway start,使新增配置作用于实时 gateway。(这可以捕获首次用户事故:setup 报告 Hermes 已连接,但 mcp list 为空。)
  • continue 的恢复判定:可信的 GREEN / YELLOW / RED 交接信号。 当代理通过 memory.continue(MCP)或 ihow-memory continue(CLI)恢复时,引擎现在会重新读取项目的实时 git 状态,与交接时记录的锚点进行比较,然后报告判定,而不是要求你盲目信任交接包。GREEN 的条件刻意设得很窄——同一仓库、HEAD 可达且与记录的锚点匹配;换机器、工作目录移动或 HEAD 已前进时会产生 YELLOW(谨慎恢复)或 RED(记录的基线与你当前所在状态不一致)。它会按前缀比较 HEAD,避免将较短的记录 SHA 与较长的实时 SHA 误判为不匹配,并且绝不会报告伪造的 GREEN
  • 首次运行时从项目 STATE 文档交接。 对尚未记录任何会话的项目,continue 不再返回空结果:如果项目包含 PROJECT_STATE.md,引擎会将其作为恢复叙述读取,与实时 git 进行交叉检查,并附上相同判定。从 STATE 文档*推断*出的基线(例如从散文中解析出的 referencedHead最高只能是 YELLOW——绝不会是虚假的 GREEN;即使解析出的 SHA 恰好与实时 HEAD 匹配,推断基线也不能伪装成已验证基线。

  • memory.promote 现在被描述为显式手动提升路径;memory.durable_promote 仍要求显式设置 realWrite: true
  • Skill + README 指南:提升由引擎门控——附加来源信息可以让内容持久化;高风险内容会保留为候选项,等待人工审核。
0.1.0-alpha.9 2026-06-21 Git tag 补全 6 条

本版记录:变更 5 条、说明 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • chore(release):发布 v0.1.0-alpha.9
  • feat(anchors): 用于非 git 恢复的文件指纹锚点
  • docs: 对更广泛 alpha 使用范围作出真实预期说明
  • feat(upgrade): ihow-memory upgrade + doctor 运行时软件包偏差警告
  • feat(ops): 将迁移作为 CLI 命令交付;固定绝对 node 路径;限制工作区模式

  • 此历史版本在核心 CHANGELOG 中没有专门章节。上述条目根据其 tag 区间内的提交主题生成,并已作相应标记。
0.1.0-alpha.8 2026-06-20 Git tag 补全 10 条

本版记录:变更 9 条、说明 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • chore(release): v0.1.0-alpha.8——发布前修复;门控已跟踪的机器本地路径
  • docs+search: 以验证优先交接为开篇;让代理真正承担语义层
  • fix(hooks): 绝不让宿主崩溃;精确保护钩子命令;使用真实的捕获表述
  • fix(governance): 加固秘密脱敏,同时避免破坏交接
  • fix(store): 将锁锚定到共享数据 + 恢复陈旧锁
  • fix(security): 阻止锚点中的 git core.fsmonitor RCE;将控制台限制在 loopback
  • fix(time): 按本地日期而不是 UTC 命名每日日志/事件文件
  • fix(search): CJK 二元词组分词——消除“评价匹配评分”的字符混杂
  • docs(readme): 准确的运行时支持表——8 个运行时、连接 + 恢复读取器

  • 此历史版本在核心 CHANGELOG 中没有专门章节。上述条目根据其 tag 区间内的提交主题生成,并已作相应标记。
0.1.0-alpha.7 2026-06-20 Git tag 补全 2 条

本版记录:变更 1 条、说明 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • fix(pkg): 发布完整的 dist/——alpha.5/6 遗漏了 handoff/transcript/anchors(导致全新安装损坏)

  • 此历史版本在核心 CHANGELOG 中没有专门章节。上述条目根据其 tag 区间内的提交主题生成,并已作相应标记。
0.1.0-alpha.6 2026-06-20 Git tag 补全 2 条

本版记录:变更 1 条、说明 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • feat(connect,setup): 将 OpenClaw 连接 + 逐代理恢复指南产品化(alpha.6)

  • 此历史版本在核心 CHANGELOG 中没有专门章节。上述条目根据其 tag 区间内的提交主题生成,并已作相应标记。
0.1.0-alpha.5 2026-06-20 Git tag 补全 20 条

本版记录:变更 19 条、说明 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • chore(release): 为发布秘密扫描门控清理仓库卫生问题
  • feat(handoff): OpenCode 读取器 + 通用只读 sqlite 打开方式
  • feat(handoff): Hermes 读取器——JSON + state.db 来源,仅限仓库项目
  • fix(handoff): WorkBuddy 读取器匹配了错误的块类型——真实数据上的交接为空
  • feat: OpenClaw 读取器 + 将 WorkBuddy 跨线程恢复整合到一条命令的设置流程中
  • fix(handoff): 加固多来源机制——对抗性审核修复(确认 13 项)
  • feat(handoff): WorkBuddy 会话来源——面向客户的被动跨线程恢复
  • feat(handoff): 多来源发现——Codex 读取器 + 统一 SessionReader
  • feat(mcp): memory.continue——跨运行时验证优先交接包
  • fix(setup,continue,metrics): 加固今晚的代码——对抗性审核修复
  • feat(continue): 按列表索引恢复——continue <N> 选择第 N 条 --list 记录
  • feat(setup): 零配置一条命令完成引导(检测 → MCP+skill+hook → 验证)
  • feat(continue): SessionStart 恢复感知提示(只提供指针,内容仍需选择获取)
  • feat(continue): 醒目的陈旧/空捕获横幅 + B② 交接指标通道
  • feat(continue): 使用 --list 枚举所有项目中可恢复的会话
  • fix(continue): 排除实时会话 + 绝不根据读取操作推断项目
  • feat(continue): 项目感知交接——根据已编辑文件而不是 cwd 推断项目
  • fix(continue): 从 ~/.claude/projects 发现最新转录,而不是只查看 Stop 标记
  • tag 比较中还提供另外 29 个提交。

  • 此历史版本在核心 CHANGELOG 中没有专门章节。上述条目根据其 tag 区间内的提交主题生成,并已作相应标记。
0.1.0-alpha.4 2026-06-15 正式 CHANGELOG 7 条

本版记录:新增 5 条、真实性 / 安全说明 2 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

版本附注:(实验性 · Claude Code 优先)

  • 分层记忆:仅追加、低权重的日志通道。 memory.journal(MCP)和 ihow-memory journal(CLI)会直接写入可搜索的每日日志,但其排名始终低于精选/已提升记忆,因此自动捕获不会挤占高权重召回。写入仍需经过写入前秘密拒绝门控,并会发出审计事件。
  • Claude Code 的会话结束自动捕获(实验性)。 ihow-memory hook-stop 是 Stop 钩子处理程序;ihow-memory install-hook 会将其接入当前项目的 .claude/settings.local.json(或使用 --global-hook 在用户范围内安装)。会话结束时,它会要求会话内代理通过 memory.journal 记录交接。采用尽力而为的至少一次语义(随着会话增长重新提示,记录一条日志后停止),具备递归保护,并跳过琐碎会话。
  • 一条命令完成 Claude Code 设置。 connect --runtime claude-code [--install-skill] [--install-hook] 会注册 MCP 服务器,并可选择复制 skill 和安装 Stop 钩子——每项操作都需要同意、会创建备份,并且绝不会覆盖用户修改过的文件。
  • 审计 + 回滚。 ihow-memory audit [--since] 会列出仅追加事件日志;ihow-memory rollback --event <id> 会撤销一个自动捕获的日志条目。
  • 扩展了写入前秘密拒绝门控(JWT、PEM 私钥头、Slack、Google、Stripe、Twilio、更多 GitHub token 形式),并将精选锚点(preferences、active-anchors)加入受保护路径,确保自动写入绝不会覆盖它们。

  • 自动捕获的笔记会进入低权重日志,而不是精选记忆:它们可搜索、可审计且可逆,但未经审核。使用 promote / durable-promote 创建可信的长期记忆。
  • 秘密门控是高精度的写入前拒绝机制,而不是完整的 DLP 保证
0.1.0-alpha.3 2026-06-13 正式 CHANGELOG 6 条

本版记录:新增 5 条、变更 1 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • connect 现在可以通过一条命令覆盖七个运行时——claude-code、codex、cursor、Tencent WorkBuddy、Claude Desktop、OpenCode 和 Hermes(NousResearch)。每个写入器都已在真实安装中验证:- WorkBuddy 5.0.3——~/.workbuddy/mcp.json(stdio、绝对 node 路径);绝不修改其 runtime/connector/approval 文件。- Claude Desktop——使用操作系统配置路径;条目省略 type 以匹配其 schema。- OpenCode——使用 ~/.config/opencode/opencode.jsonmcp 容器以及 { type: "local", command: [...], enabled: true } 条目。- Hermes——通过官方 hermes mcp add CLI;根目录通过 --env 传递。- 其他任何 MCP 客户端均可使用 init 提供的通用片段。
  • MCP 工具描述现在包含“何时使用”指南(回答/继续前先搜索;在产生决策、结果、阻塞项和交接后调用 write_candidate;不得包含秘密;durable_promote 默认为 dry-run),以便代理在所有客户端中主动使用记忆。
  • 位于 skills/ihow-memory/SKILL.md 的 Claude Code 记忆 skill——一个精简策略层(任务开始时搜索、在决策/交接后提出候选项、受治理提升)。connect --runtime claude-code 会指向它;不会自动安装。
  • 旗舰演练文档 examples/connect-workbuddy.mdexamples/flagship-cross-tool-handoff.md
  • tests/ 下包含每个连接写入器的回归测试。

  • Windows:原生支持为实验性。Claude Code 和 Claude Desktop 连接使用跨平台直接写入路径(~/.claude.json%APPDATA%\Claude);在 Windows 上,基于 CLI 的 codex/hermes 连接会输出手动设置指南。WSL 是受支持的路径。
0.1.0-alpha.2 2026-06-11 正式 CHANGELOG 9 条

本版记录:新增 4 条、变更 1 条、安全 4 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • 公开源代码版本:此仓库(iHow1/ihow-memory-core)现在托管已发布 npm 软件包背后的 TypeScript 源代码。
  • tests/ 下新增安全边界回归测试(参见下方“安全”)。
  • examples/ 下新增可运行示例(01 五分钟记忆、02 通过 MCP 使用 Claude Code、03 两个代理共享一个记忆),仅使用合成数据。
  • 仓库基础设施:CONTRIBUTING、SECURITY、CODE_OF_CONDUCT、issue/PR 模板、CI 工作流(构建、测试、打包检查、秘密扫描)。

  • README 已重写为已发布软件包的唯一事实来源:以 connect 为先的快速入门、经过测试且可复制粘贴的 CLI 循环、与实际交付的零依赖 FTS5 默认值保持一致的检索引擎和基准测试声明,以及网站/spec 仓库/证据清单链接。新增中文翻译(README.zh-CN.md)。

  • 已修复:跟随符号链接的读取可能泄漏记忆根目录之外的文件。 位于记忆工作区中的符号链接(例如通过共享或同步 vault 放入)会被 memory.read/read 跟随,从而返回任意外部文件的内容。
  • 已修复:读取路径上的 TOCTOU 符号链接交换竞态。 检查解析后的路径再重新打开它,会留下一个窗口,使共享/同步 vault 上的并发攻击者能够在检查和读取之间交换符号链接。读取路径现在使用 O_NOFOLLOW 打开文件(直接拒绝符号链接叶节点),并验证已打开文件描述符的 inode 与通过包含性检查的真实路径一致。验证结果:在 200k+ 次并发交换迭代中泄漏为 0。记忆文件本身是真实文件,索引也已忽略符号链接,因此拒绝符号链接叶节点不会损失任何真实能力。
  • 已修复:提升和持久写入可能通过符号链接目录逃逸受管理根目录。 写入路径现在会在写入前验证解析后的父目录包含在受管理根目录中。
  • 新增安全边界回归测试套件(tests/security-boundary.test.mjs,21 个用例):路径遍历、绝对路径、NUL 字节、作用域逃逸、受保护路径、读取和写入时的符号链接文件/目录逃逸、读取叶节点 O_NOFOLLOW 保护、索引阶段符号链接处理和 reset 安全性。已验证索引扫描按设计忽略符号链接。
0.1.0-alpha.1 2026-06-09 正式 CHANGELOG 4 条

本版记录:新增 1 条、修复 3 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • CLI 新增 --version 标志。

  • CLI 和 MCP 服务器中的版本字符串统一为单一事实来源。
  • 复制到 <space>/.runtime/ 的运行时软件包不再报告陈旧版本。
  • 在 CLI 输出中抑制实验性 node:sqlite 警告。
0.1.0-alpha.0 2026-06-08 正式 CHANGELOG 6 条

本版记录:新增 6 条。

以下详细条目均已逐条翻译;切换到英文可查看官方原文。

  • 首个已发布的 npm 版本。
  • 本地 CLI:initstatusdoctorproofreindexsearchreadwrite-candidatepromotedurable-promotefeedbackresetconsole
  • 基于 stdio 的 MCP 服务器,提供六个 memory.* 工具:searchreadwrite_candidatepromotedurable_promotestatus
  • 面向三个运行时——claude-code、codex、cursor——的 connect 自动配置:在可用时使用运行时的官方 CLI,否则采用备份优先的原子 JSON 合并。
  • 治理流程:候选收件箱 → 显式提升 → 仅追加审计事件;搜索和读取结果带有引用。
  • 零依赖检索引擎:node:sqlite FTS5,提供可选的本地向量提供程序接口,并明确显示向 FTS 的回退。
没有匹配的版本记录。
生成来源:ihow-memory-core/CHANGELOG.md + Git tag 区间 · 当前日志源版本日期 2026-07-21