mem
runablehq/memory
Store and retrieve memories with full-text search across sessions using local SQLite.
What is mem?
mem is a CLI tool for persisting notes, facts, decisions, code snippets, and images in a local SQLite database. Use it to remember information across sessions, search your knowledge base, and avoid re-asking users for previously stored information.
- Store memories with optional tags and images
- Full-text search across all stored memories
- Filter memories by tag or retrieve by ID
- List recent memories or show complete content
- Delete individual or multiple memories
- Output results as plain text, full content, or JSON
How to install mem
npx skills add https://github.com/runablehq/memory --skill memHow to use mem
- 1.List recent memories with `mem`
- 2.Search memories with `mem "keyword"` or filter by tag with `mem "keyword" --tag tagname`
- 3.Store a memory with `mem + "content" --tag tagname`
- 4.Retrieve full content by ID with `mem <id>`
- 5.Delete memories with `mem - <id>` or multiple with `mem - id1 id2 id3`
- 6.Pipe long content to store with `echo "content" | mem + --tag tagname`
Use cases
- Recall user preferences and project decisions without re-asking
- Store and retrieve code snippets, commands, and configurations
- Search your knowledge base before asking the user for information
- Attach screenshots or diagrams to memories for context
- Maintain architectural decisions and reasoning for future reference
- Coding agents needing persistent memory across sessions
- Developers managing code snippets and configurations
- Teams documenting decisions and preferences
- Anyone building a searchable personal knowledge base
mem FAQ
All data is stored locally in ~/.mem/mem.db as a SQLite database.
Yes, use full-text search with `mem "keyword"` or filter by tag with `mem "keyword" --tag tagname`.
Use `mem + --image ./path/to/image.png --title "Description" --tag tagname` to attach images to memories.
Default shows one-line summaries, `--full` shows complete content, and `--json` outputs structured JSON for parsing.
Yes, use `mem - id1 id2 id3` to delete multiple memories by their IDs.
Full instructions (SKILL.md)
Source of truth, from runablehq/memory.
name: mem description: Store and retrieve memories (notes, facts, decisions, snippets, images) using a local SQLite database with full-text search. Use when you need to remember information across sessions, recall previous decisions, store code snippets, or search your knowledge base.
mem — Agent Memory Store
A CLI tool for storing and retrieving memories with full-text search. Data is stored locally in ~/.mem/mem.db.
When to Use
- Remember user preferences, project decisions, important facts
- Store code snippets, commands, configurations for later recall
- Search your knowledge base before asking the user for information you may have stored
- Attach images (screenshots, diagrams) to memories
Commands
Three operators: (none) = recall, + = remember, - = forget.
Recall (search, list, get)
mem # list recent memories
mem "deploy" # full-text search
mem "database" --tag db # search filtered by tag
mem 7sjtNVyZrNIa # get full content by ID
mem --tag prefs # list filtered by tag
mem "api" --limit 5 --json # limit results, JSON output
mem --full # show full content for all
Remember
mem + "user prefers dark mode" --tag prefs
mem + "deploy: bun build --compile" --tag deploy
mem + "chose SQLite for simplicity" --tag architecture
mem + --image ./screenshot.png --title "Current UI" --tag ui
echo "long content" | mem + --tag notes
Forget
mem - <id> # delete one memory
mem - id1 id2 id3 # delete multiple
Piping
mem "old" --json | jq -r '.[].id' | xargs -I{} mem - {}
echo "long content" | mem + --tag notes
Best Practices
- Tag consistently — Use lowercase, descriptive tags like
prefs,api,deploy,db - Search before asking — Check if you've stored relevant information before asking the user
- Store decisions — When making architectural or design decisions, store the reasoning
- Keep memories atomic — One concept per memory for better searchability
Output Formats
- Default: One-line summary per result
--full: Complete content inline--json: Structured JSON for parsing
Related skills
More from runablehq/memory and the wider catalog.

mini-browser
Browser automation CLI for AI agents—navigate, screenshot, scrape, fill forms, and audit web pages.

companion-clis
Companion CLIs for Runpod workflows — HuggingFace, GitHub, Docker, and AWS.

flash
runpod-flash SDK and CLI for deploying AI workloads on Runpod serverless GPUs/CPUs.

runpodctl
CLI to manage Runpod GPU pods, serverless endpoints, templates, and volumes.

agent-adaptive-coordinator
Agent skill for adaptive-coordinator - invoke with $agent-adaptive-coordinator

agent-agent
Agent skill for agent - invoke with $agent-agent