TeireDocs
ChangesScanDashboardTry Teire
GuideEcosystems & APIsNemotron on Token FactoryBuild
ChangesScanDashboard
Try Teire
ArchitectureHow Teire updates dependency filesVerificationToken Factory SandboxesSecurity and trustContributing to the catalog

Tools

CLIMCP serverAgent Skill
Build

CLI

teire scan runs Teire's own engine on a folder or any public GitHub repository and prints every change that reaches your code, with its lines. teire check turns that into a CI gate.

npx teire-cli scan

The package is teire-cli on npm. Run it with npx without installing it globally, or install it once and use the teire command:

npm install -g teire-cli
teire scan

To try it on a repository you haven't cloned, give its owner/name or URL. Teire downloads that commit as one archive into a temporary folder, scans it and deletes it:

npx teire-cli scan meridianlabs-ai/inspect_ai

This is a real run on teire-dev/examples/ai-web, with the path shortened:

Teire …/demo-ai-web
npm 5 direct + 75 transitive · 8 files · 7.0 s
APIs: OpenAI

Deadlines
  2026-04-30  Node.js 20 reached end of life on 2026-04-30  passed · affected
  2026-10-23  gpt-4.1-nano shutdown  passed · affected

Affected (2)
  ● gpt-4.1-nano shutdown  priority 1 · 2 sites
    models/openai
    test/openai-stand-in.ts:14
    src/summarize.ts:13
  ● Node.js 20 reached end of life on 2026-04-30  1 site
    runtime/node
    package.json:8

1 more change checked, none reaching your code (--all lists them)

Notes
  4 model mention(s) not traced through wrappers or registries (Nemotron does this when TOKENFACTORY_API_KEY is set)

A group holds every change one pull request would fix, so a provider's retirements share a line: o1-preview shutdown and 9 more. The date beside it belongs to the change the title names. Product code is listed before tests and fixtures. In a terminal the current step shows on one line while the scan runs; a large repository takes a minute or two.

The scan makes the same engine calls as the Teire worker. Its findings match the dashboard once TOKENFACTORY_API_KEY is set, which lets Nemotron trace wrapped model IDs, for a repository with no organisation config. Packages are diffed and located on your machine. API and model changes come from Teire's public catalog. For a provider the catalog hasn't read yet, the CLI reads that provider's pages itself, through the same quote gate.

Commands

CommandWhat it does
teire scan [target] [--json] [--all]Scan a folder (default: the current one), or a public GitHub repository as owner/name or its URL. --all also lists changes outside your installed versions
teire check [target] [--fail-on affected|deadline|any] [--within 90]Exit 1 when the gate fails
teire explain <change-id> [target] [--json]One change: summary, replacement, migration notes and the quoted sources. A package change ID is read from a scan of target
teire changes [--provider p] [--ecosystem e] [--kind k] [--subject s] [--json]The public catalog. For a provider with a built-in reader whose changes the catalog doesn't hold yet, its pages are read on the spot
teire mcpServe the same tools to coding agents over stdio. See MCP

For coding agents, install the Teire Agent Skill with npx skills add teire-dev/teire --skill teire-cli. It guides the CLI workflow; the MCP server exposes Teire's read-only scan and catalog tools directly to an agent.

Gating CI

--fail-onFails when
affected (default)any change reaches your code
deadlinean affected change has a date within --within days (default 90), or already past
anyanything is affected, needs a person, or must be checked by hand

Exit codes: 0 passed, 1 the gate failed, 2 a usage error or anything that went wrong. The same run with teire check --fail-on deadline --within 60 ends:

teire check: 2 changes fail the "deadline" gate
.github/workflows/teire.yml
name: teire
on: [pull_request, push]
jobs:
  deadlines:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with: { node-version: 22 }
      - run: npx -y teire-cli check --fail-on deadline --within 60
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

What it needs

Node.js 22 or newer. npm and Ruby need nothing else, because TypeScript and Prism are bundled. A missing toolchain becomes a note saying what to install, such as "go is not installed: install Go (https://go.dev/dl) or set TEIRE_GO". The other ecosystems are then still scanned.

To readNeeds
Python packagesuv, which supplies Python 3.12 and the pinned griffe and jedi. Without uv, a Python 3.11 or newer already installed gets a virtual environment with the same pins, made once in ~/.cache/teire
Go modulesGo (TEIRE_GO for a specific binary)
Rust cratescargo install cargo-semver-checks --version 0.51.0 --locked
Maven and GradleJava 17 or newer (TEIRE_JAVA); japicmp is downloaded once and checked against its SHA-1
VariableEffect
GITHUB_TOKENHigher GitHub rate limits for release notes, advisories and spec history
TOKENFACTORY_API_KEYNemotron traces model IDs through wrappers and registries, and reads discovered providers' pages
TAVILY_API_KEYSearches for the notices of an API host neither the catalog nor the built-in readers cover
TEIRE_URLAnother Teire deployment (default https://teire.vercel.app)

A package the repository doesn't pin is listed but not compared, and the notes count it: a Gemfile with no Gemfile.lock, or a Maven dependency whose version comes from a parent POM or BOM outside the repository. A diff that can't be computed (a release with no wheel, a download that timed out) becomes a "check by hand" item with its reason; the rest of the scan carries on.

teire.yml is honoured for ignore, ecosystems, paths, ignorePaths, upgrades.cooldownDays and sources.

What the CLI doesn't do

It reports and gates. It doesn't fix or open pull requests: fixes run in Teire's sandboxes, through the GitHub App or a dry run.

Contributing to the catalog

Add a provider Teire can read, or a change it missed, through a pull request. CI checks it against the same schema Teire uses, and a merged record is live on the next deploy.

MCP server

Give a coding agent Teire's scan and catalog, so it checks the repository it is editing and looks up a provider's deprecations before it writes code against them.

On this page

CommandsGating CIWhat it needs