mcpField
L
llmwiki

llmwiki

ローカル
llmwiki.atomicstrata.aiメモリ・ナレッジ2.2k1 週間前に更新

llmwiki について

llmwikiは、文書などのソースを引用元を追跡できる相互リンク付きMarkdown Wikiに変換します。再利用やレビューが可能な知識を必要とするエージェントやチーム向けで、プロファイルに型、関係、レビューゲート、ワークフローを定義でき、検索や評価、エクスポートにも対応します。

主な機能

  1. 01ソースを引用付きのリンクページに変換
  2. 02ライフサイクルプロファイルとテンプレート
  3. 03ハイブリッド検索によるエビデンスパック生成
  4. 04生成ページのレビューと引用追跡
  5. 05引用・品質・鮮度のチェック
  6. 06ローカルビューアー、CLI、SDK

活用シーン

  1. 01論文やメモを再利用可能なWikiに整理
  2. 02エージェントに根拠付きのコンテキストを提供
  3. 03公開前に生成コンテンツをレビュー
  4. 04知識を他のシステム向けにエクスポート

MCP 対応

`llmwiki serve`は、取り込み、コンパイル、クエリ、lint、読み取り、状態確認、評価、コンテキストパック、OKF交換のツールをMCP対応エージェントに公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"atomicstrata-llmwiki": {
"command": "npx",
"args": [
"-y",
"llm-wiki-compiler"
]
}
}
}
起動コマンドnpx -y llm-wiki-compiler

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmllm-wiki-compiler1.5.0

ツール

16

掲載時のツール一覧 · 1 週間前に更新

パラメーター型必須説明
sourcestringはいURL(http/https)または .md/.txt ファイルの絶対パス

詳細

llmwiki

CI npm docs license

1.5 の新機能 — Wiki の動作とストレージを分離しました。

1.5.0 は npm latest の安定版です:npm install --global llm-wiki-compiler。

  • 同じ Wiki を、よりすっきりした基盤で。 コンパイル、検索、レビューでは、ファイルに直接触れるのではなく、ストレージに必要な機能を指定するようになりました。既存の Wiki はレイアウトを維持したまま、移行なしでこれまでどおり動作します。
  • Converse ゲートウェイ。 ベアラー認証された Converse エンドポイントをプロバイダーとして使用できます。
  • ソースに合わせたページ数。 llmwiki compile --no-pages-limit で、固定の概念数制限を解除できます。
  • 最新状態を保つビューアー。 llmwiki view は再起動なしでコンパイル後に更新され、ポートは LLMWIKI_VIEW_PORT から読み取ります。

1.5.0 の内容 · 変更履歴

1.4 の新機能 — 公開前に回答をレビューできます。

生成された回答とその引用をページ化する前にレビューし、1 回の操作でページをまとめて承認して、回答の根拠となったページをたどれます。リリースノート · アップグレードガイド

1.3 の新機能 — Wiki を新しいデザインに。

柔らかな表面と丸みのあるタイポグラフィが特徴の Scientific Clay と、システムのライト/ダーク設定に従う Minimal が登場しました。Nebula Light と Dark を含む 4 つのテーマをすぐに切り替えられます。

Scientific ClayMinimal
Scientific Clay のナレッジコンパイルページ。柔らかなラベンダー色の表面と丸みのあるタイポグラフィが特徴同じデータが表示されたナレッジコンパイルページを Minimal で表示。システムのライト設定に従っています

デモ用 Wiki の同じページです。どちらかのスクリーンショットをクリックすると拡大表示できます。

再帰的なソースフォルダー、パスの除外、プロジェクト固有のコンパイル手順、大規模な埋め込みインデックス向けのストレージに対応しました。

1.2 の新機能 — レコードとその根拠を確認できます。

ローカルビューアーで、プロファイルで定義されたカテゴリ、宣言されたフィールド、関連するレコード、出典情報、根拠となるソースの抜粋を確認できます。

1.1 の新機能 — ドメインテンプレートを公開して共有できます。

署名付きテンプレート配布物を作成し、明示的に信頼されたカタログから検索して、互換性チェックを行いながらインストールまたは更新できます。

1.0 の新機能 — 設定可能なライフサイクルプロファイル。

作業の進め方に合わせてナレッジシステムを構築できます。 レコード、関係、レビューゲート、ワークフローを、検証済みの 1 つのプロファイルで定義できます。研究には AutoSci、編集作業には Newsroom を使うか、独自のプロファイルを作成してください。

設定可能なライフサイクルプロファイルを見る →


llmwiki の機能

生のソースを、エージェントと人間が閲覧、検索、リント、エクスポート、再利用できる、相互リンク付きで引用元を追跡可能な Markdown Wiki にコンパイルします。デフォルトのプロファイルでは従来の概念とクエリのレイアウトが維持されます。オプションのプロファイルを使うと、コンパイラーにドメイン分岐を追加せずに、ドメイン固有のタイプやワークフローを追加できます。

llmwiki は LLM Wiki パターンを実装しています。クエリのたびに生ファイルから知識を再発見するのではなく、一度コンパイルして、構造、出典情報、レビュー状態、検索メタデータが時間とともに蓄積される永続的なページにします。

このリポジトリの用途

生の素材から永続的なナレッジベースを作成する必要がある場合は、llmwiki を使用してください。

  • 論文、メモ、README、トランスクリプト、PDF、画像、Web ページを、型付き Wiki ページにコンパイルできます。
  • ばらばらのファイルの山ではなく、安定した引用に対応したコンテキストパックをエージェントに提供できます。
  • ソースの引用、レビューチュー、鮮度チェック、品質ゲートを使って、生成された知識を監査可能な状態に保てます。
  • 結果をローカルで閲覧したり、CLI から検索したり、MCP 経由で公開したり、SDK 経由で埋め込んだりできます。
  • Open Knowledge Format(OKF)、JSON、JSON-LD、GraphML、Marp、llms.txt を使って、コンパイル済みの知識を他のツールとやり取りできます。

llmwiki は、汎用の静的サイトジェネレーター、重厚なオントロジーデータベース、あるいは頻繁に変化する生ログを検索するための場当たり的な手段としては使用しないでください。コンパイル、レビュー、再利用する価値があるソース知識を扱う場合に最も力を発揮します。

得られるもの

  • チャンクではなく、コンパイル済みの Wiki。 2 段階の LLM パイプラインで、まず概念を抽出し、次に型付きページ concept、entity、comparison、overview を生成します。
  • 設定可能なライフサイクルプロファイル。 フェイルクローズ方式の .llmwiki/profile.json で、エンティティスキーマ、型付き関係、ライフサイクル状態マシン、遷移要件、ワークフロー、アーティファクト、コネクター、コンテンツ階層、検索ポリシーを宣言できます。
  • インストール可能なドメインテンプレート。 llmwiki template init autosci は、論文、アイデア、実験、原稿、エビデンスアーティファクト、ワークフロー、Crossref インポートを備えた研究プロジェクトを作成します。newsroom は、同じ仕組みを編集業務で活用する例を示します。
  • 実行時の信頼ゲート。 関係性、エビデンス、アーティファクト、人間/エージェントのゲートは、プロンプト上の慣例に委ねず、書き込み処理で適用されます。常時実行される lint により、後からドリフトを検出できます。
  • 引用元を追跡できる出力。 段落と主張には、出典ファイルと行範囲が引用され、llmwiki lint でリンクを検証できます。
  • ハイブリッド検索。 セマンティックチャンク検索、BM25 による再ランキング、Wiki リンクグラフの展開により、クエリやエージェント向けのコンパクトなエビデンスパックを作成します。
  • ローカルビューアー。 llmwiki view を実行すると、検索、ページメタデータ、グラフの探索、ソースの鮮度バッジ、引用チップを備えた読み取り専用のブラウザー UI が開きます。
  • レビュー ポリシー。 信頼度、矛盾、スキーマ、出典のルールに抵触した場合、生成ページをレビュー対象として自動保留できます。
  • 鮮度の修復。 llmwiki lint と llmwiki next で古くなったページや孤立したページを検出できます。llmwiki refresh --stale は、関係のない新しいソースをコンパイルせずに、変更された知識を修復します。
  • 評価ハーネス。 llmwiki eval は、健全性スコア、問題のあるページを特定するページごとの健全性分布、Wiki リンクグラフの健全性、引用の網羅率/精度、コーパスの統計、回帰差分、およびオプションの判定モデルによる引用サポートを報告します。
  • MCP サーバー。 llmwiki serve は、取り込み、コンパイル、クエリ、lint、読み取り、ステータス、評価、コンテキストパック、OKF 交換のツールを MCP 互換エージェントに公開します。
  • SDK。 createWiki({ root }) を使うと、シェルコマンドを実行せずに、TypeScript から取り込み、コンパイル、クエリ、コンテキスト、ステータス、エクスポート、評価、OKF のインポート/エクスポートを実行できます。
  • Open Knowledge Format での交換。 ポータブルで Markdown ネイティブな知識交換に対応するため、OKF バンドルをエクスポートおよびインポートできます。外部からインポートした OKF は、既定ではレビューチューを経由してステージングされます。信頼済みバンドルは、明示的にライブ状態へ書き込むこともできます。
  • その他のポータブルなエクスポート。 JSON、JSON-LD、GraphML、Marp スライド、llms.txt を下流システム向けにエクスポートできます。
  • ポータブルなプロバイダー対応。 Anthropic、Claude Agent SDK のローカルログイン、OpenAI Codex CLI のローカルログイン、OpenAI 互換サーバー、Ollama、GitHub Copilot、Atlas Cloud、OrcaRouter、Converse 互換ゲートウェイ、ローカルの OpenAI 互換ランタイムに対応しています。

設定可能なライフサイクルプロファイル(CLP)

CLP は、llmwiki のナレッジコンパイラーを、ドメイン固有のナレッジシステムに再利用できる基盤へと変えます。検証済みの .llmwiki/profile.json が、次の項目を定める単一の契約になります。

  • 型付きエンティティ、フィールド、有向関係
  • ライフサイクルの状態、遷移の根拠、信頼ゲート
  • 複数段階のワークフローと宣言されたアクション
  • ハッシュで固定されたアーティファクトと、ファーストパーティコネクターのバインディング
  • コンテンツの階層と検索動作

これらのルールはランタイムによって適用され、プロンプト上の慣例に委ねられることはありません。CLI、SDK、MCP サーバー、ビューアー、コンテキストビルダー、lint、status、export、OKF の交換サーフェスはすべて、同じプロファイル契約に基づいて動作します。無効なプロファイルや、宣言されたゲートを迂回する書き込みは、フェイルクローズで拒否されます。

CLP は設計上、後方互換性を備えています。.llmwiki/profile.json がないプロジェクトでは、組み込みのデフォルトの概念・クエリプロファイルが使用され、1.0 より前の動作が維持されます。開始方法は 3 通りあります。独自のプロファイルをひな形から作成する、組み込みまたはローカルのテンプレートをインストールする、信頼できる tap から署名済みテンプレートをインストールする方法です。

# author your own profile, one entity type at a time
llmwiki profile init research --entity paper

# or install a built-in or local declarative template
llmwiki template list
llmwiki template inspect autosci
llmwiki template init autosci

llmwiki profile validate
llmwiki workflow list

autosci は、論文、アイデア、実験、原稿、エビデンスアーティファクト、ワークフロー、Crossref の取り込み機能を備えた、実用的な研究システムです。newsroom は、同じ汎用の仕組みを記事、担当デスク、署名者、編集ワークフローに適用します。テンプレートに含まれるのは設定と例だけで、実行可能なプラグインコードは含まれません。

テンプレートは安全に配布することもできます。発行者は llmwiki template publish を使って、署名付きのオフライン配布物を作成できます(Ed25519 署名、鍵のローテーション、パッケージの失効に対応)。また、template publish verify で検証できます。利用者は明示的に信頼する tap を追加し、署名済みカタログを検索・確認して、テンプレートをインストールまたは更新できます。ロックのもとで、継続性、失効、互換性のチェックが適用されます。

CLP の概念ガイドを読むか、AutoSci の研究ワークフローに従うか、Newsroom の編集ワークフローをご覧ください。

Karpathy の LLM Wiki パターン

Andrej Karpathy は、LLM Wiki パターンを、生の資料を将来のエージェントが再利用できるコンパイル済みの知識へ変える方法として紹介しました。llmwiki は、そのパターンを具体化したコンパイラーです。

重要な転換点は、作業をクエリ時からコンパイル時へ移すことです。従来の RAG では、生のチャンクを繰り返し検索し、質問ごとにモデルへ関係性の再構築を求めます。llmwiki はまず、出典を引用、メタデータ、レビュー状態を含む、型付きで相互リンクされたページに変換します。その後、クエリ、コンテキストパック、エクスポート、MCP ツールが、そのコンパイル済みアーティファクトを対象に動作します。

そのため llmwiki は、知識を積み重ねていく必要がある場合に役立ちます。複数の出典にまたがる概念は 1 つのページにまとめられ、保存した回答は将来のコンテキストとなり、古くなったページは検出して修復でき、エージェントは同じ生ファイルを一から読み直す代わりに、安定したエビデンスパックを利用できます。

詳しい説明は docs/concepts/karpathy-pattern.mdxをご覧ください。

エージェントの判断ガイド

再利用できるドキュメント、調査、またはプロジェクト知識のコーパスには、llmwiki を使用します。 自身の推論に必要な根拠を確認するときは、まず wiki_status と get_context_pack を使います。 単発のファイル読み込みやリアルタイムのウェブ検索に、Wiki は必要ありません。

npm パッケージには エージェントスキル が含まれています。 インストールについては、MCP セットアップガイドを参照してください。 MCP Registry の識別子は io.github.atomicstrata/llmwiki、npm パッケージは llm-wiki-compiler、実行ファイルは llmwiki です。

タスクに合ったエントリーポイントを選びます。

目標使用するもの
1 つのソースから Wiki を作成して内容を確認するllmwiki quickstart <source>
型付きの調査または編集プロジェクトを開始するllmwiki template list を実行し、続けて llmwiki template init autosci|newsroom を実行します
有効なドメイン契約を確認または検証するllmwiki profile show と llmwiki profile validate
宣言済みのライフサイクルワークフローを実行するllmwiki workflow list を実行し、続けて llmwiki workflow start <id> を実行します
プロファイルで宣言された成果物を作成または検証するllmwiki artifact write ... と llmwiki artifact verify <ref>
コネクター経由で外部レコードをインポートするllmwiki connector list を実行し、続けて llmwiki connector run <id> --input key=value を実行します
ファイルや URL を追加するllmwiki ingest <url-or-file>
変更されたソースをコンパイルまたは再コンパイルするllmwiki compile
プロジェクト固有の執筆ガイダンスを追加するllmwiki compile --instructions ./SOUL.md。ガイダンスを適用するコンパイルのたびに、このオプションを指定します
不適切なソースと、そこから派生したページを削除するllmwiki rm <source>
生成されたページを人間の承認まで保留するllmwiki compile --review またはレビュー方針の設定
根拠に基づく質問をするllmwiki query "question"
回答を Wiki に保存するllmwiki query "question" --save
別のエージェント用にエビデンスパックを作成するllmwiki context "<task>" --json または MCP の get_context_pack
コンパイル済みナレッジベースを確認するllmwiki view --open
リンク切れ、引用、信頼度、鮮度、品質を確認するllmwiki lint と llmwiki eval
古くなったコンパイル済みページを修復するllmwiki refresh --stale --dry-run を実行し、続けて llmwiki refresh --stale を実行します
エージェントから llmwiki を操作するllmwiki serve --root <project>
TypeScript から llmwiki を操作するcreateWiki({ root })
別のシステム向けにエクスポートするllmwiki export --target <format>
Open Knowledge Format バンドルをエクスポートするllmwiki export --target okf --out <dir>
Open Knowledge Format バンドルをインポートするllmwiki import --okf <dir> --dry-run を実行し、続けてレビュー/承認します

クイックスタート

npm install -g llm-wiki-compiler

export ANTHROPIC_API_KEY=sk-...
# or choose another provider:
# export LLMWIKI_PROVIDER=openai
# export OPENAI_API_KEY=sk-...

llmwiki quickstart ./notes.md
llmwiki query "what are the key ideas?"
llmwiki view --open

quickstart は 1 つのソースを取り込み、ページをコンパイルして、ビューアーを開きます。既存のプロジェクト内では、次に取るべき最も安全なアクションを確認したいときに llmwiki next を実行します。

デフォルトの「概念とクエリ」のレイアウトではなく、ドメインモデルを使って開始するには、次のようにします。

mkdir research-wiki && cd research-wiki
llmwiki template inspect autosci
llmwiki template init autosci
llmwiki profile validate
llmwiki workflow list

テンプレートのインストールは、新規または空の型付きプロジェクトを対象としています。選択したプロファイルは .llmwiki/profile.json に作成されます。通常のプロジェクトの読み込みは、テンプレートレジストリやロックファイルに依存しません。

デモ

記事やドキュメントで試してみましょう。

mkdir my-wiki && cd my-wiki
llmwiki quickstart https://en.wikipedia.org/wiki/Andrej_Karpathy
llmwiki query "What terms did Andrej coin?"

examples/basic/ ディレクトリには、API キーなしで内容を確認できる、小規模な生成済み Wiki が含まれています。

コアコマンド

コマンド説明
llmwiki ingest <url-or-file>URL を取得するか、ローカルファイルを sources/ にコピーします。
llmwiki ingest-session <path>エクスポートされた Claude、Codex、または Cursor のセッションを sources/ にインポートします。
llmwiki quickstart <source>1 つの手順で取り込みとコンパイルを行い、必要に応じてビューアーを開きます。
llmwiki compile概念を段階的に抽出し、Wiki ページを生成します。
llmwiki rm <source> [--dry-run]ソースと、そのソースだけから派生した概念ページを削除します。
llmwiki refresh --stale [--dry-run]古くなったページの変更済み所有元を再コンパイルし、選択された孤立所有権を整理します。
llmwiki template list|inspect|init検証済みの宣言型プロファイルテンプレートを見つけてインストールします。
llmwiki profile init|show|validate|diff最小限のプロファイルを作成する、内容を確認する、検証する、またはプロファイルの変更を評価します。
llmwiki workflow ...プロファイルで宣言されたワークフロー、ステージ、ゲート、出力を見つけてローカルで実行し、呼び出し間で実行状態を保持します。
llmwiki artifact write|verify信頼されたプロファイル宣言のアーティファクトを書き込み、ハッシュで固定された参照を検証します。
llmwiki connector list|runファーストパーティコネクターを見つけ、外部レコードをレビュー用にステージングします。
llmwiki review list/show/approve/reject保留中の候補を確認して管理します。
llmwiki query "question" [--save]コンパイル済み Wiki に対して質問し、必要に応じて回答を保存します。
llmwiki context "<prompt>" --jsonエージェント向けに、引用を考慮したエビデンスパックを作成します。
llmwiki view [--open]読み取り専用のローカルブラウザービューアーを起動します。
llmwiki status [--json]ページ数/ソース数、古くなったページと孤立したページ、保留中の作業、状態の健全性を報告します。
llmwiki lintWiki の構造、引用、リンク、メタデータ、鮮度を検証します。
llmwiki eval [--suite fast|full]Wiki の品質と、オプションで引用の裏付けを測定します。
llmwiki export --target <format>Open Knowledge Format(okf)を含む、移植可能な形式に Wiki をエクスポートします。
llmwiki import --okf <dir> [--dry-run] [--trusted]Open Knowledge Format バンドルをインポートします。デフォルトではレビュー用にステージングされます。
llmwiki serve --root <dir>MCP サーバーを起動します。

コマンドの詳しいドキュメントは docs/cli/ にあります。

Open Knowledge Format

llmwiki は Open Knowledge Format(OKF)の作成側および利用側です。OKF は、構造化されたフロントマターを含む移植可能な Markdown ファイルとしてコンパイル済みの知識を共有するための Google Cloud の取り組みです。

llmwiki export --target okf --out ./dist/okf
llmwiki import --okf ./dist/okf --dry-run
llmwiki import --okf ./dist/okf

OKF のインポートは、意図的にレビューを優先する設計です。信頼されていないバンドルは、公開済みの Wiki ページではなく、レビュー候補になります。インポーターは外部の OKF メタデータを保持し、llmwiki の来歴情報を x-llmwiki の下に保存します。また、安全な元のネストされたパスも含め、ローカル編集後にインポートしたページを正確に再エクスポートします。

docs/guides/open-knowledge-format.mdx、docs/cli/export.mdx、docs/cli/import.mdx を参照してください。

llmwiki が作成するもの

プロジェクトでは、未加工の入力を sources/ に、コンパイル済みの Markdown を wiki/ に、コンパイラーの状態を .llmwiki/ の下に保存します。

sources/
  raw source files
wiki/
  concepts/      compiled pages
  queries/       saved answers
  <entity>/      profile-declared typed pages
  graph/         typed relation and audit-event stores
  outputs/       derived workflow projections
  index.md       generated TOC
.llmwiki/
  profile.json   active domain contract
  template-lock.json  advisory install provenance
  config.json    review policy and source selection
  schema.json    page-kind/cross-link policy
  state.json     source hashes and ownership
  candidates/    held review candidates
  workflows/     signed workflow run state
  eval/          quality history and thresholds
artifacts/       hash-pinned profile-declared files and manifests
log.md           activity journal

コンパイル済みのページは通常の Markdown と YAML フロントマターで構成され、さらにエージェントが引用、鮮度、確信度、矛盾、レビュー状態を判断するための十分なメタデータが含まれています。docs/concepts/wiki-model.mdx を参照してください。

デフォルトでは、ソースはトップレベルの Markdown ファイルです。プロジェクト設定でネストされたソースフォルダーと除外設定を有効にできます。コンパイル済みソースを除外すると、通常の次回コンパイル時に、そのソースファイルを削除せずに寄与分が無効になります。

エージェントとの連携

MCP

実行します:

llmwiki serve --root /path/to/wiki-project

MCP クライアントは、ソースの取り込み、コンパイル、クエリ、ページの検索、ページの読み取り、リント、評価の実行、ステータスの確認、コンテキストパックの要求、OKF バンドルの交換を行えます。読み取り専用ツールはプロバイダーの認証情報がなくても動作します。LLM を利用するツールは、呼び出し時にプロバイダーの認証情報を検証します。run_eval ツールはプロバイダーなしで高速スイートを実行します。LLM が引用のサポートを評価するフルスイートには、プロバイダーが必要です。

docs/guides/mcp-agent-integration.mdxを参照してください。

SDK
import { createWiki } from "llm-wiki-compiler";

const wiki = createWiki({ root: "/path/to/wiki-project" });
await wiki.ingest({ source: "./notes.md" });
await wiki.compile();
const answer = await wiki.query({ question: "What changed?" });

docs/guides/sdk.mdxを参照してください。サポート対象のエントリーポイントは llm-wiki-compilerです。スコープが限定された補助パッケージは実装上の依存関係です。ローカルのワークフローエンジンとアプリケーション独自のコーディネーターは、移行経路ではなく、2つの階層です。llmwiki workflowは、プロファイルで宣言されたワークフローを、セッション間で状態を永続化しながらローカル呼び出しで実行します。 外部コーディネーターはローカルのワークフロー実行メソッドを使わずに同じ SDK を呼び出しますが、補助エンジンの依存関係はインストールされたままです。SDK パッケージの選択、 SDK のアップグレードに関する注意事項、および ローカルエンジンを使用するタイミングを参照してください。

設定

最低要件:Node.js 24 以降。

デフォルトのプロバイダーは Anthropic です:

export ANTHROPIC_API_KEY=sk-...

プロバイダーの選択は環境変数によって行います:

プロバイダー一般的な設定
AnthropicANTHROPIC_API_KEYまたはANTHROPIC_AUTH_TOKEN
Claude Agent SDKローカルの Claude Code ログイン、LLMWIKI_PROVIDER=claude-agent
OpenAI Codex CLIローカルの Codex ログイン/ChatGPT サブスクリプション、LLMWIKI_PROVIDER=codex-agent。埋め込みプロバイダーを明示的に指定する必要があります
OpenAI 互換LLMWIKI_PROVIDER=openai、OPENAI_API_KEY、任意でOPENAI_BASE_URL
Converse 互換ゲートウェイLLMWIKI_PROVIDER=converse、LLMWIKI_MODEL、LLMWIKI_CONVERSE_BASE_URL、およびLLMWIKI_CONVERSE_API_KEYを明示的に指定します。有効にする場合は、別途埋め込みプロバイダーが必要です
OllamaLLMWIKI_PROVIDER=ollama、OLLAMA_HOST
GitHub CopilotLLMWIKI_PROVIDER=copilot、GITHUB_TOKEN=$(gh auth token)
Atlas CloudLLMWIKI_PROVIDER=atlascloud、ATLASCLOUD_API_KEY
OrcaRouterLLMWIKI_PROVIDER=orcarouter、ORCAROUTER_API_KEY

docs/configuration/providers.mdxおよびdocs/configuration/environment-variables.mdxを参照してください。

品質と安全性のモデル

llmwiki は、監査可能な生成ナレッジを実現するよう設計されています。

  • 書き込む前にレビューします。 compile --review または .llmwiki/config.json のレビュー方針を使用して、リスクのあるページを候補として保留します。
  • プロファイルの最低要件は実行時にチェックされます。 フィールドの契約、ライフサイクルの遷移、関連の件数、エビデンス、アーティファクトの要件は、ページ、ライフサイクル、ワークフロー、インポート、承認におけるすべての書き込み処理で適用されます。
  • 外部コネクターのデータは信頼されません。 ファーストパーティーのコネクターは制限付きのフェッチを行い、フェンスで区切られたレビュー候補として登録します。承認の対象は、オペレーターがレビューしたものと完全に一致する本文に固定されます。
  • アーティファクトはコンテンツアドレス指定されたエビデンスです。 アーティファクトの読み書きは、パスが制限され、サイズが上限以下に抑えられ、スキーマが検証され、ハッシュで固定された参照との照合が行われます。
  • 設定エラー時は処理を中止します。 レビュー方針の設定が無効な場合、レビューを黙って無効にするのではなく、コンパイルを中止します。
  • ソースへのアクセスを制限します。 ソースの抜粋とインポート/エクスポートのパスはプロジェクト内に制限されます。
  • 鮮度は明示されます。 ページは fresh、stale、orphaned、unverified のいずれかになり、stale ページにはフラグが付けられ、修復できます。JSON エクスポートの対象はアクティブなページのみです。ライブページの鮮度(fresh/stale/unverified)は保持されます。計算上 orphaned と判定されたページ(すべてのソースが削除されたページ)は、lint とビューアーのシグナルにのみ表示され、エクスポートからは除外されます。
  • インポートしたコンパイル済みナレッジは、デフォルトでステージングされます。 明示的に信頼するよう指定しない限り、外部バンドルはレビューキューを経由します。
  • CI ゲートに対応しています。 llmwiki lint と llmwiki eval で品質のしきい値を適用できます。

docs/configuration/review-policy.mdx、docs/troubleshooting/stale-pages.mdx、docs/guides/ci-quality-gates.mdx を参照してください。

規模と実用性

llmwiki はまだ初期段階のソフトウェアですが、少数のメモを扱うだけの玩具的なパイプラインではなくなっています。

  • 増分コンパイルにより、変更されていないソースが再び LLM に渡されることはありません。
  • 並列コンパイルでは、設定可能な上限(--concurrency/LLMWIKI_COMPILE_CONCURRENCY)のもとで、概念の抽出とページの生成を並行して実行し、大規模なコンパイルにかかる実時間を短縮します。
  • チャンクレベルの埋め込みにより、BM25 による再ランク付けとグラフの展開の前に、大規模な Wiki を絞り込めます。
  • コンテンツハッシュを考慮した埋め込みの更新により、変更されていないページやチャンクのベクトルの再計算を避けられます。
  • バッチ埋め込みでは、ページとチャンクのベクトルをプロバイダーへ一件ずつではなくバッチで送信するため、初回起動時や大規模な更新時のレイテンシーを短縮できます。
  • バイナリー埋め込みストレージは、64 MiB の JSON 制限を超えるストアを自動的に処理します。より小さなストアでも有効化できます。バイナリー形式の選択は保持されますが、検索時にはインデックス全体をメモリーに読み込みます。制限、復旧、ダウングレードに関するガイダンスを参照してください。
  • 引用判定のキャッシュにより、eval --suite full の繰り返し実行にかかるコストを削減できます。
  • 字句検索へのフォールバックにより、使用中のプロバイダーに埋め込みエンドポイントがない場合でも、クエリーやコンテキストを扱うワークフローを利用できます。
  • プロンプトの予算管理と取り込み時の切り詰めメタデータにより、大規模なソースを、収まるかのように黙って扱うのではなく、明示的に管理できます。

現在、最も適しているのは、調査用フォルダー、コードベースのドキュメント、チームハンドブック、標準、設計メモ、意思決定ログ、厳選されたソース集など、長期にわたって利用するプロジェクトや分野の Wiki です。一方、元データの検索だけで十分で、コンパイルされた構造がレビューされるより早く古くなってしまうような、変更の激しい大量データのストリームには、あまり適していません。

ドキュメント

ドキュメントサイトのソース一式は docs/ にあります。

Node 24 を使って、ドキュメントをローカルでプレビューできます。

cd docs
volta run --node 24 npx mint dev --port 3001

現在のリリース

安定版リリース 1.5.0: npm の latest dist-tag に設定されている現行リリースです。候補版 1.5.0-rc.1 と同じコードを収録しています。

  • Wiki の動作をローカルファイル I/O から分離しました。 Wiki の動作を決めるコード(変更されたソース、ページのリンク先、レビュー候補を承認できるかどうかなど)は、以前はファイルを直接開き、ロックし、名前を変更していました。これらのルールは現在、用途を絞ったストレージ境界を通じて動作し、従来のローカルディスク上の構成はその最初の実装となっています。ロック、アトミック書き込み、パスの制限、シンボリックリンクの処理、復旧は、引き続きローカル実装が担います。ユーザー側に変更はありません。同じディレクトリ構成、ファイル形式、デフォルト設定に加え、CLI、SDK、MCP の各エントリーポイントを引き続き利用でき、移行もストレージ設定も不要です。これは代替ストレージへの対応と、ディスクに依存せず Wiki のロジックをテストするための基盤です。ホスト型ストレージ、リモートバックエンド、ロールベースの権限、公開ストレージプラグイン API が追加されるわけではありません。詳しくは ARCHITECTURE.md をご覧ください。
  • Converse ゲートウェイプロバイダー。 LLMWIKI_PROVIDER=converse を設定すると、Converse プロトコルを使用するベアラー認証エンドポイントに接続でき、ストリーミングと構造化抽出に対応します。AWS プロトコルパッケージはオプションであり、このプロバイダーを選択した場合にのみ読み込まれます。詳しくはプロバイダーの設定をご覧ください。
  • --no-pages-limit 抽出。 llmwiki compile --no-pages-limit を指定すると、ソースごとに要求される 3~8 個の概念という制限がなくなり、ソースが裏付けるページが生成されます。
  • ビューアーの更新とポート。 llmwiki view はコンパイル後にバックグラウンドでスナップショットを再構築し、終了時には更新を適切に停止します。また、--port が指定されていない場合は LLMWIKI_VIEW_PORT を読み取ります。
  • 正確性の修正。 抽出された概念名に含まれる Wiki リンクのマークアップによって重複ページが作成される問題を修正しました。また、GPT-6 Luna モデルが OpenAI プロバイダーで動作するようになりました。MCP Wiki ツールは stdio プロトコルのストリームに進捗出力を流さなくなり、sources/ 内の名前付きパイプによって鮮度チェックが停止する問題も修正しました。
  • プロンプトバージョン v7。 新たに生成されるすべてのページには、デフォルトの実行で生成されたページも含め、プロンプトバージョン v7 が記録されます。アップグレードだけでは、変更されていないソースは再コンパイルされません。
npm install --global llm-wiki-compiler

サポートパッケージは同じバージョンに固定されており、本体とともにインストールされます。MCP Registry エントリー io.github.atomicstrata/llmwiki は、npm のリリース後に 1.5.0 向けとして公開されます。既存プロジェクトで移行は不要です。プロンプトのバージョン変更とオプトイン方式の Converse 依存関係については、アップグレードに関する注意事項をご覧ください。

1.4.2 リリース: codex-agent プロバイダーで llmwiki compile が動作しない問題を修正しました。また、公開前の回答レビュー、一括承認、抽出結果の再利用、ページ単位の回答引用、分割パッケージ SDK と対応するサポート依存関係など、1.4.0 の機能も含まれています。

実験的なアーティファクト型とワークフローのステータスでは、ソースの更新が必要になる場合があります。1.3 からアップグレードする前に、SDK のアップグレードに関する注意事項をご覧ください。移行の詳細、貢献者への謝辞、制限事項については、1.4.0 リリース概要と変更履歴をご覧ください。

1.3.0 リリース:

  • 4 種類のビューアーテーマを追加しました。新しいデフォルトは Scientific Clay で、Minimal はシステム設定に従います。保存済みのライト/ダーク設定は Nebula Light/Dark に移行されます。
  • ソースの再帰的な検出、パスのリテラルな除外、プロジェクトごとに明示的に指定できるコンパイル手順を追加しました。
  • より大きな埋め込みインデックス向けの上限付きバイナリストレージ、設定可能な補完予算、保護されたゲートウェイリクエスト拡張を追加しました。
  • OrcaRouter による埋め込みルーティング、再試行可能なルール言語の変更、公開テストの型チェック基準を追加しました。

移行の詳細、貢献者への謝辞、制限事項については、1.3.0 リリース概要と変更履歴をご覧ください。

1.2.0 リリース:

  • ドキュメントカテゴリ、レコード間の関係、出所情報、ソースプレビュー、検証済みのローカルアーティファクトアクセス、レスポンシブなナビゲーション、画面に合わせたグラフを備えた、プロファイル対応ビューアー。
  • 追加プロバイダー、OpenAI 互換の推論モデル制御、独立した埋め込み設定、SDK の埋め込みオプトアウト。
  • 任意の Sources セクション、プロンプト変更時の無効化とページごとの出所情報に対応した、SDK へのシステムポリシーの追加。
  • ソース削除後の共有ページの復旧、引用の行リストに関する修正、省略形のウィキリンクを保守的に修復する機能。

Windows のパスに関する修正は含まれていますが、Windows ネイティブ環境での検証と CI は未完了です。Windows での完全なファイルシステム隔離の保証も未検証です。信頼できないプロジェクトには、サポート対象の Linux 環境を使用してください。詳しくは #217をご覧ください。

1.1.0 リリース:

  • テンプレート配布エコシステム:公開者は template publish init | add | build | rotate | revoke(Ed25519 署名、鍵のローテーション、パッケージの取り消し)を使用して、署名付きのオフライン配布物を作成できます。template publish verify で検証できます。
  • 利用者は、明示的に信頼するテンプレートタップを設定し、署名付きカタログを検出して内容を確認し、継続性、取り消し、互換性のチェックをロック下で行いながらテンプレートをインストールまたは更新できます。
  • llmwiki status コマンド:ページ数とソース数、最終コンパイル、古くなったページと孤立したページ、保留中の変更、レビューキュー、アクティブなプロファイル、状態ファイルの健全性を読みやすい形式で表示します。

1.0.0 リリース:

  • CLI、SDK、MCP、ビューアー、コンテキスト、lint、ステータス、エクスポート、およびプロファイル対応の OKF 交換にわたる、設定可能な Lifecycle Profiles。
  • 組み込みの autosci および newsroom テンプレート、型付きワークフローとアクション、ファーストクラスのアーティファクト、型付きリレーションとランタイムのライフサイクルゲートに加え、Crossref を備えた強化済みのファーストパーティコネクター基盤。
  • 型付きページのセマンティック検索と検索制御、バッチ埋め込み、並列コンパイル、フェイルクローズ方式の状態復旧。

リリース履歴については、CHANGELOG.mdをご覧ください。

Companion:Atomic Memory

llmwiki と Atomic Memory は、相互に補完し合うオープンなコンテキストインフラストラクチャです。

  • llmwiki は、ソース資料を永続的で検証可能なナレッジにコンパイルします。
  • Atomic Memory は、エージェントに検索可能で、スコープを設定でき、修正可能で、検証可能なランタイムメモリを提供します。

それぞれ単独でも、組み合わせても使用できます。@atomicmemory/llmwiki ブリッジは、llmwiki export --target json --project-id <id> を永続的なメモリレコードとしてインポートします。

貢献

貢献を歓迎します。llmwiki に必要な機能がない場合は、イシューまたは PR を作成し、サポートしたいワークフローを説明してください。必要に基づく改善は、多くの場合、最も有益なものです。より一般的な貢献をしたい場合は、ロードマップの項目から始めるとよいでしょう。コアのコンパイル、レビュー、インポート/エクスポート、または検索の仕様に関わる大規模な変更については、まずイシューまたは設計に関する議論を開始し、最初に契約内容をすり合わせてください。

コードを変更してコミットする前に、次を実行してください。

npx tsc --noEmit
npm run build
npm test
npm run fallow:ci

CONTRIBUTING.md を参照してください。

ライセンス

MIT

免責事項

このリポジトリの作成にあたり、LLM に危害は加えられていません。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。