.claude/skills/kb-search/SKILL.md
Search, retrieve, and index local markdown knowledgebase files using the QMD CLI. Use this skill whenever the user wants to: search a local knowledgebase of markdown files, retrieve specific documents or passages from indexed collections, index or re-index a directory of .md files, check the status of the knowledge index, or perform any knowledge retrieval task against local documentation. Triggers: "search the knowledgebase", "find in docs", "index my files", "look up", "search notes", "retrieve document", "knowledge search", "what does the docs say about", "find information about", "re-index", "update the index".
npx skillsauth add johncarpenter/knowledge-base kb-searchInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Search, retrieve, and index local markdown knowledgebase files via the QMD CLI. QMD is assumed to be installed and available on PATH.
When a user points to a new directory of markdown files, register it as a QMD collection and generate embeddings:
qmd collection add /path/to/docs --name <collection-name>
qmd embed
**/*.md — override with --mask if needed.qmd embed -f to force a full re-embed after significant content changes.qmd status to verify index health.Choose the right search mode based on the query:
| Mode | Command | When to use |
|---|---|---|
| Keyword | qmd search "term" | Fast exact-match, known terminology |
| Semantic | qmd vsearch "concept" | Conceptual/fuzzy queries |
| Hybrid | qmd query "question" | Best overall quality (default choice) |
Always prefer qmd query unless the user needs speed or has a specific keyword.
Key flags:
-n <num> — number of results (default 5)-c <collection> — restrict to a specific collection--min-score <float> — filter low-relevance results (0.0–1.0)--json — structured output, ideal for programmatic use--full — show complete document content in results--md — markdown-formatted outputExample — high-quality search with relevance filtering:
qmd query -n 10 --min-score 0.3 --json "user authentication"
Fetch specific files or passages after identifying them via search:
qmd get <path-or-docid> # Full document
qmd get <path>:<line> -l <count> # Specific line range
qmd multi-get "<glob-or-csv>" # Multiple documents
#docid syntax from search results for precise retrieval.--max-bytes with multi-get to skip oversized files.qmd update # Re-index all collections after file changes
qmd status # Check index health and stats
qmd cleanup # Remove orphaned cache data
Run qmd update after any batch of file additions/removals. Follow with qmd embed if new files were added.
Use named indexes to keep separate domains isolated:
qmd --index <name> collection add /path --name <coll>
qmd --index <name> query "search term"
--md for readable output.--json for structured data with snippets and scores.--files for docid,score,filepath,context format.| Range | Meaning | |---|---| | 0.8–1.0 | Highly relevant | | 0.5–0.8 | Moderately relevant | | 0.2–0.5 | Somewhat relevant | | < 0.2 | Low relevance — consider filtering |
qmd is not found: prompt user to install via bun install -g github:tobi/qmd.--min-score, or using qmd vsearch for semantic matching.qmd embed -f to force refresh.See references/qmd-cli.md for the complete command reference including all flags and options.
tools
Generate FinOps cost comparison report using cloud-doctor MCP for Suncorp Azure subscriptions
tools
Query, retrieve, and save Granola meeting notes and summaries locally using the proofgeist Granola MCP server (local cache-based). Use this skill whenever the user wants to: search or find past meetings, get meeting summaries or transcripts, copy meeting notes to local markdown files, review what was discussed in a meeting, look up action items or decisions from meetings, export meeting data, or analyze meeting patterns. Triggers: "meeting notes", "meeting summary", "what was discussed", "find the meeting", "copy meeting notes", "export meeting", "meeting transcript", "action items from meeting", "last meeting", "recent meetings", "meeting with [person]", "granola".
tools
Backup today's Granola meeting notes to local markdown files, organized by client folder. Uses Granola folder metadata to route meetings to appropriate client directories. Run this as part of an evening workflow to archive meeting notes, summaries, and action items. Triggers: "backup meetings", "save today's meetings", "archive meetings", "evening backup", "download meeting notes", "sync meetings", "meeting backup".
tools
Export a markdown file to PDF using Jinja templates and WeasyPrint. Renders markdown through the template system and converts to PDF. Supports metadata like title, author, client, date via YAML frontmatter or arguments. Triggers: "export to pdf", "render pdf", "convert to pdf", "make pdf", "export document as pdf", "pdf export", "generate pdf".