ai/dot-agents/skills/memory/SKILL.md
Persistent memory across sessions using qmd. Use this skill to remember things about the user, recall past decisions, store learned preferences, and avoid repeating mistakes. Memory survives across sessions and is searchable.
npx skillsauth add lolwierd/dotfiles memoryInstall 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.
Persistent, searchable memory that survives across sessions. Powered by qmd — a local search engine backed by SQLite.
Memories are stored as markdown files in ~/.pi/agent/memory/ and indexed by qmd for fast keyword and semantic search.
Memory files live in: ~/.pi/agent/memory/
qmd collection name: memory
Each memory is a markdown file with a descriptive filename. Files are organized by topic/category using subdirectories.
Before starting work, search for relevant context:
# Keyword search — fast (<1s), use this as your default
qmd search "user preference dark mode" -c memory -n 10
# Semantic search — slower (~20s) but finds conceptually related things even without keyword matches
# Use only when keyword search returns nothing useful
qmd vsearch "what fonts has the user liked before" -c memory -n 10
# Get full content of a specific memory file
qmd get "memory/some-file.md" --full
Always use -c memory to scope searches to the memory collection.
⚠️ Do NOT use qmd query — it runs a local LLM for query expansion and hangs on this machine. Use search (keyword) or vsearch (semantic) instead.
Write a markdown file, then update the index:
# 1. Write the memory file
cat > ~/.pi/agent/memory/CATEGORY/descriptive-name.md << 'MEMORY'
# Title
Content here...
MEMORY
# 2. Update the qmd index so it's searchable
qmd update
After saving several memories or when doing important saves, also regenerate embeddings for semantic search:
qmd embed
qmd ls memory
rm ~/.pi/agent/memory/path/to/file.md
qmd update
Each memory file should be clear, concise, and self-contained:
# Short descriptive title
**Date:** YYYY-MM-DD
**Context:** What prompted this memory (optional but helpful)
The actual content. Be specific and concise. Include:
- What was learned/decided
- Why (the reasoning matters for future decisions)
- Any relevant details that would help future recall
Organize memories into categories. Create subdirectories as needed:
~/.pi/agent/memory/
├── user/ # About the user
│ ├── preferences.md # General preferences
│ ├── design-taste.md # Design/aesthetic preferences
│ └── workflow.md # How they like to work
├── decisions/ # Significant decisions made
│ ├── project-name/ # Per-project decisions
│ │ ├── architecture.md
│ │ └── design.md
│ └── ...
├── projects/ # Project logs and context
│ ├── project-name.md # What was built, key details
│ └── ...
├── patterns/ # Learned patterns (good and bad)
│ ├── what-works.md
│ └── mistakes-to-avoid.md
├── tools/ # Tool preferences, setup details
│ └── ...
└── ... # Create new categories as needed
design-taste.md is better than notes.md. 2026-02-19-website-rebuild.md is better than website.md.qmd get to read the existing file first.qmd update after writing. Memories aren't searchable until indexed.development
Present visual options for architecture, UI, and code decisions with high-fidelity side-by-side previews. For comparing approaches visually — code diffs, diagrams, UI mockups, images — not for gathering structured input (use interview for that). Supports previewBlocks (code, mermaid, image, html), previewHtml, generate-more loops, and plan/PRD-driven flows.
development
Generate beautiful, self-contained HTML pages that visually explain systems, code changes, plans, and data. Use when the user asks for a diagram, architecture overview, diff review, plan review, project recap, comparison table, or any visual explanation of technical concepts. Also use proactively when you are about to render a complex ASCII table (4+ rows or 3+ columns) — present it as a styled HTML page instead.
development
Use when the task asks for a visually strong landing page, website, app, prototype, demo, or game UI. This skill enforces restrained composition, image-led hierarchy, cohesive content structure, and tasteful motion while avoiding generic cards, weak branding, and UI clutter.
devops
Deploy applications and infrastructure to Cloudflare using Workers, Pages, and related platform services. Use when the user asks to deploy, host, publish, or set up a project on Cloudflare.