Insights

Know what breaks before you apply

A plan lists what you changed. Stategraph keeps state as a dependency graph in PostgreSQL, so every dependent, every resource, and every change is one query away, from the CLI, the console, or the API.

Blast radius Change timeline CLI, console, and API

What you can ask

Real output from real states

Blast radius

Every dependent, ranked, before you apply

Terraform shows what changes, not what it breaks. Stategraph walks the dependency graph and lists every dependent by distance, consumers in other states and remote-state references included.

How blast radius works →
stategraph · blast-radius
❯ stategraph blast-radius \ "module.scrum.data.google_compute_network.shared_network_dev" DIST RESOURCE 0 module.scrum.data.google_compute_network.shared_network_dev 1 module.scrum.google_redis_instance.agent_sandbox 1 module.scrum.google_redis_instance.memorystore_jobs 1 module.scrum.google_memcache_instance.memorystore 1 module.scrum.google_redis_instance.memorystore_v2

Real output. distance 0 = the changed resource · distance 1 = directly affected dependents

Query

One query across every state

A state file is JSON you grep one workspace at a time. Stategraph stores every resource, attribute, and dependency edge in PostgreSQL, so one SELECT spans every state and workspace.

SQL inventory →
stategraph · sql
❯ stategraph sql schema resources(type,name,provider,module,…) instances(address,attributes,dependencies,…) states(name,workspace,created_at,…) providers cost_snapshots ❯ stategraph query "SELECT type, COUNT(*) FROM resources GROUP BY type ORDER BY COUNT(*) DESC LIMIT 5" type count kubernetes_role_binding 586 kubernetes_manifest 382 null_resource 317 kubernetes_service 175 google_kms_key_ring 166 ❯ stategraph query "SELECT COUNT(*) FROM instances" count 7190

Real output captured from a live Stategraph instance.

Change timeline

What changed, when, and who

A state file is one overwritten snapshot with no history. Every plan and apply, from CI, a laptop, or an AI agent, lands in one append-only transaction log attributed to a user.

How the audit timeline works →
stategraph · tx
❯ stategraph tx list --tenant 7b2e1f44-… { "results": [ { "id": "102881bb-686b-49a0-a0ff-fce0ab3050ea", "created_at": "2026-06-08T19:35:57Z", "created_by": "f6eca568-3097-442c-bfe0-6b3593407feb", "state": "open", "params": {}, "tags": {} }, { "id": "…", "created_at": "2026-06-08T19:35:44Z", "completed_at": "2026-06-08T19:35:44Z", "created_by": "f6eca568-…", "state": "committed" } ] } ❯ stategraph tx logs list --tx 102881bb-… { "results": [ { "action": "state_set", "object_type": "instance", "state_id": "a3f1c0d2-…", "user_id": "f6eca568-…", "created_at": "2026-06-08T19:35:57Z" }, { "action": "hcl_set", "object_type": "resource", "state_id": "a3f1c0d2-…", "user_id": "f6eca568-…", "created_at": "2026-06-08T19:35:57Z" } ] }

every apply · an immutable transaction · attributed to a user, queryable forever

API

The same answers over HTTP

Search and SQL are console features. Every insight Stategraph surfaces is also an HTTP endpoint, for internal tools, dashboards, and automations.

Query docs →
HTTP API
# Search resources in a module GET /api/v1/states/$STATE_ID/instances?q=module:api-prod Authorization: Bearer $STATEGRAPH_API_KEY # Filter by type GET /api/v1/states/$STATE_ID/instances?q=type:aws_instance # The same SQL, as JSON GET /api/v1/mql?q=SELECT…

The CLI, the API, and the graph explorer in the console read one graph.

In the console

The same graph, clickable

Global search

Field-scoped search across every state and workspace. Filter by type, module, or address.

Graph explorer

Click through the dependency graph and see a resource's blast radius without leaving the console. Graph explorer docs →

Audit trail as tables

Transactions and their logs are SQL tables. Join them against resources, states, and users to answer "what touched this resource last week?"

Understand Your Infrastructure

Search resources, explore dependencies, and track every change from one interface.

Get started Read the docs