tools/memfs-search/SKILL.md
Semantic search over agent memory files. Use when you need to find conceptually related memory blocks, discover forgotten reference files, check what you already know before creating new memory, or search beyond exact keyword matching. Currently supports QMD (local, no API keys).
npx skillsauth add letta-ai/skills memfs-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.
Semantic search over your memory filesystem. Useful when Grep isn't enough — finding conceptually related blocks, discovering forgotten reference files, or answering "what do I know about X" across all memory.
First time only. Run the setup script to create the index and generate embeddings:
bash <SKILL_DIR>/scripts/memfs-search.sh setup
This creates a QMD collection over $MEMORY_DIR, adds context annotations, and embeds all .md files. First run downloads ~2GB of local GGUF models to ~/.cache/qmd/models/.
For installation, embedding model options, and troubleshooting: references/qmd-setup.md.
Three tiers. Pick based on what you know about your query:
| You have... | Use | Command | Speed |
|-------------|-----|---------|-------|
| An exact term or phrase | keyword | search | ~0.3s |
| A vague concept ("what do I know about X") | semantic | vsearch | ~2s cold, <1s warm |
| No idea, need the best results | hybrid | query | ~3s cold, <1s warm |
S="bash <SKILL_DIR>/scripts/memfs-search.sh"
# Keyword — fast, use first
$S search "lettabot architecture"
# Semantic — conceptual, use when keyword misses
$S vsearch "how does the user feel about code reviews"
# Hybrid — best quality, uses keyword + vectors + reranking
$S query "projects cameron is working on"
Always start with keyword search. Only escalate when it misses. Hybrid is 10x slower than keyword.
All commands accept output flags forwarded to QMD:
$S search "topic" --json # structured (for processing)
$S search "topic" --files # file paths only (pipe into Read)
$S search "topic" --full # full document, not snippet
$S search "topic" -n 15 # more results (default: 5)
--json returns an array of objects with file, score, snippet, and context fields.
Fetch a specific file or batch of files without searching:
# Single file
qmd get "system/human/identity.md" -c memory --full
# Batch by glob
qmd multi-get "reference/projects/*" -c memory
Don't wait to be asked. Search memory when:
$S search "topic" --files tells you instantly./init or memory reorg — verify coverage. Search for key concepts and confirm they're stored somewhere.After bulk memory changes (e.g. after /init, reorganization, creating many files):
bash <SKILL_DIR>/scripts/memfs-search.sh reindex
Check index health:
bash <SKILL_DIR>/scripts/memfs-search.sh status
searching-messages skill.testing
Navigates archived ChatGPT or Claude-style conversation exports and a MemFS reference archive on demand. Use when recalling what a past assistant knew, searching old conversations, rendering specific chats, seeding reference memory from export sidecars, or mining historical context without doing a full import.
testing
Migrates deprecated Letta Filesystem folders/files to MemFS using markdown document corpora, chunking, local lexical search, and QMD semantic search via the memfs-search skill. Use when replacing folders.files.upload, working with PDFs or document QA, or emulating open_file, grep_file, and search_file behavior.
data-ai
Configures Letta agent compaction settings and custom summarization prompts. Use when a user asks to change an agent's compaction prompt, improve summaries after context eviction, tune sliding-window or all-message compaction, or design companion/coding-agent continuity summaries.
development
Build and maintain a persistent visual identity for your agent using Flux Kontext Pro. Use when the user asks the agent to generate selfies, avatars, character art, or any image that should look like the same person across generations.