🧠obsidian-vault
- プラグイン
- desktop-commander
- ソース
- GitHub で見る ↗
説明
Obsidian vaultをMOC、wikilink、frontmatter/properties、ダッシュボード、orphan noteのチェック、クリーンアップワークフローで整理します。 次のような場合に使用: ユーザーが明示的にObsidianを指す場合。具体的には、「Obsidian」という名称、Obsidian「vault」、またはwikilink(「[[ ]]」)、DataviewプラグインやBasesプラグイン、Obsidian Propertiesなどの Obsidian固有機能を言及した場合です。 このObsidianのコンテキスト内では、以下の対応が含まれます: - Maps of Content(MOC)の作成 - wiklinkの追加・修正 - orphan noteの検出 - YAML frontmatterの正規化 - Dataview/Basesダッシュボードの生成 - フォルダ構成の整理 - noteの重複排除またはリネーム - vault をAI利用向けに準備 一般的なノート取得、Markdown、またはObsidianに言及していないナレッジベースに関する要求には、このスキルを使用しないでください。
原文を表示
Organize Obsidian vaults with MOCs, wikilinks, frontmatter/properties, dashboards, orphan-note checks, and cleanup workflows. Use ONLY when the user explicitly refers to Obsidian — by naming "Obsidian", an Obsidian "vault", or an Obsidian-specific feature such as wikilinks ("[[ ]]"), the Dataview or Bases plugins, or Obsidian Properties. Within that Obsidian context it covers creating Maps of Content, adding/fixing wikilinks, finding orphan notes, normalizing YAML frontmatter, generating Dataview/Bases dashboards, organizing folders, deduplicating or renaming notes, and preparing the vault for AI use. Do NOT use this skill for generic note-taking, Markdown, or knowledge-base requests that don't mention Obsidian.
ユースケース
- ✓Obsidian vaultを整理するとき
- ✓orphan noteをチェックしたいとき
- ✓wiklink追加・修正するとき
- ✓ダッシュボードを生成するとき
- ✓frontmatterを正規化するとき
本文(日本語訳)
Obsidian Vault Assistant
ユーザーがObsidian vaultを整理・維持するのを支援します: MOCとwikilinksでナビゲーションを構築、メタデータを正規化、ダッシュボードを生成、孤立したノートを検出・修正、フォルダを整理、重複排除・名前変更、vaultをAI利用に対応させます。
Obsidianの仕様(すべてのルールの基盤)
- リンクはwikilinksであり、パスではなくファイル名で解決されます:
[[Note title]]Obsidian内でノートを名前変更するとリンクは自動更新されますが、ファイルをObsidian外で移動するとリンクが破損します—可能な限りObsidian内で名前変更してください。 - メタデータは、ノートの先頭にあるProperties(YAML frontmatter)です。
- ダッシュボードはDataview(クエリ言語、読み取り専用、柔軟)またはBases(ネイティブ、編集可能なテーブル、大規模vaultで高速、プロパティのみ)から生成されます。
アクションを実行する前に、vaultのルートフォルダを確認し、ユーザーがDataviewプラグインをインストールしているか確認してください(Basesはobsidian 1.9以降組み込まれています)。リクエストが曖昧な場合(整理 vs クリーンアップ vs ダッシュボード)は、どのタスクかを確認してください。
Wikilinks
- 基本:
[[Three laws of motion]]— ファイル名で解決、拡張子やパスは不要。 - 表示テキスト(パイプ):
[[atomic-habits|James Clear — Atomic Habits]] - 見出しリンク:
[[Note#Section]]ブロックリンク:[[Note#^block-id]] - 埋め込み/トランスクルード:
![[Note]],![[Note#Section]],![[image.png]] - エイリアス:
aliasesプロパティを追加して、ノートが他の名前でも解決されるようにします。 - ファイル名に
# | ^ : % [ ]を避けてください—リンク内で特殊な意味を持ちます。 - 内部ナビゲーションにはwikilinksを使用し、標準Markdown リンクはvaultが wikilinksをパースできないツール向けに公開される場合のみ使用してください。
リンクを追加する際は、unlinked mentionsもサーフェスします: ノートのタイトルが他のノート内にプレインテキストとして現れる場合、それらをwikilinksに変換してください。
Maps of Content(MOC)
MOCは関連ノートをトピック別にリンクするノート—vaultのナビゲーションレイヤー(フォルダやタグより柔軟で、既存知識を必要としません)。
規約:
- MOCを明確に命名し、タグ付けします:
tags: [moc](またはtype: mocプロパティ)で、すべてのMOC自体が発見可能になります。 - トップレベルのHome / Index MOCを保持し、すべてのトピックMOCにリンクします。
- MOCは短い紹介とグループ化されたwikilinksを保持します。手作業で作成、またはDataview/Basesクエリで自動生成できます(ダッシュボード参照)。
MOCテンプレート:
---
type: moc
tags: [moc]
updated: 2026-06-18
---
# Auth — Map of Content
認証、セッション、アクセス制御に関するノート。
## Core
- [[auth-flow]]
- [[session-tokens]]
## Related MOCs
- [[security-moc]]
Frontmatter / Properties
すべてのノートに一貫したプロパティブロックを追加します。推奨される基本構成:
---
title: Session tokens
aliases: [tokens, session token]
tags: [auth, security]
type: note # note | moc | dashboard | template | person | project
created: 2026-06-18
updated: 2026-06-18
status: evergreen # seedling | growing | evergreen
related: ["[[auth-flow]]"]
---
ルール:
- 管理タグ語彙を使用—タグを事前に決定して再利用します。ネストされたタグ(
auth/tokens)は問題ありません。タグが広がらないようにしてください。 tagsはfrontmatter内で#を使用しません。日付はISO形式のYYYY-MM-DDです。- vaultを通じてプロパティの名前と型を一貫させます—BasesとDataviewはこれに依存します。正規化する際、概念ごとに1つの名前を選択(例:
created、created/date/Createdではなく)して残りをマイグレーションします。
ダッシュボード
ユーザーのセットアップに基づいてエンジンを選択します:
Bases(ネイティブ、編集可能、高速—オペレーショナルボード向けベスト):
.baseファイルまたはbaseコードブロックを作成; プロパティからテーブル/ボードビューを構築します。各セルは基礎となるノートのfrontmatterを編集します。- タスクリスト、読書リスト、プロジェクトパイプライン、ポイント・アンド・クリック操作が必要なもの向けに使用してください。
Dataview(プラグイン、読み取り専用、最も柔軟—レポート/自動MOC向けベスト):
TABLE status, updated, tags
FROM #auth
WHERE type = "note"
SORT updated DESC
トピックのすべてを含む自動MOC:
LIST FROM #auth WHERE type != "moc" SORT file.name ASC
最近更新されたもの:
TABLE updated FROM "" WHERE updated >= date(today) - dur(7 days) SORT updated DESC
注: 大規模vaultは重いDataviewクエリで遅延する可能性があります—そこではBasesを使用してください。
孤立ノート & リンク衛生
孤立ノートとは、インバウンドまたはアウトバウンドリンクがないノートです。検出・修正するには:
-
Desktop Commanderから(アプリ不要、大規模vaultにスケール): vaultで各ノートのタイトルに対する
[[ ]]リンクをstart_searchしてください—ゼロヒットはインバウンドリンクなし(unlinkedノート)を意味します。真の孤立(インバウンドなしかつアウトバウンドなし)を確認するには、ノート本体自体で[[...]]をスキャンしてください。同じ検索によりunlinked mentions(タイトルがプレインテキスト、[[ ]]でラップされていない)とbroken links(ファイルが見つからない[[target]])がサーフェスされます。 -
グラフビュー(Cmd/Ctrl+G): 孤立はエッジで分離したドットとして浮きます。
-
Dataviewクエリでリンクなしのノートを取得:
LIST WHERE length(file.inlinks) = 0 AND length(file.outlinks) = 0 -
各孤立について: 関連するMOC/ノートからリンク(wikilink挿入に
edit_blockを使用)、バッチ処理用に#needs-linkタグ、または廃止予定の場合はアーカイブします。 -
unlinked mentionsを実際のwikilinksに変換、
edit_blockでbroken linksを修正; 残りはObsidianの右サイドバーから解決します。
フォルダ整理
-
フォルダは粗いバケット用; MOC + タグが実際の整理を行います。フォルダをオーバーネストしないでください。
-
実用的なレイアウト:
00-inbox/ # 未分類のキャプチャ 10-notes/ # アトミックノート 20-mocs/ # コンテンツのマップ 30-projects/ 90-assets/ # 画像/添付ファイル 99-archive/ templates/ -
設定で添付フォルダを設定して、埋め込みが
90-assets/に配置されるようにします。 -
移動/名前変更はObsidian内で行うので、wikilinksが自動更新されます—コンテンツ編集(
edit_block/write_file)のみをDesktop Commanderから実行してください; 移動と名前変更はユーザーにアプリで任せます。
重複排除・名前変更
- 重複:
start_searchでタイトル/エイリアスを使用して類似ノートを検出; 1つにマージして最もリンクされたファイル名を保持、ユニークなコンテンツをedit_blockでコピー、廃止されたノートへのインバウンド[[links]]をstart_searchして再ポイント、削除前にリダイレクトしてください。 - 名前変更: Obsidian内(Rename note /
F2)で実行してバックリンクを更新—move_fileを使用しないでください。古い名前が広く参照されている場合はaliasesエントリを保持します。 - ファイル名を標準化: 1つの規約(kebab-caseまたはTitle Case)を選択して一貫して適用; 上記の特殊文字を避けてください。
Vaultをする準備AI利用対応に
- 一貫したfrontmatterを確保(同じプロパティ名/型)して、エージェントがメタデータをフィルタリングして推論できるようにします。
- Home/Index MOCを単一エントリポイントとして維持—エージェントが最初に読むもの。
- ノートごとに1行の
summary/descriptionプロパティを記述して、素早くスキャンできるようにします。 - 孤立とbroken linksを削減して、リンクグラフが確実なマップになるようにします。
- ノートをアトミック(各1つの概念)に保つ—エージェントが検索・引用しやすくなります。
- AIツールが
[[ ]]をパースできない場合、wikilinksを標準Markdown リンクにエクスポートすることを検討します。
ワークフロー
- ナビゲーション構築:
write_fileでトピックMOC →edit_blockノートをリンク → Home MOCをリフレッシュ → unlinked mentionsを変換。 - メタデータ正規化:
read_multiple_filesでプロパティを監査 → 正規名を選択 →edit_block各ノート → 不足している基本プロパティを追加。 - クリーンアップパス:
start_searchで孤立、broken links、unlinked mentionsを検出 → 重複排除 → 変更内容をレポート(名前変更はObsidianに留めます)。 - ダッシュボード: Dataview vs Basesを確認 →
write_fileプロパティ/タグからビューを構築。
完了前のチェックリスト
- [ ] 新規/変更ノートに一貫したfrontmatter(正規プロパティ名)がある。
- [ ] 名前変更/移動がObsidian内で完了; リンク破損なし。
- [ ] 新規ノートが少なくとも1つのMOC、またはノートからリンクされている(新規孤立なし)。
- [ ] タグが管理語彙から引き出されている。
- [ ] ダッシュボードが実際に存在するプロパティ/タグを参照している。
- [ ] 変更されたノートの
updatedが最新になっている。
原文(English)を表示
Obsidian Vault Assistant
Help the user organize and maintain an Obsidian vault: build navigation with MOCs and wikilinks, normalize metadata, generate dashboards, find and fix orphans, organize folders, deduplicate/rename, and prepare the vault for AI use.
Obsidian-specific facts that shape every rule here:
- Links are wikilinks resolved by filename, not path:
[[Note title]]. Renaming a note auto-updates links inside Obsidian, but moving files outside Obsidian breaks them — always rename via Obsidian when possible. - Metadata is Properties (YAML frontmatter) at the top of a note.
- Dashboards come from Dataview (query language, read-only, flexible) or Bases (native, editable tables, fast on big vaults, properties-only).
Before acting, confirm the vault's root folder and whether the user has the Dataview plugin installed (Bases is built in since Obsidian 1.9). When a request is ambiguous (organize vs. clean up vs. dashboard), ask which task.
Wikilinks
- Basic:
[[Three laws of motion]]— resolves by filename, no extension/path. - Display text (pipe):
[[atomic-habits|James Clear — Atomic Habits]]. - Heading link:
[[Note#Section]]. Block link:[[Note#^block-id]]. - Embed/transclude:
![[Note]],![[Note#Section]],![[image.png]]. - Aliases: add an
aliasesproperty so the note resolves under other names. - Avoid
# | ^ : %and[ ]in filenames — they have special meaning in links. - Prefer wikilinks for internal navigation; use standard Markdown links only if the vault is also published to a tool that can't parse wikilinks.
When adding links, also surface unlinked mentions: if a note's title appears as plain text in other notes, convert those to wikilinks.
Maps of Content (MOCs)
A MOC is a note that links the related notes on a topic — the vault's navigation layer (more flexible than folders or tags, and needs no institutional knowledge).
Conventions:
- Name MOCs clearly and tag them:
tags: [moc](or atype: mocproperty) so every MOC is itself discoverable. - Keep a top-level Home / Index MOC that links to all topic MOCs.
- A MOC holds a short intro plus grouped wikilinks; it can be hand-curated or auto-generated with a Dataview/Bases query (see Dashboards).
MOC template:
---
type: moc
tags: [moc]
updated: 2026-06-18
---
# Auth — Map of Content
Notes on authentication, sessions, and access control.
## Core
- [[auth-flow]]
- [[session-tokens]]
## Related MOCs
- [[security-moc]]
Frontmatter / Properties
Add a consistent property block to every note. Recommended baseline:
---
title: Session tokens
aliases: [tokens, session token]
tags: [auth, security]
type: note # note | moc | dashboard | template | person | project
created: 2026-06-18
updated: 2026-06-18
status: evergreen # seedling | growing | evergreen
related: ["[[auth-flow]]"]
---
Rules:
- Use a controlled tag vocabulary — decide tags up front and reuse them;
nested tags (
auth/tokens) are fine. Don't let tags sprawl. tagsuse no#in frontmatter. Dates in ISOYYYY-MM-DD.- Keep property names and types consistent across the vault — Bases and
Dataview both depend on this. When normalizing, pick one name per concept
(e.g.
created, notcreated/date/Created) and migrate the rest.
Dashboards
Pick the engine based on the user's setup:
Bases (native, editable, fast — best for operational boards):
- Create a
.basefile or abasecode block; it builds table/board views from properties. Each cell edits the underlying note's frontmatter. - Use for task lists, reading lists, project pipelines, anything point-and-click.
Dataview (plugin, read-only, most flexible — best for reports/auto-MOCs):
TABLE status, updated, tags
FROM #auth
WHERE type = "note"
SORT updated DESC
Auto-MOC of everything in a topic:
LIST FROM #auth WHERE type != "moc" SORT file.name ASC
Recently updated:
TABLE updated FROM "" WHERE updated >= date(today) - dur(7 days) SORT updated DESC
Note: large vaults can lag with heavy Dataview queries — prefer Bases there.
Orphan notes & link hygiene
An orphan is a note with no inbound or outbound links. To find and fix:
- From Desktop Commander (no app needed, scales to big vaults):
start_searchthe vault for[[ ]]links to each note's title — zero hits means no inbound links (an unlinked note); to confirm a true orphan (no inbound and no outbound), also scan the note's own body for[[...]]. The same searches surface unlinked mentions (the title as plain text, not wrapped in[[ ]]) and broken links (a[[target]]whose file is missing). - Graph view (Cmd/Ctrl+G): orphans float as isolated dots at the edges.
- Dataview query for notes with no links:
LIST WHERE length(file.inlinks) = 0 AND length(file.outlinks) = 0 - For each orphan: link it from a relevant MOC/note (
edit_blockto insert the wikilink), tag it#needs-linkfor a batch pass, or archive if obsolete. - Convert unlinked mentions into real wikilinks and fix broken links with
edit_block; resolve the rest from Obsidian's right sidebar.
Folder organization
- Folders are for coarse buckets; MOCs + tags do the real organizing. Don't over-nest folders.
- A workable layout:
00-inbox/ # unsorted captures 10-notes/ # atomic notes 20-mocs/ # maps of content 30-projects/ 90-assets/ # images/attachments 99-archive/ templates/ - Set the attachment folder in Settings so embeds land in
90-assets/. - Moves/renames must happen inside Obsidian so wikilinks update automatically
— do not use
move_filefor these, it breaks every[[link]]. From Desktop Commander, only edit content (edit_block/write_file); leave moving and renaming to the user in the app.
Deduplicate & rename
- Duplicates:
start_searchtitles/aliases to find near-identical notes; merge into one, keep the most-linked filename, copy unique content withedit_block, thenstart_searchfor inbound[[links]]to the discarded note and repoint them before deleting it. - Renames: do them inside Obsidian (Rename note /
F2) so backlinks update — not viamove_file. Keep analiasesentry for the old name if it was widely referenced. - Standardize filenames: pick one convention (kebab-case or Title Case) and apply it consistently; avoid the special characters listed above.
Prepare the vault for AI use
- Ensure consistent frontmatter (same property names/types) so an agent can filter and reason over metadata.
- Maintain a Home/Index MOC as the single entry point an agent reads first.
- Write a one-line
summary/descriptionproperty per note for quick scanning. - Reduce orphans and broken links so the link graph is a reliable map.
- Keep notes atomic (one idea each) — easier for an agent to retrieve and cite.
- Consider exporting wikilinks to standard Markdown links if the AI tool can't
parse
[[ ]].
Workflows
- Build navigation:
write_filetopic MOCs →edit_blocknotes to link them in → refresh the Home MOC → convert unlinked mentions. - Normalize metadata:
read_multiple_filesto audit properties → pick canonical names →edit_blockeach note → add missing baseline properties. - Cleanup pass:
start_searchfor orphans, broken links, and unlinked mentions → dedupe → report what changed (renames stay in Obsidian). - Dashboard: confirm Dataview vs. Bases →
write_filethe view from properties/tags.
Checklist before finishing
- [ ] New/changed notes have consistent frontmatter (canonical property names).
- [ ] Renames/moves done inside Obsidian; no links broken.
- [ ] New notes linked from at least one MOC or note (no new orphans).
- [ ] Tags drawn from the controlled vocabulary.
- [ ] Dashboards reference properties/tags that actually exist.
- [ ]
updatedbumped on changed notes.
原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。