Obsidian Vault Operations Skill
Core operations for managing an Obsidian vault with the ACE framework.
File Operations
Creating Notes
Always include YAML frontmatter:
---
date: YYYY-MM-DD
tags: []
# Additional properties based on note type
---
Note Types and Locations
| Type |
Location |
Required Properties |
| Daily |
calendar/daily/ |
date, tags |
| Meeting |
calendar/meetings/ |
date, tags, attendees, project |
| Idea |
atlas/ideas/ |
date, tags, status, related |
| Source |
atlas/sources/ |
date, tags, type, author, status |
| Effort |
efforts/{state}/ |
date, tags, energy, area, due |
| MOC |
*/maps/ |
date, tags |
File Naming
- Daily notes:
YYYY-MM-DD.md
- Other notes:
kebab-case-name.md
- No spaces in filenames
Wiki-Links
Link Syntax
[[note-name]] # Basic link
[[note-name|Display Text]] # Aliased link
[[note-name#Heading]] # Link to section
[[folder/note-name]] # Link with path
Link Best Practices
- Use relative paths from vault root
- Always link to actual files
- Use aliases for cleaner reading
- Link efforts from daily notes
Templates
Located in x/templates/:
daily.md - Daily note template
effort.md - Effort template
idea.md - Idea template
source.md - Source template
meeting.md - Meeting template
moc.md - Map of Content template
Template Variables
{{date}} - Current date
{{date:format}} - Formatted date
{{title}} - Note title
Frontmatter Processing
Reading Frontmatter
// Parse YAML between --- markers
const frontmatter = parseYAML(content.split('---')[1]);
Updating Frontmatter
Preserve existing properties, update only specified ones.
Obsidian Bases
.base files in views/ folders use JSON format:
{
"name": "View Name",
"query": {
"folder": "path/to/folder"
},
"view": {
"type": "table",
"columns": [...]
},
"sort": [...]
}
Common Operations
Create Daily Note
- Check if exists:
calendar/daily/YYYY-MM-DD.md
- Read template:
x/templates/daily.md
- Replace variables
- Write to daily folder
Move Effort Between States
- Read effort file
- Update
energy property in frontmatter
- Move file to new state folder
- Update any links in dashboard
Process Inbox Item
- Read item from
+/notes/
- Determine destination based on content
- Add appropriate frontmatter
- Move to destination
- Delete from inbox
Safety
- Always backup before bulk operations
- Preserve existing frontmatter
- Validate links before creating
- Don't modify
.obsidian/ config files