What is Engineering Knowledge Graph?
Engineering Knowledge Graph (EKG) is a prototype system that transforms how engineering teams understand their infrastructure. Instead of manually searching through Docker Compose files, team wikis, and Kubernetes configs, EKG creates a unified knowledge graph that you can query using natural language.Quick start
Get EKG running in 5 minutes with Docker Compose
Architecture
Understand the 4-layer architecture and how it works
API reference
Explore the REST API endpoints and query methods
Custom Connectors
Contribute and extend EKG with new connectors
Key features
Natural language queries
Natural language queries
Ask questions like “Who owns the payment service?” or “What breaks if Redis goes down?” instead of writing complex queries or searching through multiple files.Example queries:
- “What does order-service depend on?”
- “What’s the blast radius of users-db?”
- “How does api-gateway connect to orders-db?”
- “Who should I page if payments-db is down?”
Unified knowledge graph
Unified knowledge graph
EKG automatically parses and connects data from multiple sources:
- Docker Compose service definitions
- Team ownership and contact info
- Kubernetes deployments and services
- Environment variables and dependencies
Impact analysis
Impact analysis
Understand the blast radius of failures before they happen. EKG can trace all upstream and downstream dependencies, identify affected services, and determine which teams need to be notified.Perfect for:
- Change impact analysis
- Incident response planning
- Dependency audits
- Ownership verification
Pluggable connectors
Pluggable connectors
The BaseConnector interface makes it easy to add new data sources. The system ships with:
- DockerComposeConnector - Parse service definitions and dependencies
- TeamsConnector - Extract ownership information
- KubernetesConnector - Process K8s deployments
Use cases
On-call engineering
Quickly identify service owners, blast radius, and dependencies during incidents
Platform engineering
Map service dependencies, audit infrastructure, and enforce ownership policies
Engineering management
Understand team boundaries, service ownership distribution, and system complexity
Developer onboarding
Help new engineers explore the system architecture through natural queries
How it works
EKG uses a 4-layer architecture:- Connectors parse raw configuration files (Docker Compose, Teams YAML, K8s manifests)
- Graph Storage persists nodes and relationships in Neo4j
- Query Engine executes graph traversals for dependency analysis
- Chat Interface translates natural language to graph queries using Google Gemini
Built with: Python, FastAPI, Neo4j, Google Gemini, and Docker Compose
Sample query flow
Here’s what happens when you ask “What breaks if redis-main goes down?”:Query parsing
Gemini LLM analyzes the query and identifies:
- Query type:
blast_radius - Node ID:
cache:redis-main - Confidence: 0.95
Graph traversal
QueryEngine executes Cypher queries to find:
- Upstream dependents (services that use Redis)
- Downstream dependencies (what Redis depends on)
- Affected teams (owners of impacted services)
Ready to get started?
Quick start guide
Install and run your first query in under 5 minutes
Architecture deep dive
Learn how each component works together