Repository navigation
Releases: daidaiJ/codebase-memory-mcp
Release list
v0.11.0-fork.4
Full Changelog: v0.11.0-fork.3...v0.11.0-fork.4
v0.11.0-fork.3 — minimal 面增至 4 工具:get_graph_schema
minimal 面增至 4 工具:新增 get_graph_schema
动机(在 v0.11.0-fork.2 上实测):minimal 面缺少属性目录(property catalog)发现通道——query_graph 会把未知属性静默当空结果处理:WHERE f.bogus = 1 返回 total:0(一个看似权威的假阴性),RETURN f.bogus 返回空值行。带 cbm skill 的客户端能查目录辨别拼写错误,纯 MCP 客户端(如 Qwen Code)无能为力。
get_graph_schema 是现成的通道:
- 默认输出紧凑(json ~1KB),
diagnostics=full~5.6KB - 只读、零信任风险
- 同时复活了描述瘦身时被移除的
get_graph_schema(diagnostics=full)指针——3 工具面上它不可达
minimal 面现为:get_architecture / query_graph / search_graph / get_graph_schema(server instructions 同步为 "four graph tools")。trace_path、detect_changes、index_status 等候选经评估后继续留在面外,理由记录在 FORK_PATCHES §12。
Tag 之后的分支进展(未随本 release 发布,随下一版本)
- silent-empty 家族 fail-loud 修复(
0d74d5ba,FORK_PATCHES §12 记录的后续候选已落地):query_graph未知属性不再静默按 NULL 求值——本 release 动机里那个 "WHERE f.bogus = 1返回看似权威的 total:0" 假阴性从此改为显式报错。执行前对照属性目录校验全部 (变量, 属性) 引用,无法判定时 fail-open,mcp 套件全量通过零误拒detect_changes的scope与trace_path的mode参数:未知值不再静默翻转语义,与 direction 同一 teaching-error 契约(DeusData#480 家族最后的两个活兄弟)
- detect_changes 复评结论落档(FORK_PATCHES §13):direction / scope 均已 fail-loud、诚实注记在位,但上游 DeusData#2128(框架入口不可见)仍开放且无可采纳修复——维持 analysis/all 面外不变;对称的 callee_resolution 提案被否(upstream 无此概念)
安装
gh release download v0.11.0-fork.3 --repo daidaiJ/codebase-memory-mcp --pattern 'codebase-memory-mcp-windows-amd64.exe'
mv codebase-memory-mcp-windows-amd64.exe <PATH目录>/codebase-memory-mcp.exe
codebase-memory-mcp --versionFull Changelog: v0.11.0-fork.2...v0.11.0-fork.3
v0.11.0-fork.2 — minimal face 迭代:fork issues #5–#10(T0–T7)
Fork 功能:minimal face 迭代(fork issues #5–#10)
本 release 是 fork 补丁 Phase 1 + Phase 2(T0–T7)的完整落地:
- minimal 面工具更替(#5,
7399e8f0):detect_changes→search_graph。search_graph 是符号级精确发现(上游 ~210 次 issue 引用,第二常用);detect_changes 因上游 DeusData#2128 dead-verdict 家族退回 analysis/all 面,待可信度修复后再回来 - trace_path 带内健康注记(#6,
c9f5bcbf):默认响应携带 caller_resolution 汇总——CALLS 边丢失导致的静默漏报不再与「真无调用方」不可区分 - detect_changes 静态诚实注记(#7,
3037dd6f):响应携带 graph_support + resolution_caveat - retention 记账(#8,
410648ef):缓存清扫 + index_status 维护字段 - 懒加载分层拉取(#9,
da13a3d1):c2 deepen cursor + depth frontier probe,按层拉取而非一次性全量 - watcher 双轮确认 + 冷却 + freshness(#10,
e02fec1a):脏变更需两轮签名相等才触发索引(HEAD 移动单轮即触发);成功索引后 30s 冷却(CBM_WATCH_COOLDOWN_S,0 关闭);index_status 带 freshness 块 - minimal 面工具描述瘦身(
6c85b9dd):机制细节移入 cbm skill,节省客户端上下文
平台修复
- MinGW:usable-size 查询绕过 CRT
_msizewrap(并发扩页映射时mi_is_in_heap_region误判,7dcde02e);gcc 专属告警组 pragma 补!defined(__clang__)门(CLANG64 CI 兼容,c8d853d0、c244e929) - Windows job 内存证据查询等测试修复(
382393b5)
测试对齐
- 测试断言同步 MINIMAL 默认面契约(fork issue #4 测试债,
d3416d40);test_mcp.c 编译阻塞修复(fd89f6a3)
上游同步
同步上游 v0.11.0 main 至 2026-09-29(约 240 个 commit),节选:MCP lean 输出/无损分页收尾、TypeBox schema、coverage 报告修复(DeusData#963)、pipeline staging 并发竞态修复(DeusData#2111)、installer(OpenHands/codex)与卸载清理改进。
Full Changelog: v0.11.0-fork.1...v0.11.0-fork.2
v0.11.0-fork.1 — 基于上游 v0.11.0 重新基线
上游基线:v0.8.1 → v0.11.0
本 release 是 fork 补丁在上游 v0.11.0 上的重新基线。fork 侧行为差异保持不变:
- MCP 最小工具面:默认只暴露 3 个实测工具(get_architecture / query_graph / detect_changes),
--tool-profile=all恢复全量 - tools_disabled denylist:MCP 与 CLI 双侧生效、fail-loud
- 默认值反转:auto_watch=false / 日志默认 error / 内存预算封顶 2048MB / UI 不自启
- Windows DACL 检查默认跳过(
CBM_DACL_HARDENING=1开回) - CI 只保留
fork-win64
上游 v0.11.0 带来的主要能力(节选)
- MCP 工具注册表扩至 17 工具(minimal 面继续只暴露实测过的 3 个)
- 中央内存分配核 + 结果溢出盘(spill),大仓库索引可在预算内完成
- MCP 输出瘦身与无损分页(lean output / semantic pagination),语义搜索契约显式化
- markdown 文件引用入图(doclinks,
REFERENCES_FILE边) - Windows Unicode 仓库路径支持、索引 worker 内存预算强制执行
- 上游测试规模:8,060 tests / 141 suites
完整差异见 docs/FORK_PATCHES.md。
安装
gh release download v0.11.0-fork.1 --repo daidaiJ/codebase-memory-mcp --pattern 'codebase-memory-mcp-windows-amd64.exe'
mv codebase-memory-mcp-windows-amd64.exe <PATH目录>/codebase-memory-mcp.exe
codebase-memory-mcp --versionFull Changelog: v0.8.1-fork.2...v0.11.0-fork.1
v0.8.1-fork.2 — CLI 修复:index worker 工具面继承
修复
- index worker 不再继承 minimal 工具面(
d251a755):daemon 内部会话此前也套用了 minimal profile,导致cbm cli index_repository总是被拒绝。现在 daemon 会话恢复 ALL 工具面(CLI 全量是 minimal 面的根基)。
CI / 文档
- 只保留
fork-win64构建 workflow,移除上游继承的 issue 管理(stale/label)、DCO、CodeQL、Scorecard 等遗产 CI(25e37085、3355640f) - 收录 cbm agent skill:skills/cbm/SKILL.md(何时用/不用、命令配方、信任闸门)
- CI 冒烟往返改用 workspace 绝对路径(
db94eefd)
fork 侧行为差异与 v0.8.1-fork.1 一致,详见 docs/FORK_PATCHES.md。
安装
gh release download v0.8.1-fork.2 --repo daidaiJ/codebase-memory-mcp --pattern 'codebase-memory-mcp-windows-amd64.exe'
mv codebase-memory-mcp-windows-amd64.exe <PATH目录>/codebase-memory-mcp.exe
codebase-memory-mcp --versionFull Changelog: v0.8.1-fork.1...v0.8.1-fork.2
v0.8.1-fork.1 — 精简 fork CLI(Windows amd64)
codebase-memory-mcp 精简 fork 的首个 CLI 构建(基于上游 v0.8.1,补丁分支 feat/minimal-tool-surface)。
与上游的行为差异
- MCP 最小工具面:默认只暴露 3 个经实测验证的工具(get_architecture / query_graph / detect_changes);
--tool-profile=all恢复全量 - tools_disabled 配置键:逗号分隔的禁用名单,MCP 与 CLI 双侧生效、fail-loud,被禁工具从
--help隐藏;项目级.cbm/config.json可覆盖全局 - 默认值反转:
auto_watch=false、日志默认error、内存预算封顶 2048MB、UI 默认不自启 - Windows DACL 检查默认跳过(属主校验保留):共享工具目录的宽松 ACL 不再阻断启动;多用户主机设
CBM_DACL_HARDENING=1开回
安装
# Windows amd64:下载资产放入 PATH
gh release download v0.8.1-fork.1 --repo daidaiJ/codebase-memory-mcp --pattern 'codebase-memory-mcp-windows-amd64.exe'
mv codebase-memory-mcp-windows-amd64.exe <PATH目录>/codebase-memory-mcp.exe
codebase-memory-mcp --version其他平台可从源码构建(msys2 CLANG64:scripts/build.sh),或参考 docs/FORK_PATCHES.md 在上游版上自行应用补丁。
Agent 使用
搭配 skills/cbm/SKILL.md(何时用/不用、命令配方、信任闸门),无机器特定路径,可直接放入 agent 的 skills 目录。