.---. ,--. ,-- ,----. ,--. ,--. ,-. .----. ,------.,------,
/ . | | \ | | | ._. \ | | `\ . '.' /\_.-, || .---'| /`. '
/ /| | | . '| | | |_| | | | \ / |_ <(| '--. | |_.' |
/ '-' ||| |\ | | .-. |(| '_ / /) .-. \ || .--' | . .'
`---| |'| | \ | | | | | | | / /` \ `-' /| `---.| |\ \
`--' `--' `--' `--' `--' `-----' `--' `---'' `------'`--' '--'
yarn analyze <BASE_PATH> <SCOPE_FILE> <GITHUB_URL>
# Example
yarn analyze contracts scope.example.txt
BASE_PATH
is a relative path to the folder containing the smart contracts.SCOPE_FILE
is an optional file containg a specific smart contracts scope (see scope.example.txt)GITHUB_URL
is an optional url to generate links to github in the report- The output will be saved in a
report.md
file.
Repository | Report |
---|---|
Holograph | Report |
3xcalibur | Report |
Inverse Finance | Report |
Paladin | Report |
zkSync | Report |
You'll need Node.js and Yarn. Then clone the repo and run:
yarn
You're all set!
Please copy the .env.example
file to .env
and fill out the details if you have a ChatGPT API key. You can also set the API key as an environment variable.
cp .env.example .env
If you want to disable ChatGPT while testing other implementations, you can set OPENAI_ENABLED=false
.
You're more than welcome to contribute! For help you can check CONTRIBUTING.md