What's New
Multi-Account Support
- Configure multiple AWS accounts, GCP projects, Azure subscriptions, OCI compartments per provider
- All analysis commands accept
--account-idto filter by a specific account - Backward-compatible: old single-account config format auto-migrates
Pattern-Based Waste Detection (12 Rules)
Previously 6 state-only checks. Now 12 rules including pattern analysis over 14-day metrics:
| Rule | Resource Types |
|---|---|
| Idle instance (avg + P95 CPU) | EC2, GCE, VMs, Compute |
| Off-hours idle (weekday vs weekend) | EC2, GCE, VMs, Compute |
| Declining CPU trend | EC2, GCE, VMs, Compute |
| Duration-aware stopped instances | EC2, GCE, VMs, Compute |
| Idle database (connections + CPU) | RDS, CloudSQL, AzureSQL, AutonomousDB |
| Idle load balancer (zero requests) | ELB/ALB, Azure LB, GCP LB, OCI LB |
| Idle NAT Gateway (traffic bytes) | NAT Gateway |
| Idle attached disk (zero IOPS) | EBS |
| Zero-invocation function | Lambda, Cloud Functions, Function Apps |
| Unattached disk | EBS, PD, ManagedDisk, BlockVolume |
| Unused Elastic IP | ElasticIP |
| Stopped database | RDS, CloudSQL, AzureSQL, AutonomousDB |
Resource ID / ARN in Output
top-costnow shows Resource ID/ARN, Service, Region, State columnsfind-wasteshows full Resource ID/ARN + descriptionexplain-billincludes per-resource IDs in fallback output- JSON output includes all fields via
asdict()
Idempotent Data Collection
- Unique indexes on natural keys prevent duplicate rows
INSERT OR REPLACE— safe to runfinops collectrepeatedly- Running collect 10 times = same data as running once
LLM Token Optimization (69% reduction)
- Field projection: strips metadata, tags, cpu_daily_values before sending to LLM
- Anomaly aggregation: 14 daily spikes → 1 grouped entry
- Compact JSON: no indentation
- Smart truncation: drops lowest-priority sections instead of cutting mid-JSON
- Response cap: 2000 → 1024 max_tokens
Other
- Python 3.10+ compatibility (datetime.UTC → timezone.utc)
- CI/CD: GitHub Actions workflow auto-publishes Docker image on release
- Metrics collection for databases, load balancers, NAT gateways, EBS, Lambda, S3
Docker
docker pull mathumathi247/finops-agent:0.5.0
docker pull mathumathi247/finops-agent:latest