Overview
simple_graphify maps an Eiffel project directory — ECF
configurations, .e sources, and markdown documentation — into a
persistent knowledge graph. AI coding assistants (and humans) then answer structural
questions from the pre-built map instead of grepping files: fewer tokens, more
accurate answers, durable cross-session memory.
It is a native Eiffel reimagining of
Graphify. Where Graphify
parses code with tree-sitter, simple_graphify parses Eiffel with
simple_eiffel_parser and extracts things tree-sitter cannot see:
contracts, deferred status, rename/redefine adaptation, cluster topology, and
design rationale mined from -- NOTE: / -- WHY: /
-- TODO: comments.
Extraction is 100% local and deterministic — no LLM calls, no
network, no embeddings. Identical input produces byte-identical graphs, so
graphify-out/ is git-diffable and team-shareable.
Part of the Simple Eiffel ecosystem.
Features
- Typed edges (
inherits,uses,creates,contains,depends_on,references,mentions) tagged with confidence:extracted,inferred,ambiguous - Deterministic label-propagation communities labeled by dominant library
- God nodes: the ranked integration hubs of your codebase
- Design-by-Contract coverage report per class (preconditions/postconditions/invariants)
- Four artifacts per build:
graph.json,GRAPH_REPORT.md, self-containedgraph.htmlvisualization,graph.dot - Token-efficient query CLI:
query,explain,path,stats - Claude Code skill installed via
install; assistant-inferred edges merge viaannotate - Deep mode adds feature-level nodes with signature-derived edges
Status
v1.0.0 - Production Ready
- 24 tests passing (100% pass rate) against a committed fixture project
- Verified end-to-end on real libraries and a 5,700-file ecosystem (40 s build)
- Design by Contract throughout; void-safe (
void_safety="all"); SCOOP-compatible
Quick Start
simple_graphify build D:/prod/my_lib
simple_graphify query "how does the cache work"
simple_graphify explain MY_CLASS
simple_graphify path CLASS_A CLASS_B
See the Quick API for more, or the User Guide for the full workflow.