作者 Nirmal Khedkar 在个人站《I Gave Coding Agents a Search Engine with SQLite FTS5 and MCP》(meta/JSON-LD datePublished=2026-10-21)写明:为本地工程编排器 Whirlwind(Ideation/Planner/Coding/Reviewer 四角色)加项目记忆时,若把既往笔记全塞进每次提示,只是昂贵阅读作业。他把检索放在 Go 后端:先搜笔记本、交一小撮结果,任务中途再允许再搜——落地为 SQLite FTS5、排序策略与 MCP 工具 `search_lessons`。
课次记录含触发、应避免的错误、纠正与证据,并可带路径/符号/错误签名/源锚以便对照代码是否已变。检索按当前项目与角色作用域,作用域来自运行中的 operation,不由模型在搜索参数里自选。FTS5 虚拟表对标识符与纠正加权高于散文;精确路径/符号/错误签名优先于散文 BM25。索引可重建,触发器与主表同步;退役状态不得占候选窗。自动检索查询收窄为任务事实,避免角色说明书与已召回课次自我强化。交付前用工作树指纹核对源锚,不匹配则标 stale。
MCP 路径只收 query,项目/角色/operation 由服务端注入;标注只读但实际由服务端强制作用域。额度也在 SQLite:自动召回最多约 3 条且约 2KiB 块;on-demand 每 operation 约 2 次、单次约 2KiB、合计约 4KiB——字节限制而非 token。预算键含项目/任务/计划版本/角色/operation 等,重启 attempt 不刷新额度;失败搜索仍占调用次数。可选语义路径默认关,需有评估结果才开,失败回落 FTS5。作者重跑 race 测试覆盖检索/额度/MCP,但明确未跑 live model probes,故不声称任务更快或更准。本场景据此输出「可检索课次记忆」提纲。禁止建议把全库笔记灌进系统提示。