Install guide
You have a license key (bo_…) and an install link per package. The link is a normal package URL with your key attached. That is all you need.
Requirements: Node.js 22 or newer, with npm, pnpm, or yarn.
1. Install
Put the link in quotes (the ? upsets some shells) and install it like any package:
npm install "https://store.brightops.io/dl/@brightops/model-router/0.1.3-alpha.1.tgz?key=bo_YOUR_KEY"
pnpm add "https://store.brightops.io/dl/@brightops/model-router/0.1.3-alpha.1.tgz?key=bo_YOUR_KEY"
yarn add "@brightops/model-router@https://store.brightops.io/dl/@brightops/model-router/0.1.3-alpha.1.tgz?key=bo_YOUR_KEY"
Your package.json then lists the package by that URL, and your lockfile records the URL plus the file's checksum, so every later install fetches exactly the same build. Commit both as usual.
2. Use it
import { validateRouterConfig, routeForDecision } from '@brightops/model-router'Each package ships its README and TypeScript types inside the tarball (node_modules/@brightops/<name>/README.md).
3. Upgrade
Change the version in the URL and install again. Your license page always shows the newest version and a ready-made command.
4. How your key works
- One key per organisation. Every developer and CI job uses the same link; the key covers the seats you bought.
- Trials last 30 days. Paid keys last 365 days from purchase (or from the end of the trial). The exact date is on your license page.
- When it expires, the store refuses new downloads with HTTP 403. Copies already installed keep working; a fresh install or CI build fails until you renew.
- Keep it private. Anyone holding the link can download. If it leaks, tell us: we revoke it and issue a new one.
5. Renew or add seats
Buying or renewing extends the same key, so links, package.json, and lockfiles keep working with no reinstall. Email sundar@brightops.io with your license id.
6. Errors you may see
npm shows these as E401, E403, or E404 together with the URL it tried.
401 missing_key/401 unknown_key: the URL has no key or a typo. Copy the link again from your license page.403 expired: the subscription ended. Renew.403 revoked: the key was cancelled (for example after a leak). Contact us.403 product_not_licensed: your key does not include this package. Ask us to add it.404: that version is not on the store. Check your license page for available versions.
7. CI and shared machines
Use the same URL; nothing else is required. If you prefer not to commit the key, install at build time from a secret, for example npm install "$BRIGHTOPS_ROUTER_URL", but note the dependency is then not pinned in your lockfile. Most teams simply commit the URL.
License
Every package carries LICENSE.md: a commercial, per-developer subscription license. You may build and deploy your own applications with it. You may not publish it to any registry or redistribute it on its own. Read the terms.