Shared with the user MyObsidian vault。All vault operations must go through obsidian CLI, do not use file tools such as Read/Write/Edit to directly read or write the .md files in the vault.
Primary Rules
Before touching the vault for the first time in each session, first read AGENTS.md to get the current vault's directories, tags, frontmatter, and privacy conventions:
obsidian vault=MyObsidian read file="AGENTS"
AGENTS.md is the single source of truth for vault conventions. This skill does not redefine any directories, tags, or frontmatter fields.
Mandatory Use of the CLI
The following operationsmustuse the Obsidian CLI, andmust notbe replaced with file tools:
| Operation | Reason |
|---|---|
| Read notes | The CLI automatically resolves wikilinks and file names |
| Search the vault | File tools cannot do full-text search |
| Create/overwrite notes | The CLI automatically handles frontmatter and triggers Obsidian indexing |
| Append content | The CLI guarantees existing structure is not broken |
| Update frontmatter | property:set safely modify a single field |
| Move/rename | move automatically fix all wikilinks |
| Daily read/write | The CLI automatically locates the correct Daily file path |
Incorrect Example(do not do this):
# ❌ 用 Read 直接读 vault 文件
cat /Users/zhuxining/MyObsidian/01_Daily/2026/06/2026-06-25.md
# ❌ 用 Write 直接写 vault 文件
Correct Approach:
# ✓ 用 CLI 读
obsidian vault=MyObsidian read file="AGENTS"
# ✓ 用 CLI 追加 Daily
obsidian vault=MyObsidian daily:append content="- 记录了某件事"
Common Commands
vault=MyObsidian must be the first argument.
# === 查找 ===
obsidian vault=MyObsidian search query="关键词" limit=20
obsidian vault=MyObsidian search:context query="关键词" limit=20
# === 读取 ===
obsidian vault=MyObsidian read file="笔记名"
obsidian vault=MyObsidian read path="目录/笔记.md"
# === 创建 ===
obsidian vault=MyObsidian create path="目录/笔记.md" content="<内容>" silent
# === 覆写 ===
obsidian vault=MyObsidian create path="目录/笔记.md" content="<新内容>" overwrite silent
# === 追加 ===
obsidian vault=MyObsidian append file="笔记名" content="<追加内容>"
# === 属性 ===
obsidian vault=MyObsidian property:set file="笔记名" name="updated_at" value="YYYY-MM-DDTHH:mm:ss"
# === 移动(自动更新所有 wikilinks) ===
obsidian vault=MyObsidian move file="笔记名" to="目标目录/笔记名.md"
# === Daily ===
obsidian vault=MyObsidian daily:read
obsidian vault=MyObsidian daily:append content="<内容>"
# === 浏览 ===
obsidian vault=MyObsidian files folder="目录"
obsidian vault=MyObsidian folders
More commands:references/obsidian-cli.md or obsidian help。
Fallback
If the CLI is unavailable (the current environment cannot run obsidian), first explain the reason. Only after the user confirms may file tools be used to operate the vault directly.