1313 <a href =" README.zh-CN.md " >简体中文</a >
1414</p >
1515
16- WikiBrain は、Claude Code と Codex のための [ MIT ライセンス] ( LICENSE ) の共有セカンドブレインです。ライフサイクルフックを通じて機密情報をマスキングした会話の引き継ぎを取得し、永続的なコンテキストを読みやすい Markdown として保存し、ローカルで出典を認識した情報の呼び出しに [ Wikimap] ( https://github.com/dhha22/wikimap ) を使用します。
16+ WikiBrain は、Claude Code、 Codex、Grok Build のための [ MIT ライセンス] ( LICENSE ) の共有セカンドブレインです。ライフサイクルフックを通じて機密情報をマスキングした会話の引き継ぎを取得し、永続的なコンテキストを読みやすい Markdown として保存し、ローカルで出典を認識した情報の呼び出しに [ Wikimap] ( https://github.com/dhha22/wikimap ) を使用します。
1717
1818## 目次
1919
@@ -33,7 +33,7 @@ WikiBrain は、Claude Code と Codex のための [MIT ライセンス](LICENSE
3333
3434| ニーズ | WikiBrain が提供するもの |
3535| --- | --- |
36- | エージェントをまたいで作業を継続 | Claude と Codex が同じプロジェクトスコープのコンテキストを復元できます。 |
36+ | エージェントをまたいで作業を継続 | Claude、 Codex、Grok が同じプロジェクトスコープのコンテキストを復元できます。 |
3737| 証拠と記憶を分離 | 90 日の証拠、適応型記憶、明示的な長期記憶を区別して保持します。 |
3838| ユーザーの所有権を維持 | Markdown が永続的な正本であり、Wikimap インデックスは破棄して再生成できます。 |
3939| 一時的な障害から復旧 | アーカイブ、昇格、リレーション整理の各アウトボックスが中断した処理を再試行します。 |
@@ -64,6 +64,8 @@ brainctl doctor
6464| Claude Code の自動記憶 | 新しいセッションで利用可能 | なし。確認には ` /hooks ` を使用できます。 |
6565| Codex の手動記憶 | すぐに利用可能 | ` brainctl remember ` と ` brainctl recall ` を使用します。 |
6666| Codex の自動取得と呼び出し | 定義はインストールされますが、最初は信頼されていません | 新しいセッションを開始し、` /hooks ` を開いて、WikiBrain の 5 つのフックを確認し、現在のハッシュを信頼してください。 |
67+ | Grok の自動取得 | Grok の Claude フック互換機能で利用可能。ネイティブ設定も対応 | デフォルト設定では追加操作不要。Grok 専用の場合だけ ` brainctl setup --clients grok ` を使用します。 |
68+ | Grok の呼び出し | インストール済みスキルと ` brainctl recall ` が利用可能 | Grok は passive hook の stdout を無視するため、フックによる自動コンテキスト注入には対応しません。 |
6769
6870### 3. スモークテストを実行
6971
@@ -85,8 +87,8 @@ brainctl forget --document DOCUMENT_ID --apply
8587
8688``` text
8789Claude Code hooks ─┐
88- ├ ─ brainctl ─┬─ SQLite WAL: receipts, queues, relations
89- Codex hooks ───────┘ ├─ Markdown vault: durable readable truth
90+ Codex hooks ───────┼ ─ brainctl ─┬─ SQLite WAL: receipts, queues, relations
91+ Grok hooks ─ ───────┘ ├─ Markdown vault: durable readable truth
9092 └─ Wikimap: disposable local search index
9193```
9294
@@ -96,6 +98,27 @@ Codex hooks ───────┘ ├─ Markdown vault: durable r
96984 . ` SessionStart ` は同じ Git ワークスペースについて、最近のコンテキストとクエリに関連するコンテキストを復元します。
97995 . 型付きの ` relates-to ` および ` supersedes ` リンクは証拠を接続し、その出所を削除することなく古いガイダンスを抑制します。
98100
101+ [ Grok Build 公式フック文書] ( https://docs.x.ai/build/features/hooks ) は
102+ ` SessionStart ` 、` UserPromptSubmit ` 、` PostToolUse ` 、` Stop ` 、
103+ ` PostCompact ` をサポートし、Claude Code のフックとスキルも自動的に読み込みます。
104+ WikiBrain は Grok のフック環境を検出し、Claude 互換経路のイベントも provider
105+ ` grok ` として記録します。ただし Grok は passive hook の stdout を無視します。
106+ そのため Grok の証拠は自動取得しますが、届いていない呼び出しをコンテキスト注入として
107+ 数えたり、自動呼び出しと主張したりしません。以前のコンテキストが必要なときは、
108+ Grok に WikiBrain スキルを使わせるか、` brainctl recall ` を実行してください。
109+ 実測 runtime payload の event 値は ` user_prompt_submit ` 、` stop ` のような
110+ lowercase で、WikiBrain が内部 lifecycle 名へ正規化します。` UserPromptSubmit ` は
111+ ` prompt ` と ` promptId ` を提供します。実測 ` Stop ` payload には ` transcriptPath ` 、
112+ ` promptId ` 、` reason ` がありますが assistant 本文はありません。そのため WikiBrain
113+ は利用不可の placeholder を保存し、外部 transcript を自動では読みません。
114+
115+ Grok 専用の設定では、まず [ Grok Build overview] ( https://docs.x.ai/build/overview )
116+ に従って公式 ` grok ` 実行ファイルをインストールします。xAI の現在のコマンドは
117+ ` curl -fsSL https://x.ai/cli/install.sh | bash ` です。リモート install script は
118+ 実行前に確認してください。その後 ` brainctl init --clients grok ` を使用します。Grok の Claude
119+ フックスキャナーを無効にしていない限り、ネイティブ Grok フックと Claude フックを
120+ 同時にインストールしないでください。同じイベントで両方が実行される可能性があります。
121+
99122各 Git リポジトリは独立した記憶スコープです。プロジェクトの境界を意図的に越えるのは ` brainctl remember --global ` だけです。フックはフェイルオープンです。不正な形式のイベント、ビジー状態のデータベース、Wikimap 実行ファイルの欠落、タイムアウトがコーディングエージェントを妨げることはありません。
100123
101124永続化、削除、再試行、信頼境界の詳細は [ ARCHITECTURE.md] ( ARCHITECTURE.md ) を参照してください。
@@ -110,29 +133,53 @@ Codex hooks ───────┘ ├─ Markdown vault: durable r
110133| 適応型長期記憶 | エージェントのコンテキストへ繰り返し渡された証拠の、長さを制限したマスキング済みスナップショット | 通常の retention 後も保持し、` adaptive ` と表示 |
111134| 明示的な長期記憶 | 「覚えて」または ` brainctl remember ` でユーザーが指定した事実や設定 | 通常の retention 後も保持し、` explicit ` と表示 |
112135
113- 適応型昇格は直近 60 日のスライディングウィンドウを使います。session または
114- handoff が異なる UTC 日付で 3 日以上、異なる consumer provider/session pair で
115- 3 件以上、実際の最終コンテキストに含まれ、provider/session/day 単位の注入が
116- 2 回以上である場合に限り対象になります。同じ provider/session pair・同じ日の
117- 再実行は 1 回として数えます。実際の consumer session identity がない手動
118- ` brainctl recall ` は数えません。最終 ` <memory-data> ` に届かなかった検索結果は
119- 数えず、memory ページ
120- 自身は昇格スコアを増やしません。superseded の証拠は対象外で、workspace 間で
121- 利用回数を合算することもありません。昇格後に source が superseded された場合、
122- 派生した adaptive memory も recall から隠します。
123-
124- これらのハードゲートを満たすだけでは昇格しません。WikiBrain は、説明可能な昇格
125- スコアがデフォルトの ` 0.65 ` 以上であることも要求します。スコアは session の多様性
126- 30%、異なる UTC 日にわたる継続性 25%、最終コンテキストへの反復注入 25%、明示的な
127- query に基づく consumer session の割合 10%、consumer provider の多様性 10%を
128- 合算します。反復要素は設定したハード最小値の 2 倍で飽和し、provider の多様性は
129- 2 provider で飽和します。最終コンテキストに注入されなかった検索結果は寄与しません。
130- 昇格ページと document metadata にはスコア、しきい値、重み付き要素を記録し、
131- ` adaptive_memory_min_score ` で 0 から 1 のしきい値を調整できます。query-backed として
132- 数えるのは明示的な検索の direct hit だけで、related と recent fallback は数えません。
133- デフォルト値は学習済み確率ではなく、決定的な初期ポリシーです。既存 config にも ` 0.65 `
134- が適用されます。以前の hard-gate-only 動作を維持するには、しきい値を ` 0 ` にします。
135- pending candidate は次回の利用時に再評価されます。
136+ ### 適応型昇格の条件とスコア
137+
138+ 自動昇格の対象は ` session ` と ` handoff ` の証拠だけです。ユーザーが明示的に
139+ 「覚えて」と指定した内容は、このスコアを経由せず ` explicit ` 長期記憶になります。
140+ 適応型候補はまず、直近 60 日以内に次のハードゲートをすべて満たす必要があります。
141+
142+ | ハードゲート | デフォルト |
143+ | --- | ---: |
144+ | 証拠を受け取った異なる consumer provider/session pair | 3 |
145+ | 証拠が注入された異なる UTC 日 | 3 |
146+ | 重複を除いた provider/session/day 単位の注入 | 2 |
147+
148+ ハードゲートを満たすだけでは昇格しません。WikiBrain は次の式を計算します。
149+
150+ ``` text
151+ score = 0.30 * min(S / 6, 1)
152+ + 0.25 * min(D / 6, 1)
153+ + 0.25 * min(I / 4, 1)
154+ + 0.10 * (Q / S)
155+ + 0.10 * min(P / 2, 1)
156+ ```
157+
158+ | 記号 | 意味 |
159+ | --- | --- |
160+ | ` S ` | 証拠を受け取った異なる consumer provider/session pair 数 |
161+ | ` D ` | 証拠が注入された異なる UTC 日数 |
162+ | ` I ` | 重複を除いた provider/session/day 単位の注入数 |
163+ | ` Q ` | 明示的 query の direct hit により証拠が注入された異なる consumer session 数 |
164+ | ` P ` | 異なる consumer provider 数 |
165+
166+ 分母の ` 6 ` 、` 6 ` 、` 4 ` は、それぞれデフォルトのハード最小値の 2 倍です。反復に関する
167+ 点数は利用に応じて徐々に増え、その値で飽和します。Provider の多様性は 2 provider
168+ で飽和します。デフォルトの昇格条件は ` score >= 0.65 ` です。
169+ ` adaptive_memory_min_score ` でしきい値を 0 から 1 の範囲で変更でき、` 0 ` にすると
170+ 従来のハードゲートのみの動作になります。
171+
172+ 同じ provider/session pair が同じ UTC 日に証拠を再度受け取っても 1 回として数えます。
173+ 実際の consumer session identity がない手動 ` brainctl recall ` は数えません。最終
174+ ` <memory-data> ` に入った証拠だけが点数に寄与し、query-backed の点数は明示的検索の
175+ direct hit にだけ与えます。Related と recent fallback は含めません。Memory ページは
176+ 自身の昇格点数を増やせず、workspace 間の利用回数も合算しません。Superseded の証拠は
177+ 対象外です。昇格後に source が superseded された場合、派生した adaptive memory も
178+ recall から隠します。
179+
180+ この式は学習済み確率ではなく、決定的な初期ポリシーです。昇格ページと document
181+ metadata には合計点、しきい値、重み付き要素を記録します。しきい値未満の候補は
182+ pending のまま残り、次回の利用時に再評価されます。
136183
137184昇格では source で確認した証拠を最大 2,000 文字だけ新しい Markdown ページへ
138185保存し、source 文書 ID、利用回数、昇格時刻、` memory_kind: adaptive ` を記録します。
@@ -254,7 +301,7 @@ AI が提示した計画と権限要求を確認してから進めてくださ
254301``` powershell
255302$installer = Join-Path $env:TEMP "install-wikibrain.ps1"
256303Invoke-WebRequest `
257- "https://raw.githubusercontent.com/hungrytech/wikibrain/v0.1.3 /scripts/install-windows.ps1" `
304+ "https://raw.githubusercontent.com/hungrytech/wikibrain/v0.1.4 /scripts/install-windows.ps1" `
258305 -OutFile $installer
259306Get-Content $installer
260307powershell.exe -NoProfile -ExecutionPolicy Bypass `
@@ -291,7 +338,9 @@ brainctl recall "that durable fact"
291338| Brain の状態 | ` ~/.local/share/wikibrain/ ` | ` %LOCALAPPDATA%\WikiBrain\ ` |
292339| Claude フック | ` ~/.claude/settings.json ` | ` %USERPROFILE%\.claude\settings.json ` |
293340| Codex フック | ` ~/.codex/hooks.json ` | ` %USERPROFILE%\.codex\hooks.json ` |
341+ | Grok フック(Grok 専用 opt-in) | ` ${GROK_HOME:-~/.grok}/hooks/wikibrain.json ` | ` %GROK_HOME%\hooks\wikibrain.json ` または ` %USERPROFILE%\.grok\hooks\wikibrain.json ` |
294342| Claude スキル | ` ~/.claude/skills/wikibrain/ ` | ` %USERPROFILE%\.claude\skills\wikibrain\ ` |
343+ | Grok スキル(Grok 専用 opt-in) | ` ${GROK_HOME:-~/.grok}/skills/wikibrain/ ` | ` %GROK_HOME%\skills\wikibrain\ ` または ` %USERPROFILE%\.grok\skills\wikibrain\ ` |
295344| Codex/Agents スキル | ` ~/.agents/skills/wikibrain/ ` | ` %USERPROFILE%\.agents\skills\wikibrain\ ` |
296345
297346| イベント | WikiBrain の動作 |
0 commit comments