I’m a Cloud Architect, and I built aws-doctor because I found myself constantly running the same manual checks across different AWS accounts to find "zombie" resources. While AWS Trusted Advisor exists, the best checks are often locked behind paid Business/Enterprise support plans, and the AWS Console can be slow when you just want a quick "health check."
What it does: It’s a TUI (Terminal User Interface) that acts as a proactive checkup for your account.
Waste Detection: Scans for stopped instances (>30 days), unattached EBS volumes, unassociated Elastic IPs, and expiring Reserved Instances.
Cost Diagnosis: Compares your current month-to-date costs against the exact same period last month (e.g., Jan 1–15 vs. Feb 1–15) to spot spending velocity issues.
Trends: Visualizes cost history over the last 6 months.
The Tech Stack:
Written in Go (1.24).
Uses AWS SDK v2.
UI built with Charm's Bubbletea and Lipgloss (for the tables/styling).
It’s completely open-source and runs locally on your machine (using your standard ~/.aws/credentials).
I’d love to hear your feedback on the code structure or suggestions for other "waste patterns" I should add to the detection logic.
My AWS cost optimiser is to use a hosting provider instead of AWS.
I was thinking of building something like this just a couple of days ago. Looks awesome! Will definitely try it out
Hi HN,
I’m a Cloud Architect, and I built aws-doctor because I found myself constantly running the same manual checks across different AWS accounts to find "zombie" resources. While AWS Trusted Advisor exists, the best checks are often locked behind paid Business/Enterprise support plans, and the AWS Console can be slow when you just want a quick "health check."
What it does: It’s a TUI (Terminal User Interface) that acts as a proactive checkup for your account.
Waste Detection: Scans for stopped instances (>30 days), unattached EBS volumes, unassociated Elastic IPs, and expiring Reserved Instances.
Cost Diagnosis: Compares your current month-to-date costs against the exact same period last month (e.g., Jan 1–15 vs. Feb 1–15) to spot spending velocity issues.
Trends: Visualizes cost history over the last 6 months.
The Tech Stack:
Written in Go (1.24).
Uses AWS SDK v2.
UI built with Charm's Bubbletea and Lipgloss (for the tables/styling).
It’s completely open-source and runs locally on your machine (using your standard ~/.aws/credentials).
I’d love to hear your feedback on the code structure or suggestions for other "waste patterns" I should add to the detection logic.
Thanks!