Docs

Spendsaw docs

Spendsaw for AWS finds idle resources, prices them, and fixes them through a Slack approval or a Terraform pull request. These pages describe what the code does today.

Where to start

You want toRead
See your own waste in ten minutes, free, with nothing hostedQuickstart: free MCP server
Give Spendsaw scoped access to an accountConnect an AWS account
Understand a finding and where its dollar figure comes fromFindings and cost sources
Know what can run, and who has to approve itRisk tiers and approvals
Fix Terraform-managed resources at the sourceTerraform pull requests
Get the weekly digest and approve from SlackSlack app
Pull costs, findings and savings into your own toolsAPI

What runs today

Spendsaw is pre-launch. These three labels are used across the site, and each page says which one applies to it.

  • Design partnersThe hosted service runs scheduled scans and a read API: GET /v1/findings, GET /v1/findings/{id} and GET /v1/savings. Findings carry list prices. There is no sign-up and no web console; we create each tenant by hand, by invitation. Write to hello@spendsaw.com.
  • Built, not hostedSlack approve and snooze, spike alerts, Terraform pull requests, the model's explanations, billed cost and verified savings from the Cost and Usage Report, the white-label monthly report and billing. These run in the self-hosted application and are tested against mocked AWS. The hosted service does not have them yet, and remediation has never run against a live AWS account. The hosted weekly Slack digest is deployed and has not posted, because it needs the Slack app.
  • Not yet publishedThe spendsaw-mcp package is not on PyPI, the source repository is not public, and there is no public Slack app or GitHub App. Until the repository is public, the self-hosted instructions in these docs describe how the code works, not something you can install.

How far each part has been proven is under status on the trust page.

How the pieces fit

  1. A read-only role scans your accounts for more than 25 resource types.
  2. Each result becomes a typed finding with a monthly cost and the source of that number.
  3. Ownership detection decides the route: Terraform-owned resources get a pull request, click-ops resources get a reviewed CLI command, and anything unknown stays a recommendation.
  4. A named person approves. Low and medium risk actions can then run under a separate write role. High risk never runs.
  5. Each cut is recorded in a savings ledger and compared with the bill in later months.

Names you will see: the roles and some settings still use the internal name, CostAgent.