Architecture is the first decision.
Everything else follows from it.
Engineering tools haven't kept pace with what AI now demands of them.
Dashboards, logs, and alerts were built for humans reading screens. They don't carry a model of the system. They don't survive a question an agent might ask.
NEAT keeps a live semantic architecture of your whole stack — code, infrastructure, and runtime — and lets you query it, write policies against it, generate accurate IaC, and run agents inside it.
One architecture. Everything in it.
What this looks like
(now).
Most engineering tools start with the change. NEAT starts with the architecture. One command builds a live semantic model of your code, your infrastructure, and your runtime traffic. What every service owns. What it calls. What calls it. What breaks when it fails. Before you ship the next thing, you can see the thing you have.
Most systems only see failure after it happens. NEAT makes blast radius a question the architecture answers. get_blast_radius() walks the live edges and returns everything downstream of a given node, scored by cascaded confidence. Run it before a deploy. Run it before a dependency upgrade. Run it before you let an agent touch a service. The architecture already knows what’s at risk.
Code says one thing. Production does another. NEAT models both. Every edge carries provenance: EXTRACTED from your source, OBSERVED from OpenTelemetry spans, INFERRED where coverage has gaps, STALE when the runtime stops speaking. When the two streams disagree, that’s a divergence, and get_divergences() lists them ordered by impact. The architecture you declared and the system you actually shipped, in one model.
An agent that reads raw files is guessing. An agent against a live semantic architecture knows. NEAT exposes the architecture through MCP, with tools spanning root cause, blast radius, dependencies, divergences, incidents, policies, and semantic search. The architecture refreshes on every file save and every span ingest, so autonomous remediation, policy checks, and code generation work from ground truth.
What we're
building.
Built from static code analysis and live runtime telemetry. Not a diagram or dashboard, but every service, database, data flow, and dependency accounted for in one queryable object.
The CLI and MCP expose the architecture to agents, that get tools to do everything NEAT offers. No more asking AI to guess or infer architecture and production from raw files.
A query and policy language for the architecture. Traversals, assertions, and reactive rules in one syntax — built for the NEAT runtime, not bolted onto someone else’s.
Every production error linked to the nodes that caused it, with the full execution path attached. Replay a failure in isolation and test the fix before it ships.