Thanks for your interest in contributing.
git clone https://github.com/momenbasel/vulnhawk.git
cd vulnhawk
uv venv .venv && source .venv/bin/activate
uv pip install -e ".[dev]"pytestWe use ruff for linting:
ruff check .
ruff format .- Create a new file in
vulnhawk/scanner/languages/ - Add the extension mapping in
vulnhawk/models.py(Language.from_extension) - Add the splitter function in
vulnhawk/scanner/chunker.py - Add test fixtures in
tests/fixtures/ - Add tests in
tests/test_chunker.py
- Create a new file in
vulnhawk/llm/ - Implement the
BaseLLMinterface - Add the backend choice in
vulnhawk/cli.py - Document any required environment variables
If you find a security vulnerability in VulnHawk itself, please report it privately via GitHub Security Advisories rather than opening a public issue.
- Keep PRs focused on a single change
- Add tests for new functionality
- Update documentation if needed
- Run
ruff check .before submitting