obsidian-vault-manager について
obsidian-vault-managerは、Obsidian標準CLIでVaultを管理するためのスキルです。ノートの読み取り、作成、検索、整理に加え、iCloud上のパスやリンクを保つ大容量書き込みの扱いを説明します。
主な機能
- 01Vault一覧とパスの確認
- 02ノートの読み取り・検索・作成
- 03内容の追記とデイリーノート管理
- 04リンクを更新しながらノートを移動
- 05大容量データの分割書き込みと検証
活用シーン
- 01Vaultの構造確認と既存ノートの検索
- 02ローカルまたはiCloudのVaultへのノート作成
- 03Wikiリンクを保ったノートの整理
- 04長いMarkdown内容のノートへの書き込み
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sjungling/ sjungling-claude-plugins --skill obsidian-vault-managerインストール後、Claude Code で/obsidian-vault-managerを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/templates/daily-note-template.mdmeeting-note-template.mdproject-note-template.mdreferences/obsidian-cli-reference.mdobsidian-syntax.mdscripts/write-markdown-to-vault.js詳細
Obsidian Vault Manager
前提条件
Vault の操作を行う前に:
-
obsidian CLI がインストールされていることを確認します:
obsidian --versionCLI は Obsidian デスクトップアプリに同梱されているネイティブの
obsidianバイナリであり、別途インストールする npm パッケージではありません。 -
利用可能な Vault を一覧表示します:
obsidian vaults -
Vault のパスを取得します:
obsidian vault "<name>" info=path
概要
リンクや構造に関わる Vault 操作には obsidian を使用してください。 iCloud と同期する Vault(パスに Mobile Documents が含まれます。obsidian vault "<name>" info=path で確認してください)の場合、Write ツールは信頼できません。iCloud のパスは TCC で保護されているため、サンドボックスを無効にしても、ファイルシステムへの直接書き込みがブロックされることがあります。確実に書き込めるのは Obsidian アプリ(CLI 経由)のみです。内容の多いノート(複数行、フロントマター、コードブロックなど)を作成する場合は、このスキルの scripts/write-markdown-to-vault.js を使用してください。大きなペイロードを CLI の約 10KB の IPC 上限以下に分割し、バナーのノイズを除去して、一時的なエラーの場合は再試行し、ノートを読み戻して書き込みを検証します。サンドボックスを無効にして実行してください(コマンドサンドボックス内では CLI がハングします)。通常のファイルシステムパス上にある Vault(iCloud 以外)の場合は、Write ツールで直接書き込めます。単発のノートにはこちらのほうが簡単です。
クイックリファレンス
| タスク | コマンド | メモ |
|---|---|---|
| Vault の一覧表示 | obsidian vaults | 必ず最初に実行 |
| Vault の情報 | obsidian vault "<name>" | 名前、パス、ファイル数 |
| Vault のパス | obsidian vault "<name>" info=path | パスのみ。スクリプトでの利用に便利 |
| フォルダーの一覧表示 | obsidian "vault=<name>" folders | Vault 名にスペースが含まれる場合は引用符で囲む |
| ノートの読み込み | obsidian "vault=<name>" read "<note name>" | 名前で読み込み(あいまい検索) |
| ノートの作成(大容量/iCloud) | node scripts/write-markdown-to-vault.js --vault <name> --path <path> --input <file> | 分割、再試行、検証を実行 — サンドボックスを無効にして実行 |
| ノートの作成(小容量、iCloud 以外) | obsidian "vault=<name>" create path="folder/name.md" content="$CONTENT" | 複数行の場合は printf で $CONTENT を作成 |
| ノートの上書き | obsidian "vault=<name>" create path="..." content="$CONTENT" overwrite | |
| ノートへの追記 | obsidian "vault=<name>" append path="<path>" content="<text>" | |
| ノートの移動 | obsidian "vault=<name>" move path="old.md" newpath="new.md" | すべてのリンクを自動更新 |
| コンテンツの検索 | obsidian "vault=<name>" search query="<term>" [path=<folder>] [format=json] | |
| デイリーノート | obsidian "vault=<name>" daily | 今日のノートを作成/開く |
| アクティブ/デフォルトの Vault | obsidian vault | 名前を指定しない場合 → 現在開いている Vault |
| デイリーノートへの追記 | obsidian "vault=<name>" daily:append content="<text>" | アクティブな Vault が対象。Daily Notes プラグインが必要 |
関連項目:
- obsidian コマンドの完全なリファレンス - すべてのコマンド、フラグ、高度な使い方
- Obsidian 構文リファレンス - Wiki リンク、タグ、フロントマター、Markdown 構文
- ノートテンプレート - デイリーノート、プロジェクト、会議のテンプレート
基本的なワークフロー
ステップ 1 — Vault を見つける
# List vaults to confirm the name
obsidian vaults
# Get full info (name, path, file count)
obsidian vault "<name>"
# Get just the path (useful for scripting)
VAULT_PATH=$(obsidian vault "<name>" info=path)
ステップ 2 — 構造を確認する
# List folders
obsidian "vault=<name>" folders
# Search for existing notes
obsidian "vault=<name>" search query="<topic>" path=<folder> format=json
ステップ 3 — リッチコンテンツを含むノートを作成する
printf を使ってコンテンツ変数を作成します。フロントマターを含む改行や複数行のコンテンツを正しく処理できます。
CONTENT=$(printf '---\ntags:\n - til\nindex: "[[Today I learned]]"\n---\n## Heading\n\nContent here.')
obsidian "vault=<name>" create path="til/2026-04-27 My Note.md" content="$CONTENT"
既存のノートを先に確認し、ローカルの書式規則(タグ名、フロントマターのフィールド、index からのバックリンクなど)に合わせてください:
obsidian "vault=<name>" read "<existing note name>"
ノートの移動/再編成
# ✅ CORRECT: Auto-updates all links
obsidian "vault=<name>" move path="Random Notes/Design.md" newpath="Projects/Design.md"
# ❌ WRONG: Breaks all links to this note
mv "vault/Random Notes/Design.md" "vault/Projects/Design.md"
よくある間違い
| 間違い | 誤りである理由 | 修正方法 |
|---|---|---|
obsidian-cli を使用する | 別の npm パッケージです。このツールは obsidian です | obsidian を使用する |
--flags 構文を使用する | CLI では --flags ではなく、key=value 形式の位置引数を使用します | key=value 形式を使用する |
二重引用符で囲んだ文字列内の \n を使って create する | エスケープが取り除かれ、内容が途中で切れます | printf を使って $CONTENT 変数を作成する |
iCloud ボルトのパスに Write を使用する | サンドボックスを無効にしていても、TCC によって書き込みが気付かれないままブロックされることがあります | 代わりに scripts/write-markdown-to-vault.js を使用する |
1 回の create/append 呼び出しで約 10KB を超える内容を扱う | 気付かれないままパイプが壊れる(終了コード 0 で何も書き込まれない)か、NativeImage エラーが発生します | scripts/write-markdown-to-vault.js を使用してください。自動的に分割されます |
ノートの移動に mv を使用する | そのノートへのすべての [[wiki-links]] が壊れます | obsidian move を使用する |
| 既存のノート形式を確認しない | ボルトごとにタグや frontmatter の規則が異なります | 先に既存のノートを読む |
| wiki-links に絶対パスを使用する | ボルトを移動するとリンクが壊れます | ボルトからの相対パスを使用する |
標準ツールを使用する場合
- コンテンツの一括編集:
obsidian readで読み取った後、Editを使用します - 複雑な検索パターン:ボルトのパスを直接指定して
Grepを使用します(obsidian vault "<name>" info=pathでパスを取得できます)
必ず保持するもの:
- Frontmatter(
---の間にある YAML) - Obsidian のリンク構文
[[Note]] - タグ構文
#tag-name - Markdown の構造
成功基準
以下を満たせば、ボルトの操作は成功です。
- 移動後もすべての
[[wiki-links]]が有効である - ノートが正しいボルト内の場所に、内容をすべて保持した状態で作成されている
- 同じフォルダー内の既存ノートと書式が一致している
- 壊れたリンクや孤立したノートがない