Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/MicSm/boffinWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/rules/micsm/boffin/boffin-post-change-audit)<a href="https://agentmods.dev/rules/micsm/boffin/boffin-post-change-audit"><img src="https://agentmods.dev/badge/rules/micsm/boffin/boffin-post-change-audit.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00729 | $0.00729 |
| Opus 5 | $0.00365 | $0.00365 |
| Sonnet 5 | $0.00146 | $0.00146 |
| Haiku 4.5 | $0.00073 | $0.00073 |
Grade A, and why
boffin-post-change-audit scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 35 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Pre-Flight Review and Post-Change Audit
Before presenting code-task results
- Re-read the loaded pack index and all loaded leaf packs; do not rely on memory.
- For a focused change, confirm you stayed within the requested scope and proved the change with a check; the ledger checks below apply to refactor/review tasks.
- For a refactor/review task, confirm the Pass 1 audit ledger lists a row for every in-scope stage; a stage with no row is an incomplete audit, not a clean file.
- Confirm every ledger row is
doneorskip, that eachskipcarries a reason, and that no row recorded astodowas downgraded toskip:clean. - Confirm every fix named in Pass 1 reasoning has its own ledger row; a fix discussed but left unrecorded is an incomplete audit.
- If a change touches ownership, lifecycle, completion semantics, state-machine transitions, concurrent access, or logic currently encoded through flags or sentinels, name the exact invariant from stages S01-S03 it must preserve before editing.
- On user request, render the ledger and the blocking earlier-stage invariants as concise ordered bullets in the user's language.
After any code edit
- MUST verify the edit with an external check (the narrowest test or lint that proves it), not by re-reading your own reasoning or the diff alone.
- MUST review the change as if a different author wrote it: read the final file region, not only the diff, and ask what a fresh reviewer would flag.
- MUST re-read the relevant loaded leaf pack(s) and confirm no
## EXCLUDESpattern was introduced and no earlier-stage (S00-S03) invariant was weakened to satisfy a later-stage (S04-S06) cleanup goal. - MUST NOT silently drop a ledger finding: it ends as
done(with its check) orskip:<reason>. - MUST present the filled ledger as the result; do not add rows for kernels that found nothing, and never cite a kernel a row does not actually rest on.
- When a loaded kernel actually changed a code decision, leave one short host-language comment at that site: start it with the
boffin:prefix and state, in the code's own vocabulary, what the code now does or refuses, never restating the kernel. The judgment verb is encouraged (kept .../refused .../cut ...); theboffin:prefix is the machine-readable key; the clause MUST NOT contain a kernel id, kernel scope-names, or any other pack vocabulary. Readability bar (the one mandatory wording check): mentally dropping theboffin:prefix, the remaining sentence MUST still read as a comment a senior engineer would write -- otherwise rewrite the clause or drop the mark; this is only a mental check, so always keep theboffin:prefix in the emitted comment. MUST NOT mark a purely stylistic rewrite of already-correct code that averts no failure and preserves no load-bearing invariant, nor emit anything when a.boffin-trace-offfile exists at the repo root. Keep to about one mark per hunk and roughly three per changeset; no URLs, marketing, or tool jargon; only in venues that forbid tool marks, omit theboffin:prefix (keep the senior-voice clause alone).
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago First seen · 35 lines · 729 tokens per session scan A 7b0f0ef104d8
boffin-post-change-audit is a cursor rule published in the GitHub repository MicSm/boffin (38 stars, last pushed 15d ago), licensed MIT. It adds 729 tokens to every session, about $0.0036 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other cursor rules, from other repositories
simulate-agents
Run Mock User and Auditor agents against a feature in fresh contexts before human review. Use after verify-work, before request-review, when user wants pre-review simulation.
testing
Testing strategies and quality assurance — testing pyramid, unit/integration/E2E testing, TDD/BDD, test automation, and quality metrics. Applied when writing or reviewing tests.
dotnet-architecture
.NET-specific architecture, structural patterns, and IaC standards. Covers Clean Architecture in .NET, CQRS/MediatR, feature organisation, IaC with Bicep/Terraform, observability, and testing strategy for .NET solutions. Complements engineering-architecture.mdc.
api-design
API design guidelines — REST principles, GraphQL patterns, versioning, pagination, error handling, documentation, security, caching, and testing. Applied when designing or reviewing API endpoints.
dotnet-core
.NET and C# development guidelines — naming conventions, async patterns, dependency injection, EF Core, error handling, configuration, security, testing, and performance. Applied when working with .NET/C# code.
refactoring
Refactoring: systematic approach, extract/inline, guard clauses, early returns.