Description
Wire the commercetools skills into a spec-driven development framework — GitHub Spec Kit (.specify/) or OpenSpec (openspec/). Use when user wants to setup or check the status of a spec-driven development framework that touches commercetools.
Installation
Recommended: install the full commercetools plugin. It includes this
Skill, every other commercetools Skill, our pre-tuned Subagents, and
the commercetools Knowledge
MCP — which
gives AI live access to the commercetools docs, GraphQL/OpenAPI
schemas, and query validation. You only install once; every Skill on
this site becomes available in every session.
Install the plugin
In any Claude Code session:
/plugin marketplace add commercetools/commercetools-ai-plugins
/plugin install commercetools@commercetools
Reload plugins
If you've updated the plugin or installed it in another window and need the current session to pick up the latest version:
/reload-plugins
Claude Desktop
Customize -> Personal plugins -> Create plugin -> Add marketplace -> Add
commercetools/commercetools-ai-plugins. Then, click on the plugin and click Install.Instructions Included
commercetools Spec-Driven Development Overlay
Makes a spec-driven development framework commercetools-aware, so every spec, plan, and task that touches commercetools loads the matching
commercetools-* skill first. The framework keeps owning the workflow — this only adds commercetools rules to files the framework already has. It creates no new files.| Detected directory | Framework |
|---|---|
.specify/ | GitHub Spec Kit |
openspec/ | OpenSpec |
Both present means both get the overlay.
Workflow
-
Docs search (required, run first) — Always begin by searching docs for this skill. This is the mandatory grounding step: it gathers the latest verified documentation as context for you (the agent). Do not skip it, and do not replace it with another tool (such as an MCP documentation-search tool). This script optimizes for tuned search results — run this command:
node scripts/docs-search.mjs \ --query "<extract key terms from the user's question>" \ --app-name "<current-app ex: claude, copilot, codex>" \ --model "<current-model>" \ --skill-name "commercetools-spec-driven-development" \ --limit 10Query the commercetools areas the project targets, not the framework's own terminology — those results are what let you fill in the plan's "Platform Skills Resolution" table later.
-
Run the setup script (required, do the work with this) — never hand-edit the framework's files to apply the overlay; the script is idempotent and reversible, hand edits are neither:
node scripts/setup.mjsArgument Effect (none) or initApply the overlay to every detected framework statusReport which blocks are applied; writes nothing removeStrip previously applied blocks --dry-runPreview init/removewithout writing--framework speckit|openspecAct on one framework only --cwd <dir>Target a project other than the current directory -
Report what the script printed, and handle these outcomes:
- No framework detected (exit 4) — tell the user to run
specify init(Spec Kit) oropenspec init(OpenSpec) first, then re-run. Do not create those directories yourself. - A target file was skipped as missing — the framework is only partially initialized. Name the missing file; do not create it.
- An anchor was not found — the upstream template changed, so the block was appended at end-of-file instead of at its intended heading. It still works; say the placement is not ideal.
- Applied, or already up to date — state which files changed and stop.
- No framework detected (exit 4) — tell the user to run
What the overlay adds
| Framework | File | Adds |
|---|---|---|
| Spec Kit | .specify/memory/constitution.md | Non-negotiable articles: resolve the platform skill, annotate tasks, never invent API surface |
| Spec Kit | .specify/templates/plan-template.md | A "Platform Skills Resolution" table mapping each architectural area to its skill |
| Spec Kit | .specify/templates/tasks-template.md | The [SKILL: <name>] task-grammar extension |
| OpenSpec | openspec/config.yaml | context: guidance plus rules: for the proposal and tasks artifacts |
Each block is fenced by
commercetools-spec-extension:begin / commercetools-spec-extension:end markers. Re-running init replaces a block in place rather than duplicating it, and remove restores the file to its original bytes.Checklist
-
node scripts/docs-search.mjsran first and its results were used as grounding - The framework was initialized first (
.specify/oropenspec/exists) -
node scripts/setup.mjsran and reported the blocks it applied - No target was skipped as missing, and no anchor warning went unmentioned
- For OpenSpec,
config.yamlhas no duplicatecontext:orrules:keys