Files
everything-claude-code/.opencode/commands/setup-pm.md

1.5 KiB

description, agent
description agent
Configure package manager preference build

Setup Package Manager Command

Configure your preferred package manager: $ARGUMENTS

Your Task

Set up package manager preference for the project or globally.

Detection Order

  1. Environment variable: CLAUDE_PACKAGE_MANAGER
  2. Project config: .claude/package-manager.json
  3. package.json: packageManager field
  4. Lock file: Auto-detect from lock files
  5. Global config: ~/.claude/package-manager.json
  6. Fallback: First available

Configuration Options

Option 1: Environment Variable

export CLAUDE_PACKAGE_MANAGER=pnpm

Option 2: Project Config

# Create .claude/package-manager.json
echo '{"packageManager": "pnpm"}' > .claude/package-manager.json

Option 3: package.json

{
  "packageManager": "pnpm@8.0.0"
}

Option 4: Global Config

# Create ~/.claude/package-manager.json
echo '{"packageManager": "yarn"}' > ~/.claude/package-manager.json

Supported Package Managers

Manager Lock File Commands
npm package-lock.json npm install, npm run
pnpm pnpm-lock.yaml pnpm install, pnpm run
yarn yarn.lock yarn install, yarn run
bun bun.lockb bun install, bun run

Verification

Check current setting:

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

TIP: For consistency across team, add packageManager field to package.json.