Sniper is an AI-powered GitHub App tool/bot that automates code review and bug detection.
macOS (Homebrew):
brew install elixirUbuntu/Debian:
sudo apt-get install elixirOther platforms: See the official Elixir installation guide.
macOS/Linux:
curl -LsSf https://astral.sh/uv/install.sh | shHomebrew:
brew install uvOther platforms: See the uv installation guide.
docker compose up -dThis starts Neo4j on bolt://localhost:7687 with the browser UI at http://localhost:7474. Default credentials are neo4j/sniper_dev (configurable via NEO4J_AUTH in .env).
# Install Elixir dependencies
mix deps.get
# Install Python dependencies
cd python
uv syncOr use the Makefile:
make installCopy the example environment file and add your API key:
cp .env.example .envEdit .env and set your GROQ_API_KEY.
# Keep the server running (recommended)
make run
# Or with an interactive Elixir shell (useful for development)
iex -S mixThe webhook server will be available at http://localhost:4000.
For local development, use smee to forward GitHub webhooks to your local server:
- Create a channel at https://smee.io/
- Set the Smee URL as your GitHub App's webhook URL
- Run the smee client to forward requests:
smee -u https://smee.io/YOUR_CHANNEL_ID --path /webhook --port 4000make run-python