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.
bash
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
- •Run
obsidian_search.pywith user query - •Read top results if needed for context
- •Formulate answer based on found content
- •Cite sources:
[[Note Name]]
Workflow: Save Note
- •If no folder specified → run
suggest-folderor use--auto-folder - •Create note with
createcommand - •Add appropriate tags based on content
- •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
markdown
--- 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