Receipts banner
shaheershoaib shaheershoaib

Receipts

AI community

Description

Agents need receipts: re-prove an AI fix before you trust it. The Gates (G0-G10) + a Claude Code adapter + CI enforcer + verification memory.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

receipts

[![npm](https://img.shields.io/npm/v/receipts-cli)](https://www.npmjs.com/package/receipts-cli)

**Agents need receipts.**

Your AI coding agent just told you it fixed the bug. Did it?

`receipts` is a verification layer for AI-written code. It does not make your agent faster or more autonomous - the whole industry is already building that. It does the opposite: it **re-proves the agent's claim before you trust it.** An agent can type "Fixed ✅"; it cannot fake the reported symptom still being there when `receipts` re-runs it.

Everyone is shipping gas: faster agents, bigger swarms. This ships brakes.


The problem

An agent fixes a bug, runs the tests, sees green, and closes the ticket: "Fixed." The tests passed. The code looks right. CI is happy. And the bug is still there - because the test exercised the wrong thing, or the fix landed on the wrong surface, or the change painted correctly in dev and broke in prod, or it patched the symptom and not the cause.

Real example this was built from: a "modal is cut off" report was read as a vertical clip. A height cap was written, tested, deployed, and "verified" green - while the real bug was the modal being too *narrow*. The wrong axis shipped. Only a human caught it. Every team using AI to write code is hitting some version of this, daily.

The missing referee is simple to state and hard to enforce: **a fix is not done because the agent says so. It is done when the reported symptom is observably gone on the deployed build.**

The core move: don't trust, re-verify

A "looks fixed" screenshot is not a receipt - an agent can produce one for a bug it never fixed. A *receipt* is the symptom's own acceptance test, re-run against the real build, coming back clean. `receipts` re-runs it. The agent does not get to grade its own homework.

How it works: the Gates

The Gates (`spec/GATES.md`) are the standard a fix must clear. Each one exists because skipping it shipped a wrong or unverified "fix" at le