Vibeleaderboard
Index / tool
Visit github.com
Category
Developer Tools
Rank
Pricing
Freemium
Type
TOOL
Use case
Coding
Interfaces
CLI · MCP
Builder
vitali87
Latest release
v0.0.945
Date

About

Parses multi-language codebases with Tree-sitter and builds a knowledge graph in Memgraph, letting developers query, edit, and optimize code across a monorepo using natural language. Supports AST-based structural search/replace, dead code detection, and runs as both a CLI and an MCP server for Claude Code and other AI clients.

What it does

Treat it as a codebase memory layer for developers and coding agents. It records symbols, calls, references, imports, inheritance, and data flow in a graph. Language models translate questions into graph queries, then return relevant structure and source. The same system can preview targeted edits, trace values, export graph data, and refresh changed files.

Why it's ranked here

This is a compelling choice for serious repository analysis because it combines broad language coverage, graph relationships, source retrieval, and guarded editing in one system. The documentation also distinguishes verified flow absence from incomplete coverage and calls dead-code findings candidates, showing useful restraint. Operational weight and pre-1.0 interface changes keep it from being an effortless default.

What's good

The unified graph schema makes relationships comparable across mixed-language repositories. Structural rewrites default to a dry-run diff, which gives developers a review point before files change. Data-flow questions return found, absent, or unknown outcomes based on analysis coverage. Dead-code scans support custom entry points, decorator roots, exclusions, JSON output, and CI failure behavior.

Tradeoffs

Setup is heavier than a standalone parser. The recommended installation needs Python 3.12 or newer, Docker for Memgraph, CMake, and ripgrep; semantic search adds Qdrant and large machine-learning dependencies. Language fidelity varies: Ruby has structural coverage, Scala remains in development, and documented type inference gaps affect Python, TypeScript, JavaScript, and C++. Pre-1.0 interfaces may change with any release.

How to use it well

Use it for mixed-language monorepos where architecture questions, impact tracing, structural refactors, and agent-assisted maintenance recur often enough to justify indexing infrastructure. Prefer incremental updates during active development, inspect edit diffs, and tune dead-code roots for framework entry points. It does not replace runtime tracing or human deletion decisions when reflection, dynamic dispatch, string lookups, or external frameworks hide real reachability.

Technical notes+

pyproject.toml packages Python 3.12+ console entry points cgr and code-graph-rag, with optional treesitter-full, semantic, milvus, and ast-grep dependency groups. main.py forwards execution to codebase_rag.cli:app. docs/guide/mcp-server.md documents stdio or HTTP serving and tools for indexing, incremental updates, graph queries, file operations, structural replacement, semantic search, agent questions, and coverage-aware flow verdicts. docs/sdk/overview.md exposes graph loading, direct Memgraph access, Cypher generation, embeddings, and provider settings. docs/TODO.md records concrete type-inference gaps, while docs/guide/dead-code.md explains graph reachability and expected false positives. The Makefile defines lint, type-check, unit, integration, parallel, security, and release workflows.

Observed

License
MIT
Primary language
Python 3 only, requiring Python 3.12 or newer
Packaging
Published on PyPI with optional extras for full Tree-sitter coverage, semantic search, Milvus, and ast-grep
Interfaces
Interactive CLI, Python SDK, MCP server over stdio or HTTP, and JSON graph export
Platform support
Package metadata classifies the project as operating-system independent; local graph operation requires Docker
Testing structure
Pytest is configured under codebase_rag/tests with unit, integration, slow, and end-to-end markers

Read from README.md, Makefile, pyproject.toml, main.py, docs/TODO.md, docs/index.md, docs/roadmap.md, docs/contributing.md, docs/claude-code-setup.md, docs/sdk/overview.md, docs/guide/dead-code.md, docs/guide/mcp-server.md, docs/sdk/graph-loader.md, docs/guide/graph-export.md, docs/guide/cli-reference.md.

What it can do

  • Parse multi-language codebases using Tree-sitter and build a knowledge graph

    Source code repository → Knowledge graph in Memgraph

  • Query codebase using natural language

    Natural language query → Code information/results

  • Edit code using AI-driven natural language instructions

    Natural language editing request → Modified code

  • Perform AST-based structural search and replace

    Structural search/replace pattern → Modified code

  • Detect dead code across a codebase

    Codebase → List of unused/dead code

  • Optimize code across a monorepo

    Codebase → Optimized code

Tags

ragknowledge-graphcode-analysismcptree-sittercodebase-searchmonorepollm

Tech Stack

PythonDocker

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.