configure-package-management

/configure:package-management

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "configure-package-management" with this command: npx skills add laurigates/claude-plugins/laurigates-claude-plugins-configure-package-management

/configure:package-management

Check and configure modern package managers for optimal development experience.

When to Use This Skill

Use this skill when... Use another approach when...

Setting up a new project with modern package managers (uv, bun) Installing a single dependency — run uv add or bun add directly

Migrating from legacy package managers (pip, npm, yarn, poetry) to modern ones Project uses cargo or go mod (already optimal, no migration needed)

Auditing package manager configuration for best practices Configuring linting or formatting tools — use /configure:linting

Ensuring lock files, dependency groups, and CI/CD integration are properly configured Resolving a specific dependency conflict — debug with uv pip compile or bun install --verbose

Detecting and cleaning up conflicting lock files from multiple managers Only need to install dependencies — run uv sync or bun install directly

Context

  • Project root: !pwd

  • Package files: !find . -maxdepth 1 ( -name 'package.json' -o -name 'pyproject.toml' -o -name 'Cargo.toml' -o -name 'go.mod' )

  • Lock files: !find . -maxdepth 1 ( -name 'uv.lock' -o -name 'bun.lockb' -o -name 'package-lock.json' -o -name 'yarn.lock' -o -name 'pnpm-lock.yaml' -o -name 'poetry.lock' -o -name 'Pipfile.lock' )

  • Python venv: !find . -maxdepth 1 -type d -name '.venv'

  • Legacy files: !find . -maxdepth 1 ( -name 'requirements.txt' -o -name 'Pipfile' )

  • Project standards: !find . -maxdepth 1 -name '.project-standards.yaml'

Parameters

Parse from command arguments:

  • --check-only : Report compliance status without modifications (CI/CD mode)

  • --fix : Apply fixes automatically without prompting

  • --manager <uv|bun|npm|cargo> : Override detection (focus on specific manager)

Modern package manager preferences:

  • Python: uv (replaces pip, poetry, pipenv, pyenv) - 10-100x faster

  • JavaScript/TypeScript: bun (alternative to npm/yarn/pnpm) - significantly faster

  • Rust: cargo (standard, no alternatives needed)

  • Go: go mod (standard, no alternatives needed)

Execution

Execute this package management compliance check:

Step 1: Detect project languages and current package managers

Check for language and manager indicators:

Indicator Language Current Manager Recommended

pyproject.toml

Python uv / poetry / pip uv

requirements.txt

Python pip uv

Pipfile

Python pipenv uv

poetry.lock

Python poetry uv

uv.lock

Python uv uv

package.json

  • bun.lockb

JavaScript/TypeScript bun bun

package.json

  • package-lock.json

JavaScript/TypeScript npm bun

package.json

  • yarn.lock

JavaScript/TypeScript yarn bun

package.json

  • pnpm-lock.yaml

JavaScript/TypeScript pnpm bun

Cargo.toml

Rust cargo cargo

go.mod

Go go mod go mod

Use WebSearch or WebFetch to verify latest versions before configuring.

Step 2: Analyze current configuration state

For each detected language, check configuration:

Python (uv):

  • uv installed and on PATH

  • pyproject.toml exists with [project] section

  • uv.lock exists (lock file)

  • Virtual environment in .venv/

  • Python version pinned in pyproject.toml

  • Dependency groups configured (dev, test, docs)

  • Build system specified (hatchling , setuptools , etc.)

JavaScript/TypeScript (bun):

  • bun installed and on PATH

  • package.json exists

  • bun.lockb exists (lock file)

  • node_modules/ exists

  • Scripts defined (dev , build , test , lint )

  • Type definitions configured (TypeScript)

  • Workspaces configured (if monorepo)

Step 3: Generate compliance report

Print a formatted compliance report:

Package Management Configuration Report

Project: [name] Languages: Python, TypeScript

Python: Package manager uv 0.5.x [MODERN | LEGACY pip] pyproject.toml exists [EXISTS | MISSING] Lock file uv.lock [EXISTS | OUTDATED | MISSING] Virtual environment .venv/ [EXISTS | MISSING] Python version 3.12 [PINNED | NOT PINNED] Dependency groups dev, test, docs [CONFIGURED | MINIMAL] Build backend hatchling [CONFIGURED | MISSING]

JavaScript/TypeScript: Package manager bun 1.1.x [MODERN | npm | yarn] package.json exists [EXISTS | MISSING] Lock file bun.lockb [EXISTS | MISSING] Scripts dev, build, test, lint [COMPLETE | INCOMPLETE] Type definitions tsconfig.json [CONFIGURED | MISSING] Engine constraints package.json engines [PINNED | NOT PINNED]

Overall: [X issues found]

Recommendations:

  • Migrate from pip to uv for faster installs
  • Add uv.lock to version control
  • Configure dependency groups in pyproject.toml
  • Migrate from npm to bun for better performance

If --check-only , stop here.

Step 4: Configure package managers (if --fix or user confirms)

Apply configuration based on detected languages. Use templates from REFERENCE.md:

Python with uv

  • Install uv (via mise, curl, or homebrew)

  • Initialize project with uv init or migrate from existing manager

  • Create/update pyproject.toml with project metadata and dependency groups

  • Generate uv.lock

  • Update .gitignore

JavaScript/TypeScript with bun

  • Install bun (via mise, curl, or homebrew)

  • Remove old lock files (package-lock.json , yarn.lock , pnpm-lock.yaml )

  • Run bun install to generate bun.lockb

  • Update scripts in package.json

  • Update .gitignore

Step 5: Handle migrations

If migrating from a legacy manager:

pip/poetry to uv:

  • Install uv

  • Run uv init

  • Migrate dependencies: uv add -r requirements.txt or copy from poetry

  • Remove old files (requirements.txt , Pipfile , poetry.lock )

  • Update CI/CD workflows

npm/yarn/pnpm to bun:

  • Install bun

  • Remove old lock files and node_modules

  • Run bun install

  • Update scripts to use bun equivalents

  • Update CI/CD workflows

Use migration templates from REFERENCE.md.

Step 6: Configure CI/CD integration

Update GitHub Actions workflows to use modern package managers:

  • Python: Replace pip install with astral-sh/setup-uv@v4
  • uv sync
  • JavaScript: Replace actions/setup-node with oven-sh/setup-bun@v2

Use CI workflow templates from REFERENCE.md.

Step 7: Update standards tracking

Update .project-standards.yaml :

standards_version: "2025.1" last_configured: "[timestamp]" components: package_management: "2025.1" python_package_manager: "uv" javascript_package_manager: "bun" lock_files_committed: true

Step 8: Print final report

Print a summary of changes applied, migrations performed, and next steps for verifying the configuration.

For detailed configuration templates and migration guides, see REFERENCE.md.

Agentic Optimizations

Context Command

Quick compliance check /configure:package-management --check-only

Auto-fix all issues /configure:package-management --fix

Check uv version uv --version

Check bun version bun --version

List Python deps uv pip list --format json

List JS deps bun pm ls --json

Flags

Flag Description

--check-only

Report status without offering migrations

--fix

Apply all migrations automatically without prompting

--manager <manager>

Override detection (uv, bun, npm, cargo)

Examples

Check compliance and offer migrations

/configure:package-management

Check only, no modifications

/configure:package-management --check-only

Auto-migrate Python to uv

/configure:package-management --fix --manager uv

Auto-migrate JavaScript to bun

/configure:package-management --fix --manager bun

Error Handling

  • Multiple Python managers detected: Warn about conflict, suggest single source of truth

  • Missing package manager: Offer to install via mise

  • Invalid pyproject.toml: Report parse error, offer template

  • Lock file conflicts: Warn about multiple lock files, suggest cleanup

  • Workspace/monorepo: Detect and configure workspace settings

See Also

  • /configure:linting

  • Configure linting tools (ruff, biome)

  • /configure:formatting

  • Configure formatters

  • /deps:install

  • Universal dependency installer

  • /configure:all

  • Run all compliance checks

  • uv documentation: https://docs.astral.sh/uv

  • bun documentation: https://bun.sh/docs

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

ruff linting

No summary provided by upstream source.

Repository SourceNeeds Review
General

imagemagick-conversion

No summary provided by upstream source.

Repository SourceNeeds Review
General

jq json processing

No summary provided by upstream source.

Repository SourceNeeds Review
General

api-testing

No summary provided by upstream source.

Repository SourceNeeds Review