Vault Organizer
散らかったマークダウン vault を、クリーンで相互リンクされ、インデックス化されたナレッジベースに変身させます。 LLM(またはチームメイト)が高速に情報を取得できるようになります。Karpathy の原則に基づいています: 知識をコードのように扱う。 生のソースはソースファイル、コンパイルされた wiki はビルド出力、 INDEX はスキーマ、そしてこのスキルがコンパイラ兼リンターです。
モデル(3層)
| 層 | 内容 | 場所 |
|---|---|---|
| RAW | 未処理:トランスクリプト、クリップ、ダンプ、スクリーンショット | 00_Inbox/raw/、最も近いトピックフォルダ |
| COMPILED | 合成されたページ、[[wikilinks]] で相互参照 | PARA フォルダ(01_–04_) |
| SCHEMA | INDEX ファイル、CLAUDE.md、ルール | フォルダごとの INDEX.md + マスターインデックス |
すべてのファイルは type: フロントマター(raw | compiled | reference | framework | client | index)を持ちます。
フロントマターと INDEX のテンプレートについては references/standards.md を参照してください。
ワークフロー
この順序で実行します。変更する前に監査と提案を行ってください。確認なしに削除や移動は絶対に行わないでください。変更を元に戻せるように git リポジトリを使用することを推奨します。
1. 監査(読み取り専用)
# vault 全体:
python3 scripts/audit.py <vault_root> --stale-days 120 --report /tmp/vault-audit.md
# 1つのサブフォルダ、ただし vault 全体に対して [[wikilinks]] を解決(誤った「リンク切れ」フラグを回避):
python3 scripts/audit.py <subfolder> --link-root <vault_root> --report /tmp/vault-audit.md
ヘルスレポートを返します:フロントマターの欠落、壊れた/存在しない wikilink、孤立したファイル、欠落した
Related セクション、重複、古いファイル、INDEX のないフォルダ。レポートを読み、要約テーブルと
主要な問題をユーザーに表示します。(機械出力には --json を使用。)
2. トリアージ
発見事項をグループ化し、今すぐ修正するものと後で修正するものを尋ねます。 デフォルトの優先順位:
- INDEX のないフォルダ(情報取得が不可能)
- フロントマターの欠落(検索とプロパティが機能しない)
- 壊れた wikilink(グラフが機能しない)
- Related セクションの欠落と孤立したファイル(発見が困難)
- 古いファイル/重複(クリーンアップ)
3. クリーン(ファイルごと)
各フラグ付きファイルに対して:
- YAML フロントマター(
title, type, source, author, created, description, tags)を追加 — 内容から推測、createdが不明な場合は今日の日付を使用。 - vault 内の他の場所に存在する概念、ツール、人物、またはファイルへの最初の言及に
[[wikilinks]]を追加。 - ファイルの最後に
## Relatedセクションを追加(最も関連性の高いページへの[[wikilinks]]を3~8個)。そのファイルをそれらのページ(2~3ページ)の Related にも追加(双方向リンク)。 - 壊れた wikilink を修正:正しいスラッグに変更、または後で対象を書く価値がある場合は意図的なスタブとして残す。
references/standards.mdのテンプレートを使用してください。既存のフロントマターやリンクは削除しないでください。
4. 整理(まず提案)
- 場所違いのファイルを適切な層/フォルダに移動(raw →
00_Inbox/raw/、compiled → PARA)。 - ファイル名をケバブケースに統一、重複を統合またはリネーム。
- 移動は小さく、元に戻せるようにしてください。すべての移動をリストアップし、実行する前に承認を得てください。
5. 登録(成果物)
- 各コンテンツフォルダに対して、
INDEX.mdを生成または更新:ファイルごとに1行のポインター (- [[file-name]] — short hook)、タイプごとにグループ化、最新または最も重要なものから順に。 - すべてのフォルダ INDEX にリンクするマスターインデックス(例:ルートの
INDEX.md、またはmeta/スキーマフォルダ)を構築/更新。 - このレジストリにより情報取得が高速になり、チームメイトに渡すドキュメントとなります。
6. リント(確認)
audit.py を再実行します。before/after のカウントを表示します。フロントマター、
INDEX カバレッジ、リンク切れの数がすべてゼロになったとき、vault は「クリーン」と見なされます
(孤立したファイル/古いファイルは意図的に残しても構いません)。
チームメイトに渡す
整理された vault をチームメイトと共有する場合:マスター INDEX が最新であること、すべてのフォルダに
独自の INDEX があること、ルートに短い README.md があり3層モデルとナビゲーション方法を説明していることを確認してください。
README + マスター INDEX がエントリポイントです。
ルール
- 常に最初に読み取り専用の監査を実行。表面化させ、驚かせない。
- 明示的な確認なしに削除や一括移動を行わない。事前にコミットすることを推奨。
.obsidian/、.git/、Claude Code 設定(settings.json、hooks)には触れない。- vault の既存の規約に従う(今回の場合:PARA と
references/standards.mdの標準)。 - バッチで作業。各バッチ後、変更内容をレポート。
ファイル
scripts/audit.py— 読み取り専用スキャナー、エンジン。最初と最後に実行。references/standards.md— フロントマター仕様、タイプ分類、INDEX + README テンプレート。