spec-migrate

Applies pending LiveSpec migrations to upgrade a project's .specs directory to the latest version.

Updated Mar 11, 2026
One-click install
npx skills add https://github.com/julien-m/livespec --skill spec-migrate-julien-m
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: spec-migrate
Source: https://github.com/julien-m/livespec/tree/main/.agent-sync/skills/spec-migrate
Command: npx skills add https://github.com/julien-m/livespec --skill spec-migrate-julien-m

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? LiveSpec projects fall behind as the framework evolves, leaving stale directory structures, broken symlinks, and outdated spec formats. This Skill upgrades an initialized LiveSpec project to the latest repo version by planning and applying only the pending migrations in order. ## Core Features & Use Cases - Planned sequential migrations: Compares the project's livespec-version against the repo VERSION, runs the migration planner, and applies each pending migration via migrate.sh with idempotent DSL actions. - Visual and E2E test scaffolding: After migration, generates Playwright visual baselines, reconciles duplicate or broken test files through six AI checks, and generates complete E2E tests from Gherkin scenarios. - Goal-locked execution: Renders an immutable goal contract and requires proof submission per task, with BLOCKED/ERROR reporting on unmet prerequisites. - Use Case: After pulling a newer LiveSpec checkout, run the migration to bump a project from v10 to v17, recreate broken skill symlinks, and scaffold missing Playwright tests in one pass. ## Quick Start Run /spec-migrate to upgrade this LiveSpec project to the latest version and scaffold any missing visual and E2E tests.

Frequently Asked Questions about spec-migrate

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I upgrade a LiveSpec project to the latest version?

Run /spec-migrate in a project with an existing .specs directory. It compares .specs/livespec-version against the repo VERSION, plans the pending migrations, and applies each one in order using scripts/migrate.sh.

How do I preview LiveSpec migrations without applying them?

Use the --dry-run flag to display which migrations would run and the DSL actions they contain, without writing any changes. The --force flag instead re-runs all migrations from v1, useful when symlinks broke after moving the repo.

What happens if a LiveSpec migration fails partway through?

Re-running spec-migrate is safe because all DSL verbs are idempotent and SET_VERSION is always the last action, so the version only bumps on full success. A non-zero script exit stops the run and reports the error.

Does spec-migrate work if Node.js is not installed?

Core migrations still complete without Node.js. The visual test scaffolding and E2E generation steps log a warning and are skipped, leaving the exit code at 0.

Why does spec-migrate report BLOCKED at step 0?

Step 0 enforces a goal lock before any work. It blocks if another goal is already active, if the livespec goal render command fails, or if the /goal slash command is unavailable in the current environment.