Skip to main content
Kodelyth ECC
Command

/setup-pm

Configure your preferred package manager (npm/pnpm/yarn/bun)

Run:/setup-pm

Package Manager Setup

Configure your preferred package manager for this project or globally.

Usage

# Detect current package manager
node scripts/setup-package-manager.js --detect

Set global preference

node scripts/setup-package-manager.js --global pnpm

Set project preference

node scripts/setup-package-manager.js --project bun

List available package managers

node scripts/setup-package-manager.js --list

Detection Priority

When determining which package manager to use, the following order is checked:

  • Environment variable: CLAUDE_PACKAGE_MANAGER
  • Project config: .claude/package-manager.json
  • package.json: packageManager field
  • Lock file: Presence of package-lock.json, yarn.lock, pnpm-lock.yaml, or bun.lockb
  • Global config: ~/.claude/package-manager.json
  • Fallback: First available package manager (pnpm > bun > yarn > npm)

Configuration Files

Global Configuration

// ~/.claude/package-manager.json
{
  "packageManager": "pnpm"
}

Project Configuration

// .claude/package-manager.json
{
  "packageManager": "bun"
}

package.json

{
  "packageManager": "pnpm@8.6.0"
}

Environment Variable

Set CLAUDE_PACKAGE_MANAGER to override all other detection methods:

# Windows (PowerShell)
$env:CLAUDE_PACKAGE_MANAGER = "pnpm"

macOS/Linux

export CLAUDE_PACKAGE_MANAGER=pnpm

Run the Detection

To see current package manager detection results, run:

node scripts/setup-package-manager.js --detect