Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Expert integration with Slither static analyzer for smart contract vulnerability detection, code quality analysis, and security reporting. Supports all Slither detectors and custom analysis configurations.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 65% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 155% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 28% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 28% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 117% | 0% |
Expert-level integration with Slither, the leading static analysis framework for Solidity smart contracts.
bash# Install via pip pip install slither-analyzer # Or via pipx for isolation pipx install slither-analyzer # Verify installation slither --version
bash# Analyze single file slither Contract.sol # Analyze Foundry project slither . --foundry-compile-all # Analyze Hardhat project slither . --hardhat-compile-all
bash# Human readable (default) slither . # JSON output for processing slither . --json output.json # Markdown report slither . --checklist # SARIF for CI integration slither . --sarif output.sarif
| Detector | Description | |----------|-------------| | reentrancy-eth | Reentrancy with ETH transfer | | reentrancy-no-eth | Reentrancy without ETH | | arbitrary-send-eth | Arbitrary ETH send | | controlled-delegatecall | Controlled delegatecall | | suicidal | Functions allowing anyone to destruct | | uninitialized-storage | Uninitialized storage variables |
| Detector | Description | |----------|-------------| | reentrancy-benign | Benign reentrancy | | incorrect-equality | Dangerous strict equality | | locked-ether | Contracts that lock ether | | missing-zero-check | Missing zero address validation | | unchecked-transfer | Unchecked token transfers |
| Detector | Description | |----------|-------------| | naming-convention | Naming convention violations | | external-function | Functions that could be external | | constable-states | State variables that could be constant | | immutable-states | State variables that could be immutable |
json{ "detectors_to_run": "all", "exclude_informational": false, "exclude_low": false, "exclude_medium": false, "exclude_high": false, "exclude_optimization": false, "fail_on": "high,medium", "filter_paths": [ "node_modules", "lib", "test" ], "exclude_dependencies": true, "legacy_ast": false }
bash# Run specific detectors slither . --detect reentrancy-eth,uninitialized-storage # Exclude detectors slither . --exclude naming-convention,external-function # Filter by severity slither . --exclude-informational --exclude-low # Exclude specific paths slither . --filter-paths "test|lib|node_modules"
bash# Generate call graph slither . --print call-graph # Generate inheritance graph slither . --print inheritance-graph # Generate contract summary slither . --print contract-summary
bash# Print function summaries slither . --print function-summary # Print variable order (storage layout) slither . --print variable-order # Print data dependency slither . --print data-dependency
python# custom_detector.py from slither.detectors.abstract_detector import AbstractDetector, DetectorClassification class MyCustomDetector(AbstractDetector): ARGUMENT = "my-detector" HELP = "Detect my custom issue" IMPACT = DetectorClassification.HIGH CONFIDENCE = DetectorClassification.HIGH WIKI = "https://example.com/my-detector" WIKI_TITLE = "My Custom Detector" WIKI_DESCRIPTION = "Detects..." WIKI_EXPLOIT_SCENARIO = "..." WIKI_RECOMMENDATION = "..." def _detect(self): results = [] for contract in self.compilation_unit.contracts_derived: for function in contract.functions: # Detection logic if self._has_issue(function): info = [function, " has an issue\n"] results.append(self.generate_result(info)) return results
yamlname: Slither Analysis on: [push, pull_request] jobs: slither: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Install Foundry uses: foundry-rs/foundry-toolchain@v1 - name: Install Slither run: pip install slither-analyzer - name: Run Slither run: slither . --foundry-compile-all --fail-on high --sarif results.sarif - name: Upload SARIF uses: github/codeql-action/upload-sarif@v2 with: sarif_file: results.sarif
json{ "success": true, "error": null, "results": { "detectors": [ { "check": "reentrancy-eth", "impact": "High", "confidence": "Medium", "description": "Reentrancy in Contract.withdraw()...", "elements": [...], "first_markdown_element": "...", "id": "abc123" } ] } }
| Process | Purpose | |---------|---------| | smart-contract-security-audit.js | Primary security analysis | | smart-contract-development-lifecycle.js | Development validation | | formal-verification.js | Pre-verification checks |
| Tool | Purpose | |------|---------| | Slither | Core static analyzer | | crytic-compile | Compilation framework | | slither-doctor | Configuration debugger |
--triage-database to track false positivesskills/mythril-symbolic/SKILL.md - Symbolic execution analysisskills/echidna-fuzzer/SKILL.md - Property-based fuzzingagents/solidity-auditor/AGENT.md - Security auditor agentOther measured skills in the registry, with their headline benchmark lift.