configure-package-management
Package managers: uv (Python), bun (TypeScript). Use when setting up uv or bun, migrating from pip/npm/yarn/poetry/pipenv, or resolving lockfile conflicts.
What this skill does
# /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](REFERENCE.md): #### Python with uv 1. Install uv (via mise, curl, or homebrew) 2. Initialize project with `uv init` or migrate from existing manager 3. Create/update `pyproject.toml` with project metadata and dependency groups 4. Generate `uv.lock` 5. Update `.gitignore` #### JavaScript/TypeScript with bun 1. Install bun (via mise, curl, or homebrew) 2. Remove old lock files (`package-lock.json`, `yarn.lock`, `pnpm-lock.yaml`) 3. Run `bun install` to generate `bun.lockb` 4. Update scripts in `package.json` 5. Update `.gitignore` ### Step 5: Handle migrations If migrating from a legacy manager: **pip/poetry to uv:** 1. Install uv 2. Run `uv init` 3. Migrate dependencies: `uv add -r requirements.txt` or copy from poetry 4. Remove old files (`requirements.txt`, `Pipfile`, `poetry.lock`) 5. Update CI/CD workflows **npm/yarn/pnpm to bun:** 1. Install bun 2. Remove old lock files and `node_modules` 3. Run `bun install` 4. Update scripts to use bun equivalents 5. Update CI/CD workflows Use migration templates from [REFERENCE.md](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@v8` + `uv sync` - **JavaScript**: Replace `actions/setup-node` with `oven-sh/setup-bun@v2` Use CI workflow templates from [REFERENCE.md](REFERENCE.md). ### Step 7: Update standards tracking Update `.project-standards.yaml`: ```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](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 | | `--mana
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.