Contributing to VulnHawk
April 8, 2026 ยท View on GitHub
Thanks for your interest in contributing.
Development Setup
git clone https://github.com/momenbasel/vulnhawk.git
cd vulnhawk
uv venv .venv && source .venv/bin/activate
uv pip install -e ".[dev]"
Running Tests
pytest
Code Style
We use ruff for linting:
ruff check .
ruff format .
Adding Language Support
- 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
Adding a New LLM Backend
- Create a new file in
vulnhawk/llm/ - Implement the
BaseLLMinterface - Add the backend choice in
vulnhawk/cli.py - Document any required environment variables
Reporting Security Issues
If you find a security vulnerability in VulnHawk itself, please report it privately via GitHub Security Advisories rather than opening a public issue.
Pull Requests
- Keep PRs focused on a single change
- Add tests for new functionality
- Update documentation if needed
- Run
ruff check .before submitting