Derived Code Graph
Graphify is an Apache-2.0 optional developer-navigation layer. It is not an architecture source, product dependency, build requirement, wiki generator, or replacement for CareerVector's typed nine-kind knowledge graph. Source code, architecture modules, contracts, and evidence remain authoritative.
Qualified boundary
Graphify 0.9.53 was qualified on 2026-09-01 from a clean checkout of commit
513927b021521db618e96693ae06a4a313399d44, using Python 3.12 in an isolated
repository-local environment. The run used --code-only --cargo, with model
provider environment variables removed from the process.
The run inspected 2,632 code/configuration files, skipped 450 non-code files, and produced 26,340 AST-derived nodes, 58,449 edges, and 1,046 communities in about one minute. The graph included the expected assistant, TUI, workspace client, server commit, Typst, and ruler sources. Exact symbol queries reliably found the intended call neighborhoods, including:
createAssistantDynamicTools,applyOperations,verifyToolScope, andundoReceiptinlib/assistant-tools/src/registry.ts;AcpSession,WorkspaceService, revision-checked updates, rendering, and ruler paths undercareervector-tui/; andWorkspaceClient,HttpTransport,commitWorkspaceOp, andbroadcastWorkspaceOpacross the canonical browser/server write path.
Broad natural-language questions returned large, noisy neighborhoods, so this tool is strongest for named-symbol and dependency exploration. Svelte parsing is partial and emitted warnings for many component files. A developer must still read the source and its tests before making a claim.
Local workflow
scripts/dev/graphify-code.sh setup
scripts/dev/graphify-code.sh extract
scripts/dev/graphify-code.sh query \
'WorkspaceClient HttpTransport commitWorkspaceOp broadcastWorkspaceOp'
scripts/dev/graphify-code.sh html
The setup syncs an exact dependency set into tmp/graphify/venv. All generated
material stays below ignored tmp/graphify/output:
graph.jsonis the disposable full code graph;graph.htmlis an aggregated community view when the node limit is exceeded;obsidian/is an optional full export, about 27,000 notes and 139 MiB for the qualified checkout; andcypher.txtis an optional database-free Falkor/OpenCypher dry-run.
Do not commit, publish, or sync those outputs into wiki/content, Obsidian's
durable knowledge vault, the shared brain, or lib/graph.
FalkorDB boundary
The Graphify Falkor export uses generic Code nodes and code relationships
such as CONTAINS, CALLS, IMPORTS, and REFERENCES. Those labels do not
implement CareerVector's canonical nine kinds and must not be loaded into the
production careervector graph.
scripts/dev/graphify-code.sh falkor-dry-run deliberately omits Graphify's
push option and writes OpenCypher text only. Any future database experiment
requires a separate disposable graph name, explicit operator approval, and a
projection that cannot overwrite or masquerade as canonical knowledge.
Promotion rule
Graphify output may suggest a source path or missing relationship. Promotion into durable architecture still requires a human-readable claim, an allowed canonical kind, an authoritative source, and appropriate verification. Never promote generated nodes merely because they are connected or highly ranked.