Awesome-openclaw-skills qmd-4

Search and retrieve markdown documents from local knowledge bases using qmd. Supports BM25 keyword search, vector semantic search, and hybrid search with LLM re-ranking. Use for querying indexed notes, documentation, meeting transcripts, and any markdown-based knowledge. Requires qmd CLI installed (bun install -g https://github.com/tobi/qmd).

install
source · Clone the upstream repo
git clone https://github.com/sundial-org/awesome-openclaw-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/sundial-org/awesome-openclaw-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/qmd-4" ~/.claude/skills/sundial-org-awesome-openclaw-skills-qmd-4 && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/sundial-org/awesome-openclaw-skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/qmd-4" ~/.openclaw/skills/sundial-org-awesome-openclaw-skills-qmd-4 && rm -rf "$T"
manifest: skills/qmd-4/SKILL.md
source content

QMD - Local Markdown Search

Search and retrieve documents from locally indexed markdown knowledge bases.

Installation

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

Setup

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

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

Usage Rules

Always use

--json
flag for structured output when invoking qmd commands.

Search Commands

search (BM25 keyword search - fast)

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

vsearch (vector semantic search)

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

query (hybrid with LLM re-ranking - best quality)

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

Search Options

OptionDescription
-n NUM
Number of results (default: 5, or 20 with --json)
-c, --collection NAME
Restrict to specific collection
--min-score NUM
Minimum score threshold
--full
Return complete document content in results
--all
Return all matches

Retrieval Commands

get (single document)

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

multi-get (multiple documents)

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

Maintenance Commands

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

Search Mode Selection

ModeSpeedQualityBest For
searchFastGoodExact keywords, known terms
vsearchMediumBetterConceptual queries, synonyms
querySlowBestComplex questions, uncertain terms

Performance note:

vsearch
and
query
have ~1 minute cold start latency for vector initialization. Prefer
search
for interactive use.

MCP Server

qmd can run as an MCP server for direct integration:

qmd mcp

Exposes tools:

qmd_search
,
qmd_vsearch
,
qmd_query
,
qmd_get
,
qmd_multi_get
,
qmd_status