Open source
Contribute to BreachPilot
Apache-2.0 licensed, public repository, fully mocked test suite, CI on every push and PR. Read the guide and AGENTS.md, keep changes focused, and verify flags and config still match reality before you open a PR.
BreachPilot is for authorized testing only — contributions must preserve scope gating, the target allowlist lock, and the audit trail.
What to expect
Mocked tests, strict gates, docs in the same PR
Safety-relevant changes need regression tests. Keep PRs focused and verify every flag and config key still matches reality.
Tests
~250 mocked test files — no live Nmap, everything mocks subprocess and network. New safety-relevant code needs regression tests.
CI
Mocked suite on Python 3.11–3.13, coverage, ruff check + format, mypy over tools/, package build, WebUI build + tests, mocked eval suite.
Quality gates
CodeQL (Python + JS/TS), dependency review, weekly Dependabot for pip, Actions and npm.
Python
3.11+ required; ruff line-length 120; strict mypy on security-sensitive hot files.
TypeScript / WebUI
tsc + vite build + vitest in webui/ — run all three if you touch the UI.
Docs discipline
Adding a flag, tool or config key means updating the user-facing docs in the same PR.
Checks to run before a PR
python -m pytest tests/ -v
ruff check .
ruff format --check .
mypy --follow-imports=skip toolsRead the docs and the safety model before touching scope, policy, or tool-execution code.