Your scanner finds problems.
We fix them — at the agent’s fingertips.
LightStrike turns a source estate into a persistent, typed, queryable intelligence graph — then serves it to humans and AI agents alike. Estate-aware, prioritized, and governed — across every language, on any platform, with any model.
Not a smarter scanner. A standing graph.
The defensible asset isn’t a smarter analysis pass — that’s swappable. It’s the standing, cross-repo typed dependency graph with pre-computed augmentation that accumulates over time and gets cheaper to query the more it knows.
Persistent typed graph
A cross-repo dependency graph that accumulates over time — not re-derived every session, the way a stateless scanner must.
Pre-computed augmentation
Security, dependencies, complexity and summaries are stored once over the graph. Reads are cheap; agents don’t burn tokens re-deriving structure.
Estate prioritization
Findings ranked by severity × blast radius across the whole estate, so leaders get the fix order — not just a finding pile.
Governance & conformance
Policy injection, audit trails, and one shared view for developers, leaders, and agents — with accuracy recorded, not asserted.
Served to humans and agents alike.
The CLI, the MCP server, the dashboard, and repo-local artifacts are each a thin reader of the same Postgres — so they agree by construction.
CLI
Terminal · CI
Scan summary and PR / pipeline gate. Deterministic floor runs with no API key.
Dashboard
Humans · leaders
Estate health, trends, risk, and an interactive blast-radius graph.
MCP server
AI agents
Claude Code / Cursor / Copilot query the live graph instead of re-reading the repo.
.lightstrike/
Point of work
Repo-local graph + SARIF findings, zero-network — the tip of the iceberg at the agent’s side.
Parse first. Enrich second. Never invent.
A deterministic Tree-sitter parse builds the typed graph — ground truth. Augmentation only enriches nodes and edges the parser already found, so a finding always points at code that exists.
Parse to a typed graph
A deterministic Tree-sitter pass — no model, no API key. The ground-truth floor everything else is built on.
2.2s · to parse a large estate to a typed graph
Augment incrementally
Unchanged code is never re-analyzed, so steady-state cost scales with the code changed — not the code size. Real-model analysis stays cheap to repeat in CI and across large estates.
0 · model calls to re-scan unchanged code
Prioritize across the estate
Severity × blast radius, computed at read time over the stored graph — the ordered fix-list, not a finding pile. No re-scan, no triage meeting.
~90ms · to rank every finding across the estate
See the whole estate, prioritized.
Walk the same story we show design partners — what it is, why it’s defensible, and exactly where it stands today.