Agent skill

Memfs Search

by letta-ai in letta-ai/skills

Semantic search over agent memory files. An agent skill from letta-ai/skills.

MITAuto-check passedAgent Workflows

Install Memfs Search

skills CLI
$ npx skills add letta-ai/skills --skill memfs-search -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install letta-ai/skills memfs-search --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/letta-ai/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/tools/memfs-search .claude/skills/memfs-search && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
memfs-search
GitHub stars
149
Token cost
~901 tokens
SKILL.md length
336 words
Files
4 (incl. scripts, references)
Skills in repo
22
Repo updated
First seen
Licence
MIT

At a glance

Semantic search over agent memory files. An agent skill from letta-ai/skills.

  • Works in 4 steps: Before creating a new memory file —… → User asks "do you know about X" — search… → During /init or memory reorg — verify… → …
  • You need to find conceptually related memory blocks
  • SKILL.md covers Setup, Searching, When to Search Proactively and Maintenance, plus 1 more section
  • Runs Shell scripts from its folder; calls bash

What it does

Memfs Search is an agent skill from letta-ai/skills. 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).

Its SKILL.md is about 900 tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts and reference files (for example `references/qmd-setup.md` and `scripts/memfs-search.sh`).

It sits in Agent Workflows, covering Agent memory and Embeddings. The repository describes itself as: A shared repository for skills. Intended to be used with Letta Code, Claude Code, Codex CLI, and other agents that support skills. The licence is MIT.

When your agent uses it

  • You need to find conceptually related memory blocks
  • Discover forgotten reference files
  • Check what you already know before creating new memory
  • Search beyond exact keyword matching

Example prompts

  • “/memfs-search”

Requirements

  • A Bash shell

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Before creating a new memory file — check if the topic already exists. $S search "topic" --files tells you instantly.
  2. User asks "do you know about X" — search before saying no. Reference files you haven't loaded recently might have it.
  3. During /init or memory reorg — verify coverage. Search for key concepts and confirm they're stored somewhere.
  4. Debugging "I told you about this" — the user thinks you should know something. Search memory before falling back to message history.

What it can do on your machine

Read from SKILL.md and the folder at commit 6785511. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • bash

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Memfs Search loads about 901 tokens when it runs, and up to ~1.5k if it reads all its reference files. Until then it costs about 73 tokens; SKILL.md has 336 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~73
When it runs · the whole SKILL.md, loaded when a task matches
~901
With references · SKILL.md plus every file in references/, read only if the agent opens them
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from letta-ai/skills at commit 6785511, republished under its MIT licence (© letta-ai). 336 words, ~901 tokens.

Download SKILL.mdSave it as .claude/skills/memfs-search/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
memfs-search
description
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).

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.

Setup

First time only. Run the setup script to create the index and generate embeddings:

bash
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.

Searching

Three tiers. Pick based on what you know about your query:

You have...UseCommandSpeed
An exact term or phrasekeywordsearch~0.3s
A vague concept ("what do I know about X")semanticvsearch~2s cold, <1s warm
No idea, need the best resultshybridquery~3s cold, <1s warm
bash
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.

Output Formats

All commands accept output flags forwarded to QMD:

bash
$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.

Retrieval

Fetch a specific file or batch of files without searching:

bash
# Single file
qmd get "system/human/identity.md" -c memory --full

# Batch by glob
qmd multi-get "reference/projects/*" -c memory

When to Search Proactively

Don't wait to be asked. Search memory when:

  1. Before creating a new memory file — check if the topic already exists. $S search "topic" --files tells you instantly.
  2. User asks "do you know about X" — search before saying no. Reference files you haven't loaded recently might have it.
  3. During /init or memory reorg — verify coverage. Search for key concepts and confirm they're stored somewhere.
  4. Debugging "I told you about this" — the user thinks you should know something. Search memory before falling back to message history.

Maintenance

After bulk memory changes (e.g. after /init, reorganization, creating many files):

bash
bash <SKILL_DIR>/scripts/memfs-search.sh reindex

Check index health:

bash
bash <SKILL_DIR>/scripts/memfs-search.sh status

When NOT to Use

  • Exact string matching — use Grep.
  • Finding files by name/pattern — use Glob.
  • Reading a file you already know the path to — use Read.
  • Searching message history — use the searching-messages skill.
  • The query is a single word that would match literally — keyword Grep is faster.

© letta-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (scripts, references) in tools/memfs-search of letta-ai/skills.

  • SKILL.md
  • LICENSE
  • references/qmd-setup.md
  • scripts/memfs-search.sh

Open the folder on GitHubat commit 6785511

Compare with similar skills

Memfs Search next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Memfs Search compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Memfs Search this skillletta-ai/skills149—~901Automated safety check: PassMIT
Agent RecallGoldentrii/AgentRecall-X371—~5.2kAutomated safety check: NotesMIT
Agent Memory Systemsomer-metin/skills-for-antigravity163—~731Automated safety check: PassApache-2.0
Agent Memory Systemsdavila7/claude-code-templates33k2 repos~577Automated safety check: PassMIT
MemoryEliasOulkadi/shokunin114—~2.3kAutomated safety check: NotesMIT
LanceDB Memory Configuration GuideCortexReach/memory-lancedb-pro-skill229—~14kAutomated safety check: PassNone

Similar skills

  • Agent Recall

    Goldentrii/AgentRecall-X

    Persistent compounding memory for AI agents. An agent skill from Goldentrii/AgentRecall-X.

    371 GitHub stars~5.2k tokensUpdated 13 days ago
    Agent WorkflowsAuto-check: notes
  • Agent Memory Systems

    omer-metin/skills-for-antigravity

    Memory is the cornerstone of intelligent agents. An agent skill from omer-metin/skills-for-antigravity.

    163 GitHub stars~731 tokensUpdated 8 mo ago
    Agent WorkflowsAuto-check passed
  • Agent Memory Systems

    davila7/claude-code-templates

    Memory is the cornerstone of intelligent agents. An agent skill from davila7/claude-code-templates.

    33k GitHub starsUsed in 2 repos~577 tokens
    Agent WorkflowsAuto-check passed
  • Memory

    EliasOulkadi/shokunin

    Persistent memory across AI sessions using ChromaDB vector database.

    114 GitHub stars~2.3k tokensUpdated 6 days ago
    Agent WorkflowsAuto-check: notes
  • LanceDB Memory Configuration Guide

    CortexReach/memory-lancedb-pro-skill

    Walks through installing and tuning memory-lancedb-pro, picking an embedding, reranker, and LLM combination from four preset configuration plans.

    229 GitHub stars~14k tokensUpdated 6 mo ago
    AI & LLM EngineeringAuto-check passed
  • Ownmem Dashboard

    grpcer/ownmem

    Open OwnMem Console, the local dashboard for this repository's memory.

    423 GitHub stars~563 tokensUpdated 5 days ago
    AI & LLM EngineeringAuto-check passed

More from letta-ai/skills

All 22 skills in this repo
  • Visual Identity

    letta-ai/skills

    Build and maintain a persistent visual identity for your agent using Flux Kontext Pro.

    149 GitHub stars~2.6k tokensUpdated 9 days ago
    Auto-check passed
  • AI News

    letta-ai/skills

    Fetch and summarize recent AI news from curated RSS feeds (Hugging Face, VentureBeat, The Verge, OpenAI, Anthropic, DeepMind, etc.) and YouTube channels (Yannic Kilcher, Two Minute Papers, AI…

    149 GitHub stars~582 tokensUpdated 9 days ago
    Auto-check passed
  • Builds and debugs Letta Code channels, including first-party channel adapters and dynamic user channel plugins under ~/.letta/channels.

    149 GitHub stars~1.1k tokensUpdated 9 days ago
    Auto-check passed
  • Letta Configuration

    letta-ai/skills

    Configure LLM models and providers for Letta agents and servers.

    149 GitHub stars~1.3k tokensUpdated 9 days ago
    Auto-check: notes
  • 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.

    149 GitHub stars~1.3k tokensUpdated 9 days ago
    Auto-check passed
  • Navigates archived ChatGPT or Claude-style conversation exports and a MemFS reference archive on demand.

    149 GitHub stars~1.3k tokensUpdated 9 days ago
    Auto-check passed

Categories

Questions about Memfs Search

What does Memfs Search do?

Semantic search over agent memory files. An agent skill from letta-ai/skills. Memfs Search is an agent skill from letta-ai/skills. Semantic search over agent memory files.

When should I use Memfs Search?

Memfs Search fits situations like: you need to find conceptually related memory blocks; discover forgotten reference files; check what you already know before creating new memory; search beyond exact keyword matching.

How do I install Memfs Search in Claude Code?

Run `npx skills add letta-ai/skills --skill memfs-search -a claude-code`. Or copy the skill folder (tools/memfs-search in letta-ai/skills) into .claude/skills/memfs-search in your project. Claude Code loads it when a task matches its description.

How do I install Memfs Search in Codex?

Run `npx skills add letta-ai/skills --skill memfs-search -a codex`. Or copy the skill folder (tools/memfs-search in letta-ai/skills) into .agents/skills/memfs-search in your project. Codex loads it when a task matches its description.

Can I use Memfs Search in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add letta-ai/skills --skill memfs-search -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/memfs-search, .gemini/skills/memfs-search, .github/skills/memfs-search and .opencode/skills/memfs-search in your project.

What does Memfs Search need to run?

Going by SKILL.md and its folder, Memfs Search needs a shell for the scripts in its folder and the command-line tools its instructions call (bash). Our summary lists: A Bash shell.

Does Memfs Search access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Memfs Search safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Memfs Search use?

Memfs Search is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Memfs Search use?

About 901 tokens (SKILL.md is roughly 3.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 629 tokens, read only when the agent opens those files.

What are the alternatives to Memfs Search?

Skills that share tags, products or a category with Memfs Search: Agent Recall (Goldentrii/AgentRecall-X, 371 stars), Agent Memory Systems (omer-metin/skills-for-antigravity, 163 stars), Agent Memory Systems (davila7/claude-code-templates, 33k stars) and Memory (EliasOulkadi/shokunin, 114 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Memfs Search?

letta-ai (a GitHub organization) maintains it in letta-ai/skills, which has 149 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on October 1, 2026.

Source: letta-ai/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.