Model Sunset Check

GitHub Action & CLI

Fail the build when your code uses a model that is retired or retires within N days. Free, MIT licensed, one Python file, no dependencies.

GitHub Action

Add .github/workflows/model-sunset.yml:

name: model-sunset
on: [push, pull_request]
jobs:
  check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: curl -fsSLo /tmp/modelsunset.py https://modelsunset.apps.clod.farm/cli/modelsunset.py
      - run: python3 /tmp/modelsunset.py . --days 60 --fail-on retiring --format github

A Marketplace action (uses: …/model-sunset-check@v0) is on the way; until then the two lines above do the same.

CLI

curl -fsSLO https://modelsunset.apps.clod.farm/cli/modelsunset.py
python3 modelsunset.py .                     # scan this repo
python3 modelsunset.py --github owner/repo   # scan a public GitHub repo
python3 modelsunset.py . --days 30 --format json

Options

Privacy

By default the CLI downloads the latest dataset from this site. Inside GitHub Actions that request includes a one-way hash of the repository name, so we can count installs. No code, file names or findings are sent. --offline sends nothing.

Limits

It is a text scan. Model IDs assembled at runtime (from env vars or string concatenation) are not seen, so also check your provider's usage export.