ClawSkills logoClawSkills

QMD CLI

使用 qmd 从本地知识库搜索和检索 markdown 文档。支持 BM25 关键字搜索、向量语义搜索以及具有 LLM 重新排序功能的混合搜索

介绍

# QMD - Local Markdown Search

从本地索引的 Markdown 知识库中搜索和检索文档。

## 安装

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

## 设置

```bash # Add a collection qmd collection add ~/notes --name notes --mask "**/*.md"

# Generate embeddings (required for vsearch/query) qmd embed ```

## 使用规则

在调用 qmd 命令时,**务必使用 `--json` 标志**以获取结构化输出。

## 搜索命令

### search (BM25 关键词搜索 - 快速)

```bash qmd search "authentication flow" --json qmd search "error handling" --json -n 10 qmd search "config" --json -c notes ```

### vsearch (向量语义搜索)

```bash qmd vsearch "how does login work" --json qmd vsearch "authentication best practices" --json -n 20 ```

### query (混合搜索配合 LLM 重排序 - 最佳质量)

```bash qmd query "implementing user auth" --json qmd query "deployment process" --json --min-score 0.5 ```

### 搜索选项

| 选项 | 描述 | |--------|-------------| | `-n NUM` | 结果数量 (默认: 5,使用 --json 时为 20) | | `-c, --collection NAME` | 限制在特定集合中 | | `--min-score NUM` | 最低分数阈值 | | `--full` | 在结果中返回完整的文档内容 | | `--all` | 返回所有匹配项 |

## 检索命令

### get (单个文档)

```bash qmd get docs/guide.md --json qmd get "#a1b2c3" --json qmd get notes/meeting.md:50 -l 100 --json ```

### multi-get (多个文档)

```bash qmd multi-get "docs/*.md" --json qmd multi-get "api.md, guide.md, #abc123" --json qmd multi-get "notes/**/*.md" --json --max-bytes 20480 ```

## 维护命令

```bash qmd update # Re-index changed files qmd status # Check index health qmd collection list # List all collections ```

## 搜索模式选择

| 模式 | 速度 | 质量 | 最适用于 | |------|-------|---------|----------| | search | 快 | 良 | 精确关键词,已知术语 | | vsearch | 中等 | 较好 | 概念查询,同义词 | | query | 慢 | 最佳 | 复杂问题,不确定术语 |

**性能提示:** `vsearch` 和 `query` 在向量初始化时约有 1 分钟的冷启动延迟。交互式使用建议首选 `search`。

## MCP 服务器

qmd 可以作为 MCP 服务器运行,以便直接集成:

```bash qmd mcp ```

暴露工具:`qmd_search`、`qmd_vsearch`、`qmd_query`、`qmd_get`、`qmd_multi_get`、`qmd_status`

更多产品