plan-parse: Code Gutter to Dependency DAG Engineplan-parsev1.0.0
v1.0.0 Released•Zero Telemetry Local Binary

Visual Infrastructure Assurance for Terraform & OpenTofu

Transform dense, thousands-of-lines terminal plan outputs into an interactive, hierarchical DAG. Eliminate cascading destruction, audit transitive blast radius, and inspect 2-tier resource diffs before running apply.

Quickstart Docker Pull
docker pull aatir0docking/plan-parse:latest
DAG ENGINE COREhcl.ast → dag.graph
ONLINE
INPUT:main.tfplan.json
0 telemetry
plan-parse: Code Gutter to Dependency DAG Engine
AST Code→Hierarchical DAG
Downstream MutationsAcyclic Validated
aws_sg.ingress~ update
aws_rds.main± replace
Transitive Blast Radius: Audited0 cascading destroys
Architectural Motivation

Why Traditional Plan Reviews Fail at Scale

Terraform CLI outputs are linear and text-based. In contrast, cloud infrastructures are non-linear, deeply interdependent Directed Acyclic Graphs.

Traditional Terminal Output

  • ✕Thousands of Lines of Dense Text: Critical resource replacements (+/-) are easily overlooked amidst 5,000 lines of scrolling JSON/terminal output.
  • ✕Invisible Blast Radius: Changing a base subnet or security group does not reveal which downstream databases or services will cascade into re-creation.
  • ✕Cognitive Overload: When only 3 out of 250 resources mutate, reviewing the full plan requires manual cognitive filtering of 247 unchanged lines.
  • ✕Outage Vulnerability: Forced resource replacements happen silently during apply, tearing down production databases unexpectedly.

plan-parse Visual Assurance

  • ✓Interactive Cytoscape DAG: Complete hierarchical visualization reflecting the exact dependency graph of your infrastructure.
  • ✓Transitive Blast Radius Traversal: Instant automated BFS traversal flagging direct and indirect casualties with severity metrics.
  • ✓Mutations-Only DAG Contraction: Prunes no-op nodes and synthesizes bridging edges so you focus 100% on actual mutations.
  • ✓100% Privacy & Zero Dependencies: Single zero-dependency Go binary or Docker container; parsing runs entirely client-side in your browser.
Living Infrastructure Pipeline

Dedicated Architectural Deep-Dives

Every core capability of plan-parse is documented with interactive visual viewports, real Terraform plan fixtures, and algorithmic graph contractions.

CHAPTER 01DAG ReductionHotkey: [C]

Collapsed Nodes (Mutations Only)

Deterministic DAG pruning that collapses hundreds of unchanged resources into synthetic bridging edges.

  • 1Collapsed Cluster Pill: Condenses intermediate unchanged clusters into a single pill indicating the exact count of hidden no-op resources.
  • 2Synthetic Transitive Bridging Edge: Computes transitive closure edges so upstream dependency lines between surviving mutating nodes remain mathematically intact.
  • 3Header Toggle & Live Counter: Dedicated workbench toolbar button showing live collapsed counts with hotkey accelerator indicator [C].
collapsed-nodes.hcl • dag.viewport
[C]
[C] Mutations Only: Active18 Hidden~ UPDATEaws_security_group.ingress_rules2 ports modified12Unchanged Nodesmodule.vpc.* (no-op)± REPLACEaws_rds_cluster.primary_dbForces recreationSYNTHETIC BRIDGE
±REPLACE CASCADE
blast-radius.hcl • dag.viewport
[B]
BLAST RADIUS AUDITTarget: aws_subnet.db_primary2 Direct • 5 Transitive± TRIGGERaws_subnet.db_primaryForces recreation: cidr_block± CASCADEaws_db_subnet_group.aurora_subnets− DESTRUCTIONaws_rds_cluster.production_db
CHAPTER 02Risk MitigationHotkey: [B]

Blast Radius Analysis & Subgraph Isolation

Transitive BFS impact graph traversal revealing every resource placed at risk before running apply.

  • 1Blast Radius HUD Pill: On-canvas floating HUD breaking down direct casualties, transitive casualties, and destructive replacements in real time.
  • 2Subgraph Isolation Mode: Dedicated toggle ([B]) that dims or removes all unrelated infrastructure to focus purely on the impacted dependency cascade.
  • 3Depth Filter Stepper: Interactive stepper switching between 1-hop direct dependencies, 2-hop intermediate links, and full transitive closure.
~IN-PLACE UPDATE
CHAPTER 03Precision InspectionHotkey: [Space / D]

2-Tier Progressive IaC Resource Diff

Instant contextual popovers paired with full-bleed side-by-side HCL and attribute matrix diffing.

  • 1Tier 1 Quick Popover: Node-anchored modal displaying change summary badges (+N added, ~N modified, -N removed) and forces replacement warnings.
  • 2Tier 2 Unified HCL Diff: Terminal-accurate syntax highlighted HCL diff with sticky line gutters and colored block additions/removals.
  • 3Side-by-Side (Split) View: Synchronized dual-pane diff contrasting Current State (before) directly against Planned State (after).
resource-diff.hcl • dag.viewport
[Space / D]
main.tf:42•aws_subnet.db_primary
Forces Replacement
- cidr_block = "10.0.1.0/24"Current State
+ cidr_block = "10.0.2.0/24"Planned State
~ availability_zone = "us-east-1a"In-place Update
AST Provenance: Local Workspace1 Added • 1 Removed
+CREATION AUDIT
color-grading.hcl • dag.viewport
[Visual Tokens]
60-30-10 SEMANTIC ACTIONS+ CREATEaws_subnet.new_private_tier~ UPDATEaws_route_table.nat_gateway_route± REPLACEaws_db_subnet_group.primary_cluster− DESTROYaws_nat_gateway.legacy_egress
CHAPTER 04Visual GrammarHotkey: [Visual Tokens]

Color Grading & Visual Grammar

Rigorous 60-30-10 color grammar delivering instant architectural clarity without reading text.

  • 1Semantic Action Tokens: Emerald for Create (+), Sky for Update (~), Rose for Delete (-), Amber for Replace (±), Purple for Read, and Slate for No-op.
  • 2Compound Module Containers: Visual module bounding hulls depicting nested encapsulation and logical grouping boundaries.
  • 3Directional Dependency Edges: High-contrast vector arrows illustrating explicit provider references and implicit dependency hierarchies.
⇲LINEAGE INSPECT
CHAPTER 05Docked InspectorHotkey: []]

Dedicated Resource Panel (Inspector)

Docked right slide-over inspector providing deep attribute diffs, lineage navigation, and raw schema views.

  • 1Resource Address & Copy Header: Full Terraform HCL address with one-click copy icon for instant CLI targeting.
  • 2Attribute Diff View: Real-time before/after property inspection with colorized syntax highlighting and change markers.
  • 3Lineage Navigation Chips: Interactive chips for upstream 'Depends On' and downstream 'Referenced By' that pan the DAG directly to related nodes.
resource-panel.hcl • dag.viewport
[]]
aws_route_table.public
CLI: target copy
Attributes Delta
id = "rtb-04f8b2c"
+ route [cidr: "0.0.0.0/0", gateway: "igw-912"]
vpc_id = "vpc-89a1"
Lineage Arcs
↑ depends_on: [aws_vpc.main]↓ referenced_by: [aws_subnet.pub_1]
↓INGESTION STREAM
workbench-sidebar.hcl • dag.viewport
[[]
↓plan.json ingested successfully
142 resources parsed in 18ms • 0 telemetry network egress
▾module.vpc(18 resources)
├─ aws_subnet.public_1+ create
├─ aws_security_group.ingress~ update
└─ aws_rds_cluster.main± replace
✓ In-Memory Client ParserLocalhost Only
CHAPTER 06Navigation & IntakeHotkey: [[]

Workbench Sidebar & Ingestion Dropzone

Left docked hierarchy tree, real-time fuzzy search, action filtering, and local drag-and-drop plan ingestion.

  • 1Real-Time Resource Search: Instant fuzzy filtering across thousands of resources by address, resource type, or module path.
  • 2Action Filter Pills: One-click toggle pills to isolate specific mutations (Create, Update, Delete, Replace, or All).
  • 3Module Hierarchy Tree: Collapsible nested tree reflecting the exact module hierarchy of your Terraform project.
⌘WORKSTATION CLI
CHAPTER 07Workstation ErgonomicsHotkey: [⌘K / ?]

Power-User Utilities & Workstation Tools

Command palette, retina diagram exports, targeted apply generators, and diagnostic CLI error handling.

  • 1Global Command Palette (⌘K): Keyboard-first switcher to jump to any node, run actions, switch themes, and execute commands.
  • 2High-DPI Diagram Export: Export the full canvas as a Retina 2.5x raster PNG or infinite-zoom vector SVG for PR reviews.
  • 3Targeted Apply Generator: One-click generation of exact `terraform apply -target="..."` commands for isolated deployments.
miscellaneous.hcl • dag.viewport
[⌘K / ?]
⌘Toggle Mutations Only
Toggle Mutations Only[C]
Isolate Blast Radius Subgraph[B]
Export Retina 2.5x Vector SVG[⌘E]
Press [?] for Cheat Sheet⌘K Anywhere
Execution Flow

How to Use plan-parse in 4 Steps

Seamlessly integrate visual assurance into your daily terminal development workflow or CI/CD pipelines.

1

Export Terraform or OpenTofu Plan JSON

Generate the standard JSON representation of your execution plan using the standard CLI tools:

Terminal Export Snippet
# Standard Terraform flow
terraform plan -out=tfplan
terraform show -json tfplan > plan.json

# OpenTofu equivalent
tofu plan -out=tofuplan
tofu show -json tofuplan > plan.json
2

Launch plan-parse via Binary or Docker

Pass your plan file directly to the standalone binary, run via Docker, or drop the file into the web UI:

Launch Options
# Option A: Standalone Binary
./plan-parse -plan plan.json
./plan-parse -plan /path/to/tf_plan.json -addr 0.0.0.0 -port 9000 -collapsed=true -no-browser -no-banner

# Option B: Docker Container (read-only mount)
docker run -it --rm -p 8080:8080 -v $(pwd):/workspace:ro aatir0docking/plan-parse:latest plan.json

# The workbench will automatically open at http://localhost:8080
3

Audit DAG, Isolate Blast Radius, and Review Diffs

Use keyboard accelerators for rapid navigation: press C to collapse unchanged clusters, click any mutating node and press B to isolate the blast radius, and hit D to inspect line-by-line HCL diffs.

4

Safely Apply or Generate Targeted Rollout Commands

Once verified, execute your deployment with absolute confidence. If you need a canary rollout, copy the generated targeted apply syntax:

Targeted Apply Generation
# Safely apply full verified plan
terraform apply tfplan

# Or apply only verified isolated sub-resources
terraform apply -target="module.vpc.aws_subnet.private[0]"
Distribution Channels

Binary Downloads & Docker Image

Zero-dependency standalone executables compiled for all major operating systems, plus official Docker Hub images.

Standalone Pre-Compiled Binaries

v1.0.0

No Node.js, Go, or Python runtime required. Single binary with the visualizer UI pre-embedded:

Linuxamd64 / arm64
Download .tar.gz →
macOSApple Silicon (M1/M2/M3) & Intel
Download .tar.gz →
Windowsx64 (.exe)
Download .zip →

Official Docker Hub Container

Docker Hub

Mount your working directory as read-only (:ro) for complete security isolation:

Docker Run Command
# Run with local plan file mounted read-only
docker run -it --rm \
  -p 8080:8080 \
  -v $(pwd):/workspace:ro \
  aatir0docking/plan-parse:latest plan.json
Security & Air-Gapped Assurance

The container requires zero network egress. The read-only flag guarantees your local files and state cannot be modified.