From solidity-audit
Comprehensive Solidity smart contract security audit skill. Activates when auditing, reviewing, or assessing EVM smart contracts for vulnerabilities. Covers reentrancy, access control, oracle manipulation, flash loans, MEV, weird tokens, and protocol-specific risks. Includes 100+ item checklist, severity rubric, and real exploit examples.
How this skill is triggered — by the user, by Claude, or both
Slash command
/solidity-audit:fofum-auditThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Systematically audit Solidity smart contracts for security vulnerabilities using a structured methodology that combines:
Systematically audit Solidity smart contracts for security vulnerabilities using a structured methodology that combines:
Objective: Understand what you're auditing before looking for bugs.
Scope Definition
Architecture Mapping
Documentation Review
Output: Architecture diagram, entry point list, role map
Objective: Catch low-hanging fruit automatically.
Run Slither
slither . --print human-summary
slither . --print contract-summary
slither .
Check Compiler Warnings
forge build --force 2>&1 | grep -i warning
Run Additional Detectors
slither-check-erc for token conformanceslither-check-upgradeability for proxiesOutput: Slither report, triaged findings
Objective: Find bugs that tools miss.
See: resources/checklist.md for full 100+ item checklist
Objective: Confirm findings with evidence.
Write PoC Tests
Test Edge Cases
forge test --match-contract Exploit -vvvv
Fuzz Critical Functions
forge test --match-test testFuzz
Objective: Communicate findings clearly.
See: resources/report-template.md
| Severity | Criteria |
|---|---|
| Critical | Direct loss of funds, no user action required |
| High | Loss of funds with user action, or protocol insolvency |
| Medium | Conditional loss, or significant protocol disruption |
| Low | Minor issues, best practice violations |
| Informational | Gas optimizations, code quality |
See: resources/severity.md for detailed rubric
// VULNERABLE
function withdraw() external {
uint amount = balances[msg.sender];
(bool success,) = msg.sender.call{value: amount}("");
balances[msg.sender] = 0; // State change AFTER external call
}
// FIXED: CEI Pattern
function withdraw() external {
uint amount = balances[msg.sender];
balances[msg.sender] = 0; // State change BEFORE
(bool success,) = msg.sender.call{value: amount}("");
}
// VULNERABLE
function setPrice(uint _price) external {
price = _price; // Anyone can call!
}
// FIXED
function setPrice(uint _price) external onlyOwner {
price = _price;
}
// VULNERABLE: Spot price
uint price = pair.getReserves().reserve0 / pair.getReserves().reserve1;
// FIXED: TWAP
uint price = oracle.consult(token, 1e18, 30 minutes);
See: resources/exploits/ for real-world examples
resources/protocols/lending.mdresources/protocols/amm.mdresources/protocols/staking.mdresources/protocols/governance.mdresources/protocols/bridges.mdReal exploits with root cause analysis:
resources/exploits/reentrancy.md (DAO, Cream, Fei)resources/exploits/oracle.md (Harvest, Mango)resources/exploits/flash-loan.md (Euler, bZx)resources/exploits/access-control.md (Parity, Ronin)resources/exploits/logic-bugs.md (Nomad, Wormhole)For full Foundry reproductions, see:
submodules/DeFiHackLabs/submodules/learn-evm-attacks/| Rationalization | Why It's Wrong |
|---|---|
| "Slither found nothing, must be safe" | Slither misses ~60% of bugs (logic, economic) |
| "It's audited by X firm" | Audits miss bugs; multiple reviews are better |
| "No reentrancy guard but CEI is followed" | Check ALL functions, not just the obvious ones |
| "Only admin can call this" | Admin keys get compromised; assume adversarial |
| "This is standard OpenZeppelin code" | Integration bugs happen at the seams |
| "Low probability, won't happen" | If profitable, attackers WILL find it |
Provide me with:
I'll follow this methodology systematically.
npx claudepluginhub defifofum/fofum-solidity-skills --plugin solidity-auditAudits Solidity smart contracts against all 10 OWASP Smart Contract Top 10 vulnerability classes using Slither static analysis and Foundry invariant testing, with specific detection commands and remediation steps.
Audits EVM smart contracts for security vulnerabilities using 500+ checklist items across 19 domains via parallel sub-agents; synthesizes findings and files GitHub issues.
Guides secure Solidity development with best practices for vulnerability prevention, reentrancy, overflow, access control, and audit readiness.