Short answer
Both parse code with tree-sitter into a call graph and answer callers, call chains and impact. CodeGraphContext keeps it in a graph database you choose, runs raw Cypher and draws the graph as HTML. Pixel keeps its index in .pixel/, adds text and plain-English search, your Git history and guarded Git writes, and needs no Python.
Side by side
Not benchmarked. No figure: how Pixel and CodeGraphContext work, side by side. Nothing on this page is a measurement.
| Measure | Pixel | CodeGraphContext |
|---|---|---|
| Callers, call chains, impact | Yes | Yes |
| Raw graph queries | No | Cypher |
| Graph view | No | Standalone HTML |
| Plain-English search | Yes, pixel search-meaning | No |
| Git history | Yes, with guarded Git writes | None documented |
Where CodeGraphContext wins
A graph database of your choice, raw Cypher queries, an HTML graph view and code complexity reports.
How they differ
CodeGraphContext indexes code with tree-sitter, or a SCIP indexer, into a graph database you pick: FalkorDB Lite by default on Unix with Python 3.12+ once falkordblite is installed, KuzuDB where it is not (Windows included), or Neo4j when configured and serves it as MCP tools and the cgc CLI, including raw Cypher. Pixel keeps its graph and a text and embedding search index in .pixel/, answers from the shell (pixel who-calls, pixel impact, pixel search-meaning) and covers Git: pixel dig-history, pixel commit.
Choosing
Use CodeGraphContext to query the graph in Cypher, pick its database, or see the graph drawn. Use Pixel for one binary with no Python and no database, plain-English search, and the Git history and writes an agent needs around its edits.