| name | nft-protocol-security |
| description | Protocol Type Trigger nft (detected when ERC721/ERC1155 with marketplace, minting, staking, or collateral logic found) - Inject Into Breadth agents, depth-token-flow, depth-edge... |
Injectable Skill: NFT Protocol Security
Protocol Type Trigger: nft (detected when ERC721/ERC1155 with marketplace, minting, staking, or collateral logic found)
Inject Into: Breadth agents, depth-token-flow, depth-edge-case
Language: EVM only (Solana/Move NFT models use different mechanisms without callbacks or enumeration)
Finding prefix: [NFT-N]
Orchestrator Decomposition Guide
When decomposing this skill into depth agent investigation questions, map sections to domains:
- Sections 1, 2: depth-token-flow (callback flows, approval/transfer paths)
- Section 3: depth-edge-case (enumeration invariants, boundary states)
- Section 4: depth-state-trace (ownership state consistency, metadata integrity)
When This Skill Activates
Recon detects NFT protocol patterns: ERC721/ERC1155 with state-modifying logic beyond simple transfer (marketplace listing, staking, collateral, minting with conditions, royalty enforcement, batch operations).
Pure ERC721/ERC1155 token implementations without protocol logic do NOT trigger this skill.
1. Callback Reentrancy Surface
For each function that triggers NFT callbacks:
1a. Safe Transfer Callback Inventory
Enumerate all code paths that invoke _safeMint, _safeTransfer, safeTransferFrom, or onERC1155Received/onERC1155BatchReceived:
| # | Function | Callback Triggered |
|---|