🧪 Skills

Obsidian - read, search, write and edit direct to obsidian vault.

Work with Obsidian vaults as a knowledge base. Features: fuzzy/phonetic search across all notes, auto-folder detection for new notes, create/read/edit notes with frontmatter, manage tags and wikilinks

v1.0.0
❤️ 5
⬇️ 4.8k
👁 1
Share

Description


name: obsidian description: > Work with Obsidian vaults as a knowledge base. Features: fuzzy/phonetic search across all notes, auto-folder detection for new notes, create/read/edit notes with frontmatter, manage tags and wikilinks. Use when: querying knowledge base, saving notes/documents, editing existing notes by user instructions.

Obsidian Knowledge Base

Obsidian vault = folder with Markdown files + .obsidian/ config.

Configuration

  • Vault Path: /home/ruslan/webdav/data/ruslain
  • Env: OBSIDIAN_VAULT=/home/ruslan/webdav/data/ruslain

CLI Usage

Scripts location: /home/ruslan/.openclaw/workspace/skills/obsidian/scripts

Note: Global flags (--vault, --json) must come BEFORE the command.

export OBSIDIAN_VAULT=/home/ruslan/webdav/data/ruslain
cd /home/ruslan/.openclaw/workspace/skills/obsidian/scripts

# Search (fuzzy/phonetic) - uses ripgrep for speed
python3 obsidian_search.py "$OBSIDIAN_VAULT" "query" --limit 10 --json

# List notes
python3 obsidian_cli.py --json list                    # all notes
python3 obsidian_cli.py --json list "Projects"         # in folder

# List folders
python3 obsidian_cli.py --json folders

# Read note
python3 obsidian_cli.py --json read "Note Name"

# Create note
python3 obsidian_cli.py --json create "Title" -c "Content" -f "Folder" -t tag1 tag2
python3 obsidian_cli.py --json create "Title" -c "Content" --auto-folder  # auto-detect folder

# Edit note
python3 obsidian_cli.py --json edit "Note" append -c "Text to append"
python3 obsidian_cli.py --json edit "Note" prepend -c "Text at start"
python3 obsidian_cli.py --json edit "Note" replace -c "New full content"
python3 obsidian_cli.py --json edit "Note" replace-section -s "Summary" -c "New section text"

# Tags
python3 obsidian_cli.py --json tags

# Links (incoming/outgoing)
python3 obsidian_cli.py --json links "Note Name"

# Suggest folder for content
python3 obsidian_cli.py --json suggest-folder "content text" --title "Note Title"

Workflow: Query Knowledge Base

  1. Run obsidian_search.py with user query
  2. Read top results if needed for context
  3. Formulate answer based on found content
  4. Cite sources: [[Note Name]]

Workflow: Save Note

  1. If no folder specified → run suggest-folder or use --auto-folder
  2. Create note with create command
  3. Add appropriate tags based on content
  4. Report created path to user

Workflow: Edit Note by Prompt

User prompts like:

  • "Добавь резюме в конец заметки X" → edit X append -c "..."
  • "Перепиши заметку Y более кратко" → read note, rewrite, edit Y replace -c "..."
  • "Добавь секцию 'Выводы' в заметку Z" → edit Z replace-section -s "Выводы" -c "..."

Note Format

---
created: 2024-01-15T10:30:00
modified: 2024-01-15T12:00:00
tags:
  - project
  - work
---

# Title

Content with [[wikilinks]] and #inline-tags.

Wikilinks

  • [[Note Name]] — link to note
  • [[Note Name|Display Text]] — link with alias
  • [[Note Name#Section]] — link to section

Frontmatter Fields

Standard fields:

  • created — creation timestamp
  • modified — last edit timestamp
  • tags — list of tags
  • aliases — alternative names for linking

Search Behavior

obsidian_search.py uses:

  • ripgrep for fast initial filtering
  • Title matching (highest weight)
  • Tag matching
  • Fuzzy content search with phonetic transliteration (RU↔EN)
  • Returns: path, title, score, matched context

Reviews (0)

Sign in to write a review.

No reviews yet. Be the first to review!

Comments (0)

Sign in to join the discussion.

No comments yet. Be the first to share your thoughts!

Compatible Platforms

Pricing

Free

Related Configs