$npx -y skills add getpaperclipai/paperclip --skill para-memory-filesFile-based memory system using Tiago Forte's PARA method. Use this skill whenever you need to store, retrieve, update, or organize knowledge across sessions. Covers three memory layers: (1) Knowledge graph in PARA folders with atomic YAML facts, (2) Daily notes as raw timeline, (
| 1 | # PARA Memory Files |
| 2 | |
| 3 | Persistent, file-based memory organized by Tiago Forte's PARA method. Three layers: a knowledge graph, daily notes, and tacit knowledge. All paths are relative to `$AGENT_HOME`. |
| 4 | |
| 5 | ## Three Memory Layers |
| 6 | |
| 7 | ### Layer 1: Knowledge Graph (`$AGENT_HOME/life/` -- PARA) |
| 8 | |
| 9 | Entity-based storage. Each entity gets a folder with two tiers: |
| 10 | |
| 11 | 1. `summary.md` -- quick context, load first. |
| 12 | 2. `items.yaml` -- atomic facts, load on demand. |
| 13 | |
| 14 | ```text |
| 15 | $AGENT_HOME/life/ |
| 16 | projects/ # Active work with clear goals/deadlines |
| 17 | <name>/ |
| 18 | summary.md |
| 19 | items.yaml |
| 20 | areas/ # Ongoing responsibilities, no end date |
| 21 | people/<name>/ |
| 22 | companies/<name>/ |
| 23 | resources/ # Reference material, topics of interest |
| 24 | <topic>/ |
| 25 | archives/ # Inactive items from the other three |
| 26 | index.md |
| 27 | ``` |
| 28 | |
| 29 | **PARA rules:** |
| 30 | |
| 31 | - **Projects** -- active work with a goal or deadline. Move to archives when complete. |
| 32 | - **Areas** -- ongoing (people, companies, responsibilities). No end date. |
| 33 | - **Resources** -- reference material, topics of interest. |
| 34 | - **Archives** -- inactive items from any category. |
| 35 | |
| 36 | **Fact rules:** |
| 37 | |
| 38 | - Save durable facts immediately to `items.yaml`. |
| 39 | - Weekly: rewrite `summary.md` from active facts. |
| 40 | - Never delete facts. Supersede instead (`status: superseded`, add `superseded_by`). |
| 41 | - When an entity goes inactive, move its folder to `$AGENT_HOME/life/archives/`. |
| 42 | |
| 43 | **When to create an entity:** |
| 44 | |
| 45 | - Mentioned 3+ times, OR |
| 46 | - Direct relationship to the user (family, coworker, partner, client), OR |
| 47 | - Significant project or company in the user's life. |
| 48 | - Otherwise, note it in daily notes. |
| 49 | |
| 50 | For the atomic fact YAML schema and memory decay rules, see [references/schemas.md](references/schemas.md). |
| 51 | |
| 52 | ### Layer 2: Daily Notes (`$AGENT_HOME/memory/YYYY-MM-DD.md`) |
| 53 | |
| 54 | Raw timeline of events -- the "when" layer. |
| 55 | |
| 56 | - Write continuously during conversations. |
| 57 | - Extract durable facts to Layer 1 during heartbeats. |
| 58 | |
| 59 | ### Layer 3: Tacit Knowledge (`$AGENT_HOME/MEMORY.md`) |
| 60 | |
| 61 | How the user operates -- patterns, preferences, lessons learned. |
| 62 | |
| 63 | - Not facts about the world; facts about the user. |
| 64 | - Update whenever you learn new operating patterns. |
| 65 | |
| 66 | ## Write It Down -- No Mental Notes |
| 67 | |
| 68 | Memory does not survive session restarts. Files do. |
| 69 | |
| 70 | - Want to remember something -> WRITE IT TO A FILE. |
| 71 | - "Remember this" -> update `$AGENT_HOME/memory/YYYY-MM-DD.md` or the relevant entity file. |
| 72 | - Learn a lesson -> update AGENTS.md, TOOLS.md, or the relevant skill file. |
| 73 | - Make a mistake -> document it so future-you does not repeat it. |
| 74 | - On-disk text files are always better than holding it in temporary context. |
| 75 | |
| 76 | ## Memory Recall -- Use qmd |
| 77 | |
| 78 | Use `qmd` rather than grepping files: |
| 79 | |
| 80 | ```bash |
| 81 | qmd query "what happened at Christmas" # Semantic search with reranking |
| 82 | qmd search "specific phrase" # BM25 keyword search |
| 83 | qmd vsearch "conceptual question" # Pure vector similarity |
| 84 | ``` |
| 85 | |
| 86 | Index your personal folder: `qmd index $AGENT_HOME` |
| 87 | |
| 88 | Vectors + BM25 + reranking finds things even when the wording differs. |
| 89 | |
| 90 | ## Planning |
| 91 | |
| 92 | Keep plans in timestamped files in `plans/` at the project root (outside personal memory so other agents can access them). Use `qmd` to search plans. Plans go stale -- if a newer plan exists, do not confuse yourself with an older version. If you notice staleness, update the file to note what it is supersededBy. |