Engineering Context Graph
Think of the Engineering Context Graph (ECG) as the onboarding guide you'd give a new engineer joining your on-call rotation. It contains everything they'd need to investigate incidents effectively: which services exist and who owns them, which repositories to check, what Datadog dashboards to pull up, how to interpret specific alerts, and the tribal knowledge your team has accumulated over years.
Your Autoheal agents use this context during investigations. Unlike a new hire, it never forgets.
How agents use your context
When an investigation starts, an agent doesn't operate in isolation. It combines two capabilities:
Real-time access to your observability stack: Datadog, Grafana, GitHub, Sentry, and more. Agents can query metrics, search logs, pull traces, and check deployment history.
Your team's operational knowledge: what exists in your systems, who owns it, and the documented procedures for handling it. This tells an agent how to use the tools effectively.
Integrations give agents capabilities. The Engineering Context Graph gives them context.
Without ECG content, an agent can query Datadog but doesn't know which dashboard matters for your payment service. With your context, it knows to check payments-api-latency first, that spikes after 2pm PST usually correlate with batch jobs, and that the payments-oncall Slack channel is where your team coordinates.
Components of the graph
The ECG has three kinds of content, and they arrive in three different ways.
| What it holds | Where it comes from | |
|---|---|---|
| Catalog | Services, teams, people, and repositories, and the relationships between them | Mostly imported from your integrations; you can author or correct entities |
| Skills | Architecture overviews, alert procedures, and tool conventions | Authored by you |
| Memories | Learnings from resolved incidents: root causes, investigation paths, resolutions | Captured automatically from agent runs |
The split matters when you're deciding where to put something. If it's a fact about what exists, such as a service, its owner, or its dependencies, it belongs in the Catalog, and it may already be there. If it's a judgment about what to do, such as how to investigate an alert or which dashboard to open first, it's a skill, and only you can write it.
How context evolves
Your Engineering Context Graph grows with every investigation.
During investigations
As an agent investigates, it may discover gaps:
- Agent asks a question → your answer is a candidate for a skill
- Agent finds a useful query → document it for future incidents
- Agent can't resolve an owner → fill in the Catalog relationship
When an agent asks "Which dashboard should I check for this service?" or "Who owns this component?", that's a signal to add the missing context: a skill for the first, and a Catalog relationship for the second.
After incidents
The most valuable learning comes from real incidents, and Autoheal captures it automatically. When an incident is resolved, it records a memory of what happened, the root cause, how it was found, and how it was resolved, then recalls it the next time a similar incident occurs. See Agent Context for the memory lifecycle.
A captured memory holds the kind of knowledge shown below. Durable, repeatable procedures are worth promoting into an authored skill.
# Memory: Payment Timeouts During Batch Processing
## What Happened
On Jan 15, 2024, payment latency spiked to 2s+ every day at 2pm PST.
## Root Cause
The nightly batch job (which actually runs at 2pm PST due to timezone confusion)
was executing large database queries without connection limits, exhausting the
connection pool for the payments-api.
## How We Found It
1. Noticed pattern only occurred on weekdays at same time
2. Correlated with batch job schedule in Kubernetes CronJobs
3. Found connection pool metrics showed saturation during batch runs
## Resolution
- Added connection pooling limits to batch job
- Separated batch job to use read replica
- Added alert for connection pool saturation
## Prevention
- New alert: `postgresql.connections.active > 80%` triggers warning
- Skill updated to check batch job schedule for time-correlated issues
The feedback loop
An agent loads relevant ECG content and queries your integrations.
The agent asks questions or makes assumptions that could be documented.
Your team captures what worked, what was missing, and what to check next time.
You add or refine skills and Catalog entries; Autoheal captures memories automatically.
Agents work from the improved graph, and investigations get faster.
Get Started
See the services, teams, and people already imported from your integrations.
Author SkillsWrite your first architecture, alert, and integration skills.
Connect IntegrationsMost of the Catalog populates itself once your tools are connected.
Self-Improving AgentsHow memories and skills accumulate on their own.