CtrlK
BlogDocsLog inGet started
Tessl Logo

npm-to-pnpm

Helps contributors switch from npm to pnpm in this repo, including upgrading Node.js to v24 via nvm or volta if needed.

83

Quality

78%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./.agents/skills/npm-to-pnpm/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

72%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description identifies a clear, narrow task (npm to pnpm migration with Node.js upgrade) and uses natural trigger terms that contributors would use. However, it lacks an explicit 'Use when...' clause and could be more specific about the concrete actions performed during the migration process.

Suggestions

Add an explicit 'Use when...' clause, e.g., 'Use when a contributor asks about switching to pnpm, migrating from npm, or upgrading Node.js version in this repo.'

List more concrete actions such as 'updates package-lock.json to pnpm-lock.yaml, modifies scripts, configures .npmrc' to improve specificity.

DimensionReasoningScore

Specificity

Names the domain (npm to pnpm migration) and some actions (upgrading Node.js to v24 via nvm or volta), but doesn't list comprehensive concrete actions like updating lockfiles, modifying package.json scripts, or updating CI configs.

2 / 3

Completeness

The 'what' is reasonably clear (switch from npm to pnpm, upgrade Node.js), but there is no explicit 'Use when...' clause or equivalent trigger guidance, which caps this at 2 per the rubric guidelines.

2 / 3

Trigger Term Quality

Includes strong natural keywords users would say: 'npm', 'pnpm', 'Node.js', 'v24', 'nvm', 'volta'. These are terms a contributor would naturally use when needing help with this migration.

3 / 3

Distinctiveness Conflict Risk

Very specific niche: npm-to-pnpm migration with Node.js v24 upgrade in a particular repo. Unlikely to conflict with other skills due to the narrow, well-defined scope.

3 / 3

Total

10

/

12

Passed

Implementation

85%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This is a well-structured procedural skill with clear branching logic, executable commands, and good edge case handling. Its main weakness is minor verbosity—some explanatory text could be trimmed since Claude can infer context. Overall it's a strong, actionable migration guide.

Suggestions

Trim explanatory phrases Claude already knows, such as 'Parse the major version from the output (e.g. v22.1.0 → 22)' and 'This repo uses pnpm' to improve token efficiency.

Condense Step 4 into a single line like '## Step 4: Inform the user that pnpm is active and package-lock.json has been replaced by pnpm-lock.yaml.'

DimensionReasoningScore

Conciseness

Mostly efficient but has some unnecessary explanation. Phrases like 'This repo uses pnpm' and 'Parse the major version from the output' explain things Claude already knows. Step 4 is somewhat verbose for what amounts to 'tell the user pnpm is ready.' However, the overall structure is reasonably tight.

2 / 3

Actionability

Every step provides concrete, executable bash commands. The branching logic is explicit with clear conditions (major version checks, version manager availability). Commands are copy-paste ready and specific to the repo's setup (e.g., .nvmrc set to 24, frozen-lockfile flag).

3 / 3

Workflow Clarity

The multi-step process is clearly sequenced with explicit branching logic, early exit conditions (Step 0), and stop points (neither version manager found). The workflow handles edge cases (pnpm already installed, old pnpm version, nvm vs volta) with clear decision trees. The destructive operation (rm -f package-lock.json) is appropriate since it's replacing one lockfile format with another in a controlled migration.

3 / 3

Progressive Disclosure

For a skill of this scope (single procedural task, ~80 lines), the content is well-organized with clear section headers and internal anchor links for navigation. No bundle files are needed, and the content doesn't warrant splitting into multiple files. The structure supports easy scanning.

3 / 3

Total

11

/

12

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation11 / 11 Passed

Validation for skill structure

No warnings or errors.

Repository
cloudflare/cloudflare-docs
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.