| title | Getting started |
|---|---|
| description | Run Uptide on a TypeScript repository in four commands, with nothing installed and no account. |
For someone running Uptide for the first time: what to run, in what order, and what the repository needs.
- Node 20 or newer.
- A TypeScript repository, or JavaScript the compiler can see (
allowJs), with a lockfile. - A package manager Uptide supports:
checkworks on npm, pnpm (workspaces and catalogs), Yarn classic and bun (text lockfile);fixworks on npm (lockfile v2/v3), pnpm, and Yarn classic/Berry with the node-modules linker. Yarn Plug'n'Play, bun's binary lockfile and Deno are not supported (troubleshooting). - Installed dependencies for
checkandfix(listneeds none).
No account, no config file, no API key for anything but assisted fixes.
In your repository:
npx uptide list # fast discovery; no install or compilation
npx uptide check zod # analyze one or more named dependencies (install first)
npx uptide fix zod # migrate on a new branch, verified; nothing is pushed
npx uptide pr --branch uptide/zod-4.6.5 # prints the plan; add --yes to push and open the PRnpx uptide with no command shows where zod and stripe stand in the repository: installed,
latest, majors behind.
listreads manifests, lockfiles, source imports and registry metadata, and says what to upgrade first and why. It compiles nothing and installs nothing. Details.check <package>compiles your code against the target version and reports what breaks, where, and who can fix it (a rule, the agent, or you). Breaking means the compiler, the runtime probe or a migration pack confirmed it (concepts). Details.fix <package>upgrades one dependency on a new branch in a temporary clone, migrates the code, and verifies with your TypeScript and your tests. Nothing is pushed. Details.prpushes a finished branch and opens its pull request with the stored report, only with--yes. Details.
Between check and fix, plan gives the order to upgrade several dependencies in
(details).
fixtures/repos/storefront is a small pnpm workspace in the
Uptide repository, written to exercise it: two packages on zod 3 and stripe 14, with a few
tests. The README shows its check zod and fix zod output; the check and fix pages show
stripe. Everything in those samples is real output from that fixture.
The one type error left after each fix run is the fixture's own, there on purpose: errors a
repository already had are subtracted, never blamed on the upgrade.
Sites no rule covers go to the Claude Agent SDK, with your own ANTHROPIC_API_KEY. fix
runs only with the SDK: the first run downloads it once (about 300 MB, asking first in a
terminal), and without the key or the SDK it stops before any clone
(fix). Which model, and what it costs:
models. What is sent: privacy.
npx uptide runs the published uptide package. It is one bundle: it inlines its
dependencies. The notice for every package in that bundle, with the full text of its license,
ships in the npm package as THIRD-PARTY-NOTICES and is generated from the bundle itself at
build time. Releases up to and including 0.3.0 were published under the MIT license; 0.4.0
and later are Apache-2.0.
npx uptide init writes a workflow that runs the Uptide Action on a schedule in your own GitHub
Actions and opens draft pull requests with verified migrations: CI.