OpenViSTAI · Agents · Blockchain · Crypto
Menu
Developer Tools

Smartbugs

SmartBugs is an extensible Python command-line framework that runs tools to analyze Ethereum smart contracts for weaknesses and other properties. It provides a shared interface for analyzers that examine Solidity source code, deployment bytecode or runtime code, and can normalize their results for comparison and further processing.

Independent OpenViST project profile, based on linked sources.

Smartbugs — OpenViST project profile in Developer Tools.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use SmartBugs when you need a command-line workflow for applying multiple compatible analyzers to Ethereum contract inputs, especially for bulk analysis or standardized result processing.

Who it is for

  • Ethereum and Solidity developers who want to run contract analyzers through a common interface.
  • Researchers comparing smart-contract analysis tools or processing collections of contracts.

Documented uses

  • Run selected analyzers against Solidity source, deployment bytecode or runtime code.
  • Process multiple contracts with parallel, restartable analysis tasks.
  • Reparse results and export them for database use or as SARIF.
Before you choose

Requirements & limits

The project is open source under the Apache-2.0 license. Its documented requirements are Python and Docker; Linux, macOS and Windows are listed as tested platforms.

  • Choose tools according to whether your input is Solidity source, deployment bytecode or runtime code.
  • Analyzer maintenance varies: the repository includes research prototypes that may not work with current Solidity and EVM versions.
  • Adding an analyzer involves a Docker image, configuration, and a Python script to standardize its output.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Analyze sample contracts and export results to CSV

Run the available SmartBugs tools on contracts in the samples folder, then parse and export their results.

Before you start

  • Python
  • Docker
  • A local copy of the SmartBugs repository and its samples

Steps

  1. Run ./smartbugs -t all -f samples/* --timeout 600.

  2. Run ./reparse results to parse the analysis results.

  3. Run ./results2csv -p results > results.csv to write the parsed data to a CSV file.

Expected outcome

Analysis output is parsed and written to results.csv.

Guide limitations

  • The available tools include unmaintained research prototypes that may be incompatible with current Solidity and EVM versions.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
9 October 2026
Original website title
smartbugs/smartbugs · Official homepage title · retained in its source language