Our review
Searches local indexed markdown knowledge bases using full-text and vector search.
Strengths
- Retrieves specific document IDs and line numbers for verifiable citations.
- Supports hybrid search combining exact terms, semantic vectors, and hypothetical document embeddings.
- Integrates with Claude Code via MCP, skill, and extension layers for seamless AI-assisted note retrieval.
- Allows cross-referencing between documents through links and backlinks.
Limitations
- Requires initial setup and indexing of markdown files, which may be time-consuming.
- Depends on the mnemonic CLI tool and cannot search unindexed or non-markdown files.
- Vector search quality relies on availability of a local embedding provider like Ollama.
Use this skill when you need to quickly retrieve specific information from a large collection of personal or team markdown notes, wikis, or documentation.
Do not use this skill for real-time queries against external databases, web sources, or file formats other than markdown.
Security analysis
SafeThe skill uses only read-only local CLI commands (mne status, search, query, get, links, backlinks) against a local SQLite index. No network calls, file modification, or destructive operations are instructed. The skill explicitly warns against mutation unprompted and shell-slicing with sed/head/tail, advocating safe parameterized retrieval. It poses no security risk.
No concerns found
Examples
What did I write about metrics as cockpit instruments and Goodhart's law?Find all documents that link to my note on product judgment metrics.Set up mnemonic to index my ~/notes directory and enable AI search.name: mnemonic
description: Search local indexed markdown knowledge bases. Use when the user asks to find notes, dig up a concept from personal docs, cross-reference ideas across wikis, or answer from indexed local files. Triggers on "look up in notes", "search my docs", "what did I write about", "find in my vault", "check my index", "retrieve from mne".
license: MIT
compatibility: Requires @naveenadi/mnemonic CLI. Install via npm install -g @naveenadi/mnemonic.
metadata:
version: "0.1.0"
allowed-tools: Bash(mne:*)
mnemonic — dig your local index
mnemonic runs searches against a local SQLite index of markdown files — notes, docs, wikis, vaults. Three branches: dig (the loop), setup (add collections), cross-reference (follow links between documents). Most runs only need the dig loop.
Dig loop
Run through every time. Every dig completes when the answer cites the documents it came from — docid and line numbers on every claim.
# 1. Check what's indexed
mne status
# 2. Find candidates
# Exact terms? Use BM25:
mne search "cockpit OKR Goodhart" -n 5
# Concept, vague wording, or the user paraphrases? Use hybrid with structured fields:
mne query $'intent: Find the concept note about metrics as instruments without replacing judgment.\nlex: cockpit instruments OKR Goodhart metrics\nvec: data informed not metric driven product judgment\nhyde: A concept note explains metrics are cockpit instruments that should inform, not drive, product judgment.'
Structured query fields:
intent:what you're trying to find and what to avoidlex:exact terms, titles, code symbols, rare wordsvec:paraphrase of the idea in natural languagehyde:a hypothetical document that would answer the request
Always write intent: plus at least one of lex:/vec:. You know the domain and what to dodge — do not delegate this to the expansion model.
# 3. Retrieve matched documents
# Results carry a docid (#abc123) and mne:// path
mne get "#abc123"
mne get "#abc123:120:40" # 40 lines from line 120
mne multi-get "#abc123,#def432" --json
# Output is line-numbered by default; cite line numbers with every claim
Completion criterion: every claim backed by a docid and line numbers. Do not answer from snippets alone — fetch the source.
# 4. Scope collections when results drift
mne query "headcount autonomous agents" -c concepts -n 10
mne ls concepts # List files in a collection
Cross-reference
After digging, follow links between documents to find connected context.
mne links #abc123 # Outgoing wikilinks
mne backlinks #abc123 # Incoming (what links here)
mne orphans # Documents with no links at all
mne query "deploy" --boost-links # Prefer well-linked docs
See references/link-graph.md for full cross-reference commands.
Setup
Never mutate the index unprompted. Only do this when the user asks to add a collection, index a new directory, or run diagnostics.
Quick setup via pi
If the pi extension is loaded, type /mne init — it asks questions interactively:
/mne init
→ Choose global or project-local scope
→ Enter directories to index
→ Index + embed (if Ollama available)
→ Optionally configure MCP, copy skill
Manual setup
npm install -g @naveenadi/mnemonic
mne init
mne collection add ~/notes --name notes
mne index # Scan files, build FTS5
mne embed # Generate vector embeddings
See references/setup.md for project-local --db mode, diagnostics, and maintenance.
Pi integration
mnemonic integrates at three pi layers — MCP, skill, and extension. Each can be installed globally (all projects) or project-local (per repo).
| Layer | Global | Per project |
|---|---|---|
| MCP | ~/.pi/agent/mcp.json | .pi/mcp.json |
| Skill | ~/.pi/agent/skills/mnemonic/ | .pi/skills/mnemonic/ |
| Extension | ~/.pi/agent/extensions/mnemonic/ | .pi/extensions/mnemonic/ |
Full instructions at references/pi-integration.md.
Pitfalls
- Fetch before claiming. Snippets are leads, not sources.
- Do not shell-slice files. Use
:from:countsuffix (e.g.#abc123:120:40) — neversed,head,tail. - Do not lean on auto-expansion. Write
intent:/lex:/vec:/hyde:yourself. A baremne query "user sentence"discards context only you have. - Prefer BM25 for exact terms. Semantic search is slower and drifts. If you know the title,
mne search "title"is better. - Do not mutate indexes casually.
mne indexandmne embedare expensive.
Task Prioritizer
Productivity
Prioritizes your tasks using Eisenhower, ICE, and RICE frameworks.
Weekly Status Report Generator
Productivity
Generate structured and concise weekly status reports.
Daily Standup Report
Productivity
Generates structured and concise daily standup reports.