From speckit-pro
Installs the official SpecKit CLI and initializes one or both coding-agent integrations (Claude Code, Codex CLI). Detects existing installs and hands off to /speckit-pro:speckit-upgrade rather than overwriting. Optionally installs the curated set of community extensions and presets. Use when the user says "install speckit", "set up speckit", "initialize speckit", "add speckit to this repo", "install spec-kit", "bootstrap speckit", "first-time speckit setup", "install the specify cli", "set up specify", or wants to install for claude only, codex only, or both side-by-side. Not for upgrading an existing install (use /speckit-pro:speckit-upgrade) or running workflows (use /speckit-pro:speckit-autopilot).
How this skill is triggered — by the user, by Claude, or both
Slash command
/speckit-pro:speckit-install (optional) integration keys, e.g. 'claude', 'codex', or 'claude codex'(optional) integration keys, e.g. 'claude', 'codex', or 'claude codex'This skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Installed Claude and Codex surfaces resolve Python 3.11 or newer, invoke
Installed Claude and Codex surfaces resolve Python 3.11 or newer, invoke
[resolved_python, "-m", "speckit_pro_runner"], send one JSON request on
stdin, read one JSON response from stdout, and surface stderr diagnostics.
Do not add a shell fallback, jq parsing path, Git Bash, WSL, or
PowerShell-specific command-language requirement for installed workflows.
/speckit-pro:speckit-install # interactive — asks which integrations
/speckit-pro:speckit-install claude # claude only
/speckit-pro:speckit-install codex # codex only
/speckit-pro:speckit-install claude codex # both (dual-integration)
Use command execution to check whether specify --version succeeds after
including common user-local binary directories on PATH.
specify, the CLI is installed. Capture the
version and move on.uv is available.uv is present, install with uv tool install specify-cli --from git+https://github.com/github/spec-kit.git.uv is missing, STOP and instruct the operator to install uv
from the official Astral documentation, then re-run
/speckit-pro:speckit-install.Inspect whether .specify/ exists and record the state as PRESENT or
ABSENT.
If .specify/ is PRESENT:
specify integration list to see which integrations are already
installed.<list>). Use /speckit-pro:speckit-upgrade to upgrade
safely, or add a new integration alongside the existing ones with
specify integration install <key>."/speckit-pro:speckit-upgrade, (b) add a
new integration alongside the existing ones, or (c) abort./speckit-pro:speckit-upgrade.specify init, go straight to Step 4 with
the operator's chosen integrations.If .specify/ is ABSENT: continue to Step 3.
If the operator passed integration keys as arguments (e.g.,
/speckit-pro:speckit-install claude codex), use those. Otherwise ask:
Which coding-agent integrations should this project support?
claude— Claude Code (installs skills at.claude/skills/speckit-*/)codex— Codex CLI (installs skills at.codex/skills/speckit-*/)both— dual-integration (Claude AND Codex side-by-side)
Both Claude and Codex are declared "Multi-install Safe" by the
SpecKit CLI, so dual-integration is officially supported. The
plugin's own skills ($speckit-coach, $speckit-autopilot, etc.)
work in both runtimes.
For a fresh install (Step 2 said ABSENT):
specify init --here --integration <first-key> to scaffold
.specify/ (templates, scripts, constitution placeholder) AND
install the first integration.specify integration install <key>.For adding to an existing install (Step 2 said PRESENT, operator chose option (b)):
specify integration install <key>.Pass --script sh explicitly on macOS/Linux to avoid prompting.
speckit-pro recommends a small set of community extensions and presets
that power the autopilot's post-implementation parallel group and the
native AskUserQuestion picker on /speckit-clarify and /speckit-checklist.
See presets-extensions-guide.md → The curated set
for the full list and rationale.
Check what would change by running runner helper install-curated-set in
read-only check mode.
The helper prints one line per entry that would be installed or upgraded, exits 0 if everything is already current, exits 2 if work is pending.
If exit code is 0: report "Curated extensions and presets already current — nothing to install." Continue to Step 6.
If exit code is 1 (typically gh not on PATH or another missing
prerequisite): surface the stderr message and skip this step.
Do not block the install. Tell the operator: "Curated-set
auto-install skipped — install gh (https://cli.github.com/) and
re-run /speckit-pro:speckit-upgrade to pull the curated extensions and
presets." Continue to Step 6.
If exit code is 2: tell the operator what the check output showed
and ask which entries to install. Recommended default is all.
Then invoke runner helper install-curated-set with the operator's selection:
/speckit-pro:speckit-upgrade
later to install the curated set on demand.The helper never installs without explicit operator selection (or an
empty --accept meaning all). A provenance trail is recorded in
.specify/curated-install.json — commit this to git so the project's
extension state is reproducible.
Run specify check and specify integration list.
Report to the operator:
.specify/memory/constitution.md —
next step is /speckit-pro:speckit-coach create my project constitution
or /speckit-constitution (or $speckit-coach / $speckit-constitution
in Codex).specify init --here --force from this command. --force
overwrites existing customizations. The upgrade command is the
only place that handles --force (with backup/restore)..specify/memory/constitution.md — that's the
operator's content. If they don't have one yet, leave the SpecKit
placeholder in place and tell them how to fill it.specify init fails (e.g., network error fetching templates),
STOP and report the exact error. Do not partially-install or
retry silently.Stop and report — do not improvise — when:
uv is missing and the operator cannot install it.specify init returns a non-zero exit code.specify integration install <key> fails (the operator may have a
conflicting integration; surface the CLI's error message and let
them decide).install-curated-set reports that an extension has neither a
GitHub Release nor a git tag — surface the message but do not
block the install over it. The operator can re-run after the
upstream extension publishes a tagged release.The SpecKit CLI's specify init and specify integration install
commands are the canonical install path. This skill wraps them so
the user gets:
uv and the CLI./speckit-pro:speckit-upgrade
for already-installed repos (no accidental overwrites).claude and codex are marked
"Multi-install Safe")..specify/curated-install.json.For upgrading an existing install (including the v0.8.13 migration
from slash commands to skills, or moving from single- to
dual-integration), use /speckit-pro:speckit-upgrade instead.
npx claudepluginhub racecraft-lab/racecraft-plugins-public --plugin speckit-proCreates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.