Backdoor Deployment
microsoft/Docker-Provider
Validate a container image change via backdoor deployment. An agent skill from microsoft/Docker-Provider.
Provision Azure infrastructure, deploy to Azure Container Apps, and verify via smoke tests.
$ npx skills add EmeaAppGbb/spec2cloud --skill azure-deployment -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install EmeaAppGbb/spec2cloud azure-deployment --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/EmeaAppGbb/spec2cloud.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/azure-deployment .claude/skills/azure-deployment && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "azure-deployment" agent skill from https://github.com/EmeaAppGbb/spec2cloud/tree/vNext/.github/skills/azure-deployment into .claude/skills/azure-deployment/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "azure-deployment", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/EmeaAppGbb/spec2cloud/tree/vNext/.github/skills/azure-deploymentType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add EmeaAppGbb/spec2cloud --skill azure-deployment -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install EmeaAppGbb/spec2cloud azure-deployment --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EmeaAppGbb/spec2cloud.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.github/skills/azure-deployment .agents/skills/azure-deployment && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "azure-deployment" agent skill from https://github.com/EmeaAppGbb/spec2cloud/tree/vNext/.github/skills/azure-deployment into .agents/skills/azure-deployment/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "azure-deployment", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add EmeaAppGbb/spec2cloud --skill azure-deployment -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install EmeaAppGbb/spec2cloud azure-deployment --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EmeaAppGbb/spec2cloud.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.github/skills/azure-deployment .cursor/skills/azure-deployment && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "azure-deployment" agent skill from https://github.com/EmeaAppGbb/spec2cloud/tree/vNext/.github/skills/azure-deployment into .cursor/skills/azure-deployment/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "azure-deployment", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/EmeaAppGbb/spec2cloud.git --path .github/skills/azure-deployment--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add EmeaAppGbb/spec2cloud --skill azure-deployment -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install EmeaAppGbb/spec2cloud azure-deployment --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EmeaAppGbb/spec2cloud.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.github/skills/azure-deployment .gemini/skills/azure-deployment && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "azure-deployment" agent skill from https://github.com/EmeaAppGbb/spec2cloud/tree/vNext/.github/skills/azure-deployment into .gemini/skills/azure-deployment/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "azure-deployment", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install EmeaAppGbb/spec2cloud azure-deploymentInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add EmeaAppGbb/spec2cloud --skill azure-deployment -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/EmeaAppGbb/spec2cloud.git skills-src && mkdir -p .github/skills && cp -r skills-src/.github/skills/azure-deployment .github/skills/azure-deployment && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "azure-deployment" agent skill from https://github.com/EmeaAppGbb/spec2cloud/tree/vNext/.github/skills/azure-deployment into .github/skills/azure-deployment/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "azure-deployment", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add EmeaAppGbb/spec2cloud --skill azure-deployment -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install EmeaAppGbb/spec2cloud azure-deployment --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/EmeaAppGbb/spec2cloud.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.github/skills/azure-deployment .opencode/skills/azure-deployment && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "azure-deployment" agent skill from https://github.com/EmeaAppGbb/spec2cloud/tree/vNext/.github/skills/azure-deployment into .opencode/skills/azure-deployment/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "azure-deployment", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
azure-deploymentProvision Azure infrastructure, deploy to Azure Container Apps, and verify via smoke tests.
Azure Deployment is an agent skill from EmeaAppGbb/spec2cloud. Provision Azure infrastructure, deploy to Azure Container Apps, and verify via smoke tests. Handle provision/deploy loops with automatic error diagnosis and retry. Use when deploying to Azure, running azd provision/deploy, executing smoke tests, or diagnosing deployment failures.
Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/stack-deployment.md`).
It sits in Testing & QA, covering QA and bug reports and Deployment. It works with Microsoft Azure. The licence is MIT.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 8e76618. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npxFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Azure Deployment loads about 1.8k tokens when it runs, and up to ~2.4k if it reads all its reference files. Until then it costs about 74 tokens; SKILL.md has 721 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from EmeaAppGbb/spec2cloud at commit 8e76618, republished under its MIT licence (© EmeaAppGbb). 721 words, ~1,799 tokens.
.claude/skills/azure-deployment/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.You are the Deploy Agent. You provision Azure infrastructure, deploy the application to Azure Container Apps, and verify it works via smoke tests. You operate in a loop: provision → deploy → smoke test → verify. If anything fails, you diagnose the error, apply a fix, and retry. If smoke tests fail after a successful deployment, you roll back and open a GitHub issue.
Before deploying, verify every precondition. Do not proceed until all pass.
| # | Check | How to verify |
|---|---|---|
| 1 | Tests pass locally | Run unit, Gherkin, and Playwright tests — all green |
| 2 | State is ready | .spec2cloud/state.json confirms Step 3 complete. Consult specs/contracts/infra/resources.yaml for resource config. |
| 3 | azure.yaml valid | Parse file; verify ≥1 service with valid project path and host: containerapp |
| 4 | Infra templates exist | infra/ contains main.bicep at minimum |
| 5 | AZD installed + auth | azd version succeeds; azd auth login --check-status confirms auth |
| 6 | AZD environment exists | azd env list shows environment; if none, create with azd env new <name> and set AZURE_LOCATION |
Provision Azure infrastructure using AZD and Bicep. Retry on fixable errors.
1. Run `azd provision`
2. If success → proceed to Deploy Loop
3. If failure → analyze the error:
a. Bicep validation error → fix infra/*.bicep files, retry
b. Quota exceeded → suggest different region or SKU, update env vars, retry
c. Permission error → STOP and flag for human (cannot fix IAM)
d. Naming conflict → adjust resource names in Bicep parameters, retry
e. Network/transient error → retry (max 3 attempts with backoff)
4. After applying a fix → re-run `azd provision`
5. Loop until provision succeeds or retries exhaustedLog every azd provision invocation and result to audit.log.
Deploy the application to the provisioned infrastructure.
1. Run `azd deploy`
2. If success → proceed to Smoke Test Protocol
3. If failure → analyze the error:
a. Build error → fix Dockerfile or build configuration
b. Container startup error → pull container logs, fix app config or startup
c. Health check failure → verify health endpoint exists and returns 200
d. Registry push failure → check ACR configuration and permissions
4. After applying a fix → re-run `azd deploy`
5. Loop until deploy succeeds or retries exhaustedLog every azd deploy invocation and result to audit.log.
After a successful deployment, verify the live application works end-to-end.
azd env get-values → extract SERVICE_WEB_ENDPOINT_URL.GET /health → HTTP 200GET /api/health → HTTP 200GET / → HTTP 200 with expected content@smoke tests against deployed URLPLAYWRIGHT_BASE_URL=<deployed-url> npx playwright test --config=e2e/playwright.config.tsIf smoke tests fail after deployment:
azd deploy. If no previous deployment exists (first deploy), leave the
failed deployment and flag for human review.[spec2cloud] Smoke test failure after deploymentspec2cloud, deployment-failure, needs-fiximplementation with failure details.| Command | Purpose |
|---|---|
azd init | Initialize project (shell setup only) |
azd env new <name> | Create a new environment |
azd env set <key> <value> | Set an environment variable |
azd provision | Provision Azure resources via Bicep |
azd deploy | Build and deploy the application |
azd env get-values | Retrieve deployed URLs and outputs |
azd down | Tear down all resources (only on explicit request) |
azd monitor | Open the monitoring dashboard |
state.json..spec2cloud/audit.log.[ISO-timestamp] increment={id} step=deploy action=azd-provision result=success
[ISO-timestamp] increment={id} step=deploy action=azd-deploy result=success url={url}
[ISO-timestamp] increment={id} step=deploy action=smoke-tests result=pass:{N}/fail:{N}*) in production.See references/stack-deployment.md for AZD service structure, Container Apps
configuration, Dockerfile details, infrastructure templates, environment
variables, and smoke test commands.
The orchestrator MUST verify ALL of the following before marking azure-deployment as complete:
azd provision completes without errorsazd deploy completes without errorsazd monitor)BLOCKING: If any item is unchecked, the skill has NOT completed successfully. The orchestrator must loop back and complete the missing items before marking the increment as delivered.
© EmeaAppGbb, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (references) in .github/skills/azure-deployment of EmeaAppGbb/spec2cloud.
Open the folder on GitHubat commit 8e76618
Azure Deployment next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Azure Deployment this skillEmeaAppGbb/spec2cloud | 100 | — | ~1.8k | Automated safety check: Pass | MIT | |
| Backdoor Deploymentmicrosoft/Docker-Provider | 174 | — | ~7k | Automated safety check: Pass | Custom licence | |
| Deploying Scalable Agentsmicrosoft/ai-agents-for-beginners | 77k | — | ~1.5k | Automated safety check: Pass | MIT | |
| Deploying Scalable Agentsmicrosoft/ai-agents-for-beginners | 77k | — | ~1.6k | Automated safety check: Pass | MIT | |
| DeerFlow Smoke Testbytedance/deer-flow | 83k | — | ~2.5k | Automated safety check: Notes | MIT | |
| Skyvern Deployment Smoke TestSkyvern-AI/skyvern | 23k | — | ~1.5k | Automated safety check: Pass | AGPL-3.0 |
microsoft/Docker-Provider
Validate a container image change via backdoor deployment. An agent skill from microsoft/Docker-Provider.
microsoft/ai-agents-for-beginners
Take a working agent prototype to a scalable, observable production deployment on Microsoft Foundry.
microsoft/ai-agents-for-beginners
Take one working agent prototype go scalable, observable production deployment for Microsoft Foundry.
bytedance/deer-flow
Walks through an end-to-end smoke test of a DeerFlow deployment: pull the latest code, deploy with Docker or locally, verify services, run health checks and write a report.
Skyvern-AI/skyvern
Smoke-tests a Skyvern deployment by checking the backend API, frontend rendering, browser session provisioning and workflow execution in sequence.
microsoft/aspire
Guide for writing Aspire deployment end-to-end tests. An agent skill from microsoft/aspire.
EmeaAppGbb/spec2cloud
Generate API contracts, shared TypeScript types, and infrastructure resource definitions from Gherkin scenarios and test files.
EmeaAppGbb/spec2cloud
Create Domain-Driven Design proposals from product specs or brownfield extraction outputs.
EmeaAppGbb/spec2cloud
Write application code to make failing tests pass using contract-driven, slice-based architecture.
EmeaAppGbb/spec2cloud
Review PRDs and FRDs through product and technical lenses. An agent skill from EmeaAppGbb/spec2cloud.
EmeaAppGbb/spec2cloud
Read, write, and maintain .spec2cloud/state.json across phases and increments.
EmeaAppGbb/spec2cloud
Identify, research, and resolve every technology needed by the application.
Works with
Categories
Provision Azure infrastructure, deploy to Azure Container Apps, and verify via smoke tests. Azure Deployment is an agent skill from EmeaAppGbb/spec2cloud. Provision Azure infrastructure, deploy to Azure Container Apps, and verify via smoke tests.
Azure Deployment fits situations like: deploying to Azure; running azd provision/deploy; executing smoke tests; diagnosing deployment failures.
Run `npx skills add EmeaAppGbb/spec2cloud --skill azure-deployment -a claude-code`. Or copy the skill folder (.github/skills/azure-deployment in EmeaAppGbb/spec2cloud) into .claude/skills/azure-deployment in your project. Claude Code loads it when a task matches its description.
Run `npx skills add EmeaAppGbb/spec2cloud --skill azure-deployment -a codex`. Or copy the skill folder (.github/skills/azure-deployment in EmeaAppGbb/spec2cloud) into .agents/skills/azure-deployment in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add EmeaAppGbb/spec2cloud --skill azure-deployment -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/azure-deployment, .gemini/skills/azure-deployment, .github/skills/azure-deployment and .opencode/skills/azure-deployment in your project.
Going by SKILL.md and its folder, Azure Deployment needs the command-line tools its instructions call (npx). Our summary lists: Node.js.
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Azure Deployment is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.8k tokens (SKILL.md is roughly 7.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 626 tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Azure Deployment: Backdoor Deployment (microsoft/Docker-Provider, 174 stars), Deploying Scalable Agents (microsoft/ai-agents-for-beginners, 77k stars), Deploying Scalable Agents (microsoft/ai-agents-for-beginners, 77k stars) and DeerFlow Smoke Test (bytedance/deer-flow, 83k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
EmeaAppGbb (a GitHub organization) maintains it in EmeaAppGbb/spec2cloud, which has 100 GitHub stars. The repository holds 38 skills in this directory. The repository was last updated on April 16, 2026.
Source: EmeaAppGbb/spec2cloud on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.