# Bump Version

Bump the base version of one or more packages (riptide-native, cli, linear-cli...

- Repository: https://github.com/humanlayer/humanlayer (12740 stars)
- Category: Git and review
- License: Apache-2.0
- Last updated: 2026-10-31
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add humanlayer/humanlayer --skill bump-version -g -a claude-code -y`
Codex: `npx skills add humanlayer/humanlayer --skill bump-version -g -a codex -y`
Cursor: `npx skills add humanlayer/humanlayer --skill bump-version -g -a cursor -y`
Gemini CLI: `npx skills add humanlayer/humanlayer --skill bump-version -g -a gemini-cli -y`

## Description

Bump the base version of one or more packages (riptide-native, cli, linear-cli, rpi-plugin) on a PR - updates every synced file, verifies, commits, pushes. Use when cutting a release or asked to bump versions.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

Versions are *bases* (`ci-scripts/derive-version.ts`): releases derive `base + commits since base changed` on every channel (dev/beta/prod); at the bump-merge SHA the derived version is exactly the new base. Bump only to cut a release or force a minor/major, never in regular PRs.

## 1. Bump the named packages

Default: minor+1, patch 0 (`0.134.x` → `0.135.0`), always above every shipped derived build. Never hand-pick a patch (can land below a shipped dev build); major only if asked.

Set the identical version in every file listed. Leave `Cargo.lock`/`bun.lock` alone.

| package | files |
|---|---|
| riptide-native | `apps/riptide-native/tauri.conf.json` `"version"` · `apps/riptide-native/package.json` `"version"` · `apps/riptide-native/Cargo.toml` `version =` |
| cli | `apps/cli/package.json` `"version"` |
| linear-cli | `apps/linear-cli/package.json` `"version"` |
| rpi-plugin | `apps/riptide-rpi-claude-plugin/.claude-plugin/plugin.json` `"version"` · `marketplace.json` (same dir) top-level `"version"` **and** `plugins[0].version` |

Plugin patch versions derive per release like everything else (`ci-scripts/stamp-plugin-versions.ts`), plugin content ships without bumps; bump a plugin base only for minor/major intent.

## 2. Verify, commit, push

Commit first (derivation errors on uncommitted edits), verify while the bump commit is HEAD, then push to the PR branch and note the intent in the PR description ("cuts 0.135.0"):

```bash
# shallow-clone error? git fetch --unshallow
INPUT_RELEASE_TYPE=dev bun run ci-scripts/generate-version.ts    # riptide → release_version=<new base>
INPUT_RELEASE_TYPE=prod bun run ci-scripts/generate-version.ts   # riptide → release_version=<new base>
VERSION_FILE=apps/cli/package.json COUNT_PATHS=apps/cli bun run ci-scripts/derive-package-version.ts  # each CLI → <new base>
```

Any other output = files out of sync or bump commit isn't HEAD. Fix before pushing.

## 3. After merge: ship riptide beta + prod together

The rest: https://github.com/humanlayer/humanlayer/blob/HEAD/.claude/skills/bump-version/SKILL.md
