qmd

qmd is a skill for Claude Code, Codex from Tommy-yw/RunbookHermes. It costs 43 tokens per session (3,449 once invoked), scanned B, a copy of qmd, MIT.

A local search engine for notes, documents, and meeting transcripts, especially text and Markdown files. It combines exact word matching with meaning-based search and can reorder results using a language model.

In plain words
What is it for?
Use it to index and search notes, documentation, and transcripts on your own computer, including searches based on a concept rather than a specific keyword.
Why use it?
It helps find information across a large personal knowledge base when the exact wording is unknown.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to index and search notes, documentation, and transcripts on your own computer, including searches based on a concept rather than a specific keyword.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/tommy-yw/runbookhermes/qmd
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add Tommy-yw/RunbookHermes --skill qmd
Clone the repo
git clone --depth 1 https://github.com/Tommy-yw/RunbookHermes

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for qmd

README.md
[![agentmods](https://agentmods.dev/badge/skills/tommy-yw/runbookhermes/qmd/github.svg)](https://agentmods.dev/skills/tommy-yw/runbookhermes/qmd)
Your own site
<a href="https://agentmods.dev/skills/tommy-yw/runbookhermes/qmd"><img src="https://agentmods.dev/badge/skills/tommy-yw/runbookhermes/qmd/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for qmd

Your own site · 80×15
<a href="https://agentmods.dev/skills/tommy-yw/runbookhermes/qmd"><img src="https://agentmods.dev/badge/skills/tommy-yw/runbookhermes/qmd.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 43 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,449 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 2 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 91% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00043 $0.03449
Opus 5 $0.00022 $0.01724
Sonnet 5 $0.00009 $0.00690
Haiku 4.5 $0.00004 $0.00345

Measured 11d ago against content hash cebbdbaa558d, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade B, and why

qmd scanned grade B with 2 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Asks for rootmediumPrivilege escalation

A mod that escalates privileges can change anything on the machine, not only the project.

curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
Origin

This is a copy

91% identical to qmd — 4 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

optional-skills/research/qmd/SKILL.md · 442 lines

How it starts

The opening of the file, as written. The whole thing — 442 lines — stays where its author put it; the contents beside it link to each section on GitHub.

QMD — Query Markup Documents

Local, on-device search engine for personal knowledge bases. Indexes markdown notes, meeting transcripts, documentation, and any text-based files, then provides hybrid search combining keyword matching, semantic understanding, and LLM-powered reranking — all running locally with no cloud dependencies.

Created by Tobi Lütke. MIT licensed.

When to Use

  • User asks to search their notes, docs, knowledge base, or meeting transcripts
  • User wants to find something across a large collection of markdown/text files
  • User wants semantic search ("find notes about X concept") not just keyword grep
  • User has already set up qmd collections and wants to query them
  • User asks to set up a local knowledge base or document search system
  • Keywords: "search my notes", "find in my docs", "knowledge base", "qmd"

Prerequisites

Node.js >= 22 (required)

# Check version
node --version  # must be >= 22

# macOS — install or upgrade via Homebrew
brew install node@22

# Linux — use NodeSource or nvm
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt-get install -y nodejs
# or with nvm:
nvm install 22 && nvm use 22

SQLite with Extension Support (macOS only)

macOS system SQLite lacks extension loading. Install via Homebrew:

brew install sqlite

Install qmd

npm install -g @tobilu/qmd
# or with Bun:
bun install -g @tobilu/qmd

First run auto-downloads 3 local GGUF models (~2GB total):

Model Purpose Size
embeddinggemma-300M-Q8_0 Vector embeddings ~300MB
qwen3-reranker-0.6b-q8_0 Result reranking ~640MB
qmd-query-expansion-1.7B Query expansion ~1.1GB

Verify Installation

qmd --version
qmd status

Quick Reference

Command What It Does Speed
qmd search "query" BM25 keyword search (no models) ~0.2s
qmd vsearch "query" Semantic vector search (1 model) ~3s
qmd query "query" Hybrid + reranking (all 3 models) ~2-3s warm, ~19s cold
qmd get <docid> Retrieve full document content instant
qmd multi-get "glob" Retrieve multiple files instant
qmd collection add <path> --name <n> Add a directory as a collection instant
qmd context add <path> "description" Add context metadata to improve retrieval instant
qmd embed Generate/update vector embeddings varies
qmd status Show index health and collection info instant
qmd mcp Start MCP server (stdio) persistent
qmd mcp --http --daemon Start MCP server (HTTP, warm models) persistent

Read the full file on GitHub · 442 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 11d ago First seen · 442 lines · 43 tokens per session scan B cebbdbaa558d

Subscribe to this mod's changes

qmd is a skill published in the GitHub repository Tommy-yw/RunbookHermes (544 stars, last pushed 3mo ago), licensed MIT. It adds 43 tokens to every session and 3,449 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it B with 2 findings (asks for root, makes network calls). It is 91% identical to qmd, differing in 4 lines, and is treated as a copy.

Related

Other skills, from other repositories

media-ingest

Ingest video, audio, PDF, book, screenshot, and GitHub repo content into the brain. Multi-format handling with entity extraction and backlink propagation. Covers video-ingest, youtube-ingest, and book-ingest subtypes.

garrytan/gbrain · 52 tokens

mem0-oss-to-platform

Plan and then execute a migration of a project from the mem0 open-source / self-hosted SDK (the local Memory class) to the mem0 Platform / hosted / managed SDK (the MemoryClient class). Use this whenever a developer wants to move, switch, or migrate their mem0 usage off OSS/self-hosted to the hosted API — e.g.…

mem0ai/mem0 · 273 tokens

Cortex

Operate Cortex, the LifeOS memory system — the typed Knowledge Archive (People, Companies, Ideas, Research with typed related: links) plus recall of prior work sessions, ISAs, and conversations. Search, add, harvest, develop, ingest, distill, graph-navigate, recall. USE WHEN cortex, knowledge, knowledge base, search…

danielmiessler/LifeOS · 196 tokens

memory

Use when the user asks to remember, recall, forget, update, search, or inspect durable OpenSquilla memory, including profile facts in USER.md and long-term notes in MEMORY.md or memory//.md.

opensquilla/opensquilla · 44 tokens

ha-data-stores

Map of Hope Agent's local data stores and safe read-only query workflow. Use when the user asks where Hope Agent stores data, wants to inspect sessions/messages/memory/logs/background jobs/knowledge indexes/settings, asks the model to query local app data, or debugging requires checking persisted state. Trigger…

shiwenwen/hope-agent · 115 tokens

shellm

Reference for the shellm system — recursive LLM shell, identity management, memory, skills, trajectory, and all CLI tools. Use when working on shellm itself, debugging agent behavior, or understanding how the pieces fit together.

laude-institute/headlong · 49 tokens