Releases: bhuvan-raj/TerraLens
Release list
v0.2.0
v0.2.0 — AI Capabilities
✦ AI HCL Scaffolding
Click AI Scaffold, describe what you want in plain English ("Create an S3 bucket with versioning"), and get valid Terraform code generated directly into an editable TUI text area — no browser, no copy-paste.
🩺 Context-Aware Error Explanations
When a terraform plan or apply fails, TerraLens now captures the raw terminal logs automatically. Click Explain Error and an AI analyzes the failure, explains what broke, and shows the HCL fix in a dedicated markdown panel.
🔌 Bring Your Own Model
Powered by an async Python AI engine. Plug in an OpenRouter API key (free models like Gemma 2 supported) or point the base URL at a local Ollama instance for complete state-file privacy — your .tfstate never leaves your machine.
Full changelog: https://bhuvan-raj.github.io/TerraLens/#changelog
v0.1.5
v0.1.4
v0.1.4 — Infrastructure Blueprints 🏗️
This release introduces the most significant feature addition since launch — Infrastructure Blueprints, a guided wizard that generates complete, production-ready Terraform configurations with multiple interconnected resources in a single file.
What's New
🏗️ Infrastructure Blueprints
The ➕ Add Resource button now offers two modes:
- Build from Blueprint — generate a complete multi-resource infrastructure stack
- Single Resource — existing flow to add one resource from the 334-resource AWS catalog
8 built-in blueprints available:
| Blueprint | Resources Generated |
|---|---|
| 🌐 Public Web Server | VPC, public subnet, IGW, route table, security group (HTTP/SSH), EC2 |
| 🔒 Public + Private with NAT | VPC, public + private subnets, IGW, EIP, NAT Gateway, bastion EC2, private app EC2 |
| ⚖️ Load Balanced Web Application | VPC, 4 subnets, NAT, ALB, target group, launch template, Auto Scaling Group |
| 🏛️ Three-Tier Architecture | VPC, 6 subnets (public/app/db), NAT, ALB, 2× EC2 app servers, RDS multi-AZ |
| ☁️ Static Website Hosting | S3, CloudFront, OAI, ACM certificate, Route53 zone + A/CNAME records |
| ⚡ Serverless API | IAM role, Lambda, API Gateway v2, DynamoDB, S3 assets bucket |
| ☸️ EKS Kubernetes Cluster | VPC, 4 subnets with K8s tags, NAT, cluster + node IAM roles, EKS cluster, managed node group |
| 🔑 Lambda + IAM Role | IAM execution role, basic policy attachment, Lambda function |
Every blueprint generates fully connected HCL — all resources reference each other using Terraform expressions (aws_vpc.main.id, aws_subnet.main_public.id) with no hardcoded IDs.
3-step wizard flow:
- Pick a blueprint
- Fill in configuration fields (pre-filled with sensible defaults)
- Preview the generated HCL, edit the filename, then choose Write File or Write & Apply
Code Refactor
This release also ships the modular refactor of the codebase:
state.py— app config, sample state,load_state(),format_value()catalog.py— AWS resource catalog (334 resources), HCL templates, provider listblueprints.py— all 8 blueprint definitions and HCL renderercli.py— UI only, imports from the three modules above
Installation
# pip pip install TerraLens==0.1.4pipx
pipx install TerraLens
Binary — Linux
curl -L https://github.com/bhuvan-raj/TerraLens/releases/download/v0.1.4/insight-tf-linux -o terralens
chmod +x terralens
./terralens
Upgrade from v0.1.3
pip install --upgrade TerraLensor
pipx upgrade TerraLens
v0.1.3
v0.1.3 — Stability Fix 🔧
This release resolves a critical startup crash that prevented the application from launching in all installation methods.
Bug Fixes
Fixed duplicate main() function causing startup crash
The cli.py entry point contained two conflicting main() functions. The first one — placed at the top of the file — called InsightTFApp() which was never defined, causing an immediate NameError on launch. The correct main() at the bottom of the file (which calls the actual InsightTF app with state file support) was never reached.
Removed stale from insight_tf.app import InsightTFApp import
A leftover import from an earlier refactoring attempt was pulling in a non-existent app.py module, causing ModuleNotFoundError on startup for both the pip-installed package and the pre-built binaries.
Rebuilt binaries now launch correctly on all platforms
Both the Linux and Windows binaries have been rebuilt with the fixed entry point. The application now correctly loads terraform.tfstate from the current working directory and launches the full dashboard on startup.
Installation
# pip
pip install TerraLens==0.1.3
# pipx
pipx install TerraLens
# Binary — Linux
curl -L https://github.com/bhuvan-raj/TerraLens/releases/download/v0.1.3/insight-tf-linux -o terralens
chmod +x terralens
./terralensUpgrade from v0.1.2
pip install --upgrade TerraLens
# or
pipx upgrade TerraLensv0.1.2
v0.1.2
What's included
📊 Overview Tab
High-level snapshot of your infrastructure — Terraform version, state serial, total resource count, provider count, and a full resource summary table.
⚙️ Manage Tab
- Resource Tree — all managed resources grouped by type; click any leaf to inspect its full attribute map
- Plan — streams real
terraform planoutput line-by-line into the terminal - Apply Now — runs
terraform apply -auto-approveand auto-reloads state on success - Cost Estimate — Infracost-powered breakdown with per-resource monthly costs and totals
- Drift Detection — runs
terraform plan -refresh-onlyand reports exactly which resources have drifted and how - Add Resource — 3-step wizard: pick provider → browse 334 AWS resources across 20 categories → configure fields and preview generated HCL → write file or write & apply
- Destroy — targeted destroy with a confirmation modal before execution
- State Reload — press
rat any time to reload state from disk
Installation
Binary (no Python required):
# Linux
curl -L https://github.com/bhuvan-raj/Insight-Q/releases/latest/download/insight-tf-ubuntu-latest -o terralens
chmod +x terralens
./terralensPyPI:
pip install insight-tf
terralensSupported platforms
- Linux (Ubuntu, Arch, Fedora, and most glibc-based distros)
- Windows
Known limitations
- Azure and GCP resource catalogs are not yet available (coming in a future release)
- macOS binary not included in this release
- Requires
python setup.pyto be run once for Infracost authentication
What's next
- macOS binary support
- Azure and GCP resource catalogs
- Multi-workspace support
terraform outputviewer- Remote state backend selector
v0.1.1
updated the app version pyproject to v0.1.1