memory-metadata-search · basicmachines-co — Claude Code skill: query notes by metadata
A Basic Memory skill that finds notes by frontmatter fields — status, priority, confidence — instead of free text.
npx skills add basicmachines-co/basic-memory-skills --skill memory-metadata-search -a claude-codeWhat memory-metadata-search does
Basic Memory keeps structure in YAML frontmatter. Every key you add beyond the standard set (title, type, tags, permalink, schema) is indexed as entity_metadata and can be queried. This skill shows the agent how to build those queries with search_notes.
Filters go into metadata_filters as a JSON dictionary. Supported conditions: equality, list membership with $in, comparisons $gt, $gte, $lt, $lte, inclusive ranges with $between, and nested keys via dot notation such as {"schema.version": "2"}. Several keys combine with AND. Shortcuts exist for tags and status. A text query is optional — you can narrow one with filters or skip it entirely.
Operators need the $ prefix. Drop it and the filter is read as an exact-match key, returning nothing without an error: {"confidence": {"gte": 0.7}} fails where $gte works. Keys follow [A-Za-z0-9_-]+, an operator dict holds exactly one operator, and $between takes only [min, max].
What it helps with
- pull every note with
status: draft - list specs whose priority is
highorcritical - select notes above a confidence threshold
- narrow a text search with a frontmatter field
- filter notes by a nested schema field
Example prompts for the agent
- Find notes with
status: in-progressand typespec - Show notes where
confidenceis above 0.7 - Find notes tagged
securitywith statusdraft
How to install memory-metadata-search
1Skills CLI (Vercel)
npx skills add basicmachines-co/basic-memory-skills --skill memory-metadata-search -a claude-code2Manually: put the files in place
~/.claude/skills/memory-metadata-search/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/memory-metadata-search/
1Skills CLI (Vercel)
npx skills add basicmachines-co/basic-memory-skills --skill memory-metadata-search -a codex2Manually: put the files in place
.agents/skills/memory-metadata-search/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add basicmachines-co/basic-memory-skills --skill memory-metadata-search -a cursor2Manually: put the files in place
.cursor/skills/memory-metadata-search/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install basicmachines-co/basic-memory-skills memory-metadata-search2Manually: put the files in place
.github/skills/memory-metadata-search/SKILL.md1Skills CLI (Vercel)
npx skills add basicmachines-co/basic-memory-skills --skill memory-metadata-search -a gemini-cli2Platform CLI
gemini skills install https://github.com/basicmachines-co/basic-memory-skills --path memory-metadata-searchManually: put the files in place
.devin/skills/memory-metadata-search/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add basicmachines-co/basic-memory-skills --skill memory-metadata-search -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about memory-metadata-search
How do I install memory-metadata-search in Claude Code?
Run npx skills add basicmachines-co/basic-memory-skills --skill memory-metadata-search -a claude-code. The skill lands at ~/.claude/skills/memory-metadata-search/SKILL.md.
What does memory-metadata-search do?
It teaches the agent to query Basic Memory notes by frontmatter fields: equality, ranges, list membership, nested keys. Everything runs through search_notes with metadata_filters.
How is metadata search different from text search?
Text search looks at note content, metadata search matches a known field value. You can combine them — a text query plus a status or priority filter.
Similar skills
All skills for Agent setup: memory, context, orchestration →memory-metadata-search by other authors comes first.