| name | Vault |
| description | Read and write notes in the Obsidian vault. Use for task logs, knowledge capture, and building context. Use memory skill for atomic facts. |
Vault (Obsidian Notes)
Location: ~/Documents/Notes/
Principles
- Memory MCP for atomic facts - Quick retrieval of entities, observations, relations
- Obsidian vault for documents - Detailed notes, task logs, project context
- Unix tools for fast search - ripgrep (rg), fd, or mdfind for finding content efficiently
- WikiLinks for connections - Build traversable knowledge graph
- ALWAYS: New tasks should be in an
open state
Templates
templates/knowledge-note.md - For knowledge notes
templates/task.md - For new tasks
Bash Commands
rg --type md -l "^status:\s*in-progress" ~/Documents/Notes/Projects/*/Tasks
fd -t d -d 1 -i "<project>" ~/Documents/Notes/Projects
fd -e md . ~/Documents/Notes/Projects/*<project>*/Tasks
fd -e md -i "<name>" ~/Documents/Notes
fd -e md --changed-within 7d ~/Documents/Notes
mdfind -interpret -onlyin ~/Documents/Notes "<concept>"
Timestamps
Always use real timestamps, never placeholders:
date +"%Y-%m-%d %H%M%S"
date +"%Y-%m-%d %H:%M"
date -Iseconds
Task File Path
~/Documents/Notes/Projects/<YYYY[-MM] Project>/Tasks/<YYYY-MM-DD HHMMSS> <Title>.md
Linking Strategy
Link if it improves the note, not just because it matches a term.
What to search for
| Search for | Example (if writing about "Unison abilities") |
|---|
| Direct terms | "abilities", "Unison abilities" |
| Parent concepts | "effect handlers", "functional programming" |
| Sibling techniques | "monads", "algebraic effects" |
| Tools/tech used | "UCM", "Jit" |
Linking workflow
- Semantic discovery โ
mdfind -interpret for related concepts
- Backlinks โ
rg "\[\[<concept>" to find what links to your topics
- Tags overlap โ
rg "^ - <tag>$" for notes sharing tags
- Add discovered notes as WikiLinks using breadcrumb pattern:
[[Parent]] | [[Related]]
Capture Heuristics
Worth capturing when:
| Marker | Trigger |
|---|
| ๐ | Principle applies across multiple contexts |
| ๐ค | Caused debugging time or surprised me |
| โ๏ธ | Method that could save time later |
| ๐ | Link to documentation or source |
| โ๏ธ | Non-obvious choice with reasoning worth preserving |
Where to capture:
| Destination | When |
|---|
| Existing note | Discovery extends/refines an existing topic (search firs ) |
| New note | Substantial, standalone, referenceable by other notes |
| Task log only | One-off detail that won't generalise |
| Memory skill | Atomic fact for quick retrieval |
Note Locations
| Folder | Purpose | Examples |
|---|
Development/ | Conceptual, non-project, topics, paradigms, architectural patterns | "Functional Programming", "Test Driven Development", "Unison Web Application Patterns" |
HowTo/ | Procedural guides, specific techniques, step-by-step instructions, unrelated to projects | "Unison Testing with Effect Handlers", "TDD with Functional Programming" |
Tools/ | Software tools and their usage | "Claude", "Git", "HTMX", "Obsidian" |
Projects/<project>/ | Project level knowledge in an appropriate note in the project folder | |
Projects/<project>/Tasks/ | Task logs only โ never knowledge notes | |
Projects/<project>/Glossary | Glossary entries | |
Integration with Memory Skill
| Need | Tool |
|---|
| Atomic facts | Memory skill |
| Detailed docs | Vault (this skill) |
| Task logs | Projects/<project>/Tasks/ |
| Fast search | Bash commands above |
What NOT to include
- DO NOT include changed files