Point SpecBridge at an existing Kiro project and it works. There is no import step, no export step, and no conversion — that is the product (migration from Kiro exists as a page only to say so).
.kiro/steering/*.md— steering files, front matter honored..kiro/specs/<name>/—requirements.md(orbugfix.md),design.md,tasks.md; unknown files are listed and preserved; partial specs are reported, never rejected.
Details: Kiro compatibility.
- It never renames, reformats, or annotates
.kirofiles: no front matter, no tool metadata, no re-wrapping. Loading a file and writing it back is byte-identical, verifiable any time withspecbridge compat check. - The one sanctioned edit (flipping a task checkbox after verified completion) changes one character on one line; every other byte stays identical.
- Kiro can reopen the project tomorrow. Nothing about your files depends on SpecBridge.
Runtime state (approvals, evidence, run records) lives in a separate
.specbridge/ directory — never inside .kiro
(sidecar state). You get it in one of two ways:
- implicitly: the first successful
spec approveinitializes state for that spec (origin: existing-kiro-workspace), or - explicitly:
specbridge setup.
Preview-first workspace initialization. The default run is a dry run and writes nothing:
specbridge setup # preview only — reports what --apply would create
specbridge setup --apply # create only the missing sidecar directoriesGuarantees (tested):
--applycreates only missing sidecar directories (.specbridge/,.specbridge/state/specs/) — nothing else is written..kiro/**is never touched, and setup never creates.kiroeither: it refuses to run outside an existing Kiro workspace..specbridge/config.jsonis never created: safe defaults apply without one. Create it later only if you need non-default runners or trusted verification commands.- No
.claudemodification, no provider installation or authentication, no network access.
- Quickstart — the read-only 30-second tour.
- Approval workflow — start recording approvals.
- Migrations & recovery — if you have sidecar state from an older SpecBridge version.