Product

Charon: why we built a cloud janitor inside a Linux integrity tool

· ~7 min read · Jamie, Founder, Blackglass

Charon is the cloud-resource hygiene add-on that ships inside the Blackglass console. It scans your DigitalOcean, AWS, and GCP accounts for idle VMs, orphaned volumes, old snapshots, and similar costly junk — and lets you request cleanups through the same approval workflow we use for Linux drift events. People ask, reasonably: why is a cloud waste tool inside a Linux integrity tool?Here’s the thinking.

Both questions live in the same job

The person who runs the Linux fleet is, in 90% of small-to-mid teams, also the person who answers for the cloud bill. They’re the SRE, the platform engineer, the IT director — usually a one- or two-person function in a 30 – 200 person company. Configuration drift and unloved cloud resources are not the same problem, but they sit on the same desk.

Both have the same shape: silent accumulation of state nobody intended. A drift event is a server slowly diverging from the configuration you approved. Cloud waste is a cloud account slowly diverging from the resource list you intended to pay for. Same operator, same calmer-than-the-category alerting model, same evidence-export pattern.

Why we didn’t build it as a separate product

The obvious commercial answer would have been to spin Charon out as its own SKU with its own dashboard. We considered that and rejected it because:

  • It’d duplicate work for the operator. Two dashboards, two auth flows, two sets of webhooks. Nobody wants that for a tool they’ll touch twice a week.
  • The data flows naturally between them.A host that disappears from your fleet should ideally raise “was the cloud volume attached to it cleaned up?” — that’s a Charon question with a Blackglass trigger. Single product, single data graph.
  • It strengthens the upgrade story for Lab. The free tier gets one read-only Charon-linked cloud account. That’s deliberate — the public /tools/cloud-waste-estimator can convert into the real product without an immediate paywall, and Lab users see the dashboard view of their actual cloud resources as proof-of-value.
  • The competitive landscape supports it. Standalone cloud-cost tools (Vantage, CloudHealth, ProsperOps) are excellent at allocation and rightsizing — neither of which Charon does. We’re explicitly the janitor: find waste, request cleanup, move on. The bundle is the moat.

What Charon is — and isn’t — careful about

The hardest design constraint was: never delete the wrong thing. Cloud waste tools that auto-delete inevitably nuke a developer’s test environment that they’d forgotten was important, and once is enough to lose all trust. So Charon is built around explicit human approval, with several safety patterns:

  • Read-only by default. Initial setup grants inventory-read scope only. Live cleanup requires a separate, distinct credential and an explicit per-account opt-in.
  • Tag-based protect lists. Resources tagged protect:true, env:prod, or anything in your custom protect-tag list are excluded at scan time, not at delete time. Suppression is the wrong layer.
  • Idle-score thresholds.Findings below your configured score don’t even surface in the dashboard. The default is conservative enough that “Charon shows me a finding” should already feel meaningful.
  • Cleanup is request-based, not auto. Even with a cleanup credential linked, Charon proposes; the operator approves. The audit log records both the proposal and the approval, with both timestamps.
  • Webhook envelope is versioned. Outbound scan webhooks carry an explicit schema version so consumers can pin to a known payload shape. We versioned this on day one because cloud-cost integrations break in expensive ways.

Why “rough self-reported counts” in the public estimator

The public /tools/cloud-waste-estimator deliberately doesn’t ask for cloud credentials. You enter rough counts (“maybe 20 idle droplets, ~5 TB of orphaned volumes”), pick a per-provider band (low / medium / high cost assumption), and get a monthly waste range. No telemetry, no credentials, no sign-up.

That’s the right shape for the top of the funnel because the prospect we want to reach — the on-call SRE who suspects waste but doesn’t have buy-in to evaluate another tool yet — won’t paste a cloud credential into a marketing landing page from a vendor they don’t know. The estimator gives them a defensible “we’re wasting between $X and $Y per month” number to bring to their boss in 90 seconds. The conversion happens later, after the boss has signed off on a 14-day trial.

This is the same reason /tools/cloud-inventory-diff runs entirely client-side via FileReader — paste two JSON exports, see what changed, nothing leaves the browser. Trust posture matters more than feature parity for a free-tools surface.

What Charon costs — and why

Charon is a $99/month add-on across all paid tiers. Pricing rationale:

  • The cleanups Charon surfaces typically save 10× – 100× the add-on cost in the first month. We don’t want pricing to be the reason a customer doesn’t take the win.
  • $99 reads as “clearly an add-on, not a platform”. We don’t want customers comparing Charon to Vantage at hundreds of dollars per month — they’re different products solving different problems.
  • A flat add-on (rather than a per-cloud-account meter) keeps the pricing page readable and means our incentives line up with the customer’s. We don’t want to benefit when you link a 10th cloud account; you do.

How it sits in the broader product story

Blackglass is fundamentally a tool that watches Linux servers for configuration drift and exports auditor-grade evidence. Charon is the recognition that the same operator has a second, related problem we can solve well in a fraction of the engineering surface — and that bundling them gives both products a stronger reason to exist than either would have alone.

If you want to see Charon in the dashboard, the live demo workspace has a populated Janitor view. Or open the public /tools/cloud-waste-estimator to see the same model on a no-credentials-required pass.

Try Charon (and the rest of Blackglass)

The free Lab tier includes one read-only Charon-linked cloud account. Live cleanups are a $99/mo add-on on any paid tier; 14-day trial covers everything, no card.