Skip to content

Aireceipts

v0.6.0 Feature

This release adds 3 notable features for engineering teams evaluating rollout.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

ai claude-code cli codex cost-tracking cursor
+5 more
developer-tools gemini llm opencode receipts

Summary

AI summary

Updates Internal / CI, SPEC-0073, and SPEC-0072 across a mixed release.

Full changelog

Minor: receipts can now be produced automatically on push, and PR attribution is more
robust. No change to rendered receipt output (goldens byte-identical); both additions are
opt-in / internal.

Added

  • Agent auto-attach (SPEC-0073): a hidden aireceipts hook pre-push subcommand, wired as a
    Claude Code PreToolUse hook via a committed .claude/settings.json, writes and pushes the
    receipt ref (refs/receipts/<slug>) when the coding agent runs a branch push — so a receipt
    is produced with no manual command. It never blocks the push (exits 0 on every path, no
    stdout, bounded by the hook timeout) and only acts on a real origin/current-branch push
    (tokenized detection; skips dry-run/delete/tags/non-origin/repo-retargeting/refs/receipts).
    The adopter kit is now two files — the pr-check workflow (produces nothing on its own)
    plus the .claude/settings.json hook (docs/adopt/, aireceipts integrations).

Fixed

  • Robust PR-receipt attribution (SPEC-0072): a session whose commit SHA was orphaned by
    git commit --amend (or rebase) is now correctly credited by matching its stable
    git patch-id to the branch commit, instead of showing "no branch commit" while an unrelated
    helper takes the credit. Strictly under-crediting — duplicated diffs, empty/merge commits, and
    a diff already directly claimed by another session never produce a match (no fabricated or
    stolen credit, I2). Adds an unanchored-git-write confidence signal that floors the total when
    a real git-write can't be tied to the branch.

Minor: PR receipts gain a self-contained CI path (no external reusable workflow), the
default statusline gets richer, and the samosa tip link leaves the default PR-posted
surfaces (now opt-in). Two deliberate output changes — statusline default and the PR-posted
footer — both called out below.

Added

  • Self-contained pr-check (SPEC-0064 R2–R7): an adopter's own workflow can run
    npx -y aireceipts-cli@latest pr-check in a single job — no reusable-workflow uses:,
    no org Actions-policy gate — to fetch the branch's receipt ref, render + sanitize it, and
    upsert the marked PR comment via GITHUB_TOKEN (no local gh). Hidden command; for trusted
    same-repo/internal PRs (the two-job reusable workflow stays the hardened path for untrusted
    fork PRs). Also fixes the reusable-caller template, which was missing pull-requests: write.

Changed (deliberate output changes)

  • Richer default statusline (SPEC-0071): the default line now carries a burn rate ($/hr),
    context-window %, abbreviated M/B token counts, and an inline 5h reset countdown — e.g.
    [aireceipts] $423 · $80/hr · 501M · ctx 42% · 5h 26% ↺2h13m. Every segment renders from a
    real payload field or a priced ledger value; nothing is estimated.
  • Samosa tip link off by default (SPEC-0070): the buy me a samosa link no longer appears
    on the surfaces aireceipts posts onto a PR (the comment's <details> and the artifact
    footer). Opt back in with --samosa; the standalone tip page and the docs-site footer are
    unchanged.

Internal / CI

  • Incremental mutation testing (SPEC-0069): Stryker runs incrementally on PRs that touch
    the money paths (src/pricing/**, src/pr/**), with a nightly full sweep — the same
    anti-gaming moat at a fraction of the wall-clock. No product code change.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track Aireceipts

Get notified when new releases ship.

Sign up free

About Aireceipts

All releases →

Related context

Earlier breaking changes

  • v0.9.0 `--json` export schema moves to version 2, changing `totalUsd` semantics.
  • v0.7.2 PR-receipt refs now written under `refs/aireceipts/*` instead of `refs/receipts/*`.

Beta — feedback welcome: [email protected]