llm-wiki について
llm-wikiは、資料をもとに永続的なMarkdownナレッジベースを構築・保守するスキルです。研究など長期的な知識管理に向け、原資料を保持しながら関連ページや回答を蓄積し、構造も点検します。
主な機能
- 01Markdown保管庫の初期構築
- 02原資料の不変保持
- 03要約と統合ページの作成
- 04回答やレポートの記録
- 05リンク切れと孤立ページの点検
活用シーン
- 01ObsidianまたはMarkdownの研究保管庫を開始
- 02記事や論文を関連ノートに整理
- 03有用な回答を後から参照できる形で保存
- 04リンク切れや未接続ページを発見
MCP 対応
このスキルは導入時にMCPを追加しないことを勧めており、MarkdownナレッジベースのワークフローにMCPは必須ではありません。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ akillness/ jeo-skills --skill llm-wikiインストール後、Claude Code で/llm-wikiを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
SKILL.toonagents/openai.yamlevals/evals.jsonreferences/architecture.mdingest-playbook.mdmaintenance-and-scaling.mdquery-and-filing.mdschema-playbook.mdscripts/bootstrap-vault.shingest-url.shlint-wiki.pynew-query-note.shskill-autoresearch-llm-wiki/changelog.mddashboard.htmlresults.jsonresults.tsvSKILL.md.baseline詳細
llm-wiki - LLM が継続的に管理する Markdown Wiki
キーワード:
llm-wiki·obsidian wiki·research vault·knowledge baseユーザーが、クエリのたびに生のファイルから情報を再発見するのではなく、知識を蓄積していく管理対象の Markdown 成果物を求めている場合に、このスキルを使用します。
llm-wiki は、Andrej Karpathy の gist を実用的なワークフローに変換します。基本パターンはシンプルです。生のソースは不変のまま保持し、LLM に Wiki 層を管理させ、メンテナンスの取り決めを AGENTS.md または CLAUDE.md に記述します。
このスキルを使用する場合
- 長期的なナレッジ作業用に、新しい Obsidian または Markdown の Vault を初期設定する
- 生の記事、論文、トランスクリプト、メモを、ソースの要約と相互リンクされた Wiki ページに変換する
- より大規模な検索インフラを追加する前に、ナビゲーションの基本要素として
index.mdとlog.mdを維持する - 優れた回答をチャット履歴に埋もれさせず、Wiki に記録する
- 定期的な Lint を実行し、リンク切れ、孤立したページ、古い主張、統合ページの不足を確認する
- URL 取り込み用の Scrapling、検索用の qmd、Vault 自動化用の Obsidian CLI など、任意のヘルパーを追加する
手順
ステップ 1:Vault を初期設定する
まず Wiki の骨組みを作成します。
bash scripts/bootstrap-vault.sh /path/to/vault
jeo ランタイムでは、新しい Vault の場所を独自に決めないでください。Vault は
プロジェクト単位です。ツールフローのルール(~/.agents/rules/jeo-tool-flow.md)と
取り込みフックはどちらも、次のようにパスを解決します。
$LLM_WIKI_VAULT → <obsidian-mind vault>/llm-wiki。ここで obsidian-mind Vault は $OBSIDIAN_MIND_VAULT → 現在のディレクトリの
git トップレベル → git リポジトリ外では ~/vaults/obsidian-mind の順に解決されます。
そのため、各リポジトリは <repo>/llm-wiki/ に独自の Wiki を持ちます。スキルの Vault とフックの
Vault が同一になるよう、bootstrap-vault.sh にも同じパスを渡してください。
OM_VAULT="${OBSIDIAN_MIND_VAULT:-$(git rev-parse --show-toplevel 2>/dev/null || echo "$HOME/vaults/obsidian-mind")}"
bash scripts/bootstrap-vault.sh "${LLM_WIKI_VAULT:-$OM_VAULT/llm-wiki}"
setup-all-skills-prompt.md(ステップ 5、「ナレッジパイプラインフック」)は、フルモードのインストール中に
このスクリプトを同じ解決方法で呼び出し、Claude Code、Codex、Gemini の prompt-in / turn-end フックとして
hooks/ingest-prompt.py を登録します。取り込みスクリプトは、ほかのリポジトリで最初にプロンプトを取得した際に
Vault がなければ初期設定します。そのため、新規の jeo セットアップと手動での初期設定が食い違うことはありません。
初期設定では、次のものが作成されます。
- 不変のソース Markdown またはコピーしたファイル用の
raw/sources/ - ダウンロードした画像や添付ファイル用の
raw/assets/ - ソースごとの要約用の
wiki/sources/ - 長期的に維持する統合ページ用の
wiki/entities/とwiki/concepts/ - 記録した回答や、より価値の高い成果物用の
wiki/queries/とwiki/reports/ index.md、log.md、AGENTS.md
スキーマファイルを省略しないでください。エージェントが一般的なアシスタントではなく、規律ある管理者として動作するためのものです。references/architecture.md と references/schema-playbook.md を参照してください。
ステップ 2:AGENTS.md または CLAUDE.md を運用上の取り決めとして扱う
スキーマには、セッションをまたいでも変わらないルールを記述します。
raw/は信頼できる唯一の情報源であり、不変のまま維持するwiki/とindex.md、log.mdは LLM が管理する作業成果物である- 取り込みのたびに、ソースの要約、関連する統合ページ、
index.md、log.mdを更新する - 長期的に価値のあるクエリの回答はすべて、
wiki/queries/またはwiki/reports/に記録する - Lint では、リンク切れ、孤立したページ、古い主張、矛盾、ページ化すべき候補の不足を確認する
スキーマは短く、実行可能な内容にしてください。エージェントが実際に従う簡潔な取り決めのほうが、誰も読み返さない巨大なポリシーファイルよりも優れています。bootstrap-vault.sh の初期スキーマは意図的に最小限にしています。references/schema-playbook.md を参照して調整してください。
ステップ 3:ワークフローが安定するまで、ソースを一度に 1 つずつ取り込む
ソースがすでにローカルにある場合は、raw/sources/ に配置し、エージェントに処理を依頼します。ソースが URL の場合は、Scrapling を利用したヘルパーを使用します。
bash scripts/ingest-url.sh /path/to/vault "https://example.com/article"
bash scripts/ingest-url.sh /path/to/vault "https://app.example.com/post" --mode fetch --wait-selector article
bash scripts/ingest-url.sh /path/to/vault "https://protected.example.com/post" --mode stealth --solve-cloudflare
取り込み時に想定される更新箇所:
- 変更されない生データのキャプチャを
raw/sources/に保存する wiki/sources/にソースページを作成または更新する- 関連するエンティティページまたは概念ページを更新する
index.mdを更新するlog.mdに時系列順の項目を追記する
開始時は、ソースを一度に 1 つずつ取り込むことをおすすめします。これにより、人間が Wiki の変更内容を確認し、不足している規約を洗い出して、スキーマを改善できます。ワークフローの信頼性が高まったら、まとめて処理してもかまいません。運用チェックリストには、references/ingest-playbook.md を使用してください。
ステップ 4:生データの山ではなく、Wiki を使って質問に回答する
質問に回答する際は、次の手順に従います。
- 最初に
index.mdを読む - 最も関連性の高い Wiki ページを開く
- Wiki の根拠付けや情報の矛盾解消が必要な場合に限り、生データのソースを詳しく確認する
- ページのパスと生データのソースパスを明記して引用する
- 長期的に役立つ成果物を vault に保存する
明示的に Jevgrep の使用を求められた場合は、選択した vault の wiki/ ソースドキュメントに対して jevgrep を実行し、別途設けられたリモートコンテンツ/コストの確認ゲートに従ってください。上記のインデックスを最初に読む手順、引用、長期保存の手順は引き続き変わりません。生データのソース取り込みとグラフの更新は、この任意の検索には含まれません。
価値の高い回答には、再利用できるノートのひな形を作成します。
bash scripts/new-query-note.sh /path/to/vault "How does Company A differ from Company B?" --question "How does Company A differ from Company B?"
bash scripts/new-query-note.sh /path/to/vault "Q2 product thesis" --section reports --citation "[[wiki/concepts/product-thesis]]"
質問形式の成果物には wiki/queries/ を、メモ、比較資料、プレゼンテーションの骨子など、より長期的に使える統合成果物には wiki/reports/ を使用してください。詳しくは references/query-and-filing.md を参照してください。
ステップ 5:定期的に Wiki を検査して修復する
ローカルのヘルスチェックを実行します。
python3 scripts/lint-wiki.py /path/to/vault
python3 scripts/lint-wiki.py /path/to/vault --format json
このスクリプトは、情報の正しさではなく構造を対象としています。必須ファイルとディレクトリ、Wiki リンク切れ、孤立ページをチェックします。検査結果を、人間が主導する整理作業の出発点として活用してください。
- 重複する概念を統合する
- 頻繁に参照されるアイデアを独立したページに昇格させる
- 新しいソースに置き換えられた古い主張を削除する
- グラフが疎な場合は、バックリンクや概要ページを追加する
より詳細な検査チェックリストについては、references/maintenance-and-scaling.md を参照してください。
ステップ 6:規模に見合う場合にのみ、検索と自動化を追加する
小規模から中規模の vault では、index.md と log.md で十分です。より高度なツールは、必要になってから追加してください。
- URL の取り込みが一般的になったら Scrapling
- Wiki 検索でインデックスだけでは不十分になったら qmd
- 実行中のデスクトップアプリに対してシェルから vault を自動化したい場合は Obsidian CLI
- frontmatter に基づくテーブルやリストを活用し始めたら Dataview
- バージョン履歴、ブランチ、レビュー可能な差分のため、初日から Git
初日から埋め込み、MCP、ブラウザー自動化を無理に導入しないでください。このワークフローの要点は、シンプルな Markdown リポジトリだけでも、驚くほど効果的に知識を蓄積できることです。
例
例 1:新しい vault を初期化する
bash scripts/bootstrap-vault.sh ~/vaults/company-research
例 2:静的な記事を生データのソースに取り込み、ソースのひな形を作成する
bash scripts/ingest-url.sh ~/vaults/company-research "https://example.com/article"
例 3:JavaScript でレンダリングされるページを取り込む
bash scripts/ingest-url.sh ~/vaults/company-research "https://app.example.com/dashboard" --mode fetch --network-idle
例 4:長期保存するクエリノートを作成する
bash scripts/new-query-note.sh ~/vaults/company-research "Why this market is consolidating" \
--question "Why is this market consolidating?" \
--citation "[[wiki/concepts/market-structure]]"
例 5:クエリノートの代わりにレポートのひな形を作成する
bash scripts/new-query-note.sh ~/vaults/company-research "Q3 diligence memo" --section reports
例 6:構造検査を実行する
python3 scripts/lint-wiki.py ~/vaults/company-research
ベストプラクティス
raw/は変更しないでください。修正は、書き換えた raw キャプチャではなく、Wiki ページまたは追加のソースノートに反映してください。- 取り込み、クエリの記録、lint の各実行時に、
index.mdとlog.mdを更新してください。これらにずれが生じると、ワークフロー全体が使いにくくなります。 - 質の低い断片を大量に作るより、質の高いエンティティページやコンセプトページを少数作ることを優先してください。価値が積み重なるのは、ページ数ではなく統合によるものです。
- 時間のかかる検索を行う前に、
index.mdを読んでください。中規模の Vault では、これが最もシンプルで実用的な検索システムです。 - 事実と統合を区別してください。ソースページは根拠に基づいたものにし、コンセプトページではより解釈を加えることができます。
- 有用な回答は Vault に記録してください。一度重要だった回答は、再び重要になる可能性が高いです。
- Wiki の監査可能性を保つため、取り込み、クエリ、lint の操作は Git のコミットで分けてください。
- スキーマを常に整備してください。繰り返し発生するずれや曖昧さに気付いたら、
AGENTS.mdを更新してください。