Installation
Install Seed CLI and set up your first project.
Prerequisites
Seed CLI requires Bun 1.3 or later.
# Check your Bun version
bun --versionIf you don't have Bun installed:
curl -fsSL https://bun.sh/install | bashScaffolding a New Project
The fastest way to start is with the create-seedcli scaffolding tool:
bun create seedcli my-cliThis creates a new project with:
- Pre-configured
tsconfig.json - Example commands
- Build scripts for both npm package and standalone binary
- Dev mode with
bun --watch
Manual Installation
Core Package
Every Seed CLI project needs the core package:
bun add @seedcli/coreIndividual Modules
Install only the modules you need:
bash bun add @seedcli/print bash bun add @seedcli/prompt bash bun add @seedcli/filesystem bash bun add @seedcli/system bash bun add @seedcli/http Umbrella Package
Or install everything at once:
bun add @seedcli/seedProject Structure
A typical Seed CLI project looks like this:
my-cli/
├── src/
│ ├── commands/
│ │ └── hello.ts # Example command
│ ├── extensions/
│ │ └── timer.ts # Example extension
│ └── index.ts # Entry point
├── tests/
│ └── hello.test.ts # Example test
├── biome.json
├── bunfig.toml
├── package.json
├── seed.config.ts # CLI configuration
└── tsconfig.jsonTypeScript Configuration
Seed CLI is TypeScript-first. Your tsconfig.json should include:
{
"compilerOptions": {
"target": "ESNext",
"module": "ESNext",
"moduleResolution": "bundler",
"esModuleInterop": true,
"strict": true,
"skipLibCheck": true,
"declaration": true,
"isolatedModules": true,
"verbatimModuleSyntax": true,
"noEmit": true,
"types": ["@types/bun"]
},
"include": ["src/**/*.ts"],
"exclude": ["node_modules", "dist"]
}Building
bash bunx seed build --outdir dist --target bun bash bunx seed build --compile --outfile my-cliBun's --compile flag produces a single executable binary with no runtime
dependencies.