Reference

spec new

Create the next specification document under dirs.specs (numbered Markdown with YAML frontmatter). The frontmatter is filled from the spec-metadata schema defaults; the spec id and creation date are set automatically from the next number in the sequence and today's date. Flags override individual fields, and on an interactive terminal any field left unset is collected through an inline themed form. With --yes (or when there is no terminal) the file is written from defaults plus flags and --title is required. Use --body to set the Markdown body directly instead of the default skeleton. The author defaults to your git user.name.

Optional

--title

string default ""

Spec title; also the source of the filename slug unless --slug is given.

--slug

string default ""

Filename slug (overrides the title-derived slug); must match ^[a-z0-9][a-z0-9-]*$.

--description

string default ""

One-paragraph summary of the spec.

--status

string default "draft"

Lifecycle state: draft, active, deprecated, or superseded.

--parent

string default ""

Parent spec id like #0002; repeatable.

--tag

string default ""

Lowercase topic tag; repeatable.

--author

string default ""

Author display name (default: git config user.name).

--target-dir

string default ""

Advisory repository-relative directory this spec targets.

--body

string default ""

Markdown body written below the frontmatter (default: skeleton template).

-y, --yes

boolean default false

Non-interactive: never prompt (requires --title).

--edit

boolean default false

Open the created spec in $EDITOR afterward.