Beyond nearest-neighbor.
Pinecone, Weaviate, and pgvector return the most similar vectors. Graphify returns entities and the relationships between them, ready for your coding assistant to traverse.
A code knowledge graph isa database of a codebase's structure: functions, classes, files, schemas, and docs stored as nodes, with calls, imports, and references stored as typed, directed edges. Where a vector database indexes embeddings and retrieves by nearest-neighbor similarity, a code knowledge graph retrieves by traversal — following explicit relationships from entity to entity — so answers arrive as inspectable paths rather than ranked lookalike chunks.
High-level comparison of the two data models. Pinecone, Weaviate, and pgvector differ in hosting and features; all of them retrieve by vector similarity.
The questions similarity can't answer
A vector database does one thing extremely well: given a query embedding, it finds the nearest stored embeddings — typically via an approximate nearest-neighbor index like HNSW (Malkov & Yashunin, 2016), the algorithm behind the default indexes in Pinecone, Weaviate, and pgvector. That's the right tool for "find text that sounds like this." But agent memory has to answer questions like "which services does this team own, and who approved the last change?" Those are questions about how things connect. In a vector store those connections were flattened away at embedding time; the model has to reconstruct them by guessing across disconnected chunks. Graphify keeps them as first-class, typed edges, so the agent follows a real path instead.
Staying current without re-embedding
When a document changes, a vector pipeline re-embeds and upserts it, and anything derived from the old vectors quietly goes stale. Graphify updates the affected node and leaves the surrounding edges intact, so memory stays current incrementally. That incrementality is inherited from the parser itself: tree-sitter, by its own description, can "build a concrete syntax tree for a source file and efficiently update the syntax tree as the source file is edited." Privacy works the same way: instead of shipping your code to an embedding API, extraction runs on-device with a deterministic parser and no model call. Nothing leaves your machine.
The part no vector database attempts
Because every Graphify answer is a traversal, it traces to an explicit path through your real code, and every relationship on that path carries a confidence tag: EXTRACTED, INFERRED, or AMBIGUOUS. A similarity score can tell you a chunk was close; it can't tell you where an answer came from. When your assistant ships code based on an answer, that provenance is what lets you check its work. The broader retrieval field has reached a similar conclusion: approaches like GraphRAG (Edge et al., 2024) bolt a knowledge graph on top of vector retrieval to recover the structure similarity search discards. For the retrieval-pipeline view of the same argument, see Graphify vs RAG.
Common questions
Does Graphify replace Pinecone, Weaviate, or pgvector?
Can I run Graphify alongside my vector database?
Is Graphify a graph database like Neo4j?
What about hybrid search?
Try it on your own repo.
84,812 stars on GitHub. Read the code.Evaluating for a team? See Graphify Enterprise →