Skip to content

[Bug]: specify preset add no longer scaffolds commands — backward compatibility break for presets that previously created commands #4076

Description

@nicolehaugen

Bug Description

specify preset add currently only overrides the templates used to generate command content and is applied at init time. It does not scaffold commands/skills the way extensions and bundles do.

This is a backward-compatibility break for presets (and users) that previously relied on specify preset add to create commands — those presets now silently produce incomplete results (templates present, but no corresponding command/skill scaffolded).

Behavior is documented in the speckit-preset skill in github/spec-kit-copilot:

"Unlike extensions/bundles, specify preset add does not scaffold skills — a preset overrides the templates used to generate command content and is applied at init time."

Source: https://github.com/github/spec-kit-copilot/blob/main/skills/speckit-preset/SKILL.md

Steps to Reproduce

  1. Take a preset that previously (in an earlier Spec Kit version) resulted in commands being scaffolded via specify preset add.
  2. On a current version of specify, run specify preset add <id> against an already-initialized project.
  3. Observe that no commands/skills are scaffolded; only template overrides apply, and only at specify init time.

Expected Behavior

Presets that previously scaffolded commands should remain backward compatible. Options:

  1. Detect legacy-style presets that include command definitions and scaffold the corresponding commands/skills, matching prior behavior.
  2. Emit a clear deprecation/migration warning when specify preset add is invoked against a preset that appears to define commands, pointing users to convert those to an extension or bundle.
  3. Update Spec Kit docs to explicitly describe the preset vs. extension/bundle boundary and the supported migration path.

Actual Behavior

specify preset add only overrides templates used to generate command content, and only at init time. Presets authored against earlier versions expecting command scaffolding produce no commands, with no migration warning.

Specify CLI Version

0.16.0

AI Agent

GitHub Copilot

Operating System

Win 11

Python Version

python 3.12.0

Error Logs

Additional Context

Related skill docs in github/spec-kit-copilot (skills/speckit-preset/SKILL.md) will need a follow-up update once the core behavior is finalized here.

Filed from a conversation reviewing the speckit-preset skill notes; the underlying preset resolution and init-time template application are owned by the core spec-kit CLI, so tracking here rather than in the Copilot skills repo.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions