什么是QMD CLI
QMD CLI 是一款专为本地 Markdown 知识库设计的命令行搜索工具,旨在帮助开发者和知识工作者高效检索和管理分散在文件系统中的文档、笔记和会议记录。通过将本地 Markdown 文件索引化,QMD 提供了比传统全文搜索更智能的查询能力,支持基于关键词的快速匹配、语义向量搜索以及结合大语言模型(LLM)重排序的混合搜索模式。该工具采用 Bun 作为运行时环境,安装简便,仅需一条命令即可完成全局安装。其设计初衷是解决本地知识库难以被有效检索的问题,尤其适合那些依赖大量 Markdown 文件进行知识沉淀和团队协作的用户。无论是个人开发者维护项目文档,还是团队共享技术笔记,QMD 都能显著提升信息获取的效率。 QMD 的核心优势在于其灵活的搜索模式和丰富的检索选项。它支持三种主要搜索方式:BM25 关键词搜索适用于快速定位明确术语;向量语义搜索(vsearch)则能理解查询的上下文含义,识别同义词和相关概念;而 query 模式结合了前两者并引入 LLM 进行结果重排序,提供最接近用户意图的高质量答案。此外,QMD 允许用户定义多个文档集合,并通过通配符掩码指定文件路径,极大增强了组织灵活性。所有命令均强制使用 `–json` 参数输出结构化数据,便于脚本自动化处理。同时,工具还提供了文档提取功能,可返回完整内容或指定片段,满足深度阅读需求。
核心功能特点
- 支持 BM25 关键词搜索、向量语义搜索及 LLM 重排序的混合搜索三种模式
- 可配置多个本地 Markdown 文档集合,支持通配符路径匹配
- 所有命令强制 JSON 输出,便于集成到脚本或工作流中
- 提供文档获取与批量提取功能,支持行号定位和字节数限制
- 可作为 MCP 服务器运行,直接对接 AI 助手实现智能问答
适用场景
QMD CLI 特别适合需要频繁查阅本地技术文档、会议纪要或个人笔记的场景。例如,一个后端工程师在调试认证流程时,可以使用 `qmd search “authentication flow”` 快速找到相关代码说明或设计文档;当问题涉及模糊描述如“如何安全存储密码”时,`vsearch` 模式能通过语义理解关联到包含“哈希”“加密”“bcrypt”等关键词的笔记,避免因用词差异导致的遗漏。对于复杂问题,如“部署微服务时的最佳实践”,`query` 模式会综合关键词匹配与语义相似度,并由 LLM 对结果重新排序,给出最相关的解决方案。 在企业或团队环境中,QMD 可用于构建统一的内部知识检索入口。假设某团队使用 Obsidian 或 Notion 导出的大量 Markdown 笔记散落于不同目录,管理员可通过 `qmd collection add` 将这些路径纳入索引,再配合 `-c notes` 参数限定搜索范围。开发人员编写脚本调用 `qmd multi-get` 自动拉取多个配置文件进行比对,或结合 CI/CD 流程在部署前检查变更文档。由于 QMD 支持 MCP 协议,还可将其嵌入 Cursor、Claude 等 AI 编程助手,实现自然语言提问自动返回本地文档片段,形成“本地知识即服务”的智能工作流。尽管向量搜索存在约一分钟的冷启动延迟,但在处理数百至上千篇 Markdown 文档时仍保持响应速度,平衡了性能与准确性。
