web3-audit

web3-audit is a command for Claude Code from Mikacr1138/claude-bug-bounty. It costs 0 tokens per session (1,827 once invoked), scanned A, a copy of web3-audit, MIT.

A command for reviewing blockchain smart-contract code against ten common security problem types. It can create a Foundry proof-of-concept template for confirmed findings, where Foundry is a toolkit for testing Ethereum contracts.

In plain words
What is it for?
Use it to inspect Solidity contracts for accounting errors, access-control flaws, incomplete paths, oracle mistakes, reentrancy, flash-loan attacks, signature replay, and proxy or upgrade issues.
Why use it?
It helps auditors check important attack paths systematically and decide early whether an audit is worth pursuing based on factors such as funds at risk and existing audits.

Command for Claude Code

Written for Claude Code: a Claude Code command (commands/*.md).

Needs its repository: it reads a path above its own folder, which exists only inside the repository. The line is import "../src/VulnerableContract.sol";.

Good fit Use it to inspect Solidity contracts for accounting errors, access-control flaws, incomplete paths, oracle mistakes, reentrancy, flash-loan attacks, signature replay, and proxy or upgrade issues.

Compare 6 commands from other repositories ↓
Install

Getting it into your agent

It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.

Clone the repo
git clone --depth 1 https://github.com/Mikacr1138/claude-bug-bounty
agentmods
npx agentmods add commands/mikacr1138/claude-bug-bounty/web3-audit

Made for: Claude Code.

Wrote 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.

agentmods badge for web3-audit

README.md
[![agentmods](https://agentmods.dev/badge/commands/mikacr1138/claude-bug-bounty/web3-audit/github.svg)](https://agentmods.dev/commands/mikacr1138/claude-bug-bounty/web3-audit)
Your own site
<a href="https://agentmods.dev/commands/mikacr1138/claude-bug-bounty/web3-audit"><img src="https://agentmods.dev/badge/commands/mikacr1138/claude-bug-bounty/web3-audit/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for web3-audit

Your own site · 80×15
<a href="https://agentmods.dev/commands/mikacr1138/claude-bug-bounty/web3-audit"><img src="https://agentmods.dev/badge/commands/mikacr1138/claude-bug-bounty/web3-audit.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 0 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,827 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 100% copy Near-identical to another mod in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00000 $0.01827
Opus 5 $0.00000 $0.00914
Sonnet 5 $0.00000 $0.00365
Haiku 4.5 $0.00000 $0.00183

Measured 10d ago against content hash fa67388aea18, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

web3-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 10d 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.

Origin

This is a copy

100% identical to web3-audit — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

commands/web3-audit.md · 216 lines

How it starts

The opening of the file, as written. The whole thing — 216 lines — stays where its author put it; the contents beside it link to each section on GitHub.

/web3-audit

Smart contract security audit using the 10-bug-class methodology.

Usage

/web3-audit VulnerableContract.sol
/web3-audit https://github.com/protocol/contracts
/web3-audit [paste contract code]

Step 0: Pre-Dive Kill Signals

ALWAYS check these BEFORE reading any code:

1. TVL < $500K → max payout too low for effort → SKIP
2. 2+ top-tier audits (Halborn, ToB, Cyfrin, OZ) on simple protocol → SKIP
3. Protocol < 500 lines, single A→B→C flow → minimal attack surface → SKIP
4. max_payout = min(10% × TVL, program_cap) → if < $10K → SKIP

Formula: Is [TVL * 10%] > [hours I'll spend * hourly rate]? If not, skip.

Only proceed if score >= 6/10:

  • TVL > $10M: +2
  • Immunefi Critical >= $50K: +2
  • No top-tier audit on current version: +2
  • < 30 days since deploy: +1
  • Protocol you've hunted before: +1
  • Upgradeable proxies present: +1

Step 1: Accounting State Desynchronization (28% of Criticals)

# Find accounting variables
grep -rn "totalSupply\|totalShares\|totalAssets\|totalDebt\|cumulativeReward" contracts/

# Find ALL early returns in critical functions
grep -rn "\breturn\b" contracts/ -B3 | grep -B3 "if\b"

Check: For each early return in claim/redeem/withdraw functions:

  • Which state variables are updated in the normal path?
  • Are ALL of them also updated in the early return path?
  • If A updated but B isn't → potential desync bug

Step 2: Access Control (19% of Criticals)

# Sibling function families — do ALL have same modifier set?
grep -rn "function vote\|function poke\|function reset\|function update\|function claim\|function harvest" contracts/ -A2

# Ownership check: existence vs ownership
grep -rn "_requireOwned\|ownerOf\|_isApprovedOrOwner" contracts/ -B5

# Silent modifiers (if without revert)
grep -rn "modifier\b" contracts/ -A8 | grep -B3 "if (" | grep -v "require\|revert"

# Uninitialized proxy
grep -rn "function initialize\b" contracts/ -A3
grep -rn "_disableInitializers()" contracts/

Check: Does EVERY sibling function in a family have the SAME modifiers?

Read the full file on GitHub · 216 lines

Changes

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.

  1. 10d ago First seen · 216 lines · 0 tokens per session scan A fa67388aea18

Subscribe to this mod's changes

web3-audit is a command published in the GitHub repository Mikacr1138/claude-bug-bounty (2 stars, last pushed 2d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,827 tokens. A static security scan graded it A with 0 findings. It is 100% identical to web3-audit, differing in 0 lines, and is treated as a copy.