llm-wiki について
llm-wikiは、Claude Codeなどのエージェント向けコマンドラインツールで、Obsidianのナレッジベースを継続的に管理するスキルです。ソースの取り込み、引用付き検索、健全性チェックに対応し、原本とLLMが編集するページを分離します。
主な機能
- 01ソースをリンク付きページに取り込み
- 02引用付きで検索し回答を再登録
- 03古いページ、孤立ページ、リンク切れを確認
- 04BM25検索とリンクグラフ分析
- 05ページをMarpスライドに書き出し
活用シーン
- 01論文や記事から研究用Wikiを構築
- 02個人またはチームの資料庫を維持
- 03新しいソースを加えながらテーマを追跡
- 04Wikiの内容からスライドを作成
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ alirezarezvani/ claude-skills --skill llm-wikiインストール後、Claude Code で/llm-wikiを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/AGENTS.md.templateCLAUDE.md.templatecursorrules.templateindex.md.templatelog.md.templateassets/example-vault/README.mdassets/example-vault/wiki/index.mdlog.mdassets/example-vault/wiki/concepts/sparse-autoencoder.mdassets/example-vault/wiki/entities/anthropic.mdassets/example-vault/wiki/sources/monosemanticity.mdassets/example-vault/wiki/synthesis/interpretability-overview.mdassets/page-templates/comparison.mdconcept.mdentity.mdsource-summary.mdsynthesis.mdexpected_outputs/append_log.jsonexport_marp.jsongraph_analyzer.jsoningest_source.jsoninit_vault.jsonlint_wiki.jsonREADME.mdupdate_index.jsonwiki_search.jsonreferences/cross-tool-setup.mdingest-workflow.mdlint-workflow.mdmemex-principles.md詳細
LLM Wiki — Claude Code + Obsidian のための第二の脳
Andrej Karpathy の LLM Wiki パターン(gist)に着想を得ています。このスキルを使うと、Claude Code(または任意のエージェント CLI)が、ソースを与えるたびに永続的で相互にリンクされた Obsidian Vault を段階的に構築・管理する、規律ある Wiki メンテナーになります。知識は積み重なります。質問する時点で、相互参照、矛盾、統合がすでにそろっています。
核となる原則
LLM とドキュメントを組み合わせたワークフローの多くはRAGです。質問時に断片を検索し、その場で一から統合して、忘れてしまいます。一方、Wiki は蓄積型です。ソースは一度だけ読み込まれ、永続的な Markdown ナレッジベースに統合され、最新の状態に保たれます。あなたが情報を整理して質問し、LLM が読み込み、分類し、相互参照して、管理します。
Obsidian は IDE です。LLM はプログラマーです。Wiki はコードベースです。
使用する場面
- 個人:目標、健康、心理、日記、自己改善を記録する
- 調査:論文、記事、レポート、進化する仮説など、あるトピックを数週間にわたって深く調べる
- 読書の伴走:読み進めながら章を保存し、登場人物、テーマ、プロットの流れをまとめたファン Wiki 風のガイドを作る
- ビジネス/チーム:Slack、議事録、通話内容を取り込む社内 Wiki。誰もやりたがらない管理作業を LLM が担う
- 競合分析、デューデリジェンス、旅行計画、講義ノート、趣味の深掘り
**次の場合は使用しないでください:**固定されたドキュメントについて一度きりの Q&A が必要な場合(RAG を使用してください)、時間をかけてソースを追加する予定がない場合、または Obsidian をワークフローに組み込みたくない場合。
アーキテクチャ(三つのレイヤー)
vault/
├── raw/ # Layer 1 — IMMUTABLE source of truth
│ ├── <source files> # Articles, papers, PDFs, images, data
│ └── assets/ # Downloaded images from clipped articles
├── wiki/ # Layer 2 — LLM-owned knowledge base
│ ├── index.md # Content catalog (LLM updates every ingest)
│ ├── log.md # Append-only timeline (## [YYYY-MM-DD] <op> | <title>)
│ ├── entities/ # Person/Org/Place pages
│ ├── concepts/ # Ideas, theories, frameworks
│ ├── sources/ # One summary page per ingested source
│ ├── comparisons/ # Cross-source analysis pages
│ └── synthesis/ # High-level syntheses, theses, overviews
├── CLAUDE.md # Schema + conventions (Claude Code)
└── AGENTS.md # Same content, for Codex/Cursor/Antigravity
- レイヤー 1(raw/) — あなたが管理します。LLM は読み取りのみで、書き込みはしません。
- レイヤー 2(wiki/) — LLM が管理します。ページを作成、更新し、相互参照を追加します。あなたは内容を読みます。
- レイヤー 3(CLAUDE.md / AGENTS.md) — スキーマです。規約、ワークフロー、フロントマターのルールを定めます。あなたと LLM が共同で進化させます。
三つの主要な操作
- 取り込み — LLM がソースを読み、要点についてあなたと話し合い、ソースの概要を作成し、関連する 10~15 個のページを更新して、インデックスを更新し、ログに追記します。
references/ingest-workflow.mdを参照してください。 - 質問 — LLM がまず
index.mdを読み、関連するページを掘り下げ、引用付きで情報を統合します。良い回答はWiki に保存し直すことで、調査内容を積み重ねられます。references/query-workflow.mdを参照してください。 - Lint — 健全性を確認します。矛盾、古くなった主張、孤立したページ、欠けている相互参照、独自ページがない言及済みの概念、ウェブ検索で補うデータの不足を調べます。
references/lint-workflow.mdを参照してください。
クイックスタート
# 1. Initialize a vault (in Obsidian's vault directory)
python scripts/init_vault.py --path ~/vaults/research --topic "LLM interpretability"
# 2. Drop a source into raw/, then ingest
/wiki-ingest ~/vaults/research/raw/anthropic-monosemanticity.pdf
# 3. Ask questions (answers can be re-filed into the wiki)
/wiki-query "how does monosemanticity compare to mechanistic interpretability?"
# 4. Periodic health check
/wiki-lint
# 5. See the timeline
/wiki-log --last 10
スラッシュコマンド(このプラグインに同梱)
| コマンド | 目的 |
|---|---|
/wiki-init | スキーマファイルと初期構成を含む、新しい Vault を初期化する |
/wiki-ingest <path> | ソースを読み、話し合い、Wiki を更新してログに記録する |
/wiki-query <question> | Wiki を検索して回答を統合し、結果を Wiki に保存するか確認する |
/wiki-lint | 健全性を確認する — 矛盾、孤立したページ、古くなった主張、不足項目 |
/wiki-log | 最近のログ項目を表示する(log.md に unix ツールを使用) |
サブエージェント(このプラグインに同梱)
| エージェント | 起動される場面 |
|---|---|
wiki-ingestor | 委任された取り込みフロー — ソースを読み、更新案を提示し、あなたの承認後に適用する |
wiki-linter | 健全性確認のワークフローを独立して実行し、検出事項を報告する |
wiki-librarian | インデックスを優先して検索し、引用付きで情報を統合して質問に回答する |
Python ツール(scripts/)
すべてのツールは標準ライブラリのみを使用します(pip によるインストールは不要です)。python scripts/<tool>.py --help で実行してください。
| スクリプト | 目的 |
|---|---|
init_vault.py | フォルダー構造を作成し、CLAUDE.md、AGENTS.md、index.md、log.md を初期配置します |
ingest_source.py | 補助ツール:ソースファイルからテキスト/フロントマターを抽出し、LLM によるレビューに備えます |
update_index.py | Wiki ページのフロントマター(カテゴリ、日付、ソース数)から index.md を再生成します |
append_log.py | 標準形式のログエントリー ## [YYYY-MM-DD] <op> | <title> を追記します |
wiki_search.py | Wiki ページを BM25 で検索します(index.md だけでは不十分な場合の単独フォールバック) |
lint_wiki.py | オーファン(被リンクのないページ)、古いページ、欠落している相互参照、リンク切れを検出します |
graph_analyzer.py | リンクグラフの統計情報(ハブ、オーファン、クラスター、連結されていないコンポーネント)を計算します |
export_marp.py | Wiki ページ(またはサブツリー)を Marp スライドデッキにレンダリングします |
ツール間の互換性
Vault のスキーマは、CLAUDE.md(Claude Code)または AGENTS.md(Codex/Cursor/Antigravity/OpenCode)にあります。同じ内容をどちらでも使用できます。このプラグインには両方のテンプレートが含まれています。ツールごとのセットアップ手順については、references/cross-tool-setup.md を参照してください。
CLAUDE.md → Claude Code
AGENTS.md → Codex CLI, Cursor, Antigravity, OpenCode, Gemini CLI
.cursorrules → legacy Cursor (pre-AGENTS.md)
スクリプトは純粋な Python 標準ライブラリなので、どこでも同じように実行できます。ツールごとに変更が必要なのはローダーファイルだけです。
Obsidian のセットアップ(推奨)
- Obsidian Web Clipper — ブラウザー拡張機能です。ウェブ記事を Markdown に変換し、
raw/に保存します - 画像をローカルにダウンロード — Settings → Files and links → Attachment folder path =
raw/assets/。Settings → Hotkeys → 「Download attachments for current file」にCtrl+Shift+Dを割り当てます - グラフビュー — ハブ/オーファンを確認できます。構造上の問題を見つけるために欠かせません
- Marp プラグイン — Wiki ページから Markdown ベースのスライドデッキを直接作成します
- Dataview プラグイン — ページのフロントマター(タグ、日付、ソース数)を使った動的なテーブル/リストを作成します
- Git — Vault は通常の Markdown リポジトリです。バージョン管理してください
セットアップの詳しい手順:references/obsidian-setup.md
これが機能する理由(通常の RAG との比較)
| 通常の RAG | LLM Wiki |
|---|---|
| クエリのたびに知識を再発見する | 知識が蓄積されます |
| 相互参照を毎回再計算する | 相互参照は事前に記述され、維持されます |
| 矛盾は質問した場合にのみ明らかになる | 取り込み中に矛盾が指摘されます |
| 探索内容はチャット履歴に埋もれる | 役立つ回答は新しいページとして再保存されます |
| 埋め込みインフラストラクチャによってスケールする | Markdown と index.md、および任意のローカル検索によってスケールします |
ソースが約 100 件、ページが数百件程度であれば、index.md とファイルシステム検索で十分です。それ以上になったら、qmd などのローカル検索ツールを追加するか、scripts/wiki_search.py を使用してください。
関連スキル(context: fork を介して連携)
このスキルには context: fork が設定されているため、ほかのスキルから連携できます。
para-memory-files— PARA メソッドによるメモリーです。Wiki にソースを提供する長期的な個人メモリーとして相互補完しますobsidian-vault(mattpocock)— 軽量な Obsidian ノート補助ツールです。このスキルはその上に構築される、維持管理された Wiki のレイヤーですrag-design— Wiki が約 500 ページを超えたら、rag-design を使って検索レイヤーを追加しますmcp-design— Wiki を MCP ツールとして公開しますagent-communication— 複数エージェントによる Wiki の保守(取り込み担当+リンター+司書)に使用します
参考ドキュメント
references/wiki-schema.md— Vault の全体レイアウト、ページのフロントマター、命名規則references/page-formats.md— エンティティ、概念、ソース、比較、統合のテンプレートreferences/ingest-workflow.md— wiki-ingestor エージェントが従う、取り込みの詳細なワークフローreferences/query-workflow.md— クエリのパターン、引用形式、回答の再保存references/lint-workflow.md— ヘルスチェックのヒューリスティックreferences/obsidian-setup.md— Obsidian のプラグイン、ホットキー、Vault の設定references/cross-tool-setup.md— ツールごとのセットアップ(Codex、Cursor、Antigravity など)references/memex-principles.md— Bush の Memex と、LLM によって保守に関する考え方が変わる理由
テンプレート(assets/)
CLAUDE.md.template、AGENTS.md.template、.cursorrules.template— 各ツール用のスキーマローダーindex.md.template、log.md.template— 初期インデックスとログpage-templates/— エンティティ、概念、ソースの要約、比較、統合example-vault/— 参考またはコピーして使える、小規模な作成例
絶対ルール
LLM が raw/ 内のファイルを編集することは決してありません。 ソースは不変です。LLM による書き込みはすべて wiki/ に行います。ソースを修正する必要がある場合は、自分で raw/ 内のファイルを修正してから、再取り込みしてください。