← 返回
效率工具 中文

Qmd

Search markdown knowledge bases, notes, and documentation using QMD. Use when users ask to search notes, find documents, or look up information.
使用 QMD 搜索 Markdown 知识库、笔记和文档。当用户需要搜索笔记、查找文档或查询信息时使用。
satvik374
效率工具 clawhub v0.1.0 1 版本 100000 Key: 无需
★ 0
Stars
📥 520
下载
💾 2
安装
1
版本
#latest

概述

QMD - Quick Markdown Search

Local search engine for markdown content.

Status

!qmd status 2>/dev/null || echo "Not installed: npm install -g @tobilu/qmd"

MCP: query

{
  "searches": [
    { "type": "lex", "query": "CAP theorem consistency" },
    { "type": "vec", "query": "tradeoff between consistency and availability" }
  ],
  "collections": ["docs"],
  "limit": 10
}

Query Types

TypeMethodInput
---------------------
lexBM25Keywords — exact terms, names, code
vecVectorQuestion — natural language
hydeVectorAnswer — hypothetical result (50-100 words)

Writing Good Queries

lex (keyword)

  • 2-5 terms, no filler words
  • Exact phrase: "connection pool" (quoted)
  • Exclude terms: performance -sports (minus prefix)
  • Code identifiers work: handleError async

vec (semantic)

  • Full natural language question
  • Be specific: "how does the rate limiter handle burst traffic"
  • Include context: "in the payment service, how are refunds processed"

hyde (hypothetical document)

  • Write 50-100 words of what the answer looks like
  • Use the vocabulary you expect in the result

expand (auto-expand)

  • Use a single-line query (implicit) or expand: question on its own line
  • Lets the local LLM generate lex/vec/hyde variations
  • Do not mix expand: with other typed lines — it's either a standalone expand query or a full query document

Intent (Disambiguation)

When a query term is ambiguous, add intent to steer results:

{
  "searches": [
    { "type": "lex", "query": "performance" }
  ],
  "intent": "web page load times and Core Web Vitals"
}

Intent affects expansion, reranking, chunk selection, and snippet extraction. It does not search on its own — it's a steering signal that disambiguates queries like "performance" (web-perf vs team health vs fitness).

Combining Types

GoalApproach
----------------
Know exact termslex only
Don't know vocabularyUse a single-line query (implicit expand:) or vec
Best recalllex + vec
Complex topiclex + vec + hyde
Ambiguous queryAdd intent to any combination above

First query gets 2x weight in fusion — put your best guess first.

Lex Query Syntax

SyntaxMeaningExample
--------------------------
termPrefix matchperf matches "performance"
"phrase"Exact phrase"rate limiter"
-termExcludeperformance -sports

Note: -term only works in lex queries, not vec/hyde.

Collection Filtering

{ "collections": ["docs"] }              // Single
{ "collections": ["docs", "notes"] }     // Multiple (OR)

Omit to search all collections.

Other MCP Tools

ToolUse
-----------
getRetrieve doc by path or #docid
multi_getRetrieve multiple by glob/list
statusCollections and health

CLI

qmd query "question"              # Auto-expand + rerank
qmd query $'lex: X\nvec: Y'       # Structured
qmd query $'expand: question'     # Explicit expand
qmd query --json --explain "q"    # Show score traces (RRF + rerank blend)
qmd search "keywords"             # BM25 only (no LLM)
qmd get "#abc123"                 # By docid
qmd multi-get "journals/2026-*.md" -l 40  # Batch pull snippets by glob
qmd multi-get notes/foo.md,notes/bar.md   # Comma-separated list, preserves order

HTTP API

curl -X POST http://localhost:8181/query \
  -H "Content-Type: application/json" \
  -d '{"searches": [{"type": "lex", "query": "test"}]}'

Setup

npm install -g @tobilu/qmd
qmd collection add ~/notes --name notes
qmd embed

版本历史

共 1 个版本

  • v0.1.0 当前
    2026-03-20 06:07 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

productivity

Weather

steipete
获取当前天气和预报(无需API密钥)
★ 446 📥 226,454
productivity

Nano Pdf

steipete
使用nano-pdf CLI通过自然语言指令编辑PDF
★ 275 📥 114,962
productivity

Word / DOCX

ivangdavila
创建、检查和编辑 Microsoft Word 文档及 DOCX 文件,支持样式、编号、修订记录、表格、分节符及兼容性检查等功能。
★ 440 📥 148,113