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, manag…
RuslanLanket
@ruslanlanket
What This Skill Does
Read, search, create, and edit Markdown notes in an Obsidian vault via CLI. Supports fuzzy/phonetic search, auto-folder detection, frontmatter management, tags, and wikilinks.
Replaces manually navigating and editing Obsidian notes by enabling programmatic read, search, write, and edit operations through a single command-line interface.
When to Use It
- Search across all notes using fuzzy or phonetic queries
- Create a new note with auto-detected folder and tags
- Append or prepend content to an existing note
- Replace a specific section within a note by heading
- List all notes or notes within a specific folder
- Retrieve incoming and outgoing wikilinks for a note
Install
$ openclaw skills install @ruslanlanket/obsidian-directObsidian 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
- 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
---
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 timestampmodified— last edit timestamptags— list of tagsaliases— 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
Top skills in this category
self-improving agent
@pskoettCaptures and maintains learnings, errors, and corrections. Use when a command fails, the user corrects an assumption, a capability is missing, knowledge is outdated, or a better approach is found. Review relevant saved guidance before major tasks, reuse, and promotion; revalidate it according to wha
Self-Improving + Proactive Agent
@ivangdavilaSelf-reflection + Self-criticism + Self-learning + Self-organizing memory. Agent evaluates its own work, catches mistakes, and improves permanently. Use when...
ontology
@oswalpalashTyped knowledge graph for structured agent memory and composable skills. Use when creating/querying entities (Person, Project, Task, Event, Document), linkin...
Humanizer
@biostartechnologyRemove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's comprehensive "Signs of AI writing" guide. Detects and fixes patterns including: inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, negative parallelisms, and excessive conjunctive phrases.
Obsidian
@steipeteWork with Obsidian vaults (plain Markdown notes) and automate via obsidian-cli.