name: qmd
description: Search markdown knowledge bases, notes, and documentation using QMD. Use when users ask to search notes, find documents, or look up information.
license: MIT
compatibility: Requires qmd CLI or MCP server. Install via npm install -g @tobilu/qmd.
metadata:
author: tobi
version: "1.3.0"
Local search engine for markdown content.
!qmd status 2>/dev/null || echo "Not installed: npm install -g @tobilu/qmd"
structured_search{
"searches": [
{ "type": "lex", "query": "CAP theorem consistency" },
{ "type": "vec", "query": "tradeoff between consistency and availability" }
],
"collections": ["notes", "docs"],
"limit": 10
}
| Type | Method | Input |
|---|---|---|
lex |
BM25 | Keywords — exact terms, names, code |
vec |
Vector | Question — natural language |
hyde |
Vector | Answer — hypothetical result (50-100 words) |
lex (keyword)
"auth authentication login""PostgreSQL connection pool""handleError async"vec (semantic)
"how does the rate limiter handle burst traffic" not "rate limiting""in the payment service, how are refunds processed"hyde (hypothetical document)
"The rate limiter uses a sliding window algorithm with a 60-second window. When a client exceeds 100 requests per minute, subsequent requests return 429 Too Many Requests until the window resets."| Goal | Approach |
|---|---|
| Know exact terms | lex only |
| Don't know vocabulary | vec only |
| Best recall | lex + vec |
| Complex topic | lex + vec + hyde |
First query gets 2x weight in fusion — put your best guess first.
{ "collection": "docs" } // Single collection
{ "collections": ["docs", "notes"] } // Multiple (OR)
Omit both to search all collections.
| Tool | Use |
|---|---|
get |
Retrieve doc by path or #docid |
multi_get |
Retrieve multiple by glob/list |
status |
Collections and health |
qmd query "question" # Auto-expand + rerank
qmd query $'lex: X\nvec: Y' # Structured
qmd search "keywords" # BM25 only
qmd vsearch "question" # Vector only
qmd get "#abc123" # By docid
npm install -g @tobilu/qmd
qmd collection add ~/notes --name notes
qmd embed