Practical overview
When it fits
Use Slither during smart-contract development, in continuous integration, before deployment, or when reviewing contract structure and known security patterns.
Who it is for
- Solidity and Vyper developers
- Smart-contract reviewers
- Ethereum development teams using continuous integration or pre-commit checks
- Engineers building custom Python analyses
Documented uses
- Detect documented vulnerability patterns in contract code.
- Locate relevant error conditions in source code.
- Inspect contract details with built-in printers.
- Generate Markdown review checklists.
- Prototype custom analyses through the Python API and SlithIR.
Requirements & limits
The repository is public and licensed under AGPL-3.0. Documented access is through command-line installation or Docker; Python 3.10 or newer is required for the documented installation.
- The tool supports Solidity and Vyper rather than general-purpose source code.
- Supported compilation frameworks are the preferred route for projects with dependencies.
- Standalone-file analysis is documented for files without imported dependencies.
- Integration options include GitHub Actions, GitHub code scanning and pre-commit.
- Custom analyses can use the Python API and SlithIR.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Install Slither with uv
Set up Slither as a command-line tool using the documented uv installation path.
Before you start
- Python 3.10 or newer.
- uv installed, or the ability to install it with the documented installer.
Steps
Install uv with the documented installation command.
Install Slither with the command below.
uv tool install slither-analyzerAlternatively, run it without installation with
uvx --from slither-analyzer slither.Upgrade the installed tool with the command below when needed.
uv tool upgrade slither-analyzer
Expected outcome
Slither is installed as a tool, or can be invoked through uv without a persistent installation.
Guide limitations
- The evidence documents installation and invocation options but does not document a full project-specific analysis result.
- Projects not using a supported compilation framework may also require the Solidity compiler.
Add Slither to a documented project workflow
Run Slither against a supported smart-contract project or standalone dependency-free Solidity file.
Before you start
- A Hardhat, Foundry, Dapp or Brownie application, or a standalone Solidity file without imported dependencies.
- Slither installed.
- For projects outside supported compilation frameworks, the Solidity compiler is required.
Steps
From a supported application, run
slither ..For a standalone file without dependencies, run
slither tests/uninitialized.solor the corresponding target file.For a Markdown checklist, run
slither [target] --checklist.For GitHub source-code highlighting, add the documented
--markdown-rootvalue to the checklist command.
Expected outcome
Slither runs its analysis target and can produce a Markdown checklist report.
Guide limitations
- The standalone-file workflow is documented only for files without imported dependencies.
- The evidence does not specify how individual findings should be triaged or resolved.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 1 October 2026
- Original website title
- crytic/slither · Official homepage title · retained in its source language

