English 한국어 日本語 繁體中文
← → 或 J/K · ESC 退出
語言
English 한국어 日本語 繁體中文
多代理編排系統
v0.2.0 v0.2 新功能

BMB
Be-my-butler

Worktree 隔離的跨模型代理編排
具備盲審分歧驗證與自動學習

GitHub 儲存庫 快速開始
curl -fsSL https://raw.githubusercontent.com/project820/be-my-butler/main/install.sh | bash
11.5
管線步驟
9
代理
3
壓縮層
4
技能
6
配方

核心設計原則

每個架構決策都可追溯至這些不可妥協的原則。

W
Worktree 隔離
每個可寫入的平行代理都擁有獨立的 git worktree。無共享狀態、無 index.lock 衝突,實現真正的檔案系統級隔離。
B
盲審分歧框架
跨模型追蹤讀取不同的上下文文件。不僅在結果上盲審 — 在問題框架本身就存在分歧。
L
Lead 作為輕量編排者
Lead 僅讀取 .bmb/CLAUDE.md,絕不碰程式碼。上下文保護至關重要 — Lead 是瓶頸。
C
雙向 Consultant
SendMessage 實現 Consultant → Lead 的回饋。使用者對話中的業務規則能真正傳達到管線中。
A
自動學習
錯誤、修正和成功都會自動記錄。過去的陷阱會注入未來的 session 中。三層架構:本地 → 全域 → CLAUDE.md。
S
Session 連續性
session-prep.md 為下一個 session 捕捉狀態。跨 session 上下文得以保留,任何工作都不會真正遺失。
3
三層壓縮
讀取時摘要、寫入時快取、引用時 FTS5。Lead 上下文在整個管線中保持低於 50%。
P
基於設定檔的權限
跨模型調用使用角色專屬設定檔:councilverify 為唯讀模式。不再到處使用 --full-auto
G
優雅降級
跨模型不可用?管線以純 Claude 模式繼續。Simplifier 破壞測試?還原後繼續。絕不阻塞。

代理名冊

9 個專業代理,各有明確角色和嚴格邊界。從腦力激盪到生產就緒的程式碼。

graph TB
  User["👤 User"]
  Lead["🎯 Lead
Opus · Orchestrator"] Consultant["💬 Consultant
Sonnet · Persistent"] Architect["📐 Architect
Opus · Council"] Executor["⚙️ Executor
Opus · Backend"] Frontend["🎨 Frontend
Opus · UI"] Tester["🧪 Tester
Opus · Blind"] Verifier["✅ Verifier
Opus · Blind"] Simplifier["🧹 Simplifier
Opus · Cleanup"] Writer["📝 Writer
Sonnet · Docs"] BMB[".bmb/
Handoffs · Artifacts"] CrossModel["🌐 Cross-Model
Codex / Gemini"] User <-->|"brainstorm
approve"| Lead Lead <-->|"SendMessage
bidirectional"| Consultant Lead -->|"briefing"| Architect Architect <-->|"council
debate"| CrossModel Lead -->|"plan-to-exec"| Executor Lead -->|"plan-to-exec"| Frontend Lead -->|"test request"| Tester Tester -.->|"blind wall"| CrossModel Lead -->|"verify request"| Verifier Verifier -.->|"blind wall"| CrossModel Lead -->|"simplify"| Simplifier Lead -->|"write docs"| Writer Architect -->|"writes"| BMB Executor -->|"writes"| BMB Frontend -->|"writes"| BMB Tester -->|"writes"| BMB Verifier -->|"writes"| BMB Lead -->|"reads only"| BMB classDef opus fill:#1a1030,stroke:#7c3aed,stroke-width:2px,color:#a78bfa classDef sonnet fill:#0a2015,stroke:#16a34a,stroke-width:2px,color:#22c55e classDef cross fill:#1a1500,stroke:#d97706,stroke-width:2px,color:#f59e0b classDef user fill:#0a1628,stroke:#3b82f6,stroke-width:2px,color:#60a5fa classDef storage fill:#111827,stroke:#1e3a5f,stroke-width:2px,color:#8494a7 class Lead,Architect,Executor,Frontend,Tester,Verifier,Simplifier opus class Consultant,Writer sonnet class CrossModel cross class User user class BMB storage
L
Lead
Claude Opus • 完整管線
編排、決策、中繼、腦力激盪。僅讀取 .bmb/,絕不寫入程式碼。輕量指揮者。
編排者內嵌式腦力激盪
C
Consultant
Claude Sonnet • 步驟 2–11
Coordinator 身份:完整的情境感知,零指令權限。雙通道(feed 檔案 + SendMessage)。在盲審階段接收生命週期事件;在協調之後獲得完整的事後簡報。
雙通道常駐事後簡報
A
Architect
Claude Opus • 步驟 4
設計 + 跨模型 Council 辯論。Claude 與 Codex/Gemini 進行 2–4 輪辯論。撰寫 plan-to-exec.md。設計前透過 Context7 查詢最新函式庫文件。
Council 辯論跨模型Context7
E
Executor
Claude Opus • 步驟 5
後端實作。在隔離的 git worktree 中工作。寫入前透過 Context7 查詢最新函式庫文件。僅在 worktree 範圍內提交。
Worktree 隔離Context7
F
Frontend
Claude Opus • 步驟 5
React/Next.js + shadcn/Tailwind 專家。與 Executor 使用不同的 worktree。透過 Context7 查詢最新框架文件。僅在偵測到前端範疇時啟動。
Worktree 隔離條件啟動Context7
T
Tester
Claude Opus • 步驟 6
單元測試、整合測試、邊界情況測試。作為盲審跨模型測試的一部分,採用分歧框架。
盲審Worktree 隔離
V
Verifier
Claude Opus • 步驟 7
基於證據的驗證 + 程式碼審查合為一體。盲審跨模型驗證。
盲審審查 + 驗證
S
Simplifier
Claude Opus • 步驟 9
工作完成後的程式碼清理。變更後必須重新驗證(建置 + 測試)。失敗會觸發自動還原。
重新驗證
W
Writer
Claude Sonnet • 步驟 10
文件更新 + 交叉驗證。Sonnet 對文件工作已足夠。
A
Analyst
Claude Sonnet • 步驟 10.5
回顧分析:查詢 analytics.db,依 Bird’s Law 嚴重性分類事件(critical/warn/info),找出 pattern_counts 晉升候選人。
bypassPermissions唯讀

11.5 步驟管線

從使用者意圖到生產就緒的程式碼。點擊每個步驟查看詳情。

1
初始設定
Lead
tmux 守衛、session ID、目錄結構、source bmb-learn.sh、載入過去的 MISTAKE 記錄(本地 + 全域)、設定、session-prep 檢查、對話記錄器啟動。
自動學習Session 連續性
2
腦力激盪 + Consultant
Lead Consultant
Lead 直接與使用者進行腦力激盪(無獨立的 brainstormer 代理)。啟動常駐 Consultant 面板,搭配雙向 SendMessage。至少 2 輪。撰寫包含已知陷阱章節的簡報。
內嵌式雙向
3
使用者核准
Lead
呈現壓縮版簡報。YESbmb_learn PRAISEMODIFYbmb_learn CORRECTION + 更新。NO → 取消。
自動學習三路分支
4
架構 Council
Architect Cross-Model
建立執行用的 git worktree。啟動 Architect 進行 Claude-Codex/Gemini Council 辯論(2–4 輪)。撰寫 plan-to-exec.md。bugfix/infra 配方跳過此步驟。
Council 辯論跨模型跳過:bugfix、infra
5
執行
Executor Frontend
獨立 worktree 中啟動 Executor + Frontend(條件啟動)。平行執行,零 git 衝突。Frontend 僅在偵測到範疇時啟動(React、Vue、Svelte 等)。
Worktree 隔離平行條件啟動前端
5.5
合併 Worktree
Lead
在 worktree 中提交 → 合併至 main → 移除 worktree。衝突?bmb_learn MISTAKE + 上報使用者。
自動學習
6
跨模型測試(盲審)
Tester Cross-Model
Claude Tester 讀取 plan-to-exec.md。Cross-Model Tester 讀取 briefing.md。不同的框架、獨立的 worktree、獨立的逾時設定。雙方皆不讀取對方的結果。
盲審牆分歧框架Worktree 隔離
7
跨模型驗證(盲審)
Verifier Cross-Model
與步驟 6 相同的盲審分歧模式。Consultant 隔離:協調完成前不分享結果。
盲審牆分歧框架
8
協調
Lead
讀取結構化摘要。5 類故障分類器:IMPL→步驟 5、ARCH→步驟 4、REQ→步驟 2、ENV→步驟 1、TEST→步驟 6。FAIL 觸發 bmb_learn MISTAKE + 分類式迴圈。
自動學習故障分類
9
簡化 + 重新驗證
Simplifier
最小限度的安全改進。建置 + 測試必須通過(重新驗證)。失敗 → bmb_learn MISTAKE + 還原 + 使用原始版本繼續。
重新驗證自動學習
10
文件更新
Writer
Writer 更新文件,移除失效引用,在所有修改的檔案間交叉驗證一致性。
10.5
回顧分析
Analyst
Analyst 查詢當前 session 的 analytics.db。依 Bird’s Law 嚴重性分類事件(critical / warn / info)。交叉比對 pattern_counts 找出反覆出現的故障(≥2 次)以作為 CLAUDE.md 晉升候選。撰寫 analyst-report.md(3–5 分鐘逾時;逾時則管線繼續)。
Bird’s Lawpattern_counts唯讀代理
11
清理 + Session 準備
Lead
成功時執行 bmb_learn PRAISE。檢查重複次數 ≥2 → 提議 CLAUDE.md 晉升。Git commit/push。FTS5 索引。為下個 session 產生 session-prep.md。
自動學習Session 連續性CLAUDE.md 晉升

管線流程圖

flowchart TD
  S1["1. Setup
tmux, session, learnings"] S2["2. Brainstorm + Consultant
min 2 rounds"] S3{"3. User Approval"} S4["4. Architecture Council
2-4 debate rounds"] S5["5. Execution
worktree-isolated"] S55["5.5 Merge Worktrees"] S6["6. Blind Testing
divergent framing"] S7["7. Blind Verification
divergent framing"] S8{"8. Reconciliation"} S9["9. Simplify + Re-verify"] S10["10. Docs Update"] S105["10.5 Retrospective Analysis
Bird's Law severity"] S11["11. Cleanup + Session Prep"] S1 --> S2 S2 --> S3 S3 -->|"YES"| S4 S3 -->|"MODIFY"| S2 S3 -->|"NO"| CANCEL["Cancel"] S4 -->|"skip: bugfix/infra"| S5 S4 --> S5 subgraph parallel ["Parallel Worktrees"] direction LR EX["Executor"] FE["Frontend
if detected"] end S5 --> parallel parallel --> S55 S55 --> S6 S6 --> S7 S7 --> S8 S8 -->|"PASS"| S9 S8 -->|"IMPL fail"| S5 S8 -->|"ARCH fail"| S4 S8 -->|"REQ fail"| S2 S8 -->|"ENV fail"| S1 S8 -->|"TEST fail"| S6 S9 --> S10 S10 --> S105 S105 --> S11 classDef decision fill:#1a1500,stroke:#d97706,color:#f59e0b classDef cancel fill:#2a0a0a,stroke:#ef4444,color:#ef4444 classDef step fill:#111827,stroke:#1e3a5f,color:#e8edf5 classDef parallel fill:#0a1628,stroke:#3b82f6,color:#60a5fa classDef analyst fill:#0a2010,stroke:#22c55e,color:#4ade80 class S3,S8 decision class CANCEL cancel class S1,S2,S4,S5,S55,S6,S7,S9,S10,S11 step class EX,FE parallel class S105 analyst
← 滾動 →

交接資料流

產出物如何透過 .bmb/ 目錄在代理之間流轉。Lead 絕不碰程式碼 — 僅讀取摘要。

flowchart LR
  User["👤 User"]
  Lead["🎯 Lead"]
  Brief["📋 briefing.md"]
  Arch["📐 Architect"]
  Plan["📄 plan-to-exec.md"]
  ExFe["⚙️ Executor
🎨 Frontend"] Merge["🔀 Merge"] Test["🧪 Tester
blind"] Verify["✅ Verifier
blind"] Recon["⚖️ Reconcile"] Simp["🧹 Simplifier"] Write["📝 Writer"] Output["✨ Output"] User -->|"intent"| Lead Lead -->|"brainstorm"| Brief Brief -->|"briefing"| Arch Arch -->|"council"| Plan Plan -->|"instructions"| ExFe ExFe -->|"worktrees"| Merge Merge -->|"merged code"| Test Merge -->|"merged code"| Verify Test -->|"test-summary"| Recon Verify -->|"verify-summary"| Recon Recon -->|"PASS"| Simp Simp -->|"cleaned"| Write Write --> Output classDef artifact fill:#1a2234,stroke:#3b82f6,color:#60a5fa classDef agent fill:#111827,stroke:#1e3a5f,color:#e8edf5 class Brief,Plan artifact class User,Lead,Arch,ExFe,Merge,Test,Verify,Recon,Simp,Write,Output agent
← 滾動 →

Consultant Feed 時間軸

gantt
  title Consultant Monitoring (Steps 2–11)
  dateFormat X
  axisFormat %s

  section Brainstorm
    Bidirectional with Lead          :active, 0, 2

  section Approval
    Monitor user decision            :1, 3

  section Council
    Observe debate rounds            :2, 4

  section Execution
    Track progress via feed file     :3, 6

  section Testing
    Monitor blind test results       :5, 7

  section Verification
    Monitor blind verify results     :6, 8

  section Reconciliation
    Observe failure classification   :7, 9

  section Simplify
    Track re-verify outcome          :8, 10

  section Docs
    Validate doc consistency         :9, 11

  section Cleanup
    Final session summary            :10, 12
      
← 滾動 →

盲審分歧協議

不僅在結果上盲審 — 在問題框架上就存在分歧。工作區層級的盲審跨模型驗證。

Claude 追蹤

讀取: plan-to-exec.md + diff
視角: 實作忠實度
Worktree: tester-claude / verifier-claude
逾時: claude_agent (1200s)

絕不讀取: *-cross.md
盲審牆

跨模型追蹤

讀取: briefing.md + diff
視角: 使用者意圖忠實度
Worktree: tester-cross / verifier-cross
逾時: cross_model (3600s)

絕不讀取: *-claude.md
為何分歧框架很重要:Claude 看到詳細的執行計畫並檢查「我們是否按計畫建構了?」跨模型看到原始的使用者簡報並檢查「我們是否建構了使用者真正想要的?」這能捕捉到符合計畫但不符使用者意圖的實作。

Worktree 生命週期

每個平行代理都擁有獨立的 git worktree。無共享狀態、無 index.lock 衝突,實現真正的檔案系統隔離。

gantt
  title Worktree Lifecycle per Pipeline Run
  dateFormat X
  axisFormat Step %s

  section Executor
    Create worktree     :e1, 4, 5
    Work in worktree    :e2, 5, 6
    Merge to main       :crit, e3, 6, 7

  section Frontend
    Create worktree     :f1, 4, 5
    Work in worktree    :f2, 5, 6
    Merge to main       :crit, f3, 6, 7

  section Tester-Claude
    Create worktree     :tc1, 6, 7
    Run tests           :tc2, 7, 8
    Cleanup             :tc3, 8, 9

  section Tester-Cross
    Create worktree     :tx1, 6, 7
    Run tests           :tx2, 7, 8
    Cleanup             :tx3, 8, 9

  section Verifier-Claude
    Create worktree     :vc1, 7, 8
    Verify              :vc2, 8, 9
    Cleanup             :vc3, 9, 10

  section Verifier-Cross
    Create worktree     :vx1, 7, 8
    Verify              :vx2, 8, 9
    Cleanup             :vx3, 9, 10
      
← 滾動 →
Step 4 Create executor + frontend worktrees from HEAD git worktree add .bmb/worktrees/executor bmb-executor-{SESSION} git worktree add .bmb/worktrees/frontend bmb-frontend-{SESSION} Step 5 Agents work in isolated worktrees (zero conflict possible) Step 5.5 Merge worktrees → main commit in worktree → merge --no-edit → remove worktree Conflict? → bmb_learn MISTAKE + escalate to user Step 6 Create 2 tester worktrees from merged HEAD tester-claude + tester-cross Step 7 Create 2 verifier worktrees from merged HEAD verifier-claude + verifier-cross Step 8+ Remove all remaining worktrees git worktree list | grep '.bmb/worktrees' | xargs -I{} git worktree remove {}

跨模型協議

Council 辯論使用 Claude ↔ Codex/Gemini 檔案交換。基於設定檔的權限確保在需要時保持唯讀。

sequenceDiagram
  participant A as Architect
(Claude Opus) participant F as Council Files
(.bmb/council/) participant X as Cross-Model
(Codex / Gemini) Note over A,X: Round 1 — Initial Proposals A->>F: Write claude-proposal.md X->>F: Write cross-proposal.md Note over A,X: Round 2 — Critique A->>F: Read cross-proposal.md A->>F: Write claude-critique.md X->>F: Read claude-proposal.md X->>F: Write cross-critique.md Note over A,X: Round 3 — Synthesis (optional) A->>F: Read cross-critique.md A->>F: Write claude-synthesis.md X->>F: Read claude-critique.md X->>F: Write cross-synthesis.md Note over A,X: Round 4 — Final Decision A->>F: Read all files A->>F: Write plan-to-exec.md ✅ Note right of X: Cross-Model uses
--profile read-only
← 滾動 →
R
唯讀設定檔
councilverify 設定檔:跨模型只能讀取程式碼並寫入 .bmb/。不允許生產環境寫入。
W
可寫設定檔
testexec-assist 設定檔:跨模型可在 worktree 範圍內撰寫測試和輔助程式碼。
T
個別追蹤逾時
Claude:預設 1200s。跨模型:預設 3600s。可透過 bmb-config.sh 設定。獨立的截止時間追蹤。

三層上下文壓縮

Lead 的上下文視窗是共享資源。三個壓縮層確保其永不超過 50% 容量。

L1
讀取時壓縮
Lead 僅讀取 .compressed/*.summary.md(最多 300 token)。原始產出物僅在爭議時才存取。
L2
寫入時快取
代理將超過 50 行的工具輸出快取至 .tool-cache/。僅保留摘要:"Modified: auth.ts (47 lines)"、"PASS: 12, FAIL: 0"。
L3
引用時索引
FTS5 資料庫索引過去的 Council 決策和交接內容。開始新工作前會進行查詢,以重用過去的決策。

自動學習系統

錯誤、修正和成功都會自動記錄。過去的陷阱會注入所有專案的未來 session 中。

T1
專案本地
.bmb/learnings.md — 每行一筆學習紀錄,依時間順序追加。在步驟 1 為此專案載入。
T2
全域跨專案
~/.claude/bmb-system/learnings-global.md — 相同格式加上 [project_name] 標籤。在所有 BMB 專案間共享。
T3
CLAUDE.md 晉升
重複次數 ≥2 → 向使用者提議 → 永久規則。絕不自動編輯,使用者始終需核准。
# Example learnings.md entries [2026-03-10 14:32] MISTAKE (step 8): Missing input validation → Always validate at API boundary [2026-03-10 15:01] CORRECTION (step 3): User changed auth to OAuth → Confirm auth strategy in brainstorm [2026-03-10 16:45] PRAISE (step 11): Pipeline completed successfully → Current approach works # Context cost: ~150 tokens (5 lines × ~30 tokens). Negligible.

配方矩陣

六種任務類型,每種都有各自優化的管線路徑。不論配方為何,Consultant 始終存在。

Feature
腦力激盪 Architect Exec+Frontend 測試 驗證 簡化 撰寫
Council 跨模型:測試+驗證 前端:偵測時
🔧
Bugfix
腦力激盪 Exec 測試 驗證 撰寫
無 Council 跨模型:測試+驗證 無前端
♻️
Refactor
腦力激盪 Architect Exec+Frontend 驗證 簡化 撰寫
Council 跨模型:僅驗證 前端:偵測時
🔍
Research
僅腦力激盪
Council:可選 無跨模型 無前端
🔎
Review
腦力激盪 Verifier (審查模式)
無 Council 跨模型:僅驗證 無前端
⚙️
Infra
腦力激盪 Exec 驗證 撰寫
無 Council 跨模型:僅驗證 無前端

技能指令

4 個斜線指令以不同規模呈現 BMB 的功能 — 從完整管線到專注的腦力激盪。

/B
/BMB
完整管線
完整的 11.5 步驟端到端管線。跨模型 Council、盲審驗證、分析、簡化及 Session 連續性。適用於任何非簡單的功能開發或錯誤修復。
11.5 步驟 跨模型 Worktree 盲審驗證
/Bb
/BMB-brainstorm
構思
Lead + Consultant 雙向腦力激盪,搭配對話記錄。在撰寫任何程式碼之前探索意圖、需求和設計。
5 階段 Consultant 無程式碼
/Br
/BMB-refactoring
程式碼品質
搭配跨模型審查的平行分析、Worktree 隔離執行、審查循環及合併。專注於改善現有程式碼,不做功能變更。
6 階段 跨模型 Worktree
/Bs
/BMB-setup
設定
一次性專案設定:前置條件檢查、設定產生、gitignore 規則及確認。在首次使用管線前,每個專案執行一次。
5 步驟 前置條件

技能關係圖

flowchart LR
    Setup["/BMB-setup\n⚙️ Config"]
    BMB["/BMB\n🔧 Full Pipeline"]
    Brainstorm["/BMB-brainstorm\n💡 Ideation"]
    Refactoring["/BMB-refactoring\n🔄 Code Quality"]

    Setup -->|"prerequisite"| BMB
    Setup -->|"prerequisite"| Brainstorm
    Setup -->|"prerequisite"| Refactoring
    Brainstorm -.->|"feeds into"| BMB
    Refactoring -.->|"standalone"| BMB

    style Setup fill:#111827,stroke:#22c55e,color:#e8edf5
    style BMB fill:#111827,stroke:#3b82f6,color:#e8edf5,stroke-width:3px
    style Brainstorm fill:#111827,stroke:#22d3ee,color:#e8edf5
    style Refactoring fill:#111827,stroke:#a78bfa,color:#e8edf5
      
← 滾動 →

步驟涵蓋範圍比較

階段 /BMB /BMB-brainstorm /BMB-refactoring
初始設定 / 設定
Consultant Session
腦力激盪 / 分析✓ 平行
Council 辯論✓ 綜合
架構計畫
執行(Worktree)
測試
驗證(盲審)✓ 審查
修復循環
簡化
合併 / 清理✓ 摘要

優雅降級

管線絕不阻塞。每種故障模式都有定義好的降級方案。

情境行為
跨模型不可用(Council)單獨設計(僅 Claude),記錄於 session log
跨模型不可用(測試)僅 Claude 的測試結果,記錄於協調階段
跨模型不可用(驗證)僅 Claude 的驗證結果,記錄於協調階段
Claude 測試者逾時記錄逾時,以跨模型結果繼續
跨模型逾時以僅 Claude 的結果繼續
合併衝突bmb_learn MISTAKE + 上報使用者
Simplifier 破壞測試bmb_learn MISTAKE + 還原 + 使用原始版本繼續
Telegram 環境變數未設定靜默跳過通知
knowledge.db 遺失跳過索引/搜尋
未偵測到前端跳過 Frontend 代理,僅使用 Executor

目錄佈局

.bmb/ 目錄是所有管線產出物的唯一真實來源。

.bmb/ ├── handoffs/ ── 代理間交接產出物 │ ├── briefing.md ── Lead 的腦力激盪輸出 │ ├── plan-to-exec.md ── Architect 的執行計畫 │ ├── test-claude.md ── Claude 測試者結果 │ ├── test-cross.md ── 跨模型測試者結果 │ ├── verify-claude.md ── Claude 驗證者結果 │ └── verify-cross.md ── 跨模型驗證者結果 │ └── .compressed/ ── Lead 用 L1 摘要 │ ├── briefing.summary.md │ ├── test-result-claude.summary.md │ └── verify-result-claude.summary.md ├── councils/ ── 跨模型辯論檔案 │ ├── LEGEND.md ── 所有歷次辯論的索引 │ └── {topic}/ │ ├── round-01-claude.md │ ├── round-01-cross.md │ └── CONSENSUS.md ├── worktrees/ ── Git worktree 掛載點 │ ├── executor/ │ ├── frontend/ │ ├── tester-claude/ │ ├── tester-cross/ │ ├── verifier-claude/ │ └── verifier-cross/ ├── sessions/ ── 每個 session 的狀態 │ └── {session_id}/ │ ├── session-prep.md ── 下一個 session 的連續性 │ └── conversation.log ── Consultant feed ├── .tool-cache/ ── L2 寫入時快取 ├── config.json ── 專案設定 ├── learnings.md ── T1 專案本地學習紀錄 ├── session-log.md ── 當前 session 事件日誌 ├── consultant-feed.md ── Lead → Consultant feed └── knowledge.db ── L3 FTS5 引用索引 ~/.claude/bmb-system/ ── 全域 BMB 安裝 ├── scripts/ │ ├── cross-model-run.sh ── 跨模型調用 │ ├── bmb-learn.sh ── 共享學習函式 │ ├── knowledge-index.sh ── FTS5 索引器 │ └── knowledge-search.sh── FTS5 搜尋 ├── config/ │ └── defaults.json ── 預設設定 └── learnings-global.md ── T2 跨專案學習紀錄