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
Details
Usage
After installing, this skill will be available to your AI coding assistant.
Verify installation:
npx agent-skills-cli listSkill Instructions
name: pnpm-upgrade description: '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.'
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:
-
Resolve the action tag to an immutable commit SHA
- Run
git ls-remote https://github.com/pnpm/action-setup "refs/tags/${ACTION_TAG}^{}"and capture the SHA asACTION_SHA. - If the dereferenced tag is missing, fall back to
git ls-remote https://github.com/pnpm/action-setup "refs/tags/${ACTION_TAG}". - Abort if
ACTION_SHAis empty.
- Run
-
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_SHA}. - 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.
- GitHub Actions must stay pinned to commit SHAs, not tags. Use the latest release tag only to discover the commit SHA to pin.
- If GitHub API is rate-limited, retry with a token or bail out rather than guessing the tag.
More by openai
View allInstall Codex skills into $CODEX_HOME/skills from a curated list or a GitHub repo path. Use when a user asks to list installable skills, install a curated skill, or install a skill from another repo (including private repos).
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Codex's capabilities with specialized knowledge, workflows, or tool integrations.
Install Codex skills into $CODEX_HOME/skills from a curated list or a GitHub repo path. Use when a user asks to list installable skills, install a curated skill, or install a skill from another repo (including private repos).
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Codex's capabilities with specialized knowledge, workflows, or tool integrations.
