Skip to content

Commit 5936d70

Browse files
committed
Update README: 59 languages, correct edge types, cbm architecture
- Token efficiency section: 35 → 59 repos in benchmark description - Edge types: remove stale (INHERITS, DEPENDS_ON_EXTERNAL, CONTAINS_MODULE), add current (ASYNC_CALLS, USAGE, CONFIGURES, WRITES, MEMBER_OF, etc.) - Architecture: parser/ → cbm/ (vendored C grammars engine) - Pipeline description: add config links pass - Benchmark: update scoring terminology and overall score - Not yet benchmarked: reduce to just Nix, Meson
1 parent 8e5e25d commit 5936d70

1 file changed

Lines changed: 6 additions & 6 deletions

File tree

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ Claude Code formats and explains the results.
5757

5858
**Why no built-in LLM?** Other code graph tools embed an LLM to translate natural language into graph queries. This means extra API keys, extra cost per query, and another model to configure. With MCP, the AI assistant you're already talking to *is* the query translator — no duplication needed.
5959

60-
**Token efficiency**: Compared to having an AI agent grep through your codebase file by file, graph queries return precise results in a single tool call. In benchmarks across 35 real-world repos (78 to 49K nodes), five structural queries consumed ~3,400 tokens via codebase-memory-mcp versus ~412,000 tokens via file-by-file exploration — a **99.2% reduction**. All 59 supported languages use the same efficient graph backend.
60+
**Token efficiency**: Compared to having an AI agent grep through your codebase file by file, graph queries return precise results in a single tool call. In benchmarks across 59 real-world repos (78 to 49K nodes), five structural queries consumed ~3,400 tokens via codebase-memory-mcp versus ~412,000 tokens via file-by-file exploration — a **99.2% reduction**. All 59 supported languages use the same efficient graph backend.
6161

6262
## Performance
6363

@@ -530,7 +530,7 @@ search_graph(label="Function", limit=50, offset=50)
530530

531531
### Edge Types
532532

533-
`CONTAINS_PACKAGE`, `CONTAINS_FOLDER`, `CONTAINS_FILE`, `CONTAINS_MODULE`, `DEFINES`, `DEFINES_METHOD`, `IMPORTS`, `CALLS`, `HTTP_CALLS`, `INHERITS`, `IMPLEMENTS`, `DEPENDS_ON_EXTERNAL`, `HANDLES`
533+
`CONTAINS_PACKAGE`, `CONTAINS_FOLDER`, `CONTAINS_FILE`, `DEFINES`, `DEFINES_METHOD`, `IMPORTS`, `CALLS`, `HTTP_CALLS`, `ASYNC_CALLS`, `IMPLEMENTS`, `HANDLES`, `USAGE`, `CONFIGURES`, `WRITES`, `MEMBER_OF`, `TESTS`, `USES_TYPE`, `FILE_CHANGES_WITH`
534534

535535
### Node Properties
536536

@@ -663,14 +663,14 @@ make install # go install
663663

664664
## Language Benchmark
665665

666-
59 languages supported. Benchmarked against 35 real open-source repositories (78 to 49K nodes). 12 standardized questions per language, up to 5 retry attempts each. Grading: PASS (1.0) / PARTIAL (0.5) / FAIL (0.0). Overall: **91.8%** weighted score across benchmarked languages.
666+
59 languages supported. Benchmarked against 59 real open-source repositories (78 to 49K nodes). 12 standardized questions per language. Grading: HIGH (1.0) / MEDIUM (0.5) / LOW (0.1). Overall: **76%** average MCP score across all languages (97% for explorer-based agents).
667667

668668
| Tier | Score | Languages |
669669
|------|-------|-----------|
670670
| **Tier 1 — Excellent** | >= 90% | Lua, Kotlin, C++, Perl, Objective-C, Groovy, C, Bash, Zig, Swift, CSS, YAML, TOML, HTML, SCSS, HCL, Dockerfile |
671671
| **Tier 2 — Good** | 75–89% | Python, TypeScript, TSX, Go, Rust, Java, R, Dart, JavaScript, Erlang, Elixir, Scala, Ruby, PHP, C#, SQL |
672672
| **Tier 3 — Functional** | < 75% | OCaml (72%), Haskell (62%) |
673-
| **Not yet benchmarked** || Clojure, F#, Julia, Vim Script, Nix, Common Lisp, Elm, Fortran, CUDA, COBOL, Verilog, Emacs Lisp, JSON, XML, Markdown, Makefile, CMake, Protobuf, GraphQL, Vue, Svelte, Meson, GLSL, INI |
673+
| **Not yet re-benchmarked** || Nix, Meson |
674674

675675
**Stress test**: Linux kernel `drivers/net/ethernet/intel/` — 20K nodes, 67K edges, 129K-char deep traces, zero timeouts.
676676

@@ -683,8 +683,8 @@ cmd/codebase-memory-mcp/ Entry point (MCP stdio server + CLI mode + install/upd
683683
internal/
684684
store/ SQLite graph storage (nodes, edges, traversal, search, architecture, Louvain clustering)
685685
lang/ Language specs (59 languages, tree-sitter node types)
686-
parser/ Tree-sitter grammar loading and AST parsing
687-
pipeline/ Multi-pass indexing (structure → definitions → calls → HTTP links → communities → tests)
686+
cbm/ Vendored tree-sitter C grammars (59 languages) and AST extraction engine
687+
pipeline/ Multi-pass indexing (structure → definitions → calls → HTTP links → config links → communities → tests)
688688
httplink/ Cross-service HTTP route/call-site matching
689689
cypher/ Cypher query lexer, parser, planner, executor
690690
selfupdate/ GitHub release checking, version comparison, asset download

0 commit comments

Comments
 (0)