Skip to content
Ironflow is pre-1.0: APIs can change between releases. Pin a version. What is ready →

ironflow init

Create a new Ironflow project from a template.

Terminal window
ironflow init <project-name> [flags]

Each template also writes AGENTS.md (orientation for AI coding agents), CLAUDE.md (imports AGENTS.md), and .mcp.json (starts ironflow mcp read-only). Pass --agent to install the Ironflow skills in the new project and wire that coding agent, or run ironflow skills sync in the project later.

The output is flat, with no src/ directory:

TemplateFiles
quickstartworker.ts (a function, a projection and a worker), package.json, tsconfig.json, .gitignore, README.md, AGENTS.md, CLAUDE.md, .mcp.json; with --skip-install also pnpm-workspace.yaml and pnpm-lock.yaml
go-quickstartmain.go, go.mod, go.sum, .gitignore, README.md, AGENTS.md, CLAUDE.md, .mcp.json

The install step of quickstart deletes pnpm-workspace.yaml and pnpm-lock.yaml from the project, then runs pnpm install or npm install. That step creates the lock file and node_modules. With --skip-install, the project also keeps pnpm-workspace.yaml and pnpm-lock.yaml. They point at monorepo paths. Delete both before you install. go-quickstart writes the same files with or without --skip-install.

Neither template writes a .env file or a push route.

Arguments:

ArgumentRequiredDescription
project-nameYesName of the new project

Flags:

FlagShortTypeDefaultDescription
--template-tstringquickstartProject template (quickstart, go-quickstart)
--skip-installboolfalseSkip installing dependencies
--modulestringGo module path for go-quickstart template
--agentstringInstall the Ironflow skills in the project and wire this coding agent (claude, codex, gemini)

The project name uses letters, digits, hyphens and underscores, starts with a letter or digit, and has at most 128 characters. The command fails when the target directory already exists. When the project is created but the --agent step fails, the command exits non-zero, the project stays on disk, and the error names the command to run inside it.

Prerequisites: quickstart needs Node.js 22 or later, and pnpm or npm unless you pass --skip-install. go-quickstart checks for Go 1.21 or later, but its go.mod declares go 1.26.0: a Go 1.21 to 1.25 toolchain builds it only when it can download the newer toolchain (GOTOOLCHAIN is not local). The install step runs pnpm install (npm install when pnpm is missing) or go get for the latest Go SDK followed by go mod tidy. When the install step fails, the command logs a warning and the project stays on disk.

Examples:

Terminal window
ironflow init my-app
ironflow init my-app --template go-quickstart
ironflow init my-app --template go-quickstart --module github.com/user/my-app
ironflow init my-app --skip-install
ironflow init my-app --agent claude