Skip to content
Back to skills

Add Qmd

ASecurity

Add QMD (Query Markup Documents) as an advanced memory search backend. Upgrades the built-in grep-based memory_search with hybrid BM25 + vector semantic search + LLM re-ranking. Fully local, no API keys needed. Triggers on "add qmd", "qmd memory", "semantic memory search", "upgrade memory".

  • 193 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added May 26, 2026
ai-agentstypescriptbashsqlnodegitapidatabasebackend

Works with

  • api
  • mcp

Security analysis

A100/100

Scanned May 27, 2026

npx -y skills add sbusso/claudeclaw --skill add-qmd --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Add Qmd?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Add Qmd
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/sbusso-add-qmd/badge)](https://www.skillsdirectory.com/skills/sbusso-add-qmd)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: add-qmd
description: Add QMD (Query Markup Documents) as an advanced memory search backend. Upgrades the built-in grep-based memory_search with hybrid BM25 + vector semantic search + LLM re-ranking. Fully local, no API keys needed. Triggers on "add qmd", "qmd memory", "semantic memory search", "upgrade memory".
---

# Add QMD Memory Backend

QMD (https://github.com/tobi/qmd) is a local search engine for markdown files. It combines BM25 keyword search, vector semantic search, and LLM re-ranking — all running on-device via node-llama-cpp with GGUF models.

This skill upgrades ClaudeClaw's built-in grep-based `memory_search` MCP tool with QMD's hybrid search, giving agents much better recall across large memory collections.

## Prerequisites

- ClaudeClaw with memory tools already working (memory_search, memory_save, memory_get)
- ~2GB disk space for GGUF embedding + reranking models (downloaded on first run)
- Node.js 20+

## What This Skill Does

1. Installs QMD as an MCP server dependency
2. Configures QMD to index all group memory directories (`groups/*/memory/`, `groups/*/CLAUDE.md`, `groups/*/conversations/`)
3. Replaces the grep-based `memory_search` in `agent/runner/src/ipc-mcp-stdio.ts` with QMD's API
4. Adds QMD indexing to the agent startup flow (incremental re-index on each run)

## Implementation Notes

### QMD MCP Server

QMD exposes its search as an MCP server. Add to the agent runner's `mcpServers` config:

```typescript
qmd: {
  command: 'npx',
  args: ['qmd', 'mcp', '--collection', collectionPath],
  env: {},
}
```

### Indexing

QMD indexes markdown files into a local SQLite database. The collection should be configured per-group:

```bash
# Index a group's memory
qmd index --collection groups/{folder}/.qmd groups/{folder}/memory/ groups/{folder}/CLAUDE.md groups/{folder}/conversations/
```

### Search Integration

Replace the grep-based `memory_search` tool body with a call to QMD's MCP:

```typescript
// Before (grep-based):
const results = grepFiles(args.query, allFiles);

// After (QMD):
// Use the qmd MCP server's search tool
// Returns semantically ranked results with relevance scores
```

### Fallback

If QMD is not installed or indexing fails, fall back to the built-in grep-based search. This ensures memory tools always work even without QMD.

## Not Implemented Yet

This skill is a specification for future implementation. The built-in grep-based memory tools work without QMD. Run this skill when you want to upgrade to semantic search.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.