Files
AGENTS/skills/obsidian-management/SKILL.md

9.8 KiB

name, description, compatibility
name description compatibility
obsidian-management Obsidian vault operations and file management for ~/CODEX. Use when: (1) creating/editing notes in Obsidian vault, (2) using templates from _chiron/templates/, (3) managing vault structure, (4) reading vault files, (5) organizing files within PARA structure. Triggers: obsidian, vault, note, template, create note, read note, organize files. opencode

Obsidian Management

File operations and template usage for Obsidian vault at ~/CODEX/.

Vault Structure

~/CODEX/
├── _chiron/              # System files
│   ├── context.md        # Primary context
│   └── templates/       # Note templates
├── 00-inbox/            # Quick captures
├── 01-projects/         # Active projects
├── 02-areas/            # Ongoing responsibilities
├── 03-resources/        # Reference material
├── 04-archive/          # Completed items
├── daily/               # Daily notes
└── tasks/               # Task management

Core Operations

Create Note

When user says: "Create a note called X", "Make a new note for X", "Add a note"

Steps:

  1. Determine location (ask if unclear):
    • 00-inbox/ for quick captures
    • 01-projects/[work|personal]/[project]/ for project notes
    • 02-areas/ for area notes
    • 03-resources/ for reference material
  2. Create file with proper filename (kebab-case, .md extension)
  3. Add frontmatter if using template
  4. Confirm creation

Example:

User: "Create a note about Obsidian plugins in resources"

Action:
1. Locate: ~/CODEX/03-resources/tools/obsidian-plugins.md
2. Create file with template or basic frontmatter
3. Confirm: "Created obsidian-plugins.md in 03-resources/tools/"

Read Note

When user says: "Read the note X", "Show me X note", "What's in X?"

Steps:

  1. Find note by:
    • Exact path if provided
    • Fuzzy search across vault
    • Dataview query if complex
  2. Read full note content
  3. Summarize key points if long
  4. Offer follow-up actions

Example:

User: "Read my learning-python note"

Action:
1. Search: rg "learning-python" ~/CODEX --type md
2. Read matching file
3. Present content
4. Offer: "Want to edit this? Add tasks? Link to other notes?"

Edit Note

When user says: "Update X", "Change X to Y", "Add to X"

Steps:

  1. Read existing note
  2. Locate section to modify
  3. Apply changes preserving formatting
  4. Maintain frontmatter structure
  5. Confirm changes

Preserve:

  • Wiki-links [[Note Name]]
  • Frontmatter YAML
  • Task formatting
  • Tags
  • Dataview queries

Use Template

When user says: "Create using template", "Use the X template"

Available templates:

Template Location Purpose
daily-note.md _chiron/templates/ Daily planning/reflection
weekly-review.md _chiron/templates/ Weekly review
project.md _chiron/templates/ Project initialization
meeting.md _chiron/templates/ Meeting notes
resource.md _chiron/templates/ Reference material
area.md _chiron/templates/ Area definition

Steps:

  1. Read template from _chiron/templates/[template-name].md
  2. Replace template variables ({{date}}, {{project}}, etc.)
  3. Create new file in appropriate location
  4. Fill in placeholder sections

Example:

User: "Create a new project using the project template for 'Learn Rust'"

Action:
1. Read _chiron/templates/project.md
2. Replace {{project}} with "learn-rust", {{date}} with today
3. Create: ~/CODEX/01-projects/personal/learn-rust/_index.md
4. Fill in: deadline, priority, goals, etc.

Search Vault

When user says: "Search for X", "Find notes about X", "Where's X?"

Search methods:

  1. Simple search: rg "term" ~/CODEX --type md
  2. Tag search: rg "#tag" ~/CODEX --type md
  3. Task search: rg "- \\[ \\]" ~/CODEX --type md
  4. Wiki-link search: rg "\\[\\[.*\\]\\]" ~/CODEX --type md

Present results grouped by:

  • Location (Projects/Areas/Resources)
  • Relevance
  • Date modified

Organize Files

When user says: "Organize inbox", "Move X to Y", "File this note"

Steps:

  1. Read file to determine content
  2. Consult chiron-core PARA guidance for proper placement
  3. Create proper directory structure if needed
  4. Move file maintaining links
  5. Update wiki-links if file moved

Example:

User: "Organize my inbox"

Action:
1. List files in 00-inbox/
2. For each file:
   - Read content
   - Determine PARA category
   - Move to appropriate location
3. Update broken links
4. Confirm: "Moved 5 files from inbox to Projects (2), Resources (2), Archive (1)"

File Operations

Paths

Always use absolute paths:

  • ~/CODEX//home/username/knowledge/
  • Expand ~ before file operations

Filenames

Naming conventions:

  • Notes: kebab-case.md (all lowercase, hyphens)
  • Projects: project-name/ (directory with _index.md)
  • Daily notes: YYYY-MM-DD.md (ISO date)
  • Templates: template-name.md (kebab-case)

Do NOT use:

  • Spaces in filenames
  • CamelCase (use kebab-case)
  • Special characters (except hyphens and underscores)

Frontmatter

Required fields:

---
title: "Note Title"
tags: [tag1, tag2]
created: YYYY-MM-DD
modified: YYYY-MM-DD
---

Project frontmatter:

---
title: "Project Name"
status: active | on-hold | completed
deadline: YYYY-MM-DD
priority: critical | high | medium | low
tags: [work, personal]
---

Task file frontmatter:

---
title: "Task List"
context: daily | project | area
tags: [tasks]
---

Format: [[Note Name]] or [[Note Name|Display Text]]

Best practices:

  • Use exact note titles
  • Include display text for clarity
  • Link to related concepts
  • Back-link from destination notes

Tags

Format: #tagname or #tag/subtag

Common tags:

  • #work, #personal
  • #critical, #high, #low
  • #project, #area, #resource
  • #todo, #done, #waiting

Template System

Template Variables

Replace these when using templates:

Variable Replacement
{{date}} Current date (YYYY-MM-DD)
{{datetime}} Current datetime (YYYY-MM-DD HH:mm)
{{project}} Project name
{{area}} Area name
{{title}} Note title
{{week}} Week number (e.g., W04)

Template Locations

Core templates in _chiron/templates/:

  • daily-note.md - Daily planning and reflection
  • weekly-review.md - Weekly review structure
  • project.md - Project initialization
  • meeting.md - Meeting notes template
  • resource.md - Reference material
  • area.md - Area definition
  • learning.md - Learning capture

Custom Templates

User can add templates to _chiron/templates/:

  1. Create new template file
  2. Use variable syntax: {{variable}}
  3. Document in _chiron/templates/README.md
  4. Reference in obsidian-management skill

Integration with Other Skills

Calls to other skills:

  • chiron-core - PARA methodology guidance for organization
  • task-management - Extract/update tasks from notes
  • quick-capture - Process inbox items
  • meeting-notes - Apply meeting template

Delegation rules:

  • User asks about PARA → chiron-core
  • User wants task operations → task-management
  • User wants quick capture → quick-capture
  • User wants meeting structure → meeting-notes

File Format Standards

Task Format (Obsidian Tasks plugin)

- [ ] Task description #tag ⏫ 📅 YYYY-MM-DD

Priority indicators:

  • = Critical (urgent AND important)
  • 🔼 = High (important, not urgent)
  • 🔽 = Low (nice to have)

Date indicators:

  • 📅 = Due date
  • = Start date
  • 🛫 = Scheduled date

Dataview Queries

LIST WHERE status = "active"
FROM "01-projects"
SORT deadline ASC
TABLE deadline, status, priority
FROM "-04-archive"
WHERE contains(tags, "#work")
SORT deadline ASC

Callouts

> [!INFO] Information
> Helpful note

> [!WARNING] Warning
> Important alert

> [!TIP] Tip
> Suggestion

> [!QUESTION] Question
> To explore

Error Handling

File Not Found

  1. Search for similar filenames
  2. Ask user to confirm
  3. Offer to create new file

Directory Not Found

  1. Create directory structure
  2. Confirm with user
  3. Create parent directories as needed

Template Not Found

  1. List available templates
  2. Offer to create template
  3. Use basic note structure if needed
  1. Find all notes linking to moved file
  2. Update links to new path
  3. Confirm updated links count

Best Practices

When Creating Notes

  1. Use descriptive titles
  2. Add relevant tags
  3. Link to related notes immediately
  4. Use appropriate frontmatter

When Editing Notes

  1. Preserve existing formatting
  2. Update modified date in frontmatter
  3. Maintain wiki-link structure
  4. Check for broken links

When Organizing

  1. Ask user before moving files
  2. Update all links
  3. Confirm final locations
  4. Document changes in daily note

Quick Reference

Action Command Pattern
Create note "Create note [title] in [location]"
Read note "Read [note-name]" or "Show me [note-name]"
Edit note "Update [note-name] with [content]"
Search "Search vault for [term]" or "Find notes about [topic]"
Use template "Create [note-type] using template"
Organize inbox "Organize inbox" or "Process inbox items"
Move file "Move [file] to [location]"

Resources

  • references/file-formats.md - Detailed format specifications
  • references/dataview-guide.md - Dataview query patterns
  • references/link-management.md - Wiki-link best practices
  • assets/templates/ - All template files

Load references when:

  • User asks about format details
  • Creating complex queries
  • Troubleshooting link issues
  • Template customization needed