Reference
CLI
The public ReleaseKit command line surface.
The CLI creates ReleaseKit candidates. Running release-kit opens a repository-aware terminal dashboard; explicit subcommands remain available for scripts and CI. ReleaseKit expands the repository workflow and dispatches ready jobs to the project’s configured runner, which handles checkout, execution, signing, and artifact upload.
Install
npm install -g @sandbox-technologies/release-kitYou can also run commands with npx @sandbox-technologies/release-kit@latest.
Commands
| Command | Purpose |
|---|---|
release-kit | Open the interactive dashboard for the current repository |
release-kit login | Sign in and authorize projects in the current workspace |
release-kit list | List projects available to the local CLI session |
release-kit select [project] | Change the active project |
release-kit whoami | Show the active project |
release-kit preview | Create an artifact-only Preview candidate from the current branch |
release-kit publish production | Create a gated Production candidate for the stable feed |
release-kit publish nightly | Create a gated Nightly / Early Access prerelease candidate |
release-kit apple setup | Use downloaded dashboard credentials to finish Apple signing setup on macOS |
release-kit update | Update the ReleaseKit CLI to the latest npm version |
release-kit logout | Remove local CLI credentials |
release-kit doctor | Check local CLI wiring |
release-kit completion <shell> | Print shell completion scripts for Tab suggestions |
Examples
release-kitThe dashboard reflows for narrow or short terminals. Use Up/Down or j/k to move, Enter to select, and Left Arrow, Escape, or h to go back.
release-kit loginrelease-kit publish productionrelease-kit publish nightly --minorrelease-kit preview# Download setup credentials from the ReleaseKit dashboard first
npx -y @sandbox-technologies/release-kit@latest apple setuprelease-kit updaterelease-kit completion zsh > ~/.zsh/completions/_release-kitpreview uses the current git branch, current commit, and an automatic timestamped version. publish asks for a patch, minor, or major bump unless you pass one as a flag.
The CLI matches the current GitHub origin remote against the projects returned by login. A unique match is selected automatically. If one repository has multiple ReleaseKit apps, the interactive dashboard asks which app to use; non-interactive commands require --app-id. A repository mismatch blocks publishing and release-kit doctor reports it. release-kit select remains a fallback for directories without a Git remote.
Production and Nightly publish commands update the configured app version file, commit that bump, push it to the selected branch, then create the ReleaseKit candidate from the pushed commit. Production approval only updates the Stable channel. Nightly is independent and only changes when you publish and promote a Nightly candidate.
For CI, set RELEASE_KIT_TOKEN to a project API key instead of using browser login.
Options
| Option | Description |
|---|---|
--patch | Patch bump for Production or Nightly |
--minor | Minor bump for Production or Nightly |
--major | Major bump for Production or Nightly |
--branch | Source branch to build. For Production or Nightly, check out this branch before running publish. |
--commit | Source commit SHA for Preview or advanced already-versioned Production/Nightly candidates |
--no-version-commit | Advanced: skip the Production/Nightly version commit when the selected commit already contains the app version |
--release-kit-url | ReleaseKit API URL |
--yes | Skip confirmation prompts |
Safety checks
ReleaseKit applies lane policy on the server.
| Check | What ReleaseKit prevents |
|---|---|
| Version policy | Publishing outside the patch/minor/major flow |
| Artifact policy | Promoting before required artifacts exist |
| Branch policy | Publishing a branch into the wrong lane |
| Latest commit | Promoting a stale Production commit |
| Approval | Updating Production or Nightly without human approval |
Preview candidates are artifact-only and never update an app update feed.