- Docker runtime
- python3
- Clone the repo
git clone https://github.com/a6kme/static_analyzer
- Pull the docker images
docker pull a6kme/static-analyzer-py
anddocker pull a6kme/static-analyzer-js
- Install the dependencies
pip install -r api/requirements.txt
- Run the analyzer
from api.src.analyzer import StaticAnalyzer
from api.src.config import AppConfig
from api.src.models import GithubRepo
from api.src.services.github import GithubService
config = AppConfig.get_config()
repo = GithubRepo(name='pygoat', owner='adeyosemanputra')
pr = GithubService(config).get_pull_request(repo, 11)
StaticAnalyzer(config).static_review(pr)
for file in pr.files:
print(file.review)
python -m pytest
- Add LLM Layer to recommend the reviews
- Add evaluation dataset and run evaluations
- Figure out whether pulling the base commit makes any difference in analysis vs just writing the hunks