Backend & APISûr100100/100
Publish Npm Version (Prisma)
Cuts the next release of the unified Prisma CLI: bumps the root package.json version (on the Prisma 8 RC line: 8.0.0-rc.N → rc.N+1), propagates it to every lockstep workspace package, and opens a PR titled "chore(release): bump to <next-version>". When the maintainer merges the PR, the `Publish to npm` workflow ships @prisma/cli-engine and @prisma/cli under dist-tag `latest` (RC versions get a pre-release GitHub Release). Use when a maintainer asks to "cut the next RC", "cut the next release", "bump to the next version", "open a release PR", or "prepare a publish PR".
ou envoie-le directement à ton agent.
Installer dans ton projet
$ curl -fsSL https://arboristhree.xyz/cli/install-skill.mjs -o /tmp/arboris-install-skill.mjs && node /tmp/arboris-install-skill.mjs publish-npm-version__prisma-prisma-cli__skills-contrib-82d1c2417cc4Prisma
prisma/prisma-cli
Contenu à copier
---
name: publish-npm-version
description: >-
Cuts the next release of the unified Prisma CLI: bumps the root
package.json version (on the Prisma 8 RC line: 8.0.0-rc.N → rc.N+1),
propagates it to every lockstep workspace package, and opens a PR
titled "chore(release): bump to <next-version>". When the maintainer
merges the PR, the `Publish to npm` workflow ships @prisma/cli-engine
and @prisma/cli under dist-tag `latest` (RC versions get a
pre-release GitHub Release). Use when a maintainer asks to "cut the
next RC", "cut the next release", "bump to the next version", "open
a release PR", or "prepare a publish PR".
metadata:
origin: Prisma
---
# Publish next npm version
## Audience
Maintainers of the unified Prisma CLI with permission to push branches
and open PRs in prisma/prisma-cli. The skill runs locally, never as a
GitHub Action — a locally opened PR triggers CI normally, which is the
point of a reviewable release PR.
## Background reading
Read [`docs/oss/versioning.md`](../../docs/oss/versioning.md) first. It
covers the source-of-truth model (root `package.json` `version`), the
lockstep guarantee (`@prisma/compute` excluded by ruling), the Prisma 8 RC
line, the dist-tag convention, and the release procedure this skill is
one step of. One note specific to this
repo: the lockstep excludes `@prisma/compute` by operator ruling.
## Pre-flight
No requirement to be on `main` or have a clean tree — all work happens
in a fresh worktree off `origin/main`. Confirm `git fetch origin main`
succeeds; if not, stop and surface the issue.
## Procedure
1. **Fetch and determine the target version.**
```bash
git fetch origin main
CURRENT=$(git show origin/main:package.json | node -e 'process.stdout.write(JSON.parse(require("fs").readFileSync(0,"utf8")).version)')
NEXT=$(node -e "import('./scripts/determine-version-utils.ts').then(m => process.stdout.write(m.computeNextReleaseVersion(process.argv[1])))" "$CURRENT")
echo "$CURRENT → $NEXT"
```
`$NEXT` names the branch and PR; step 3 recomputes the authoritative
value inside the fresh worktree and the two must agree.
2. **Create a fresh worktree off `origin/main`.**
```bash
git worktree add -b "release/$NEXT" "../release-$NEXT" origin/main
cd "../release-$NEXT"
```
3. **Bump.** `pnpm install --frozen-lockfile --ignore-scripts` if the
worktree has no `node_modules`, then `pnpm bump-version`. Confirm the
version it wrote matches `$NEXT`; on mismatch the worktree's value is
authoritative — remove worktree and branch, restart from step 1.
4. **Check the lockfile moved.** `pnpm bump-version` refreshes
`pnpm-lock.yaml` itself, because internal deps are pinned
`workspace:<version>` and a stale lockfile fails every later frozen
install with `ERR_PNPM_OUTDATED_LOCKFILE`. If it is missing from the
diff, stop — the bump did not finish.
5. **Sanity-check the diff.** Only `package.json` files and
`pnpm-lock.yaml`; manifests change exactly `version` +
`workspace:<old> → workspace:<new>`; the excluded
`packages/compute/package.json` is untouched.
6. **Commit** everything in one commit:
```text
chore(release): bump to <version>
```
7. **Push the branch** to `origin`.
8. **Open the PR** with `gh pr create`. Use the title:
```text
Bump to version <version>
```
Body: previous → new version; link
[`docs/oss/versioning.md`](../../docs/oss/versioning.md); note that
**merging this PR ships the release** — the squashed push to `main`
changes the root version with the release marker, the `Publish to
npm` workflow publishes `@prisma/cli-engine` then `@prisma/cli`
under `latest`, and a GitHub Release (pre-release on the RC line) is
created with generated notes. This repo has no committed
release-notes file gate; review the generated notes on the Release
after merge.
9. **Stop and report** the PR URL and the worktree path. Do not merge —
the merge is the human gate that triggers the publish. The
maintainer removes the worktree after merge
(`git worktree remove ../release-<version>`).
## Idempotency
`pnpm bump-version` reads the root version from `git show
HEAD:package.json`, so re-running in the same worktree cannot
double-bump. The skill as a whole is not idempotent: step 2 fails if
the branch/worktree already exist — remove them
(`git worktree remove ../release-$NEXT`; `git branch -D
release/$NEXT`) or continue inside the existing worktree from step 3.
Do not stack bumps.
## Out of scope
- **Merging the PR** (human gate; merging is the publish trigger).
- **Patch releases.** On the RC line a fix is just the next `rc.N`.
- **Beta tags** — hand-cut via `workflow_dispatch` of `Publish to npm`
with the `beta` dist-tag; this skill always advances the release
version.
- **`@prisma/compute`** — excluded from the lockstep by operator ruling
(2026-08-10); it versions and publishes independently
(`publish-compute.yml`) pending extraction to another repo.Colle ce Markdown dans ton agent ou utilise les boutons ci-dessus pour l’écrire dans ton projet.
Ce que fait Publish Npm Version (Prisma)
**Merging the PR** (human gate; merging is the publish trigger).
**Patch releases.** On the RC line a fix is just the next `rc.N`.
**Beta tags** — hand-cut via `workflow_dispatch` of `Publish to npm`
**`@prisma/compute`** — excluded from the lockstep by operator ruling
Comment utiliser Publish Npm Version (Prisma)
1
Copie le prompt
Un clic copie le prompt packagé (ou l'envoie à ton agent).
2
L'agent installe le skill
Il ajoute le SKILL.md et ses ressources à ton projet.
3
Activation automatique
Le skill s'active dès que le contexte correspond.
Déclencheurs pour Publish Npm Version (Prisma)
Dis simplement à ton agent quelque chose comme :
Applique le skill publish-npm-version__prisma-prisma-cli__skills-contrib-82d1c2417cc4 à cette tâche
Utilise publish-npm-version__prisma-prisma-cli__skills-contrib-82d1c2417cc4 pour améliorer cette implémentation
Passe en revue ce sujet avec publish-npm-version__prisma-prisma-cli__skills-contrib-82d1c2417cc4
Skills liés à Publish Npm Version (Prisma)
Activate Site (Microsoft)
Activates and provisions a Power Pages website in a Power Platform environment via the Power Platform REST API. Use when the user wants to activate, provision, turn on, or enable a Power Pages website or portal.IA Core (TanStack)
Entry point for TanStack AI skills. Routes to chat-experience, tool-calling, media-generation, structured-outputs, adapter-configuration, ag-ui-protocol, middleware, locks, custom-backend-integration, and debug-logging, plus the skills shipped by companion packages (@tanstack/ai-persistence, @tanstack/ai-code-mode). Use chat() not streamText(), openaiText() not createOpenAI(), toServerSentEventsResponse() not manual SSE, middleware hooks not onEnd callbacks.api-connector-builder
Build a new API connector or provider by matching the target repo's existing integration pattern exactly. Use when adding one more integration without inventing a second architecture.