Static Analyzer for Solidity and Vyper
# Adding New Utility
Slither can be used as a library to create new utilities.
Official utils are present in [tools](https://github.com/crytic/slither/tree/master/slither/tools)
## Skeleton
The skeleton util is present in [tools/demo](https://github.com/crytic/slither/tree/master/slither/tools/demo)
## Integration
To enable an util from the command-line, update `project.scripts` in [pyproject.toml](https://github.com/crytic/slither/blob/master/pyproject.toml).
Installing Slither will then install the util.
## Guidelines
- Favor the `logging` module rather than `print`
- Favor raising an exception rather than `sys.exit`
- Add unit-tests (ex: [scripts/travis_test_find_paths.sh](https://github.com/crytic/slither/blob/master/scripts/ci_test_find_paths.sh))
## Getting Help
Join our [slack channel](https://empireslacking.herokuapp.com/) to get any help (#ethereum).