Link Workspace Packages
nomcopter/react-mosaic
Link workspace packages in monorepos (npm, yarn, pnpm, bun).
Run the tests that cover a change in the pnpm repository, in the Rust workspace (pnpm/, pnpr/) or the TypeScript CLI (pnpm11/), and recognize the cases where a scoped run passes without testing…
$ npx skills add pnpm/pnpm --skill testing-changes -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install pnpm/pnpm testing-changes --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/pnpm/pnpm.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/testing-changes .claude/skills/testing-changes && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "testing-changes" agent skill from https://github.com/pnpm/pnpm/tree/main/.agents/skills/testing-changes into .claude/skills/testing-changes/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "testing-changes", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/pnpm/pnpm/tree/main/.agents/skills/testing-changesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add pnpm/pnpm --skill testing-changes -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install pnpm/pnpm testing-changes --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/pnpm/pnpm.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/testing-changes .agents/skills/testing-changes && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "testing-changes" agent skill from https://github.com/pnpm/pnpm/tree/main/.agents/skills/testing-changes into .agents/skills/testing-changes/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "testing-changes", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add pnpm/pnpm --skill testing-changes -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install pnpm/pnpm testing-changes --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/pnpm/pnpm.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/testing-changes .cursor/skills/testing-changes && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "testing-changes" agent skill from https://github.com/pnpm/pnpm/tree/main/.agents/skills/testing-changes into .cursor/skills/testing-changes/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "testing-changes", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/pnpm/pnpm.git --path .agents/skills/testing-changes--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add pnpm/pnpm --skill testing-changes -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install pnpm/pnpm testing-changes --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/pnpm/pnpm.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/testing-changes .gemini/skills/testing-changes && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "testing-changes" agent skill from https://github.com/pnpm/pnpm/tree/main/.agents/skills/testing-changes into .gemini/skills/testing-changes/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "testing-changes", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install pnpm/pnpm testing-changesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add pnpm/pnpm --skill testing-changes -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/pnpm/pnpm.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/testing-changes .github/skills/testing-changes && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "testing-changes" agent skill from https://github.com/pnpm/pnpm/tree/main/.agents/skills/testing-changes into .github/skills/testing-changes/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "testing-changes", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add pnpm/pnpm --skill testing-changes -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install pnpm/pnpm testing-changes --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/pnpm/pnpm.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/testing-changes .opencode/skills/testing-changes && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "testing-changes" agent skill from https://github.com/pnpm/pnpm/tree/main/.agents/skills/testing-changes into .opencode/skills/testing-changes/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "testing-changes", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
testing-changesRun the tests that cover a change in the pnpm repository, in the Rust workspace (pnpm/, pnpr/) or the TypeScript CLI (pnpm11/), and recognize the cases where a scoped run passes without testing…
Testing Changes is an agent skill from pnpm/pnpm. Run the tests that cover a change in the pnpm repository, in the Rust workspace (pnpm/, pnpr/) or the TypeScript CLI (pnpm11/), and recognize the cases where a scoped run passes without testing anything. Use whenever verifying a change before committing or pushing, or when deciding what to run after an edit.
Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development. It works with pnpm, Rust, TypeScript and npm. The repository describes itself as: Fast, disk space efficient package manager. The licence is MIT.
Read from SKILL.md and the folder at commit 142365b. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
pnpmjustcargonodeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use pnpm, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Testing Changes loads about 1.1k tokens when it runs. Until then it costs about 81 tokens; SKILL.md has 575 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from pnpm/pnpm at commit 142365b, republished under its MIT licence (© pnpm). 575 words, ~1,143 tokens.
.claude/skills/testing-changes/SKILL.md (or your agent's skills folder).Run what the change affects. CI runs the full suite on three platforms for every pull request, so the local job is fast feedback, not a second gate. The per-commit checks are in pnpm/CONTRIBUTING.md.
pnpm/, pnpr/)Run the tests through the root package.json scripts from the repository root: pnpm test:rust-affected, pnpm test:rust, pnpm test:rust-smoke. They wrap the just recipes and node scripts named below, pass their arguments through, and let a task concurrency group (concurrencyGroups in pnpm-workspace.yaml) hold the runs of every worktree on the machine to a limit it can carry. A bare cargo or just slips past that limit.
Run pnpm test:rust-affected (just test-affected). It decides three things for you: it selects every pnpr-* crate together, it refuses to scope a change that reaches files every crate compiles against and points at just ready instead, and it runs the smoke profile in place of dependents it did not select. It prints what it selected and what it left out; --help lists its flags.
What it cannot decide is which end-to-end tests exercise your change. Smoke gives breadth across areas, not depth in the one you touched, so for a user-visible change add the suite modules for that area:
pnpm test:rust-affected -- -p pnpm-cli -E 'test(catalog::)'Each file under crates/cli/tests/suite/ is a module of one test target, so test(<file_stem>::) selects that file's tests.
For anything narrower, pnpm test:rust (node pnpm/scripts/run-rust-tests.mjs) takes the same arguments cargo nextest run does — -p <crate> for one crate, -E 'test(<name>)' for one test. Prefer -p over a package() filterset: -p restricts what cargo builds, a filterset only selects among binaries that were built anyway.
pnpm test:rust, not bare cargo nextest. It strips npm_config_* and pnpm_config_* and points XDG_CONFIG_HOME and the auth npmrc at a throwaway directory, as just test does. A bare run lets your own npmrc reach the tests, which fails for you and nobody else.pnpr-* crates must be selected together. Cargo unifies features across the selection, so a lone pnpr-* crate builds without pnpr's default backend features and its backend tests skip silently. just test-pnpr selects the whole set.insta snapshots change only for a reason. Read the diff, then cargo insta review. Never accept blindly.just sweep-test-temp clears the ones older than an hour.known_failures modules hold ported tests for unimplemented behavior; just known-failures lists them. A failure there is expected, a pass is not.Do not reach for nextest's rdeps() to widen a selection. pnpm-cli holds a third of the workspace's tests and sits downstream of nearly every crate, so rdeps() on anything core selects 84% or more of the suite. Restructuring that target is pnpm/pnpm#14984.
pnpm11/)pnpm --filter <package_name> test # one package
pnpm --filter <package_name> test <file_path> # one file
pnpm --filter <package_name> test <file_path> -t <name_pattern> # one caseThe end-to-end tests in pnpm11/pnpm/test/ run the bundled pnpm11/pnpm/dist/pnpm.mjs, not each package's lib/. After changing any TypeScript package, rebuild the bundle before running them:
pnpm --filter pnpm run compileSkip that and the run tests the previous bundle, passing without ever touching your change.
A bug present in both pnpm v11 and v12 is fixed in both, so it is tested in both. Run the TypeScript test for the scenario and the Rust test for the same scenario before calling the fix done.
Name what you ran. "Ran pnpm-lockfile plus the catalog e2e module; did not run the full workspace suite" is an honest report. "Tests pass" after a single-crate run is not.
© pnpm, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/testing-changes of pnpm/pnpm.
Open the folder on GitHubat commit 142365b
Testing Changes next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Testing Changes this skillpnpm/pnpm | 37k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Link Workspace Packagesnomcopter/react-mosaic | 4.8k | 6 repos | ~760 | Automated safety check: Pass | Custom licence | |
| Pnpm Engineteambit/bit | 18k | — | ~1.9k | Automated safety check: Pass | Custom licence | |
| Linea Dependency MaintenanceConsensys-Incorporated/linea-attestation-registry | 177 | 1 repos | ~3.7k | Automated safety check: Warn | MIT | |
| Releaseseasonedcc/remix-forms | 514 | — | ~1.3k | Automated safety check: Pass | MIT | |
| TS SDK Authormindfold-ai/Trellis | 15k | — | ~6.1k | Automated safety check: Pass | MIT |
nomcopter/react-mosaic
Link workspace packages in monorepos (npm, yarn, pnpm, bun).
teambit/bit
Work on the pnpm Rust engine (@pnpm/napi, the pacquet crates) that bit install runs through.
Consensys-Incorporated/linea-attestation-registry
Safely plan and execute dependency maintenance for JavaScript/TypeScript (npm, pnpm) and GitHub Actions, including npm lockfiles, pnpm workspaces, catalogs, overrides, SHA-pinned action versions…
seasonedcc/remix-forms
Release a new version of the remix-forms npm package. An agent skill from seasonedcc/remix-forms.
mindfold-ai/Trellis
Design, build, verify, and publish production-grade TypeScript SDKs as npm packages inside a pnpm monorepo.
web-infra-dev/rslint
Prepare a stable release PR for the unified rslint npm packages by updating package versions and rule/TypeScript release metadata.
pnpm/pnpm
Take a change through a pull request in the pnpm repository — opening it, then staying with it after every push until CI is green and the review round is quiet.
pnpm/pnpm
Curate a pending release page - merging entries that describe one change, dropping notes for defects that never shipped, ordering by importance, and checking the version the intents ask for.
pnpm/pnpm
Review a pnpm diff or pull request against the repository review guide and product conventions, verify findings, and report actionable issues.
pnpm/pnpm
Implement a pnpm feature, bug fix, or refactor by checking existing capabilities, prioritizing code reuse and deduplication, assessing architecture impact, and validating the final change.
pnpm/pnpm
Review and fix an existing pnpm pull request, rebase it, commit and push fixes, then follow CI and review to completion.
pnpm/pnpm
Triage an incoming GitHub issue against the pnpm codebase and related open issues, then apply exactly one implementation-readiness label using pnpm's state: taxonomy.
Works with
Categories
Run the tests that cover a change in the pnpm repository, in the Rust workspace (pnpm/, pnpr/) or the TypeScript CLI (pnpm11/), and recognize the cases where a scoped run passes without testing…. Testing Changes is an agent skill from pnpm/pnpm. Run the tests that cover a change in the pnpm repository, in the Rust workspace (pnpm/, pnpr/) or the TypeScript CLI (pnpm11/), and recognize the cases where a scoped run passes without testing anything.
Testing Changes fits situations like: verifying a change before committing; deciding what to run after an edit.
Run `npx skills add pnpm/pnpm --skill testing-changes -a claude-code`. Or copy the skill folder (.agents/skills/testing-changes in pnpm/pnpm) into .claude/skills/testing-changes in your project. Claude Code loads it when a task matches its description.
Run `npx skills add pnpm/pnpm --skill testing-changes -a codex`. Or copy the skill folder (.agents/skills/testing-changes in pnpm/pnpm) into .agents/skills/testing-changes in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add pnpm/pnpm --skill testing-changes -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/testing-changes, .gemini/skills/testing-changes, .github/skills/testing-changes and .opencode/skills/testing-changes in your project.
Going by SKILL.md and its folder, Testing Changes needs the command-line tools its instructions call (pnpm, just, cargo and node).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Testing Changes is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Testing Changes: Link Workspace Packages (nomcopter/react-mosaic, 4.8k stars), Pnpm Engine (teambit/bit, 18k stars), Linea Dependency Maintenance (Consensys-Incorporated/linea-attestation-registry, 177 stars) and Release (seasonedcc/remix-forms, 514 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
pnpm (a GitHub organization) maintains it in pnpm/pnpm, which has 36,758 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 7, 2026.
Source: pnpm/pnpm on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.