Knowledge Graph
The committed objects and relationships form a graph you can traverse, export and time-travel.
Objects are nodes; relationships are edges. Everything you can ask is a traversal of that graph plus its evidence.
| Need | Tool |
|---|---|
| One object and its evidence | ekos_state / ekos query object |
| Everything within N hops | ekos_neighborhood / ekos query neighbourhood |
| What depends on X | ekos_dependents |
| Transitive blast radius | ekos_impact |
| The whole graph | ekos graph export / ekos_graph_export |
| Structured queries | EKL |
Below is a real neighbourhood from EKOS's own ledger: every plugin file that depends on the Observer trait module, plus the Risk object the compiler derived because three or more objects depend on it.
ekos graph export produces JSON or NDJSON with node and edge filters, an aggregate mode that collapses to super-nodes (by kind or path prefix), and a --max-nodes cap that drops lowest-degree nodes first and reports the truncation.
Graph exports carry first-seen times, so a viewer can scrub the graph through time. The web console (a separate RFC 0127 component) renders it.