AgentSkillsCN

qmx

利用 QMX——一款本地混合搜索引擎——搜索个人 Markdown 知识库、笔记、会议记录与文档。QMX 结合了 BM25 关键词搜索、向量语义搜索,以及 LLM 重新排序功能。适用于用户希望搜索笔记、查找文档、在知识库中检索信息、获取会议记录,或搜索文档时使用。可通过“搜索 Markdown 文件”、“搜索我的笔记”、“在文档中查找”、“查阅”、“我写过什么”、“关于会议的笔记”等短语触发。

SKILL.md
--- frontmatter
name: qmx
description: Search personal markdown knowledge bases, notes, meeting transcripts, and documentation using QMX - a local hybrid search engine. Combines BM25 keyword search, vector semantic search, and LLM re-ranking. Use when users ask to search notes, find documents, look up information in their knowledge base, retrieve meeting notes, or search documentation. Triggers on "search markdown files", "search my notes", "find in docs", "look up", "what did I write about", "meeting notes about".
license: MIT
compatibility: Requires qmx CLI or MCP server. Install via `bun install -g https://github.com/dwirx/qmx`.
metadata:
  author: dwirx
  version: "2.0.0"
allowed-tools: Bash(qmx:*), mcp__qmx__*

QMX - Quick Markdown Search

QMX is a local, on-device search engine for markdown content. It indexes your notes, meeting transcripts, documentation, and knowledge bases for fast retrieval.

QMX Status

!qmx status 2>/dev/null || echo "Not installed. Run: bun install -g https://github.com/dwirx/qmx"

When to Use This Skill

  • User asks to search their notes, documents, or knowledge base
  • User needs to find information in their markdown files
  • User wants to retrieve specific documents or search across collections
  • User asks "what did I write about X" or "find my notes on Y"
  • User needs semantic search (conceptual similarity) not just keyword matching
  • User mentions meeting notes, transcripts, or documentation lookup

Search Commands

Choose the right search mode for the task:

CommandUse WhenSpeed
qmx searchExact keyword matches neededFast
qmx vsearchKeywords aren't working, need conceptual matchesMedium
qmx queryBest results needed, speed not criticalSlower
bash
# Fast keyword search (BM25)
qmx search "your query"

# Semantic vector search (finds conceptually similar content)
qmx vsearch "your query"

# Hybrid search with re-ranking (best quality)
qmx query "your query"

Common Options

bash
-n <num>                 # Number of results (default: 5)
-c, --collection <name>  # Restrict to specific collection
--all                    # Return all matches
--min-score <num>        # Minimum score threshold (0.0-1.0)
--full                   # Show full document content
--json                   # JSON output for processing
--files                  # List files with scores
--line-numbers           # Add line numbers to output

Document Retrieval

bash
# Get document by path
qmx get "collection/path/to/doc.md"

# Get document by docid (shown in search results as #abc123)
qmx get "#abc123"

# Get with line numbers for code review
qmx get "docs/api.md" --line-numbers

# Get multiple documents by glob pattern
qmx multi-get "docs/*.md"

# Get multiple documents by list
qmx multi-get "doc1.md, doc2.md, #abc123"

Index Management

bash
# Check index status and available collections
qmx status

# List all collections
qmx collection list

# List files in a collection
qmx ls <collection-name>

# Update index (re-scan files for changes)
qmx update

Score Interpretation

ScoreMeaningAction
0.8 - 1.0Highly relevantShow to user
0.5 - 0.8Moderately relevantInclude if few results
0.2 - 0.5Somewhat relevantOnly if user wants more
0.0 - 0.2Low relevanceUsually skip

Recommended Workflow

  1. Check what's available: qmx status
  2. Start with keyword search: qmx search "topic" -n 10
  3. Try semantic if needed: qmx vsearch "describe the concept"
  4. Use hybrid for best results: qmx query "question" --min-score 0.4
  5. Retrieve full documents: qmx get "#docid"

Example: Finding Meeting Notes

bash
# Search for meetings about a topic
qmx search "quarterly review" -c meetings -n 5

# Get semantic matches
qmx vsearch "performance discussion" -c meetings

# Retrieve the full meeting notes
qmx get "#abc123"

Example: Research Across All Notes

bash
# Hybrid search for best results
qmx query "authentication implementation" --min-score 0.3 --json

# Get all relevant files for deeper analysis
qmx query "auth flow" --all --files --min-score 0.4

MCP Server Integration (QMX)

This plugin configures the qmx MCP server automatically. When available, prefer MCP tools over Bash for tighter integration:

MCP ToolEquivalent CLIPurpose
searchqmx searchFast BM25 keyword search
getqmx getRetrieve document by path or docid
multi_getqmx multi-getRetrieve multiple documents
embedqmx embedGenerate/update embeddings
setupqmx setupBootstrap collections + contexts
statusqmx statusIndex health and collection info

For manual MCP setup without the plugin, see references/mcp-setup.md.