bi
v1.0.1
Published
The 2-letter dev toolkit. Type less, do more.
Maintainers
Readme
Why?
You work in 5 projects. Three use pnpm, one uses yarn, one uses bun. Every time you switch, you type the wrong install command.
bi fixes this. It reads your lockfile and does the right thing — every time.
bi i # install all deps (auto-detects npm/yarn/pnpm/bun)
bi i lodash # add a package
bi rm lodash # remove a package
bi dev # run dev server
bi x vitest # execute a package (like npx/pnpx/bunx)
bi up # check for outdated deps
bi clean # nuke node_modules & caches
bi init # scaffold a new projectInstall
npm install -g biFor AI Agents 🤖
Every command supports --json for structured, machine-readable output:
bi i lodash --json
# → {"pm":"pnpm","command":"pnpm add lodash","exitCode":0}
bi --help --json
# → full command registry as JSONThis lets AI coding agents (Cursor, Cline, Copilot, etc.) install packages without guessing which package manager your project uses.
Commands
| Command | What it does |
|---|---|
| bi i [pkg...] | Install dependencies |
| bi rm <pkg...> | Remove dependencies |
| bi run <script> | Run a script |
| bi dev / bi build / bi test | Shortcut scripts |
| bi x <pkg> | Execute a package (like npx) |
| bi up | Check for outdated dependencies |
| bi clean | Delete node_modules & caches |
| bi init | Scaffold a new project |
Flags
| Flag | Description |
|---|---|
| --json | Output as JSON (for AI agents) |
| -D / --dev | Install as devDependency |
| -g / --global | Install globally |
| --dry-run | Preview clean without deleting |
| -h / --help | Show help |
| -v / --version | Show version |
How Detection Works
bi checks these in order:
- Lockfiles:
bun.lockb→ bun,pnpm-lock.yaml→ pnpm,yarn.lock→ yarn,package-lock.json→ npm packageManagerfield inpackage.json- PATH lookup for available binaries
- Default: npm
Zero Dependencies
bi uses only Node.js built-in modules. No chalk, no commander, no bloat.
License
MIT © 10iii
