ClawSkills logoClawSkills

QMD Search

使用 qmd 高效搜索 Markdown 知识库。在搜索 Obsidian vault 或 Markdown 集合以查找相关内容并尽可能减少 token 使用时使用。

介绍

# QMD Search Skill

使用 qmd 高效搜索 Markdown 知识库,这是一个本地索引工具,利用 BM25 + 向量嵌入(vector embeddings)仅返回相关片段而非完整文件。

## 为什么使用此工具

- **减少 96% 的 token** - 返回相关片段而非读取整个文件 - **即时结果** - 预索引内容意味着快速搜索 - **本地且私密** - 所有索引和搜索均在本地进行 - **混合搜索** - BM25 用于关键词匹配,向量搜索用于语义相似性

## 命令

### 搜索 (BM25 关键词匹配) ```bash qmd search "your query" --collection <name> ``` 快速、准确的关键词搜索。最适合特定术语或短语。

### 向量搜索 (语义) ```bash qmd vsearch "your query" --collection <name> ``` 语义相似性搜索。最适合措辞可能各异的概念性查询。

### 混合搜索 (两者 + 重排序) ```bash qmd hybrid "your query" --collection <name> ``` 结合两种方法并使用 LLM 重排序。最彻底,但往往有些大材小用。

## 如何使用

1. **检查集合是否存在**: ```bash qmd collection list ```

2. **搜索集合**: ```bash # For specific terms qmd search "api authentication" --collection notes

# For conceptual queries qmd vsearch "how to handle errors gracefully" --collection notes ```

3. **阅读结果**:qmd 返回带有文件路径和上下文的相关片段

## 设置(如果尚未安装 qmd)

```bash # Install qmd bun install -g https://github.com/tobi/qmd

# Add a collection (e.g., Obsidian vault) qmd collection add ~/path/to/vault --name notes

# Generate embeddings for vector search qmd embed --collection notes ```

## 调用示例

``` /qmd api authentication # BM25 search for "api authentication" /qmd how to handle errors --semantic # Vector search for conceptual query /qmd --setup # Guide through initial setup ```

## 最佳实践

- 使用 **BM25 搜索** (`qmd search`) 进行特定术语、名称或技术关键字的搜索 - 当搜索概念且措辞可能变化时,使用 **向量搜索** (`qmd vsearch`) - 除非您需要最大的召回率,否则避免使用混合搜索——它速度较慢 - 在添加大量新内容后重新运行 `qmd embed` 以保持向量最新

## 参数处理

- `$ARGUMENTS` 包含完整的搜索查询 - 如果存在 `--semantic` 标志,请使用 `qmd vsearch` 而不是 `qmd search` - 如果存在 `--setup` 标志,请引导用户完成安装和集合设置 - 如果指定了 `--collection <name>`,则使用该集合;否则默认检查可用的集合

## 工作流程

1. 从 `$ARGUMENTS` 解析参数 2. 检查 qmd 是否已安装 (`which qmd`) 3. 如果未安装,提议引导设置 4. 如果搜索: - 如果未指定集合,则列出集合 - 运行适当的搜索命令 - 向用户显示包含文件路径的结果 5. 如果用户想要阅读特定结果,请对文件路径使用 Read 工具

更多产品