SuperAPI AI 工具集

qmd-search

写作与研究

查看项目

更新于 10-16 06:38

技能介绍

qmd(Quick Markdown Search)是一个面向本地 Markdown 笔记、文档和 Claude 会话历史的快速搜索引擎。它通过命令行使用,适合需要在本机快速查找文本内容的场景。

用途 qmd 主要用于在本地 Markdown 文件中进行搜索,覆盖笔记、文档以及 Claude 会话历史。当用户提到“qmd”“search notes”“find docs”“search sessions”等关键词时,可以调用该工具。

主要能力 qmd 提供三种搜索模式:

  1. qmd search(默认,推荐使用):基于 BM25 的关键词匹配,结果即时返回。
  2. qmd vsearch(谨慎使用):向量相似度搜索,每次运行需加载本地模型,速度较慢。
  3. qmd query(避免使用):带 LLM 重排序的混合搜索,速度最慢且通常可靠性较低。

此外,qmd 支持获取完整文档、按集合过滤、多种输出格式(JSON、CSV、Markdown、XML、文件路径等),以及索引维护操作。

使用方式 快速开始:

  • 关键词搜索:qmd search "authentication flow"
  • 获取完整文档:qmd get "path/to/file.md"
  • 搜索特定集合:qmd search "react hooks" -c claude-sessions

常用命令: 搜索:

  • qmd search "query":默认关键词搜索
  • qmd search "query" -n 10:返回更多结果
  • qmd search "query" -c collection:限定集合
  • qmd search "query" --json:JSON 输出
  • qmd search "query" --files:仅文件路径
  • qmd search "query" --full:完整文档内容
  • qmd search "query" --all --min-score 0.3:返回阈值以上的所有匹配

检索文档:

  • qmd get "path/to/file.md":完整文档
  • qmd get "path/to/file.md:50":从第 50 行开始
  • qmd get "path/to/file.md" -l 100:最多 100 行
  • qmd multi-get "journals/2025-01*.md":glob 模式
  • qmd multi-get "doc1.md, doc2.md":多个文件

集合管理:

  • qmd collection list:显示所有集合
  • qmd collection add /path --name notes --mask "**/*.md"
  • qmd ls:列出集合中的文件
  • qmd ls collection-name:列出特定集合中的文件

维护:

  • qmd status:索引健康状态
  • qmd update:重新索引已更改文件
  • qmd embed:更新向量嵌入

输出格式: --json(带片段)、--files(docid、score、filepath、context)、--csv、--md、--xml、--full(完整文档内容)。

搜索选项: -n <num>(结果数量,默认 5)、-c/--collection <name>(按集合过滤)、--all(返回所有匹配)、--min-score <num>(最低相似度分数)、--line-numbers(添加行号)。

使用建议

  • 优先使用 qmd search,即时 BM25 关键词匹配。
  • 谨慎使用 qmd vsearch,因模型加载而较慢。
  • 避免使用 qmd query,混合搜索通常不可靠。
  • 使用 --json 或 --files 获得对智能体友好的输出。
  • 当已知目标时,使用 -c collection 缩小范围。
  • 索引位置:~/.cache/qmd/index.sqlite。

适用场景 适用于本地 Markdown 笔记、文档和 Claude 会话历史的快速检索,尤其适合需要命令行搜索、脚本集成或智能体调用的场景。

限制 qmd vsearch 每次运行需加载本地模型,速度较慢;qmd query 速度最慢且可靠性较低。其他限制暂未提供。