/bun:add
Add a package to dependencies using Bun.
When to Use This Skill
| Scenario | Use this skill | Alternative |
|----------|---------------|-------------|
| Quickly adding a single package | Yes | N/A |
| Adding a dev dependency | Yes | N/A |
| Pinning an exact package version | Yes | N/A |
| Installing all project dependencies | No - use bun-package-manager | bun install |
| Removing or updating packages | No - use bun-package-manager | N/A |
| Managing workspace dependencies | No - use bun-package-manager | N/A |
Parameters
Parse $ARGUMENTS. These are supplied by the caller; nothing substitutes
them for you.
| Token in $ARGUMENTS | Binds | Default when absent |
|---|---|---|
| First non-flag token (required) | PACKAGE — name, optionally with a version (lodash, react@18) | none — ask for it rather than guessing |
| --dev | add to devDependencies | added to dependencies |
| --exact | pin the exact version (no ^ range) | caret range |
Execution
Pick the row matching the flags the caller passed, substitute PACKAGE, and run it:
| Flags in $ARGUMENTS | Command |
|---|---|
| (none) | bun add PACKAGE |
| --dev | bun add --dev PACKAGE |
| --exact | bun add --exact PACKAGE |
| --dev --exact | bun add --dev --exact PACKAGE |
Examples
# Add runtime dependency
bun add express
# Add dev dependency
bun add --dev typescript vitest
# Pin exact version
bun add --exact react@18.2.0
# Add to specific workspace
bun add lodash --cwd packages/utils
# Preview without writing package.json
bun add --dry-run zod
Post-add
- Report package version added
- Show dependency tree impact with
bun why <package> - Suggest running tests to verify compatibility