session-notes
Installation
SKILL.md
Session Notes
Create and manage Obsidian notes using MCPVault MCP for structured documentation.
Workflow
resolve-vault --> select-type --> compose-note --> write --> link-related
Each note type has its own workflow. Use any type independently based on user needs.
Triggers
| Trigger Pattern | Reference |
|---|---|
| Project, new project note, document project | project.md |
| Challenge, technical challenge, take-home, coding interview | challenge.md |
| Brag, achievement, accomplishment | brag.md |
| Transcription, meeting notes, standup, lecture, course notes | transcription.md |
| Markdown, syntax, wikilink, callout, embed | markdown.md |
| Vault structure, organize vault | vault-structure.md |
Notes:
markdown.mdandvault-structure.mdare informational guides (no write operations).mapping.mdis not a direct trigger. It is loaded byproject.mdto resolve vault paths.- All other references are note-creation workflows (compose, write, link).
- Templates under
templates/are reference structure only; do not load them into context.
Cross-References
mapping.md <-- project.md (project loads mapping to resolve vault path)
challenge --> brag (completed challenge becomes achievement)
Filename Sanitization
When generating filenames from user input:
- Remove invalid characters:
/ \ : * ? " < > | - Replace accented characters with ASCII equivalents (e.g.,
é→e,ã→a) - Use Title Case for all filenames
- Example:
What's Next?becomesWhats Next.md
Writing Style
- Language: English for all notes
- Body: rich prose context after the heading, not just bullet points
- Bullet points: describe what happened and why, with natural language, and with enough context to understand weeks later
- Observations:
#category contentsyntax -- tags are indexed by Obsidian natively - Relations: typed verbs + wikilinks (
- follows [[X]],- part_of [[Project]],- contains [[Session]]) -- common types includefollows,part_of,expands,relates_to,implements,requires,replaces,pairs_with,extends,depends_on,contains; inline[[wikilinks]]in prose cover ordinary mentions, the Relations section holds typed edges that add graph value; omit the section if no typed edges apply - Wikilinks must point to existing files. Before adding a project link, verify the
{Name} Overview.mdfile exists in the vault. Never create orphan wikilinks -- clicking them creates empty files at the vault root
Guidelines
DO:
- Ask one question at a time when gathering context from the user
- Compose note content following
templates/*.mdstructure - Use
write_notefor new notes,read_note+patch_notefor updates - Use
search_notesto check if a note exists before creating - Link related notes using Obsidian wiki-links
[[Note Name]] - Use Title Case for filenames (e.g.,
My Project.md) - Sanitize filenames from user input (see Filename Sanitization above)
DON'T:
- Batch multiple questions to the user (contrasts: one question at a time)
- Overwrite or delete existing vault files (contrasts: append, rename, or cancel)
- Use templates for updates (contrasts: templates are for new notes only)
- Create duplicate notes (contrasts: search first with
search_notes) - Use absolute paths in wiki-links (contrasts: always relative)
- Create wikilinks to files that don't exist in the vault (contrasts: verify target exists before linking)
Output
Notes are created in the user's Obsidian vault:
Vault/
├── {VaultFolder}/
│ └── {Project}/
│ └── {Project Name} Overview.md
├── Challenges/
├── Brags/
└── Meetings/
The {VaultFolder} depends on the project category (e.g., Work/, Ventures/,
Projects/). See mapping.md for resolution.
Error Handling
- MCPVault unavailable: inform user the skill requires MCPVault MCP server
- Vault not found: ask user for correct vault name
- Note already exists: ask to append, choose new name, or cancel
- Empty required fields: prompt user for missing information
Related skills