Obsidian Notes Management
This skill enables Claude to manage notes in the user's Obsidian vault located at ~/Documents/Notes.
Vault Structure
- •Vault location:
~/Documents/Notes - •Project documentation: Store in
Project/folder with subfolders for different projects - •Additional categories: Will be added as needed
Operations
Create a New Note
Use the manage_notes.py script to create new notes:
python scripts/manage_notes.py create "Note Title" "Note content here" [folder]
Parameters:
- •
title: Note title (will be sanitized for filename) - •
content: Full markdown content of the note - •
folder: Optional folder path (e.g., "Project/MyProject")
Example:
python scripts/manage_notes.py create "API Documentation" "# API Docs\n\n## Overview\nThis documents our API..." "Project/Backend"
Read a Note
Read the content of an existing note:
python scripts/manage_notes.py read "path/to/note.md"
Returns JSON with the note content, modification date, and size.
Edit a Note
Replace the entire content of an existing note:
python scripts/manage_notes.py edit "path/to/note.md" "New content here"
Creates a .bak backup of the original content before editing.
Append to a Note
Add content to the end of an existing note:
python scripts/manage_notes.py append "path/to/note.md" "Additional content"
Search Notes
Search for notes containing specific text:
python scripts/manage_notes.py search "query text" [folder]
Parameters:
- •
query: Search term (case-insensitive) - •
folder: Optional folder to limit search scope
Returns JSON with matching notes and line numbers where matches occur.
List Notes
List all notes in the vault or a specific folder:
python scripts/manage_notes.py list [folder]
Returns JSON with note paths, names, modification dates, and sizes.
Best Practices
Content Formatting
- •Always use proper markdown formatting in note content
- •Include frontmatter (YAML metadata) when helpful for Obsidian features
- •Use WikiLinks
[[Note Name]]for internal links to other notes - •Use standard markdown links
[text](url)for external links
Project Documentation
- •Create project notes in
Project/ProjectName/subfolders - •Use consistent naming conventions (e.g.,
README.md,architecture.md,api-docs.md) - •Include timestamps or dates in meeting notes
- •Link related notes together using WikiLinks
Search and Organization
- •Search before creating to avoid duplicates
- •Use descriptive titles that reflect content
- •Consider folder structure when organizing related notes
- •Tag notes with
#tagsfor cross-cutting topics
Working with JSON Output
All script commands return JSON output. Parse the JSON to:
- •Check operation status
- •Extract note content or search results
- •Handle errors gracefully
Example JSON response structure:
{
"status": "success",
"path": "Project/MyProject/notes.md",
"content": "Note content..."
}
Error Handling
- •Script exits with non-zero status on errors
- •Error messages are printed to stderr
- •Backup files (
.bak) are created before editing operations - •Vault existence is verified before all operations
Workflow Examples
Creating Project Documentation
- •List existing projects:
list Project/ - •Create project subfolder structure as needed
- •Create notes with appropriate titles and content
- •Link notes together using WikiLinks
Searching and Updating
- •Search for relevant notes:
search "topic" - •Read specific notes:
read "path/to/note.md" - •Either edit (replace) or append (add to) as needed
- •Verify changes by reading the note again
Organizing Information
- •Determine appropriate folder structure
- •Create notes in correct locations
- •Use consistent naming and formatting
- •Add cross-references between related notes