Skip to main content

assurance

Your AI agent says it's done. Assurance tells you what it didn't check.

uvx assurance audit          # in a project where you've used Claude Code
uvx assurance audit --demo   # or see a report on a bundled sample session

No uvx? Install uv (brew install uv, or curl -LsSf https://astral.sh/uv/install.sh | sh, or pipx install uv), or use pip install assurance and run assurance audit.

Real output on the bundled sample. The agent was asked to fix a rounding bug "and make sure the tests pass", and ended with "All done — the totals are correct now."

Claude Code session demo-8f2 — 13 min in /home/you/my-app
10 tool calls, 3 failed — Bash 6, Edit 2, Grep 1, Read 1

  Looped: 3 rounds of Bash `pytest -q tests/test_invoice.py` failing the same way, with nothing new read
  After the last edit (14:09): no test or check it recognises; 2 unclassified commands ran after it (make lint-fix, python script)
  Not classified: 2 shell commands (make lint-fix, python script), so whether they read, wrote or tested anything is unknown.
  Also in the transcript: 1 assistant turn, 1 user turn, 1 bookkeeping record.
  Not read: 0 lines.

Run it after every session. When Claude finishes without testing its last edit, you're told, and Claude is sent back to run the tests. assurance hook install adds the Stop hook after showing you the change, and assurance hook remove takes it out again. Run that one yourself: in auto mode, Claude Code refuses to let Claude remove the hook, as tampering with an audit.

uvx assurance@latest hook install    # --scope project to share it with everyone on the repository
uvx assurance hook remove

Or as a Claude Code plugin, which also adds /assurance:audit for the whole report in a session:

claude plugin marketplace add i-ops-hq/assurance
claude plugin install assurance@i-ops-hq

Or add it to ~/.claude/settings.json yourself:

{ "hooks": { "Stop": [ { "hooks": [ { "type": "command", "command": "uvx --offline assurance@0.1.6 audit --hook --nudge" } ] } ] } }

Run uvx assurance@0.1.6 --version once first: --offline runs the copy uv already has, so the hook never waits on PyPI.

Every command

command question
assurance audit what did a Claude Code session actually do, and what did it skip?
assurance hook install, remove or check the Stop hook that runs the audit after every turn
assurance diff / assurance check did the work cover what it was supposed to, and what did it miss?
assurance pin did an MCP server change a tool definition after you approved it?
assurance deps what will a pip install or npm install execute, read without executing it?
assurance budget where did an agent run's budget go, and where did it loop going nowhere?
assurance authority may this task proceed for the person who asked?
assurance drift did a failure rate actually shift, or was the week noise?

Nothing here consults a model, opens the network, or reports a check it could not run as a pass.

This package contains no code of its own. It installs assurance-cli, assurance-deps, assurance-budget and assurance-authority, each of which also installs on its own. The MCP server is separate: pip install assurance-mcp.

Source, issues and documentation: https://github.com/i-ops-hq/assurance · Apache-2.0.

Metadata

Release files for assurance 0.1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for assurance 0.1.6
File Size Uploaded
assurance-0.1.6.tar.gz 11.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for assurance 0.1.6
File Interpreter ABI Platform
assurance-0.1.6-py3-none-any.whl Python 3 none any Details

Total release size: 18.6 kB

Release files / assurance-0.1.6.tar.gz

Download URL assurance-0.1.6.tar.gz
Size 11.3 kB
Tags Source
SHA-256 checksum
How to use checksums
1da5134992c84c4cf18e1cc0323498d36a040ccb790af7ca9abd182fbaa9957c
BLAKE2b-256 checksum
How to use checksums
4502721ffc8647c90acfdccfbc4dcb69b4138f4d4f06df1cb33576255fbfa462
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.

Transparency log

Release files / assurance-0.1.6-py3-none-any.whl

Download URL assurance-0.1.6-py3-none-any.whl
Size 7.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
81befcacb61dc2dfed6802505b6b988d93e2131d5325722a004e86c9f2b6870a
BLAKE2b-256 checksum
How to use checksums
1c631349dd5b5af2300988ae3cb74710a3781299cc6655fff43a13646a053424
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.

Transparency log

Release history Release notifications | RSS feed

0.1.17

2 release files

0.1.16

2 release files

0.1.15

2 release files

0.1.14

2 release files

0.1.13

2 release files

0.1.12

2 release files

0.1.11

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

This release

0.1.6 This release

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page