Continuous integration
Because mirago exits with code 1 when it finds problems and 0 when clean, it slots straight into CI — failing the build if an AI-invented package slips in.
GitHub Actions
name: mirago
on: [push, pull_request]
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- run: pipx install mirago
- run: mirago check .
Failing on warnings too
By default only errors (packages that don't exist) fail the build. To also fail on risky-but-real warnings, add the flag:
mirago check . --fail-on warning
Machine-readable output
Use --json to feed results into another tool or a custom report:
mirago check . --json > mirago-report.json
Note: If PyPI is unreachable during a CI run, mirago treats packages as fine rather than failing your pipeline on a network blip.