spec2cloud
vspec-kit-spec2cloud-v1.1.0Spec-driven workflow tuned for shipping to Azure: spec → plan → tasks → implement → deploy.
Spec Kit Components
Spec2Cloud ships three GitHub Spec Kit artifacts that turn the generic spec-driven workflow into one optimized for shipping features to Azure:
| Artifact | Source | What it provides |
|---|---|---|
Preset — presets/spec2cloud | preset.yml | Azure-aware overrides for the core commands (speckit.constitution, speckit.specify, speckit.clarify, speckit.plan, speckit.tasks, speckit.implement, speckit.checklist, speckit.analyze) and templates. |
Extension — extensions/spec2cloud | extension.yml | Two new commands: speckit.verify (run locally; provision Azure-only deps first) and speckit.deploy (azd / Bicep / Terraform). |
Workflow — workflows/spec2cloud | workflow.yml | Orchestrates the full cycle with a review gate at every artifact handoff. |
Workflow
constitution → specify → (clarify) → plan → (checklist · analyze) → tasks → implement → verify → deploy
constitution, specify, clarify, plan, tasks, implement, checklist, analyze come from the preset. verify and deploy come from the extension. The workflow wires them together.
Prerequisites
- The
specifyCLI fromgithub/spec-kit(≥ 0.7.2 for the workflow, ≥ 0.6.0 for the preset, ≥ 0.2.0 for the extension). - A coding agent that runs Spec Kit commands (e.g. GitHub Copilot in VS Code, GitHub Copilot CLI).
- For
speckit.verify/speckit.deploy:azand (recommended)azd, authenticated against the target subscription.
Install
Download the latest combined release: https://github.com/Azure-Samples/Spec2Cloud/releases/latest (tag pattern spec-kit-spec2cloud-v*). It contains three assets:
extension.zip— extract into.specify/extensions/spec2cloud/preset.zip— extract into.specify/presets/spec2cloud/workflow.yml— copy to.specify/workflows/spec2cloud/workflow.yml
Use the latest release:
specify init . --integration copilot --integration-options="--skills"
specify preset add spec2cloud --from https://aka.ms/spec2cloud/spec-kit-preset
specify extension add spec2cloud --from https://aka.ms/spec2cloud/spec-kit-extension
specify workflow add https://aka.ms/spec2cloud/spec-kit-workflow
Use a specific release:
specify init . --integration copilot --integration-options="--skills"
specify preset add spec2cloud --from https://github.com/Azure-Samples/Spec2Cloud/releases/download/spec-kit-spec2cloud-v<VERSION>/preset.zip
specify extension add spec2cloud --from https://github.com/Azure-Samples/Spec2Cloud/releases/download/spec-kit-spec2cloud-v<VERSION>/extension.zip
specify workflow add https://github.com/Azure-Samples/Spec2Cloud/releases/download/spec-kit-spec2cloud-v<VERSION>/workflow.yml
After install, your repo should contain:
.specify/
├── extensions/spec2cloud/
│ ├── extension.yml
│ └── commands/{speckit.spec2cloud.deploy.md, speckit.spec2cloud.verify.md}
├── presets/spec2cloud/
│ ├── preset.yml
│ ├── commands/...
│ └── templates/...
└── workflows/spec2cloud/
└── workflow.yml
Practical example — TODO Web App on Azure
The example walks the full workflow for a small feature ("TODO WebApp") on Azure Container Apps + Cosmos DB. Run each command from your coding agent's chat (the slash commands invoke the skills in .github/skills folder).
-
One-time: project constitution.
/speckit-constitution Create principles focused on code quality, testing standards, user experience consistency, and performance requirementsConfirm the default principles and add any project rules.
-
Specify the feature.
/speckit-specify Simple todo app that allows users to get the job done.Produces
specs/001-todo-webapp/spec.mdand.specify/feature.json. -
Plan.
/speckit-plan Use React + Vite with a component library for the frontend and Node.js for the backend API, with MongoDB as the data layer. Deploy both the frontend and backend as Container Apps, and use Azure Cosmos DB for MongoDB (serverless) as the managed database. Authentication and private networking is out of scope for now.Produces
specs/001-todo-webapp/plan.mdwith Azure topology, architecture, and design decisions. -
Tasks.
/speckit-tasksProduces
tasks.md(human) andtasks.json(machine) — phase-grouped, dependency-ordered, both kept in sync. -
Implement.
/speckit-implementWalks tasks in order, flipping
- [ ]→- [x]intasks.mdand"status": "pending"→"done"intasks.json. -
Verify locally.
/speckit-verifyInventories runnable components and dependencies; provisions the Azure-only ones into a
devenv first; runs the rest locally (Azurite, Cosmos Emulator,az containerapplocally, etc.) and walks the spec's acceptance scenarios. -
Deploy.
/speckit-deploy devLocates the IaC entry point (
azure.yaml→infra/main.bicep→main.bicep→infra/main.tf→main.tf), runs the appropriate tool (azd up/az deployment group create/terraform apply), shows what-if first, and reports outputs.
Or run it as a single workflow
If you have the workflow installed, kick off the whole cycle with one command and approve at each gate:
specify workflow run spec2cloud --input spec="build a simple todo app using react+vite"
The workflow runs constitution → specify → clarify → plan → tasks → implement → verify → deploy with a review gate after each step.
Publishing releases
All three components are published together as a single GitHub Release by the spec-kit-publish skill. Each is attached as its own asset:
extension.zippreset.zipworkflow.yml
The zips contain the files inside the component folder (not the folder itself). The release tag is spec-kit-spec2cloud-v<version>, where <version> is the highest semver among the three manifest versions.
Invoking the skill
/spec-kit-publish
The skill reads each manifest, computes the release version (max of the three), and only publishes when that version is newer than the latest existing spec-kit-spec2cloud-v* release.
Bumping a version
Bump the version field in the relevant manifest before invoking the skill:
- Extension →
extensions/spec2cloud/extension.yml→extension.version - Preset →
presets/spec2cloud/preset.yml→preset.version - Workflow →
workflows/spec2cloud/workflow.yml→workflow.version
Follow Semantic Versioning (MAJOR.MINOR.PATCH).
Prerequisites
- The
ghCLI must be installed and authenticated (gh auth status). - You must have permission to create releases in this repository.
Stats
Version
Install
Using the Specify CLI
specify extension add spec2cloud --from https://github.com/Azure-Samples/Spec2Cloud/releases/download/spec-kit-spec2cloud-v1.1.0/extension.zip