setup-pm

Configure project and global package manager preferences with detection fallback order.

24|5|Updated Feb 8, 2026
One-click install
npx skills add https://github.com/Luohaothu/everything-codex --skill setup-pm-luohaothu
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: setup-pm
Source: https://github.com/Luohaothu/everything-codex/tree/main/skills/setup-pm
Command: npx skills add https://github.com/Luohaothu/everything-codex --skill setup-pm-luohaothu

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Configures your project or global environment to consistently use a chosen package manager (npm, pnpm, yarn, or bun) by leveraging environment cues and configuration files.

Core Features & Use Cases

  • Detects and applies a preferred package manager based on environment variables, project config, and lockfiles.
  • Supports per-project configuration and global user preferences with a clear fallback order.
  • Useful for multi-repo teams to ensure consistent tooling across CI, local development, and deployment.

Quick Start

Run /setup-pm --detect to set your default package manager.

Frequently Asked Questions about setup-pm

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I configure a default package manager for an existing project?

You configure a default package manager by applying settings across local project config, package.json fields, and lockfiles to select pnpm, bun, yarn, or npm. This establishes a consistent tooling preference for your project environment.

What is the detection priority when multiple package manager lockfiles exist?

The detection priority for selecting a package manager follows a strict fallback order: environment variables first, then project config, package.json fields, lockfiles, global user config, and finally a default fallback. This structured priority resolves conflicts when multiple lockfiles exist.

How do I set up consistent package manager tooling for a multi-repo team?

You set up consistent package manager tooling for a multi-repo team by configuring global user settings and project-level lockfile indicators to enforce a unified choice. This guarantees synchronized behavior across CI, local development, and deployment pipelines.

Does package manager configuration support global user settings and environment variables?

Yes, package manager configuration supports global user settings and environment variables. It applies preferences by checking environment variables and global config as part of its detection priority to determine whether to use pnpm, bun, yarn, or npm.

What is the best way to switch from yarn to pnpm in an existing codebase?

The best way to switch to pnpm is to update your project configuration and lockfile indicators to target pnpm. The configuration process uses these explicit settings to override old yarn cues and enforce the newly chosen package manager across your environment.