Skip to content

Single Repo (Rung 1)

The first adoption step (see the adoption ladder — each “rung” is a working setup on its own): one repo, specs inline, zero ceremony — no sibling members, no spec-engine.member.json, no spec init.

Need the CLI first? bun add -g @spec-engine/spec-engine puts spec on your PATH — no clone required. See Getting Started.

my-repo/
spec-engine/
ORDERS/SPEC.json ORDERS-001 / ORDERS-002 / ORDERS-003
src/
orders.ts // @spec ORDERS-001 // @spec ORDERS-002
test/
orders.test.ts // @spec ORDERS-001 unit
Terminal window
$ spec index .
$ spec map .
$ spec check .

Spec Engine registers the repo as its own lone member and scans it for tags. The coverage column is the repo’s own basename.

When you outgrow one repo:

Terminal window
$ git mv spec-engine/ ../spec-engine

This lifts the inline specs into a dedicated repo beside this one, turning rung 1 into a multi-repo platform. The repo then pins to it with spec init like any member.