[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-81791":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":14,"subscribersCount":14,"size":14,"stars1d":15,"stars7d":16,"stars30d":17,"stars90d":14,"forks30d":14,"starsTrendScore":18,"compositeScore":19,"rankGlobal":9,"rankLanguage":9,"license":9,"archived":20,"fork":20,"defaultBranch":21,"hasWiki":22,"hasPages":20,"topics":23,"createdAt":9,"pushedAt":9,"updatedAt":24,"readmeContent":25,"aiSummary":26,"trendingCount":14,"starSnapshotCount":14,"syncStatus":15,"lastSyncTime":27,"discoverSource":28},81791,"codedb-mcp","killop\u002Fcodedb-mcp","killop","fast code database mcp 20000x faster against rg ",null,"Rust",81,6,44,0,2,15,37,14,54.74,false,"master",true,[],"2026-06-12 04:01:35","\u003Cdiv align=\"center\">\n\n\u003Ch1>codebase-mcp\u003C\u002Fh1>\n\n\u003Cp>\u003Cstrong>Local-first MCP toolkit for fast code search, dependency-aware module discovery, visual code atlas pages, and DeepWiki-style repository documentation.\u003C\u002Fstrong>\u003C\u002Fp>\n\n\u003Cp>\n  \u003Cimg alt=\"Rust MCP\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FRust-MCP-000000?logo=rust\">\n  \u003Cimg alt=\"tree-sitter indexing\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Ftree--sitter-indexing-2f6f9f\">\n  \u003Cimg alt=\"local first\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flocal--first-.codedb--mcp-3b82f6\">\n  \u003Cimg alt=\"Minish Model2Vec\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FMinish-Model2Vec-7c3aed\">\n\u003C\u002Fp>\n\n\u003Cp>English | \u003Ca href=\"README.zh-CN.md\">简体中文\u003C\u002Fa>\u003C\u002Fp>\n\n\u003Cp>\n  \u003Ca href=\"#project-overview\">Overview\u003C\u002Fa> •\n  \u003Ca href=\"#mcp-tools\">MCP Tools\u003C\u002Fa> •\n  \u003Ca href=\"#code-module-atlas\">Code Module Atlas\u003C\u002Fa> •\n  \u003Ca href=\"#deepwiki\">DeepWiki\u003C\u002Fa> •\n  \u003Ca href=\"#benchmark-snapshot\">Benchmarks\u003C\u002Fa> •\n  \u003Ca href=\"#recommended-setup-flow\">Setup\u003C\u002Fa> •\n  \u003Ca href=\"#skills\">Skills\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003C\u002Fdiv>\n\n## Project Overview\n\n`codebase-mcp` turns a local repository into a persistent MCP code intelligence service. It keeps tree-sitter indexed source data, symbols, references, dependencies, graph metadata, lexical indexes, and vector search data under the target repo's `.codedb-mcp` directory.\n\nWarm MCP calls are designed to be millisecond-level inside a persistent server process. See [Benchmark Snapshot](#benchmark-snapshot) and [MCP Tool Benchmark Matrix](#mcp-tool-benchmark-matrix) for measured latency, peak memory, and `rg` comparisons.\n\n## Feature Overview\n\n| Area | What It Provides |\n|---|---|\n| Fast MCP tools | Indexed exact\u002Fregex search, BM25\u002Fsymbol search, lazy vector search, outlines, definitions, callers, dependencies, fuzzy file lookup, query pipelines, and 100-call bundles. |\n| Module discovery | Dependency-connected file components plus dependency-weighted label propagation, with terms and paths used as explainable labels and evidence. |\n| Code Module Atlas | A packaged meet-blog-style 3D viewer with one star per source file, module\u002Ffile lists, dependency edges, and file focus\u002Fdetails. |\n| DeepWiki | Local repository documentation generated from MCP evidence and the active agent's reasoning, with business-module-first pages and cited source files. |\n| Local deployment | Explicit `.codedb-mcp\u002Fcodedb-mcp.toml`, project-local storage, bundled skills, and no hidden environment-variable behavior. |\n\n## MCP Tools\n\nThe server keeps a tree-sitter indexed, project-local code database under `.codedb-mcp` and exposes tools for:\n\n- fast exact\u002Fregex search, BM25\u002Fsymbol search, and lazy vector search;\n- symbol outlines and definition lookup;\n- LSP-like callers anchored to a definition path and line;\n- direct and reverse file dependencies, including transitive walks;\n- fuzzy file lookup, path globbing, compact query pipelines, and 100-call bundles;\n- graph summaries, lazy Louvain communities, module planning, atlas export, and DeepWiki evidence gathering.\n\n## Code Module Atlas\n\n![Code Module Atlas demo](docs\u002Fassets\u002Fcode-module-atlas.gif)\n\n[Watch the MP4 demo](docs\u002Fassets\u002Fcode-module-atlas.mp4)\n\nThe atlas page is generated by the `skills\u002Fcode-module-atlas` skill. It calls the local MCP module-atlas export, converts the result into the bundled meet-blog-style 3D viewer dataset, and shows one star node per source file.\n\nModule boundaries are computed from the dependency-connected file graph first. Inside each connected component, the Rust module planner uses dependency-weighted label propagation; paths and distinctive terms are used for names, evidence, and oversized-component splitting, not as the primary grouping rule. The page then provides a module list, a file list for the selected module, file-to-file dependency edges, and file focus\u002Fdetails.\n\n```powershell\nnode skills\\code-module-atlas\\scripts\\build-module-atlas.mjs u3dclient\ncd skills\\code-module-atlas\\assets\\viewer\nnpm run dev -- --port 5174 --strictPort\n```\n\n## DeepWiki\n\nThe `skills\u002Fdeepwiki` skill builds local DeepWiki-style documentation from MCP evidence and the active agent's reasoning. It starts from dependency-aware module candidates, then writes business-module-first pages with cited files, entry points, flows, dependencies, and risk notes. It does not require a separate model API.\n\nThe intended distribution model is setup-guide first: give an agent `setup-for-agent.md`, let it create `.codedb-mcp`, use the default HuggingFace cache when it already exists, fall back to a second-drive cache when it does not, and then ask the human whether this specific agent should register the MCP server. The `codedb-mcp` skill is for using the tools after setup, not for installing them.\n\n## Benchmark Snapshot\n\nBenchmark target: `u3dclient`.\n\nBenchmarks were rerun on 2026-05-29 on Windows. `warm` timings run inside one loaded MCP process after warmup. `one-shot` timings launch a CLI child process and include startup\u002Fcache load. Peak memory is sampled as MB Working Set \u002F Private Bytes.\n\nCurrent index status with the Unity C# benchmark config:\n\n- Indexed files: 19,035.\n- Chunks: 31,949.\n- Symbols: 277,213.\n- Graph: 19,941 nodes and 166,132 edges.\n- Vector search: Model2Vec `minishlab\u002Fpotion-code-16M` file embeddings are built lazily on first natural-language search and queried with flat cosine scan.\n- Storage: `u3dclient\\.codedb-mcp`.\n- Cache v20 sidecars: compact `index.bin`, spilled `bm25.postings`, lazy `word_index.bin`\u002F`word_hits.bin`, lazy `callers.bin`, lazy `deps.bin`, optional legacy `embeddings.bin`, and binary source fingerprints.\n- Peak memory below is sampled Working Set \u002F Private Bytes for child processes. The cold rebuild row was measured with memory sampling enabled, so its wall time is not directly comparable to the faster no-sampling rebuild pass.\n\nIndex and cache baseline:\n\n| Scenario | Time | Peak memory | Notes |\n|---|---:|---:|---|\n| Cache v20 cold rebuild | 30.258s wall | 255.8 \u002F 249.6 MB | tree-sitter declaration parse, source-on-demand dependencies, spill-to-disk BM25, lazy embeddings, compact cache save |\n| Cache-hit index open | 0.873s internal \u002F 1.132s wall | 134.9 \u002F 136.0 MB | process startup, source fingerprint validation, and cache load |\n| `codedb_index` cache-hit tool call | 1.556s wall | 141.5 \u002F 140.4 MB | explicit tool call after cache is already valid |\n\n## MCP Tool Benchmark Matrix\n\nThe table is intentionally three columns so it fits GitHub README pages without horizontal scrolling. Memory values are MB Working Set \u002F Private Bytes.\n\n| Tool \u002F Purpose | MCP benchmark | rg comparison |\n|---|---|---|\n| `codedb_index`\u003Cbr>Build\u002Frebuild local index | cold 30.258s, 255.8 \u002F 249.6 MB\u003Cbr>cache-hit tool 1.556s, 141.5 \u002F 140.4 MB | none |\n| `codedb_status`\u003Cbr>Health, counts, scan state | one-shot 0.561s, 14.2 \u002F 7.9 MB | none |\n| `codedb_tree`\u003Cbr>Indexed tree with language, lines, symbols | warm 11.891ms\u003Cbr>one-shot 1.018s, 142.0 \u002F 141.0 MB | partial file list only |\n| `codedb_outline`\u003Cbr>One-file symbol outline | warm 0.074ms\u003Cbr>one-shot 1.279s, 140.2 \u002F 140.3 MB | none |\n| `codedb_symbol`\u003Cbr>Symbol definition lookup | warm 2.106ms\u003Cbr>one-shot 1.034s, 140.7 \u002F 140.0 MB | regex approximates text only |\n| `codedb_search`\u003Cbr>Hybrid search, regex, batch queries | warm scoped regex 7.120ms\u003Cbr>one-shot 1.097s, 142.3 \u002F 140.5 MB | scoped `rg` 0.047s, MCP 6.6x faster warm\u003Cbr>broad grep is 1.5-1.8x slower |\n| `codedb_word`\u003Cbr>Exact identifier inverted index | warm first lazy load 94.403ms\u003Cbr>one-shot 1.033s, 167.3 \u002F 172.6 MB | partial word grep only |\n| `codedb_callers`\u003Cbr>Definition-anchored references | warm 3.422ms\u003Cbr>one-shot 1.309s, 168.5 \u002F 173.0 MB | no semantic anchor |\n| `codedb_hot`\u003Cbr>Recently modified indexed files | warm 7.069ms\u003Cbr>one-shot 1.454s, 141.4 \u002F 140.5 MB | none |\n| `codedb_deps`\u003Cbr>Direct\u002Freverse\u002Ftransitive file deps | warm 0.098ms\u003Cbr>one-shot 0.528s, 29.5 \u002F 23.0 MB | none |\n| `codedb_read`\u003Cbr>Indexed file or line-range read | warm 0.757ms\u003Cbr>one-shot 1.307s, 141.7 \u002F 140.1 MB | partial file print only |\n| `codedb_edit`\u003Cbr>Read-only compatibility stub | one-shot 0.128s, 4.8 \u002F 1.2 MB | none |\n| `codedb_changes`\u003Cbr>Files changed since sequence | warm 10.818ms\u003Cbr>one-shot 0.871s, 144.7 \u002F 145.8 MB | none |\n| `codedb_snapshot`\u003Cbr>JSON snapshot of files\u002Fsymbols\u002Fdeps | one-shot 2.421s, 634.0 \u002F 715.8 MB | none |\n| `codedb_bundle`\u003Cbr>Up to 100 tools in one request | warm 100 fast ops 57.725ms\u003Cbr>one-shot 20 searches 1.107s, 143.3 \u002F 141.5 MB | no MCP batching |\n| `codedb_remote`\u003Cbr>Remote compatibility stub | one-shot 0.136s, 5.4 \u002F 1.3 MB | none |\n| `codedb_projects`\u003Cbr>Projects loaded in server process | one-shot 0.114s, 3.8 \u002F 1.0 MB | none |\n| `codedb_find`\u003Cbr>Fuzzy file\u002Fpath lookup | warm 18.019-20.230ms\u003Cbr>one-shot 0.406s, 14.1 \u002F 7.8 MB | no fuzzy ranking |\n| `codedb_query`\u003Cbr>find\u002Fsearch\u002Ffilter\u002Flimit\u002Foutline pipeline | warm 6.786-25.139ms\u003Cbr>one-shot 1.149s, 141.6 \u002F 140.6 MB | no equivalent single tool |\n| `codedb_glob`\u003Cbr>Glob over indexed paths | warm 4.231ms\u003Cbr>one-shot 0.956s, 140.7 \u002F 140.1 MB | `rg --files -g` 0.045s\u003Cbr>MCP 10.6x faster warm |\n| `codedb_ls`\u003Cbr>Immediate indexed directory children | warm 4.027ms\u003Cbr>one-shot 0.940s, 139.3 \u002F 138.8 MB | partial file list only |\n| `codedb_graph`\u003Cbr>Graph summary\u002Fexport | one-shot 1.988s, 389.4 \u002F 396.8 MB | none |\n| `codedb_explain`\u003Cbr>Explain graph node and edges | warm first graph explain 845.369ms\u003Cbr>one-shot 1.854s, 392.8 \u002F 397.6 MB | none |\n| `codedb_path`\u003Cbr>Shortest graph path | warm after graph load 13.073ms\u003Cbr>one-shot 1.790s, 392.6 \u002F 397.2 MB | none |\n| `codedb_communities`\u003Cbr>Lazy Louvain communities | warm 265.593ms\u003Cbr>one-shot 1.905s, 390.8 \u002F 400.1 MB | none |\n| `codedb_module_map`\u003Cbr>DeepWiki module planning | warm 1.679s\u003Cbr>one-shot 2.236s, 214.4 \u002F 215.3 MB | none |\n| `codedb_module_atlas`\u003Cbr>Module\u002Ffile atlas JSON export | Rust export 8.548s, 319.8 \u002F 323.5 MB\u003Cbr>full skill 10.870s wall, 371.8 \u002F 369.9 MB sampled | none |\n| `codedb_analyze`\u003Cbr>Graph stats and suggested questions | warm graph analysis 830.637ms\u003Cbr>one-shot 2.936s, 392.2 \u002F 397.5 MB | none |\n| `codedb_export`\u003Cbr>Graph JSON\u002FGraphML\u002FCypher export | warm after graph load 10.313ms\u003Cbr>one-shot 1.963s, 390.0 \u002F 397.0 MB | none |\n\nJava smoke benchmark on `gameserver`:\n\n| Scenario | Files | Chunks | Symbols | Time | Peak memory |\n|---|---:|---:|---:|---:|---:|\n| Cold build after config\u002Fmodel-path change | 6,940 | 55,057 | 245,238 | 10.477s | 656.0 \u002F 664.4 MB |\n| Reopen with unchanged files\u002Fconfig | 6,940 | 55,057 | 245,238 | 1.027s | 129.4 \u002F 176.4 MB |\n\nMulti-language smoke coverage includes C#, Java, Rust, Python, Lua, TypeScript, C, and C++ parser paths: 8 files, 8 chunks, 14 symbols, 0.219s.\nRust smoke check on this repository: 29 indexed files, 1,752 chunks, 1,901 symbols; `codedb_outline`, `codedb_search`, and `codedb_deps` all returned Rust results.\n\n## Recommended Setup Flow\n\n1. Give the target agent `setup-for-agent.md`.\n2. The agent creates `\u003Crepo-root>\\.codedb-mcp` and `\u003Crepo-root>\\.codedb-mcp\\models`.\n3. On Windows, the agent checks the default HuggingFace hub cache first. If `minishlab\u002Fpotion-code-16M` already has a valid snapshot there, config points to that snapshot. If the hub cache exists but the model is missing, the agent downloads to `C:\\Users\\\u003Cuser>\\.cache\\huggingface\\hub\\codedb-mcp\\models\\potion-code-16M`. If the default hub cache does not exist, it uses the second available drive, such as `D:\\codedb-mcp-cache\\models\\potion-code-16M`.\n4. The agent writes `\u003Crepo-root>\\.codedb-mcp\\codedb-mcp.toml` from the demo config, writes the model as an absolute path, and shows the human which languages are configured.\n5. The human can edit `extensions`, `root_paths`, `include_paths`, `exclude_paths`, `skip_dirs`, and the model path before first indexing.\n6. The agent runs an index check.\n7. The agent asks whether this specific agent should register MCP. If yes, it uses its own MCP mechanism.\n8. Restart or reload the agent MCP session and check `\u002Fmcp`.\n\nThe MCP command shape is:\n\n```text\n\u003Cpackage-root>\\skills\\codedb-mcp\\assets\\codebase-mcp.exe --config \u003Crepo-root>\\.codedb-mcp\\codedb-mcp.toml mcp \u003Crepo-root>\n```\n\nThis project intentionally keeps installation explicit: setup prepares local project files, while the agent\u002Fuser chooses when and where to register MCP.\n\n## What It Does\n\n- Exposes local MCP tools for code search, outlines, symbols, typed callers, dependencies, file discovery, graph analysis, DeepWiki module planning, module atlas export, batching, and exports.\n- Indexes configured source languages through one explicit config file: `\u003Crepo-root>\u002F.codedb-mcp\u002Fcodedb-mcp.toml`.\n- Stores generated data inside the target repo under `.codedb-mcp`. Delete that directory to remove local cache and generated wiki\u002Findex data.\n- Uses a unified tree-sitter parser layer, not Roslyn\u002FJDT. C#, Java, Rust, Python, Lua, JavaScript, TypeScript\u002FTSX, C, and C++ all emit the same `FileEntry`\u002F`Symbol` model. C#\u002FJava typed callers and dependencies remain the strongest path because their namespace\u002Fpackage import rules are implemented on top of that shared AST output.\n- Uses Minish ecosystem pieces: `model2vec-rs` with explicit-path `minishlab\u002Fpotion-code-16M`, file-level semantic units, BM25 lexical ranking, exact identifier indexes, and on-demand flat-cosine vectors for natural-language search.\n- Builds a graphify-style code graph, computes Louvain communities lazily for `codedb_communities`, and exposes Rust-native `codedb_module_map`\u002F`codedb_module_atlas` outputs from a dependency-connected file graph with label propagation, dependency cohesion, cross-folder evidence, semantic-neighbor probes, key symbols, and c-TF-IDF-like labels.\n- Watches configured source extensions in MCP mode and rebuilds after a debounce.\n\n## Technology Architecture\n\n1. **Explicit project-local config**: all behavior comes from `.codedb-mcp\u002Fcodedb-mcp.toml`. There are no environment-variable switches for indexing behavior.\n2. **Project-local storage**: cache payloads, manifests, Louvain caches, and DeepWiki output live under `.codedb-mcp`. Deleting that directory removes all generated data for the repo.\n3. **Scanner**: walks the repo with explicit extensions, max file size, project `.gitignore` behavior, scan roots, include paths, exclude globs, and skip dirs. Nested Git worktrees\u002Fsubmodules under the target root are scanned as normal source directories. Unity runtime scans can be limited to `Assets`, `Packages`, and `Library\u002FPackageCache` while excluding `**\u002FEditor\u002F**`.\n4. **Unified language layer**: extension dispatch selects a tree-sitter grammar for C#, Java, Rust, Python, Lua, JavaScript, TypeScript\u002FTSX, C, or C++. The parser emits the same `FileEntry`\u002F`Symbol` model for every language and visits declarations without descending into large method bodies.\n5. **Code-aware references**: C#\u002FJava namespace\u002Fpackage imports, qualified names, aliases, static using, annotations, and attribute suffixes feed typed callers and dependency edges. Rust and the other non C#\u002FJava languages currently provide indexed search, outlines, imports\u002Fincludes\u002Fuse declarations, Lua `require()` imports, and graph nodes, but not Roslyn\u002FJDT-level semantic binding.\n6. **Search indexes**: builds chunk metadata, symbol-definition chunk hits, dependency references, and spill-to-disk BM25 lexical search during cold indexing. Exact identifier hits and Model2Vec file embeddings are generated lazily when callers or natural-language search actually need them.\n7. **Memory-shaped cache**: cache v20 follows the bounded-content-cache lesson from `justrach\u002Fcodedb`: full file bodies, chunk preview text, repeated chunk file paths, repeated language\u002Fkind strings, BM25 postings, word-index hits, caller results, embeddings, forward\u002Freverse dependencies, graph objects, and Louvain results are no longer all resident by default. Tools read exact lines, postings, word hits, caller sidecars, embeddings, dependencies, or graph data on demand.\n8. **Graph layer**: builds a graphify-style code graph lazily. Small repos keep file, namespace\u002Fpackage, symbol, dependency, and reference edges; large repos keep graph construction behind graph\u002Fcommunity\u002Fmodule tools while symbol data stays in outline\u002Fsearch\u002Fcallers indexes. Louvain communities and subcommunities are computed lazily on first request and cached under `.codedb-mcp`.\n9. **Module atlas layer**: `codedb_module_map` and `codedb_module_atlas` run in Rust. They first split files by dependency-connected components, then do dependency-weighted label propagation inside each component. Path and token terms are used for naming, evidence, and oversized-component splitting, not as the primary clustering basis. `codedb_module_atlas` exports Embedding Atlas-ready JSON.\n10. **MCP runtime**: implemented with the Rust `rmcp` SDK over stdio. Tools operate against a warm in-process index, and batch-capable tools plus `codedb_bundle` reduce MCP round trips.\n11. **Setup guide and skills package**: `setup-for-agent.md` owns installation guidance. `skills\u002Fcodedb-mcp` is standalone for tool usage and includes the executable, config template, MCP reference, and tool guidance. `skills\u002Fdeepwiki` builds local DeepWiki-style docs from MCP evidence plus the active agent's reasoning. `skills\u002Fcode-module-atlas` calls `codedb_module_atlas` and packages the local meet-blog-style module\u002Ffile graph webpage.\n\n## Configuration\n\nDefault config path:\n\n```text\n\u003Crepo-root>\u002F.codedb-mcp\u002Fcodedb-mcp.toml\n```\n\nThe repo includes a working example at `.codedb-mcp\u002Fcodedb-mcp.toml` and a distributable template at `skills\u002Fcodedb-mcp\u002Fassets\u002Fcodedb-mcp.toml.template`.\n\nImportant defaults:\n\n```toml\n[scan]\nextensions = [\"cs\", \"java\", \"rs\", \"py\", \"pyw\", \"lua\", \"js\", \"jsx\", \"mjs\", \"cjs\", \"ts\", \"tsx\", \"c\", \"h\", \"cc\", \"cpp\", \"cxx\", \"hpp\", \"hh\", \"hxx\"]\nmax_file_bytes = 50000000\nrespect_gitignore = true\nroot_paths = []\ninclude_paths = [\"Library\u002FPackageCache\"]\nexclude_paths = []\n\n[embedding]\nmodel = \"C:\u002FUsers\u002F\u003Cuser>\u002F.cache\u002Fhuggingface\u002Fhub\u002Fcodedb-mcp\u002Fmodels\u002Fpotion-code-16M\"\n\n[storage]\nenabled = true\ndir = \".codedb-mcp\"\n```\n\nThere are no environment-variable toggles. Edit the config file explicitly. `root_paths` can limit scanning to source roots such as `Assets`, `Packages`, and `Library\u002FPackageCache`; `include_paths` adds extra roots even when a parent is skipped; `exclude_paths` accepts globs such as `**\u002FEditor\u002F**` for Unity runtime-only scans. `respect_gitignore=true` reads project `.gitignore` files, but nested Git worktrees\u002Fsubmodules inside the target root are still indexed unless excluded by `skip_dirs`, `exclude_paths`, or file extension rules. The model path is explicit and absolute; on Windows the setup guide uses the default HuggingFace cache when present, otherwise it falls back to the second available drive.\n\n## Build And CLI\n\nBuild:\n\n```powershell\ncargo build --release\n```\n\nRun MCP directly:\n\n```powershell\ntarget\\release\\codebase-mcp.exe --config u3dclient\\.codedb-mcp\\codedb-mcp.toml mcp u3dclient\n```\n\nQuick CLI checks:\n\n```powershell\ntarget\\release\\codebase-mcp.exe --config u3dclient\\.codedb-mcp\\codedb-mcp.toml index u3dclient\ntarget\\release\\codebase-mcp.exe --config u3dclient\\.codedb-mcp\\codedb-mcp.toml search \"network listener manager\" u3dclient -k 5\ntarget\\release\\codebase-mcp.exe --config u3dclient\\.codedb-mcp\\codedb-mcp.toml --root u3dclient tool codedb_status \"{}\"\n```\n\nMCP mode answers the protocol handshake before the initial index finishes, then builds the default project index in the background. Early tool calls may wait for that first build. It also watches indexed extensions by default; when a configured source file changes, the server debounces events, rebuilds the project index in the background, and swaps in the new index after it is ready. Use `--no-watch` for static benchmark runs.\n\n## Batch Examples\n\n`codedb_search` accepts `queries`:\n\n```json\n{\n  \"max_results\": 3,\n  \"queries\": [\n    \"PoolManager\",\n    {\n      \"query\": \"Joystick\",\n      \"path_glob\": \"Assets\u002FPlugins\u002F3rdPlugins\u002FJoystick Pack\u002F**\"\n    },\n    {\n      \"query\": \"NetworkListenerManager\",\n      \"regex\": true,\n      \"compact\": true\n    }\n  ]\n}\n```\n\n`codedb_callers` accepts `targets`:\n\n```json\n{\n  \"max_results\": 10,\n  \"targets\": [\n    {\n      \"name\": \"PoolManager\",\n      \"definition_path\": \"Assets\u002FScripts\u002FHotFix\u002F3rdExtend\u002FRuntime\u002FPoolManager\u002FPoolManager.cs\",\n      \"definition_line\": 26\n    },\n    {\n      \"name\": \"Joystick\",\n      \"definition_path\": \"Assets\u002FPlugins\u002F3rdPlugins\u002FJoystick Pack\u002FScripts\u002FRuntime\u002FBase\u002FJoystick.cs\",\n      \"definition_line\": 8\n    }\n  ]\n}\n```\n\n`codedb_communities` uses lazy Louvain clustering:\n\n```powershell\ntarget\\release\\codebase-mcp.exe --config u3dclient\\.codedb-mcp\\codedb-mcp.toml --root u3dclient tool codedb_communities \"{`\"community_limit`\":10}\"\ntarget\\release\\codebase-mcp.exe --config u3dclient\\.codedb-mcp\\codedb-mcp.toml --root u3dclient tool codedb_communities \"{`\"community_id`\":0,`\"children`\":true,`\"community_limit`\":20}\"\n```\n\nOverview calls return community IDs, labels, member counts, and cohesion. Add `children=true` or `subcommunities=true` with a `community_id` to split only that community's subgraph; child clusters are cached in `.codedb-mcp\u002Flouvain-subcommunities.bin`.\n\n`codedb_module_map` is the preferred DeepWiki planning call. It uses the Rust dependency-connected module graph, then adds dependency cohesion, cross-folder roots, semantic-neighbor probes, entry points, key symbols, and c-TF-IDF-like labels:\n\n```powershell\ntarget\\release\\codebase-mcp.exe --config u3dclient\\.codedb-mcp\\codedb-mcp.toml --root u3dclient tool codedb_module_map \"{`\"path_prefix`\":`\"Assets\u002FScripts`\",`\"limit`\":40,`\"min_files`\":2,`\"semantic_neighbors`\":5}\"\n```\n\n## Skills\n\nThe `skills\u002F` directory is intended to be copied as a standalone package.\n\n- `setup-for-agent.md`: installation guide for agents. It reuses the default HuggingFace cache when present, falls back to the second Windows drive when absent, and writes project-local config with an absolute model path.\n- `skills\u002Fcodedb-mcp`: includes `assets\u002Fcodebase-mcp.exe`, a config template, MCP registration reference, and tool guidance. It does not own setup.\n- `skills\u002Fdeepwiki`: creates DeepWiki-style local documentation using local `codedb_*` tools plus the active agent's reasoning. It emphasizes business module boundaries over folder-only or community-only grouping.\n- `skills\u002Fcode-module-atlas`: creates a local 3D module\u002Ffile atlas webpage by calling `codedb_module_atlas`, then adapting the bundled meet-blog-style viewer. Generated repo-specific JSON stays ignored.\n\n## Acknowledgements\n\n- [meet-blog.buyixiao.xyz](https:\u002F\u002Fmeet-blog.buyixiao.xyz\u002F) inspired the Code Module Atlas visual style and viewer experience.\n- [justrach\u002Fcodedb](https:\u002F\u002Fgithub.com\u002Fjustrach\u002Fcodedb) inspired the original MCP tool interface direction.\n","codebase-mcp 是一个用于快速代码搜索、依赖感知模块发现、可视化代码图谱页面和DeepWiki风格仓库文档的本地优先MCP工具包。项目使用Rust语言开发，基于tree-sitter进行索引，并通过持久化的服务器进程提供毫秒级响应速度的MCP调用。它能够为开发者提供包括精确\u002F正则表达式搜索、BM25\u002F符号搜索、懒加载向量搜索、定义查找、调用者追踪等功能在内的高效编码辅助工具。此外，还支持以3D视图形式展示代码模块关系以及自动生成基于MCP证据与智能代理推理的地方化仓库文档。适用于需要在本地环境中加速代码导航、理解和维护工作的场景。","2026-06-11 04:06:43","CREATED_QUERY"]