Skip to content

Releases: Logic647/MemorySQL

MemorySQL v0.7.1

Choose a tag to compare

@github-actions github-actions released this 26 Oct 09:04

MemorySQL v0.7.1 更新日志(2026-10-26)

这是一版修 bug + 加一家适配的更新。核心是两件事:新增 DeepSeek Harness(dsh) 捕获,以及修掉 v0.7.0 项目总结里几处「测试全绿但真机错」的问题。


本次更新内容

1. 新增 DeepSeek Harness(dsh)会话捕获(捕获矩阵 12 → 13 家)

DeepSeek 官方 agent 框架 deepseek-ai/deepseek-harness(命令 dsh,MIT),本地会话自动入库。

  • 会话位置:~/.dsh/sessions(DSH_HOME 可覆盖),每会话一个 session.vN.jsonl[.zstd]
  • 默认 zstd 压缩、且是「一次追加一帧」的拼接帧格式 —— 已正确解出全部帧(不是只解第一帧)
  • 上游保留多代历史日志并存,采集按「代数最高」只读最新那份
  • 子 agent 碎片会话(delegationDepth > 0)自动跳过
  • 连接向导支持一键写入 MCP 配置(~/.dsh/cordis.patch.yml 的 cordis 补丁条目)

2. 项目总结:修掉三个真机才暴露的问题

  • 总结越滚越小:档位原本按「本批会话数」选,却截断「累计全文」——23 个会话的项目消化两轮后,总结从 4000 字被截到 800 字且永远回不去。现在按累计规模选档,且只升不降。
  • 总结串到别的项目:关键词匹配原本是「项目名或路径包含」,导致「桌面」这种词命中 24 个互不相关的项目(它们只是都放在 H:\桌面\ 下),于是标题写着 A、总结正文却是 B 的结论。现在改为项目名优先、路径仅兜底,四处口径统一。
  • 按会话分类显示 #0:模型返回 "#42" 这类带修饰的 id 时被解析成 0。已修正。

3. memory_get_session 截断方向修正

输出超预算时过去保留的是最旧的消息(与文案「取最后若干条」相反),7000+ 条的长会话读不到最新进展。现在从最新往回填,提示语也改为「保留了最近 N 条」。

4. 上游漂移检查不再对健康安装误报

dsh 的子 agent 会话与空会话「解析不出会话」是正常状态,旧检查器会判成格式漂移(🟰 触发一次白跑的适配发版)。现在区分「按设计跳过」与「真的读不懂」,并会尝试多个样本文件而不是只看第一个。

5. 其他

  • memory_search / memory_get_project_digest 跟随同名项目合并口径
  • 项目总结的 maxTokens 上调并按上限约束「按会话」条目数,避免输出被截断后整份作废回退规则模式
  • 规则模式总结不再把会话清单重复打印两遍
  • 数据库里手工编辑坏的总结行不再让 memory_get_context 直接报错,改为降级显示

升级说明

Windows / Linux / macOS 均已发布,自动更新会静默收取本版。macOS 仍未签名,首次启动需「右键 → 打开」。

MemorySQL v0.7.0 — 项目滚动总结 + LLM 引擎聚合 + 安装包瘦身

Choose a tag to compare

@github-actions github-actions released this 25 Oct 10:22

v0.7.0 — 项目滚动总结 + LLM 引擎聚合 + 安装包瘦身

项目滚动总结(hindsight 式)

  • 每个项目定期把「上次总结之后的新会话」滚动总结成 摘要 + 待办 + 决策;首次总结会读完项目全部会话并记下水位,之后只读新增部分
  • 总结按「下一个 agent 从零接手」标准撰写:项目目标 / 技术要点与结构 / 关键决策与坑 / 当前进度 / 环境与命令
  • agent 接手只读这一份(memory_get_project_digest),不必翻大量历史会话;memory_get_project_brief 也会置顶引用
  • 默认关闭(设置 → 智能引擎 → 项目总结):开启后配了 LLM 则素材脱敏后发送,不配 LLM 也能纯本地规则总结(零外发)
  • 会话页项目组头显示总结状态并可展开;顶栏「项目总结」按钮可浏览全部项目的总结;支持「立即总结全部项目」

LLM 引擎聚合

  • 预置一键配置:智谱 GLM(免费) / SiliconFlow 免费档 / DeepSeek / MiMo / 本地反代(OpenCode Zen 反代生态)/ OpenAI / 任意自定义 OpenAI 兼容端点
  • 「测试连接」真发一次请求验证(无需先保存);会话摘要、项目总结、记忆精炼共用一个引擎,不可用自动降级本地规则

界面

  • 设置页插件按 7 类分组折叠;会话列表可按项目折叠(记住状态)
  • Agent 侧栏按检测到的会话数排序,未检测到的不再显示
  • 暗色主题下拉框样式修复

体积

  • 安装包 105.5 → 99.5MB:语义检索的原生推理组件(约 20MB)改为首次启用时下载(模型本就如此),下载后即时生效无需重启
  • 修复 out/anim 宣传物料(33MB)可能被误打进安装包的隐患

其它

  • MCP 工具 7 → 8(新增 memory_get_project_digest)
  • CLI 新增 --digest;Tauri 迁移可行性评估见 docs/tauri-feasibility.md
  • 升级不丢数据,自动更新直达;typecheck 0 / vitest 459:459

v0.6.0 — 下线笔记与知识图谱

Choose a tag to compare

@github-actions github-actions released this 23 Oct 09:35

v0.6.0 — 产品收缩:下线笔记与知识图谱

变更

下线「笔记」与「知识图谱」
长期使用后判断这两个功能实用性不高,已移除。界面收敛为「会话 / 记忆」两栏,左侧导航只剩两个图标入口。

  • 连带移除 CodeMirror 与 cytoscape 依赖,renderer 产物 2.79 MB → 0.68 MB(-75.7%)
  • 检索与 MCP 工具聚焦在会话 / 消息 / 记忆三类(memory_search 的 kind=note 现在明确报错)
  • vault/ 目录保留,但只作为生成文件的输出位置(项目日志、记忆分发);生成项目日志后顶栏直接给「打开日志目录」按钮

升级不丢数据:旧笔记文件与 notes 表都保留在磁盘上,只是不再被读写。

新增「最后一次对话时间」
每条会话并排显示「开始」与「最后」(相对时间:刚刚 / N 分钟前 / N 天前,超过 30 天回落绝对时间并补年份)。一眼分出「上周开始、今早还在聊」和「上周就结束了」的会话。MCP 侧 memory_list_sessions / memory_get_session 同步带出,since 过滤也改为按最后对话时间——「开始很早但最近还在聊」的会话不再被漏掉。

拖拽会话时列表可自动滚动
此前拖动会话时鼠标滚轮完全失效(HTML5 拖放期间浏览器独占指针)。现在把会话拖到列表上/下边缘即自动滚动,速度随深入边缘渐起,drop indicator 跟随拖动。

修复

  • ingest 的 content_hash 短路分支会漏刷「最后一次对话时间」(Claude Desktop 元数据这类零消息会话永远停在首次扫描值)
  • MCP 的 since 过滤与「最近活跃会话」排序仍按会话开始时间
  • 会话行标题被两个时间戳挤到约 65px,几乎每行都以省略号开头
  • 「打开日志目录」按钮被 4 秒 toast 门控,生成完就点不到
  • 未来时间戳显示成「刚刚」;跨年时间不显示年份

验证

typecheck 0 错 · vitest 402:402(38 文件)· 真实库副本 282 会话迁移后 0 NULL · 12 个捕获插件无回归

MemorySQL v0.5.7

Choose a tag to compare

@github-actions github-actions released this 10 Oct 05:09

v0.5.7

这一版没有新功能 —— 全部内容就一件事:安装包瘦了 38%。

安装包瘦身:169 MB → 105 MB

v0.5.6 v0.5.7
Windows 安装包 169.1 MB 105.5 MB
安装后占用 639.9 MB 356.5 MB

砍掉的都是运行时用不到的东西,功能一个没少:

  • 随包分发的其他平台二进制(Linux/macOS 的语义推理库等,约 175 MB)
  • SQLite 的 C 源码包(运行时只用预编译好的动态库)
  • 55 个 Chromium 语言包里的 53 个 —— 只留中文 + 英文
  • 两个只在编译期用到的渲染层依赖

语义检索推理链路已在真机全量重嵌入验证(CPU 路径,268 条记忆重建成功)。

语言包精简的唯一副作用:在非中文/英文的系统上,极少数 Chromium 内建菜单
(如右键菜单)会显示英文;应用自身界面文案不受影响。

Linux(.AppImage / .deb / .tar.gz)与 macOS(.dmg / .zip)安装包同样瘦身。

兼容性

  • 数据零变化:升级后所有会话、记忆、项目状态原地保留
  • Windows / Linux 从 0.5.6 及更早版本正常自动更新到本版,无需重装
  • macOS 仍只提供 Apple Silicon(arm64) 安装包(托管 Intel runner 持续排不到队,
    与代码无关);Intel Mac 用户请从 Release 页手动下载,自动更新暂不可用

MemorySQL v0.5.6

Choose a tag to compare

@github-actions github-actions released this 30 Sep 15:50

v0.5.6

这一版的重点不是加功能,而是把几处"坏了但没人知道"的静默失效变成可见的。

macOS 首次支持(Apple Silicon / arm64)

三个平台里最新的是 macOS,这一版开始提供 .dmg 与 .zip。

  • 未签名:没有 Apple Developer ID,所以 Gatekeeper 会拦首启。选「右键 → 打开」确认一次即可,
    之后正常双击启动。不想每次都这样,终端执行一次:
    xattr -dr com.apple.quarantine /Applications/MemorySQL.app
  • 本版只提供 Apple Silicon(arm64)安装包。Intel Mac(x64)暂时需要手动构建或等待后续版本。
    原因是 GitHub 托管的 Intel macOS runner 长时间排不到队(实测排队 95 分钟仍未分配),
    与代码无关。这不是架构限制,后续版本会补上。

关于 macOS 自动更新:请留意这一条

macOS 的自动更新只在这一版之后的升级才生效(此前没有 macOS 版本,不存在从旧版升级的情况)。
本版发布的 latest-mac.yml 只包含 arm64 条目,因此:

  • Apple Silicon:正常自动更新
  • Intel Mac:若你在本版之上尝试自动更新,会因清单里没有 x64 包而报错。
    Intel Mac 用户请从 Release 页面手动下载安装包,不要用应用内的更新按钮

等 x64 产物补齐后,清单会合并为同时包含两个架构,Intel 用户即可恢复正常自动更新。

修复

OpenCode 的 MCP 配置自 v2 起一直写错(type 缺失被静默丢弃)

OpenCode ≥ 2.0 起 MCP server 条目必须带 type 字段,缺了会在配置规范化阶段被静默丢弃
(仅一条 WARN,不报错),症状是该 agent 的会话里 7 个 MCP 工具整个不出现。

connectAgent 写 opencode.json 时已补上 type: remote。

对存量用户尤其重要:在你升级到本版之前,即使你重跑一遍连接向导,旧逻辑依然写不出
type,MCP 一直是坏的。装上这一版后请重跑一次「连接向导」——只需一次,之后自动更新会
覆盖后续升级。用浏览器访问 https://<你的MCP地址>/health 也可确认服务在跑,
但工具出不来看的是 agent 侧的工具列表。

捕获失效不再静默:健康度三态 + 写后回读验证

之前捕获插件解析失败只写一行日志,lastStatus 不更新,界面上看不出任何差别。现在:

  • 每个捕获插件有 health 状态(正常 / 偶发 / 连续失败 / 未安装),连续失败 3 次才升级为红色
  • 设置页三态显示:没装(灰)、正常(绿)、读不懂(红)
    —— 这两者的处置方式完全相反:「没装」不用管,「读不懂」说明上游格式变了,要改适配器
  • 修掉 4 处 watcher 失败只写日志的地方(通用工厂、Codex、ZCode、Hermes)
    ——其中 Hermes 那处最隐蔽:失败发生在 scan 内部,scan 之后仍然报成功,连 lastError 都没有
  • connectAgent 写完 MCP 配置后回读校验,失败会明确报「已写入但校验不通过」,
    而不是让你下次发现工具不见了

隐私与安全披露

新增 PRIVACY.md,
把会碰到你敏感数据的地方逐条写清楚:本机明文保存什么、什么会离开机器、
文件夹同步的明文风险,以及本机 MCP 端点是无鉴权的这一事实与对应的信任假设。

简单说:所有内容都存在你自己机器上,项目没有任何遥测。
但请注意:本机会开一个无鉴权的本地 MCP 端点(仅绑 127.0.0.1),
本机上任何进程都能读取你的全部记忆与会话。详见披露文档。

界面

  • 滚动条加粗(9px → 12px)并改为 padding-box,修掉 Chromium 默认 stepper 造成的底部白方块
  • 设置页的捕获状态与 MCP 连接状态按三态/校验结果显示

兼容性

  • 适配的 agent 数量不变(12 家)
  • 数据目录结构不变,升级后所有历史会话、记忆、项目状态原地保留
  • 自动更新走原来的通道,无需重装(Windows / Linux);macOS 见上文说明

MemorySQL v0.5.5

Choose a tag to compare

@github-actions github-actions released this 29 Sep 03:54

Highlights

OpenCode 2.x 适配 + 更新体验升级。

适配

  • OpenCode 2.x 新数据库适配:opencode ≥2.0 把权威会话库从三表(session/message/part)迁移到 session_v2 + session_message(内容内嵌),更新后出现的「no such table: session」无法导入问题已修复;新旧两代数据库自动识别,ZCode 等同源 agent 不受影响。已在新版真实库上验证,3 条会话完整入库

更新体验

  • 下载进度条:自动更新与手动下载均实时显示进度(百分比 + 已下载/总大小)
  • 安装前询问:安装包下载完成后弹窗询问「立即重启安装」或「稍后手动重启」——不再静默重启;选稍后的话,退出应用时也会自动安装

修复

  • 更新横幅与设置页的状态提示更精确(下载失败会显示具体原因)

升级说明

0.5.4 及以下版本可通过应用内「设置 → 关于 → 检查更新」升级,或从本页下载安装包。

MemorySQL v0.5.4

Choose a tag to compare

@github-actions github-actions released this 23 Sep 07:13

新增

腾讯 WorkBuddy 会话捕获

  • 新插件 capture-workbuddy:扫描 ~/.workbuddy/projects/**/*.jsonl,并用 workbuddy.db 快照补标题 / 工作目录 / 创建时间
  • watcher 同时监听对话 JSONL 与 SQLite 库(含 -wal/-shm),会话变更增量入库
  • 连接向导一键写入 ~/.workbuddy/mcp.json 的 mcpServers.memorysql

Qoder CLI / Qoder CN 会话捕获

  • 新插件 capture-qoder:同时覆盖国际版 ~/.qoder 与中国版 ~/.qoder-cn 的 projects/**/*.jsonl(Claude 兼容格式),state.json 补会话名与 cwd
  • 支持 QODER_CONFIG_DIR / QODERCN_CONFIG_DIR 自定义配置目录
  • 连接向导写入 settings.json 的 mcpServers.memorysql(或用 qoder mcp add)

其他

  • capture 工厂 watchPaths 回调现接收 sourceRoot,自定义源目录与孪生根都能正确监听(已有适配器兼容)

验证: typecheck 零错,vitest 126:126。WorkBuddy / Qoder 本机未装,合成样本单测覆盖,装机后可再真机扫一次。

MemorySQL v0.5.3

Choose a tag to compare

@github-actions github-actions released this 22 Sep 10:11

修复

启动时检测不到新版本

  • 启动检查改走 api.github.com 探测(不依赖常被墙的 latest.yml),失败写入错误状态并在应用壳显示更新横幅,不再静默吞掉
  • 修状态机遮蔽:已确认有新版后,滞后的 not-available 不会再把可用性清掉
  • 设置页更新状态四态互斥(已下载 / 下载中 / 下载失败 / 其他错误),与横幅一致

项目文件夹 / 会话重命名后不同步

  • content_hash 相同时仍轻量 UPDATE title / cwd / project_id(含 FTS),外部 agent 改名或文件夹改名会跟上
  • ensureProject 收养同父目录下 path 已失效的孤儿项目并 re-point 旧会话,不再叉出新分组
  • cwd 仅在磁盘上真实存在时才采纳,防止陈旧路径把会话打回去
  • capture-opencode 补数据库 watcher(含 -wal/-shm),会话变更增量入 库

验证: typecheck 零错,vitest 120:120。

MemorySQL v0.5.2

Choose a tag to compare

@github-actions github-actions released this 22 Sep 06:16

修复

  • ZCode / OpenCode 会话捕获适配新版 SQLite 权威存储:两家(opencode 系同源)已将会话库迁移至 session/message/part 三表 SQLite(ZCode 位于 ~/.zcode/cli/db/db.sqlite,OpenCode 位于 ~/.local/share/opencode/opencode.db),旧版适配器读取 rollout 日志 / JSON 目录树导致"新建项目不被识别""已检测到但扫不出会话"。现改为直接读取权威库:项目分组(cwd)、完整消息、工具调用、时间戳全量入库;已导入的旧数据按会话原生 id 原地自动升级,不产生重复
  • 应用启动自动扫描:应用离线期间产生的 agent 会话,启动即自动入库——不再依赖手动「立即扫描」
  • ZCode 增量监听改为"rollout 活动信号 → 按会话 id 从权威库重读",避免整库重扫

说明

  • 本版是 0.5.2:从 0.5.0/0.5.1 升级,启动应用即自动更新;更早版本请手动安装
  • Linux 版本(AppImage / deb / tar.gz)自 v0.5.1 起随 Windows 同步发布

v0.5.1

Choose a tag to compare

@github-actions github-actions released this 17 Sep 05:20

🚀 Features & Enhancements

  • Linux 跨平台版本首发支持:
    • 新增 Linux 三大构建产物:.AppImage(开箱即用免安装)、.deb(Debian / Ubuntu 系软件包)、.tar.gz(通用二进制归档)。
    • 适配 Linux 窗口管理器标题栏与拖拽行为,避免无边框无控制按钮隐患。
    • GitHub Actions 双矩阵构建:统一使用原生 C++ 编译工具链(Windows MSVC + Ubuntu GCC glibc)编译 better-sqlite3 与原生组件。
  • 对话导入插件 (import-chat):
    • 主界面顶部新增「导入对话」快捷入口,支持直接粘贴剪贴板聊天或导入 Markdown / 文本 / JSON 文件。
    • 启发式自动解析对话角色(用户、助手、工具调用、思考过程),实现对 SQLCipher 加密存储的 Trae CN、云端不落盘的通义灵码及任意网页端对话的通用导入支持。
    • 导入会话自动计算 SHA-256 内容哈希去重,并无缝纳入全文检索、语义向量搜索与记忆提炼链路。
  • 应用内自动更新状态透出:
    • 设置页实时感知并展示静默后台下载状态(已下载待装 / 下载中 / 错误提示),避免系统 Toast 被错过导致的无感体验。

📦 Assets

  • Windows: MemorySQL-Setup-0.5.1.exe, .blockmap, latest.yml
  • Linux: MemorySQL-0.5.1.AppImage, memorysql_0.5.1_amd64.deb, memorysql-0.5.1.tar.gz, latest-linux.yml