codebase-memory-mcp config list # 顯示所有設定
codebase-memory-mcp config set auto_index true # session 開始時自動索引
codebase-memory-mcp config set auto_index_limit 50000 # 自動索引的檔案上限
codebase-memory-mcp config set auto_watch false # 不註冊背景 git watcher(預設 true)
codebase-memory-mcp config reset auto_index # 重置為預設
設定存在 ${CBM_CACHE_DIR}/_config.db(SQLite)。
| 變數 | 預設 | 說明 |
|---|---|---|
CBM_ALLOWED_ROOT | 未設 | 把 index_repository 限制在此目錄內(多租戶/未信任呼叫者用) |
CBM_CACHE_DIR | ~/.cache/codebase-memory-mcp | DB 存放目錄(一帳號一個 canonical root) |
CBM_DIAGNOSTICS | false | 啟用 daemon 的 snapshot.json 與 trajectory.ndjson 診斷 |
CBM_DOWNLOAD_URL | GitHub releases | 覆寫更新下載來源(測試/自架用) |
CBM_LOG_LEVEL | info | log 級別:debug/info/warn/error/none |
CBM_WORKERS | 自動偵測 | 平行索引 worker 數(容器內 cgroup 誤判時用) |
CBM_MEM_BUDGET_MB | 自動偵測 | 記憶體預算上限(MiB) |
CBM_DUMP_VERIFY_MIN_RATIO | 0.5 | 索引後驗證:持久化節點數低於門檻回 degraded |
daemon 擁有的組件(diagnostics、daemon log、索引資源限制)在「第一個啟動 daemon 的 session」時捕捉設定——要改得關掉所有 daemon-backed session。
忽略是分層的:硬編碼模式(.git、node_modules…)→ .gitignore 階層 → .cbmignore(專案專用,gitignore 語法)。symlink 永遠跳過。
# .cbmignore 範例(gitignore 語法,支援 ! 反轉)
build/
dist/
*.min.js
!important.min.js
完整語法與優先權見上游 docs/cbmignore.md。
把額外副檔名映射到支援的語言(框架專用副檔名如 .blade.php、.mjs):
// 專案內 .codebase-memory.json
{"extra_extensions": {".blade.php": "php", ".mjs": "javascript"}}
// 全域 ~/.config/codebase-memory-mcp/config.json
{"extra_extensions": {".twig": "html", ".phtml": "php"}}
專案設定覆寫全域。副檔名必須以 . 開頭、語言名不區分大小寫;未知語言會被略過並警告。
SQLite DB 在 ~/.cache/codebase-memory-mcp/,跨重啟持久(WAL、ACID-safe)。重置:rm -rf ~/.cache/codebase-memory-mcp/。