Installation
Install Seed CLI and set up your first project.
Prerequisites
Seed CLI requires Node.js 24 or later.
# Check your Node.js version
node --versionIf you need to install or update Node.js, visit nodejs.org or use a version manager like fnm or nvm.
Scaffolding a New Project
The fastest way to start is with the create-seedcli scaffolding tool:
npm create seedcli my-clipnpm create seedcli my-cliyarn create seedcli my-cli bun create seedcli my-cliThis creates a new project with:
- Pre-configured
tsconfig.json - Example commands
- Build and compile scripts via
@seedcli/cli - Dev mode with file watching
Manual Installation
Core Package
Every Seed CLI project needs the core package:
npm install @seedcli/corepnpm add @seedcli/coreyarn add @seedcli/corebun add @seedcli/coreIndividual Modules
Install only the modules you need:
# Examples (use your package manager of choice)
npm install @seedcli/print @seedcli/prompt @seedcli/filesystemWhen using modules inside a Seed command's run function, built-in context modules like print, prompt, and filesystem are available automatically via the seed context — no direct install needed.
Umbrella Package
Or install everything at once:
npm install @seedcli/seedpnpm add @seedcli/seedyarn add @seedcli/seedbun add @seedcli/seedProject Structure
The Full template scaffolds the following structure:
my-cli/
├── src/
│ ├── commands/
│ │ └── hello.ts # Example command
│ ├── extensions/
│ │ └── timer.ts # Example extension
│ └── index.ts # Entry point
├── tests/
│ └── hello.test.ts # Example test
├── .gitignore
├── biome.json
├── package.json
├── seed.config.ts # CLI configuration
└── tsconfig.jsonThe Minimal template is slimmer — it omits seed.config.ts and extensions/, but still includes a basic test file. See create-seedcli for a full template comparison.
TypeScript Configuration
The scaffolded tsconfig.json (Full template) includes:
{
"compilerOptions": {
"target": "ESNext",
"module": "ESNext",
"moduleResolution": "bundler",
"esModuleInterop": true,
"strict": true,
"skipLibCheck": true,
"declaration": true,
"isolatedModules": true,
"verbatimModuleSyntax": true,
"noEmit": true,
"types": ["node"]
},
"include": ["src/**/*.ts"],
"exclude": ["node_modules", "dist"]
}For packaging guidance, see Build and Distribution. For the full seed build flag reference, see seed build.