NxtSoftLabs
DEVELOPER TOOLSBeta

CGraph

A native C++ engine that turns codebases into knowledge graphs for coding agents.

C++20

Why it exists

Coding agents that read code by grepping rediscover a project's structure on every request. They see text, not the graph of files, symbols, and references that the text encodes — so they re-derive it, imperfectly, again and again.

CGraph extracts that structure once. It scans a repository into a deterministic knowledge graph, keeps the graph warm in a local daemon, and serves it to agents over MCP. The agent asks precise questions — what calls this, what breaks if I change it, what's the shortest path between these two symbols — instead of scrolling through search results.

What it does

11+ languages
Tree-sitter extraction for C++, Python, TypeScript, and more.
8 agent tools
Query, explain, impact, path, and context over MCP.
Live daemon
Watches your tree; warm queries return quickly.
6 export formats
JSON, HTML, SVG, Obsidian, Cypher, and call-flow.

How it works

Three binaries form a pipeline: extraction, a warm daemon, and an MCP server.

Repository -> Parser -> Resolver -> Graph -> Query
Repository to query, once and then incrementally
  • cgraph — a one-shot scan of the source tree. Deterministic, .gitignore-aware, with generated directories skipped.
  • graphd — a daemon that keeps the graph warm and folds in edits incrementally as you work.
  • cgraph-mcp — exposes the graph to Claude Code, Codex, and Cursor over MCP.

Quick start

cgraph --root . --out cgraph-out
Tip

Start with the Quick Start in the docs for a guided walkthrough against a real repository.

Performance

CGraph is infrastructure software, so performance is a first-class concern: a warm daemon serves queries without re-scanning, and edits fold in incrementally rather than triggering a full rebuild. Measured figures, methodology, and hardware are documented on the benchmarks page in the docs — this page makes no unverified claims.

Next steps