Skip to content

wb init

Create a new project with Workbench scaffolding.

Synopsis

bash
wb init [path] [flags]

Description

The init command creates a new project with all necessary configuration files, dependencies, and boilerplate code. It can run interactively (prompting for options) or non-interactively with flags.

Arguments

ArgumentDescription
pathProject directory (optional, defaults to current directory)

Flags

FlagDescription
--kindProject type: website, tui, ios
--deploymentDeployment target: cloudflare, railway (website only)
--convex / --no-convexInclude Convex backend
--non-interactiveRequire all options via flags, no prompts
--templatesCustom template source (ref or path)
-y, --yesAccept defaults and skip confirmations

Global Flags

FlagDescription
--cwdWorking directory (default: .)
--jsonOutput machine-readable JSON
-v, --verboseEnable verbose logging
-h, --helpShow help

Examples

Interactive Mode

Start the project wizard:

bash
wb init my-project

You'll be prompted for project type, features, and other options.

Create in Current Directory

bash
mkdir my-project && cd my-project
wb init

Specify Project Type

bash
wb init my-cli --kind tui

Website with Deployment

bash
wb init my-site --kind website --deployment cloudflare

Include Convex Backend

bash
wb init my-app --kind website --convex

Non-Interactive

Skip all prompts by providing all required flags:

bash
wb init my-project --kind website --deployment cloudflare --non-interactive

Accept Defaults

bash
wb init my-project --kind website -y

Output

On success, init displays:

Created website project: my-project
Location: /Users/you/projects/my-project

Next steps:
  cd my-project
  mise install
  mise run dev

JSON Output

With --json, returns structured output:

json
{
  "path": "/Users/you/projects/my-project",
  "kind": "website",
  "name": "my-project",
  "features": ["convex"]
}

Generated Files

Depending on project type, init creates:

FilePurpose
.workbench.tomlWorkbench project configuration
mise.tomlTool versions and tasks
README.mdProject documentation
AGENTS.mdAI agent guidelines
.gitignoreGit ignore patterns

Plus project-specific files (see Project Types).

See Also