
Lore 发布:可对话的架构决策记录工具,内置本地混合搜索与 MCP
来源标题:Show HN: Lore, ADRs you can ask questions to (local hybrid search + MCP)
Lore 推出一款面向工程团队和 AI 编程助手的架构决策记录(ADR)工具,让用户能直接向决策记录提问。它提供 ADR 全生命周期管理,并以纯 markdown 形式保存在代码仓库中,同时内置零配置的本地混合搜索(BM25 + 向量嵌入),解决半年后难以检索历史决策的问题。
以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
ADRs 你可以在里面提问。
Architecture Decision Records 的全生命周期管理,外加零配置的本地混合搜索(BM25 + embeddings),为工程团队和 AI 编码代理而打造。
写 Architecture Decision Records 已经是个被解决的问题:adr-tools 和 log4brains 这类工具已经帮人搭了好几年 ADR 的骨架。但六个月后要找到当初那个正确的决策,还没解决。
grep 只有在你还记得确切用词时才管用。静态 ADR 站点只有在你还记得存在过这个决策时才管用。而你的 AI 编码助手(Cursor、Claude、Copilot)没法遵守它找不到的决策,于是就会编造出违反团队共识的模式。
lore 把这一环补上了。它管理完整的 ADR 生命周期(create、list、supersede、deprecate),并把你的决策、RFC 和 markdown 文档变成一个本地、可查询的语义记忆,人和 AI 代理都能向它提问。
📝 完整 ADR 生命周期:创建(lore add)、带关系地列出(lore list)、带自动交叉链接地取代(lore supersede)、修改状态(lore mark)。所有内容都以纯 markdown 保存在你的仓库里。
🔍 混合搜索(RRF):用 Reciprocal Rank Fusion 把向量余弦相似度(概念搜索)与 Okapi BM25(精确关键词与技术 token 匹配)结合起来。被取代的决策会直接在结果里标出来。
🚀 零云端、零配置:100% 本地运行,通过 Transformers.js 使用内嵌 ONNX embeddings(all-MiniLM-L6-v2)。不需要 API key,不需要 Docker,不需要外部服务。
🤖 内置 MCP Server(lore mcp):五个工具,让 Claude Desktop、Cursor 和代理式工作流可以原生地搜索、列出、记录和取代决策。
⚡ 增量缓存:基于内容哈希的增量索引(SHA-256)。对未变更的仓库重新索引耗时不到 25 毫秒。
🔗 精确源链接:结果指向精确的文件路径和行范围,带有可点击的 file:// URI。
如何对比 adr-tools log4brains lore 搭建 ADR ✅ ✅ ✅ 带交叉链接的取代 ✅ ✅ ✅ 语义 + 关键词搜索 ❌ ❌ ✅ AI 代理集成(MCP) ❌ ❌ ✅ 零配置安装 bash 脚本 Node + 静态站点 单个 npm 包 🚀 快速开始 npm install -g @ereotorres/lore-cli
或者一次性运行:npx @ereotorres/lore-cli init
- 在你的仓库里初始化 Lore lore init 这会创建 .lore/config.json 和 .lore/decisions/,并生成你的第一个示例 ADR。
⚡ Lore:正在索引仓库记忆... ✔ 仓库索引更新成功! 已扫描文件:8 总块数:24 从缓存复用:24 新嵌入:0 总耗时:18ms
-
向你的决策提问 lore query "how do we handle background workers and queues" 输出: 🔍 Lore 搜索:"how do we handle background workers and queues" 在 2 个文件中找到 3 个相关片段:
-
[100% 匹配] ADR-002:将后台 worker 迁移到 BullMQ 和 Redis 片段:ADR-002:将后台 worker 迁移到 BullMQ 和 Redis > Decision 文件:.lore/decisions/ADR-002-migrate-background-worker-to-bullmq-and-redis.md(第 7-10 行) 链接:file:///C:/dev/repo/.lore/decisions/ADR-002-migrate-background-worker-to-bullmq-and-redis.md#L7-L10 状态:accepted 标签:queue, redis "我们决定采用 BullMQ 配合 Redis Streams 进行异步作业处理,确保至少一次投递和分布式并发控制。"
-
记录一个新的架构决策 lore add "Adopt PostgreSQL with pgvector for semantic search"
--tag db
--tag rag
--status accepted 生成一个带版本号的 ADR 文件(ADR-003-...),并在半秒内自动重新索引仓库记忆。
查看每个决策、它的状态以及它们之间的关系
lore list 📜 Architecture Decision Records(3) ADR-001 proposed 用 Lore 记录架构决策(2026-10-27) ADR-002 superseded 使用 REST 轮询获取作业状态(2026-11-01)→ 被 ADR-003 取代 ADR-003 accepted 采用 WebSockets 获取作业状态(2026-11-10)↩ 取代 ADR-002
替换一个决策:创建新 ADR 并把两条记录互相链接
lore supersede 2 "Adopt WebSockets for job status"
直接修改状态(accepted | proposed | deprecated | superseded)
lore mark 1 deprecated
用 lore list --status accepted 或 lore list --json 进行过滤和脚本化。
lore hook 安装一个轻量的 .git/hooks/post-commit(或 Husky)hook,在每次提交后于后台静默地重新索引仓库文档。
lore 包含一个标准的 Model Context Protocol server。你的 AI 助手可以在写代码之前查阅已有的决策,并在会话过程中记录或取代你批准的决策。
"mcpServers": { "repo-lore": { "command": "npx
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。