Spec Compliance Skill

SkillDev tools

Verify smart contract implementations comply with EIP/ERC standards and protocol specifications. Use when checking ERC-20, ERC-721, ERC-1155, ERC-4626, or EIP-712 compliance, or when identifying non-standard token behavior that causes integration failures.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Spec Compliance Skill skill

What this skill tells your AI

The instructions your AI receives, as published by 0x-shashi/web3-audit-skills in skills/spec-compliance/SKILL.md and read by ahel’s review.

Verify smart contract implementations comply with EIP/ERC standards and protocol specifications. Non-compliant implementations cause integration failures, fund losses, and security vulnerabilities.


Why Compliance Matters

Impact of Non-ComplianceExample
Integration failureDEXs can't list non-standard ERC20 (missing decimals())
Silent fund lossERC721 safeTransferFrom not calling onERC721Received = NFTs lost
Security vulnerabilityEIP-712 without chainId = cross-chain signature replay
Accounting errorsERC4626 wrong rounding direction = vault inflation attack
Ecosystem rejectionBridges, wallets, indexers refuse non-standard tokens

Supported Standards

Token Standards

StandardTypeKey FunctionsCommon Issues
ERC-20Fungible tokentransfer, approve, transferFromMissing return values, approve race
ERC-721Non-fungible tokensafeTransferFrom, approve, ownerOfMissing receiver callback
ERC-1155Multi-tokensafeTransferFrom, safeBatchTransferFromBatch operation atomicity
ERC-4626Tokenized vaultdeposit, withdraw, convertToSharesRounding direction, first depositor attack
ERC-2612Permit (gasless approve)permit, nonces, DOMAIN_SEPARATORSignature replay, frontrunning

Infrastructure Standards

StandardTypeSecurity Focus
EIP-712Typed data signingDomain separator, chain ID
EIP-1967Proxy storage slotsStandard slot locations
EIP-2535Diamond standardSelector collision, storage isolation
EIP-4337Account abstractionUserOp validation, paymaster trust
EIP-1153Transient storageTSTORE/TLOAD lifecycle
EIP-2981Royalty infoNot enforceable (informational only)

Compliance Verification Approach

1. Interface Completeness

Does the contract implement ALL required functions with correct signatures?

// ERC-20 REQUIRED interface (IERC20)
function totalSupply() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address to, uint256 amount) external returns (bool);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(address from, address to, uint256 amount) external returns (bool);

// ERC-20 REQUIRED events
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);

// OPTIONAL but expected by most integrations
function name() external view returns (string memory);
function symbol() external view returns (string memory);
function decimals() external view returns (uint8);

2. Behavioral Compliance

Does each function behave as specified? (Not just exist with the right signature)

3. Edge Case Handling

Does the implementation handle boundary conditions specified in the standard?


Resources

Workflows

Signals

GitHub stars
60
Forks
10
Last commit
Feb 2026
Advanced
Catalog kind
skill
Gateway key
spec-compliance
Source
github.com/0x-shashi/web3-audit-skills