# QMD 功能验证报告 > **任务**: BIZ-17 (BIZ-14-2) > **测试人**: 严维序 (opengineer) > **测试日期**: 2026-06-22 > **版本**: v1.0 --- ## 1. 技能安装状态 ### 技能文件检查 | 检查项 | 路径 | 状态 | |--------|------|------| | SKILL.md | `~/.agents/skills/qmd/SKILL.md` | ✅ 存在 | | references/ | `~/.agents/skills/qmd/references/` | ✅ 存在 | | 版本 | SKILL.md 元数据 | `2.0.0` | ### CLI 安装检查 ```bash $ which qmd /usr/bin/qmd ``` ✅ QMD CLI 已全局安装(npm global)。 --- ## 2. CLI 运行状态 ### 问题发现 ```bash $ qmd status Error: The module 'better_sqlite3.node' was compiled against a different Node.js version using NODE_MODULE_VERSION 127. This version of Node.js requires NODE_MODULE_VERSION 137. ``` ### 根因分析 | 项目 | 说明 | |------|------| | 当前 Node.js | v24.16.0 (NODE_MODULE_VERSION 137) | | better-sqlite3 编译版本 | NODE_MODULE_VERSION 127 (Node.js v22.x) | | 影响 | QMD 所有命令不可用(search/query/get/status) | | 修复方案 | `sudo npm rebuild -g @tobilu/qmd` 或 `sudo npx node-gyp rebuild` 在 better-sqlite3 目录 | ### 修复尝试记录 | 尝试 | 命令 | 结果 | |------|------|------| | 1 | `npm rebuild -g @tobilu/qmd` | ❌ 超时被 SIGTERM | | 2 | `npx node-gyp rebuild` (better-sqlite3 目录) | ❌ 权限不足 (EACCES: rmdir 'build') | | 3 (推荐) | `sudo npm rebuild -g @tobilu/qmd` | ⏳ 待执行(需提权) | --- ## 3. QMD 功能能力(基于 SKILL.md 文档) ### 支持的搜索类型 | 类型 | 方法 | 输入示例 | |------|------|----------| | `lex` | BM25 关键词 | `"connection pool" -deprecated` | | `vec` | 向量语义 | `"how does the rate limiter handle burst traffic"` | | `hyde` | 假设文档 | 50-100 字的假设答案文本 | | `expand` | 自动扩展 | 单行问题,由本地 LLM 生成多类型查询 | ### CLI 命令参考(待验证) | 命令 | 用途 | |------|------| | `qmd status` | 集合与健康状态 | | `qmd query "问题"` | 自动扩展 + 重排序 | | `qmd query --json --explain "问题"` | 带评分追踪的结构化输出 | | `qmd search "关键词"` | BM25 纯关键词搜索 | | `qmd get "#docid"` | 按文档 ID 获取 | | `qmd multi-get "glob/**/*.md"` | 批量获取 | | `qmd collection add