On this page

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.