pnpm-upgrade
Keep pnpm current: run pnpm self-update/corepack prepare, align packageManager in package.json, and bump pnpm/action-setup + pinned pnpm versions in .github/workflows to the latest release. Use this when refreshing the pnpm toolchain manually or in automation.
Installation
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
View source ↗GuidesSkill instructions
pnpm Upgrade
Use these steps to update pnpm and CI pins without blunt search/replace.
Steps (run from repo root)
-
Update pnpm locally
- Try
pnpm self-update; if pnpm is missing or self-update fails, runcorepack prepare pnpm@latest --activate. - Capture the resulting version as
PNPM_VERSION=$(pnpm -v).
- Try
-
Align package.json
- Open
package.jsonand setpackageManagertopnpm@${PNPM_VERSION}(preserve trailing newline and formatting).
- Open
-
Find latest pnpm/action-setup tag
- Query GitHub API:
curl -fsSL https://api.github.com/repos/pnpm/action-setup/releases/latest | jq -r .tag_name. - Use
GITHUB_TOKEN/GH_TOKENif available for higher rate limits. - Store as
ACTION_TAG(e.g.,v4.2.0). Abort if missing.
- Query GitHub API:
-
Update workflows carefully (no broad regex)
- Files: everything under
.github/workflows/that usespnpm/action-setup. - For each file, edit by hand:
- Set
uses: pnpm/action-setup@${ACTION_TAG}. - If a
with: version:field exists, set it to${PNPM_VERSION}(keep quoting style/indent).
- Set
- Do not touch unrelated steps. Avoid multiline sed/perl one-liners.
- Files: everything under
-
Verify
- Run
pnpm -vand confirm it matchespackageManager. -
git diffto ensure only intended workflow/package.json changes.
- Run
-
Follow-up
- If runtime code/build/test config was changed (not typical here), run
$code-change-verification; otherwise, a light check is enough. - Commit with
chore: upgrade pnpm toolchainand open a PR (automation may do this).
- If runtime code/build/test config was changed (not typical here), run
Notes
- Tools needed:
curl,jq,node,pnpm/corepack. Install if missing. - Keep edits minimal and readable—prefer explicit file edits over global replacements.
- If GitHub API is rate-limited, retry with a token or bail out rather than guessing the tag.
Examples
Read the usage examples in the source repository.
View source ↗Source history
- Indexed on
- 2026-01-20
- Index updated
- 2026-01-28
- Branch
- main
Index and sync dates describe this directory. View the source repository for code history.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!