What problem does it solve? Smart contract auditors need a systematic way to identify conditions that must always hold in a protocol and find paths where those conditions break. This Skill provides a structured framework for extracting explicit and implicit invariants from Solidity code and documentation, then exploring how attackers could violate them. ## Core Features & Use Cases - Invariant Extraction: Collects explicit invariants from require/assert statements and NatSpec annotations, plus implicit invariants inferred from code flow patterns like share calculations and balance updates. - Violation Path Exploration: Analyzes single-function violations, multi-function combination attacks (e.g., first depositor donation attacks), state transition order issues, and edge cases like zero values and overflow. - Protocol-Specific Coverage: Includes core invariant templates for Vaults, AMMs, Lending, Staking, and Bridge protocols. - Use Case: During a lending protocol audit, use this framework to extract the invariant that user debt must not exceed collateral times LTV, then trace how oracle manipulation could break it and enable forced liquidations. ## Quick Start Analyze this Solidity codebase to extract all protocol invariants and identify potential violation paths for each one.