Skip to main content

Lightweight, high-performance FinOps toolkit for AWS

Project description

🦈 Remora-Fin: High-Performance AWS FinOps CLI

Remora-Fin is a lightweight, high-performance FinOps toolkit for AWS. Built with Polars and Textual, it attaches to your AWS environment to analyze spending, detect anomalies, and export professional-grade reports.


🚀 Key Features

  • 📈 Vector Graphics: Native PDF visualizations (Bars & Lines) with zero external dependencies.
  • 📂 High-Speed Analysis: Powered by Polars for near-instant processing of large billing datasets.
  • 🔍 Anomaly Intelligence: Identify unexpected cost spikes using AWS Cost Explorer algorithms.
  • 🔮 Predictive Analysis: Integrated spending forecasts to avoid end-of-month surprises.
  • 🖥️ Terminal UI: Interactive dashboard (TUI) for real-time cost monitoring.
  • 🔒 Privacy First: All data processing happens locally on your machine. Remora-Fin never sends your billing data to external servers.

📦 Installation

Install Remora-Fin using pip or uv:

# Using uv (Recommended)
uv tool install remora-fin

# Using pip
pip install remora-fin

🛠️ Commands & Usage

📊 report

Generate comprehensive cost and usage reports.

Argument Shortcut Type / Choices Default Description
--type -t breakdown, trend, account breakdown Report type.
--format -f pdf, table, json, csv, parquet, markdown pdf Output format.
--days -d int 30 Lookback period in days.
--start YYYY-MM-DD Start date.
--end YYYY-MM-DD End date.
--metric UnblendedCost, BlendedCost, NetUnblendedCost, AmortizedCost, UsageQuantity UnblendedCost Cost metric.
--group-by SERVICE, LINKED_ACCOUNT, REGION, USAGE_TYPE Group results by dimension.
--service -s string Filter by AWS service.
--output -o path Output file path.
--profile -p string AWS profile name.
--region -r string AWS region.
# Generate a monthly breakdown in PDF for the last 30 days
remora-fin report --type breakdown --format pdf --output monthly_report.pdf

# Get a CSV report filtered by EC2 service
remora-fin report --type account --service EC2 --format csv

🔍 anomalies

Detect and display AWS cost anomalies using ML-based detection.

Argument Shortcut Type / Choices Default Description
--days -d int 30 Lookback period (max 90).
--start YYYY-MM-DD Start date.
--end YYYY-MM-DD End date.
--severity low, medium, high, critical Filter by severity.
--monitor-arn string Filter by specific monitor ARN.
--detail flag Show detailed anomaly list.
--json flag Output as JSON.
--profile -p string AWS profile name.
--region -r string AWS region.
# Detect anomalies in the last 60 days
remora-fin anomalies --days 60 --severity high

🔮 forecast

Predict future AWS costs using ML-based forecasting.

Argument Shortcut Type / Choices Default Description
--days -d int 30 Days to forecast (max 365).
--start YYYY-MM-DD Forecast start date.
--end YYYY-MM-DD End date.
--metric UnblendedCost, BlendedCost, NetUnblendedCost, AmortizedCost, UsageQuantity UnblendedCost Metric to forecast.
--granularity DAILY, MONTHLY DAILY Forecast granularity.
--group-by-type DIMENSION, TAG, COST_CATEGORY Group forecast by type.
--group-by-key SERVICE, LINKED_ACCOUNT, REGION, USAGE_TYPE, INSTANCE_TYPE, PLATFORM Group forecast by key.
--scenarios flag Show what-if scenario analysis.
--json flag Output as JSON.
--profile -p string AWS profile name.
--region -r string AWS region.
# Forecast next 30 days of spend
remora-fin forecast --days 30 --scenarios

🖥️ dashboard

Launch the interactive Terminal User Interface.

Argument Shortcut Type / Choices Default Description
--days -d int Default period in days.
--theme dark, light UI theme.
--profile -p string AWS profile name.
--region -r string AWS region.
remora-fin dashboard --days 60 --theme dark

🔐 login

Configure and test AWS credentials.

Argument Shortcut Type / Choices Default Description
--profile -p string default AWS profile name.
--region -r string AWS region.
--test -t flag Test existing credentials.
--configure -c flag Interactive configuration.
# Configure interactively
remora-fin login --configure

# Test existing credentials
remora-fin login --test

👤 profile

View current remora-fin configuration and AWS session identity.

remora-fin profile

🔐 IAM Permissions

Remora-Fin requires read-only access to AWS Cost Explorer and Organizations. Ensure your IAM identity has the following permissions:

Action Purpose
ce:GetCostAndUsage Cost reports and trends.
ce:GetAnomalies Cost spike detection and monitor access.
ce:GetCostForecast Native spend projections.
sts:GetCallerIdentity Current account and user identification.
organizations:ListAccounts Multi-account environment support.

🌍 Multi-Cloud Support (Coming Soon)

We are planning to expand Remora-Fin to support Azure and GCP. See our Multi-Cloud Roadmap for more details.


🤝 Contributing

Contributions are welcome!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📝 License

Distributed under the MIT License. See LICENSE for more information.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

remora_fin-1.0.2.tar.gz (60.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

remora_fin-1.0.2-py3-none-any.whl (91.0 kB view details)

Uploaded Python 3

File details

Details for the file remora_fin-1.0.2.tar.gz.

File metadata

  • Download URL: remora_fin-1.0.2.tar.gz
  • Upload date:
  • Size: 60.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.15

File hashes

Hashes for remora_fin-1.0.2.tar.gz
Algorithm Hash digest
SHA256 378e8f862fb0699111915b865799313edec25eda36041f70d35f0a9cc8fe8c1d
MD5 8c8d7179db5665e757e9048314d90dda
BLAKE2b-256 cb6945d0c6f3bd8cc5f1c2fa118784959d28bd987dbc56a87cd6d61225cff50c

See more details on using hashes here.

File details

Details for the file remora_fin-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: remora_fin-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 91.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.15

File hashes

Hashes for remora_fin-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0e0e882dfdb52df4727451e2b4ef8e78032f3c5d17a788823031cffd33cff5a3
MD5 4fd2dbc3b9300a535f849ff912764974
BLAKE2b-256 398c8d0b022720faf354378c0ca5bfcbc2588c0ecb54a501192da5ff7641e61b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page