Your agents measure their own inference emissions, follow a policy you set, fund verified carbon removal, and leave a public receipt. Not a dashboard. A file.
npx carbon-md init
Four steps, each provable. The measurement belongs to the agents; the policy belongs to the humans.
Every model call is captured and turned into a CO₂e estimate — shown as a range, never a false-precise number.
A carbon.md file sets the contribution target, budget cap, and approval threshold. Agents obey it.
Emissions are matched by verified carbon-removal purchases — monthly, confirm-first. Agents never overspend.
Every retirement gets a public receipt. The badge links to a ledger — not to a vibe.
Think AGENTS.md, but for your agents' carbon. Readable by people, parseable by tools, obeyed by the agents it governs — committed right in your repo.
--- carbon_md: "0.1" policy: contribution_target: 1.10 # match 110% portfolio: removal-weighted monthly_budget_max: { amount: 25, currency: USD } approval_above: { amount: 10, currency: USD } reporting: public_ledger: true --- # Carbon Policy — my-project
Carbon claims are a minefield — and from September 2026, some become illegal in Europe. We built the honesty in as structure, not as tone.
Cloud inference is a black box. The ledger reports a low, a central, and a high — and holds the uncertainty open instead of faking precision.
Nothing here is “carbon neutral.” Emissions are measured, then matched by verified carbon-removal contributions. Receipts are public.
Every contribution links to a real retirement certificate. Cache-read tokens are recorded but excluded — we under-claim rather than inflate.
If your agent already tracks tokens, it already speaks carbon.md — one JSON line per call, or OpenTelemetry straight in.
The first emissions carbon.md ever tracked were the sessions that built it — an agent and a human, leaving a ledger the finished tool then read as its own. It's live, and still counting.
Free and open forever. Standards only work when nobody owns the gate.
npx carbon-md init