Solo Founder OS agent #11 — monthly bill audit across Vercel / Anthropic / Supabase / OpenPanel / HyperDX. Flags underused SaaS + spend spikes.
Project description
cost-audit-agent
English | 中文
Solo Founder OS agent #11 — monthly bill audit across the SaaS stack indie founders use. Flags underused subscriptions, spend spikes, and specific waste recommendations with estimated dollar savings.
Built by Alex Ji. Born from this thought:
I'm subscribed to 14 SaaS tools. I have no idea which I actually use enough to justify. The 2nd of every month I should know exactly what's worth keeping.
What it does
Pulls month-to-date usage + spend from each provider, runs heuristics, outputs a markdown report with specific dollar-tagged recommendations:
## 🔍 Waste findings — potential savings: $42.00/mo
- ⚠️ **[vercel]** Vercel Pro underused (~$20.00/mo)
- Only 3 deployment(s) this month on a $20.00/mo Pro plan. If you can wait 45s
longer per build, the Hobby plan is free.
- 💡 **[anthropic]** Sonnet-heavy usage — consider Haiku for routine tasks (~$22.00/mo)
- 73 Sonnet 4.6 calls ($33.40) vs only 12 Haiku calls. For diff review, summary,
classification — Haiku is 3× cheaper with comparable quality.
Install
git clone https://github.com/alex-jb/cost-audit-agent.git
cd cost-audit-agent
pip install -e .
cp .env.example .env # fill in VERCEL_TOKEN etc.
Usage
# One-shot report to stdout
cost-audit-agent
# Write to your Obsidian vault on the 2nd of each month (cron-friendly)
cost-audit-agent --out ~/Documents/Obsidian/.../cost-$(date +%Y-%m).md
# Limit to one provider
cost-audit-agent --provider vercel
Providers (v0.1)
| Provider | What it reads | Auth |
|---|---|---|
| vercel | deployments + build-minute estimate + Pro-plan baseline | VERCEL_TOKEN |
| anthropic | local agent usage logs (~/.build-quality-agent/usage.jsonl, ~/.funnel-analytics-agent/usage.jsonl); org-wide if admin key provided |
optional ANTHROPIC_ADMIN_KEY + ANTHROPIC_ORG_ID |
Why local-logs fallback for Anthropic
Anthropic's organization billing API requires an admin-scoped key, which most indie founders don't bother creating. But build-quality-agent and funnel-analytics-agent both write per-call usage to ~/.<agent>/usage.jsonl. For a solo founder running 2-3 agents, those logs cover ~95% of monthly Anthropic spend. We aggregate them by month with the published Haiku/Sonnet/Opus prices.
Roadmap
- v0.1 — Vercel + Anthropic providers · markdown report · waste heuristics · 14 tests
- v0.3 — OpenPanel, HyperDX, Supabase, GitHub Actions providers
- v0.4 — MCP server: query monthly spend + top savings from Claude Desktop
- v0.5 — 3-month trailing baseline · spike detection
- v0.6 — Claude-summarized executive narrative at top of report
- v0.7 — Auto-cancel button (one-click webhook to provider's cancel endpoint when finding savings > $10/mo, gated by HITL like vc-outreach)
MCP server (Claude Desktop / Cursor / Zed)
Ask your AI assistant "what's my biggest waste this month?" and let it call the auditor.
pip install 'cost-audit-agent[mcp]'
Then in ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"cost-audit": {
"command": "cost-audit-mcp",
"env": {
"VERCEL_TOKEN": "...",
"VERCEL_PLAN_USD": "20",
"ANTHROPIC_ADMIN_KEY": "...",
"ANTHROPIC_ORG_ID": "...",
"OPENPANEL_CLIENT_ID": "...",
"OPENPANEL_CLIENT_SECRET": "...",
"HYPERDX_API_KEY": "...",
"SUPABASE_PERSONAL_ACCESS_TOKEN": "...",
"SUPABASE_PROJECT_REF": "...",
"GITHUB_TOKEN": "...",
"GITHUB_REPO": "alex-jb/vibex"
}
}
}
}
Tools:
get_monthly_report()— full markdown audit, all providersget_provider(name)— one provider's spend + waste findingstop_savings(n=5)— top N findings by estimated $/mo, sorted
License
MIT.
🧩 Part of the Solo Founder OS stack
A growing collection of MIT-licensed agents that share solo-founder-os as their base — cron, eval, reflexion, AnthropicClient, HITL queue, notifiers. Each agent is independently useful; together they cover the full one-person company workflow.
🌐 The whole stack is live in production at vibexforge.com.
| Agent | What it does |
|---|---|
| solo-founder-os | The shared base lib (cron · eval · reflexion · skill library · DGM-lite). Every other agent depends on it. |
| build-quality-agent | Pre-push Claude diff reviewer + local build runner — catches CI-killing changes before they ship. |
| customer-discovery-agent | Reddit pain-point scraper + Claude clustering for product validation. |
| funnel-analytics-agent | Daily founder brief + real-time PH-day alerts across 9 sources. |
| orallexa-marketing-agent | AI marketing agent — submit project once, get platform-native posts for X / Reddit / HN / Dev.to / 小红书 + 7 more. Powers vibexforge.com. |
| vc-outreach-agent | Cold email drafter — investors (vc mode) or paying customers (customer mode, merged from customer-outreach in v0.9.0). HITL queue + SMTP sender. |
| bilingual-content-sync-agent | EN ⇄ 中文 i18n diff + Claude translate + HITL apply. Batch API path @ 50% off. |
| customer-support-agent | Triage user messages → auto-draft replies → HITL queue. Closes the L5 customer-support layer. |
| payments-agent | Overdue-invoice reminder drafter. Stripe-shaped types + MockProvider fallback + hard money-safety prompt rules. |
Each agent's own row is omitted from its README. Install whichever solve real problems for you — pip install <agent-name>.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cost_audit_agent-0.4.0.tar.gz.
File metadata
- Download URL: cost_audit_agent-0.4.0.tar.gz
- Upload date:
- Size: 26.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9f23bfda8bf2922cae665493f754efadfb3c4dbaf0701f341ab1fb0cc019bc10
|
|
| MD5 |
e8f432db9e401c972a2e230281399d42
|
|
| BLAKE2b-256 |
03f10a1964c31f6f6cdf605b2a4d5b8fa2796f04dd647afd0de85fd2ae680f32
|
Provenance
The following attestation bundles were made for cost_audit_agent-0.4.0.tar.gz:
Publisher:
release.yml on alex-jb/cost-audit-agent
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cost_audit_agent-0.4.0.tar.gz -
Subject digest:
9f23bfda8bf2922cae665493f754efadfb3c4dbaf0701f341ab1fb0cc019bc10 - Sigstore transparency entry: 1740615985
- Sigstore integration time:
-
Permalink:
alex-jb/cost-audit-agent@ae75a882fa59afd8db02c35e07c5bce19f2ca432 -
Branch / Tag:
refs/tags/v0.4.0 - Owner: https://github.com/alex-jb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ae75a882fa59afd8db02c35e07c5bce19f2ca432 -
Trigger Event:
push
-
Statement type:
File details
Details for the file cost_audit_agent-0.4.0-py3-none-any.whl.
File metadata
- Download URL: cost_audit_agent-0.4.0-py3-none-any.whl
- Upload date:
- Size: 25.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df4a16dbd8616b0b259749803eccb2610f4f0ab9ba28d39723adec799f9c89d5
|
|
| MD5 |
4dd3d77ee2024b530dcf2ae1dd98412d
|
|
| BLAKE2b-256 |
0dc5be3e2fbd50e21678a9d0ce621165e883d5f3ede392bef3ec58f26c908366
|
Provenance
The following attestation bundles were made for cost_audit_agent-0.4.0-py3-none-any.whl:
Publisher:
release.yml on alex-jb/cost-audit-agent
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cost_audit_agent-0.4.0-py3-none-any.whl -
Subject digest:
df4a16dbd8616b0b259749803eccb2610f4f0ab9ba28d39723adec799f9c89d5 - Sigstore transparency entry: 1740616018
- Sigstore integration time:
-
Permalink:
alex-jb/cost-audit-agent@ae75a882fa59afd8db02c35e07c5bce19f2ca432 -
Branch / Tag:
refs/tags/v0.4.0 - Owner: https://github.com/alex-jb
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ae75a882fa59afd8db02c35e07c5bce19f2ca432 -
Trigger Event:
push
-
Statement type: