# Azure App Onboard > End-to-end orchestrator: from a business idea, app idea, or existing app to running Azure deployment with cost estimates and pre-deploy approval. Analyzes your app, auto-detects the right Azure services, scaffolds infrastructure code, and deploys — tailored to your app, not a template. Handles moving existing apps to Azure without rewriting or with minimal changes. WHEN: bring your app to Azure, plan my app, cost to run, is my code ready to deploy, deploy my app to the cloud, deploy all my services, what Azure services do I need, plan my Azure deployment, deploy my new app to Azure, one-click deploy, I have an app and want it on Azure, migrate my app to Azure, help me get started, build an app, no code yet, starter project. DO NOT USE FOR: use azd for deployment(use azure-deploy), optimizing existing costs (use azure-cost), code readiness checks only (use azure-app-onboard-prereq). Source: https://skillsagentes.com/skills/microsoft/azure-skills/azure-app-onboard Repository: https://github.com/microsoft/azure-skills Author: microsoft License: MIT Updated: hace 4 días Context cost: 224 tok installed, 1.6k tok once triggered, 95.2k tok with every bundled file Bundle: 68 files, 372 KB Permissions requested: none declared ## Install ```bash npx -y skills add microsoft/azure-skills --skill azure-app-onboard --agent claude-code ``` ## What it does - Es el orquestador de punta a punta: de una idea de negocio, una idea de app o una app existente hasta un despliegue funcionando en Azure. - Analiza la aplicación, autodetecta los servicios de Azure adecuados, genera la infraestructura y despliega — a medida de la app, no desde una plantilla. - Incluye estimación de costes y aprobación previa al despliegue. - Exige que **todo** repositorio pase el pipeline completo de 10 pasos, sin saltarse ninguno ni cortocircuitar por lo que reconozca. ## Use it when - Se quiere llevar una app a Azure, planificarla o saber cuánto costaría ejecutarla. - Se pregunta qué servicios de Azure hacen falta, o se quiere migrar una app existente sin reescribirla. ## Don't bother when - Cuando se quiere usar azd para desplegar, que va a `azure-deploy`. - Para optimizar costes existentes, que va a `azure-cost`. - Para comprobar solo si el código está listo, que va a `azure-app-onboard-prereq`. ## What triggers it - "lleva mi app a Azure" - "¿qué servicios de Azure necesito?" - "¿cuánto costaría ejecutar esto?" - "despliega mi app a la nube" ## Before you install - Coordina cuatro sub-skills por fases — prereq, prepare, scaffold y deploy — que no son invocables directamente por el usuario. ## Files - SKILL.md — 6 KB - deploy/SKILL.md — 7 KB - deploy/references/approval-gate-template.md — 3 KB - deploy/references/blocked-patterns.md — 6 KB - deploy/references/code-deployment-appservice.md — 5 KB - deploy/references/code-deployment-container-apps.md — 8 KB - deploy/references/code-deployment-swa.md — 6 KB - deploy/references/database-post-deploy.md — 4 KB - deploy/references/deploy-checklist-template.md — 10 KB - deploy/references/deploy-safety.md — 5 KB - deploy/references/deploy-schemas.ts — 3 KB - deploy/references/error-classification.md — 4 KB - deploy/references/health-check-patterns.md — 6 KB - deploy/references/mcp-tools.md — 6 KB - deploy/references/portal-links.md — 3 KB - deploy/references/preflight-checks.md — 4 KB - deploy/references/subagent-preflight.md — 5 KB - prepare/SKILL.md — 6 KB - prepare/references/deploy-strategy.md — 7 KB - prepare/references/mcp-tools.md — 6 KB - prepare/references/naming-patterns.md — 5 KB - prepare/references/prepare-schemas.ts — 7 KB - prepare/references/pricing-guide-services.md — 8 KB - prepare/references/pricing-guide.md — 4 KB - prepare/references/service-mapping.md — 8 KB - prepare/references/sku-matrix.md — 3 KB - prepare/references/sku-quota-validation.md — 9 KB - prepare/references/subagent-pricing.md — 2 KB - prepare/references/subagent-quota.md — 3 KB - prepare/references/validation-rubric.md — 2 KB - references/approval-gates.md — 7 KB - references/azd-template-routing.md — 5 KB - references/handoff-protocol.md — 8 KB - references/iac-resources.md — 3 KB - references/intent-gathering.md — 2 KB - references/mcp-tool-reference.md — 4 KB - references/pipeline-rules-runtime.md — 4 KB - references/pipeline-rules.md — 6 KB - references/session-protocol.md — 8 KB - references/session-schemas.ts — 5 KB - references/subscription-resolution.md — 2 KB - scaffold/SKILL.md — 14 KB - scaffold/references/bicep-app-service.md — 5 KB - scaffold/references/bicep-container-apps.md — 9 KB - scaffold/references/bicep-patterns-data.md — 4 KB - scaffold/references/bicep-patterns-security.md — 8 KB - scaffold/references/bicep-patterns.md — 7 KB - scaffold/references/bicep-swa.md — 757 B - scaffold/references/cicd-pipelines.md — 325 B - scaffold/references/dockerfile-generation.md — 4 KB - scaffold/references/env-var-secrets.md — 4 KB - scaffold/references/error-handling.md — 1 KB - scaffold/references/iac-generation-rules.md — 7 KB - scaffold/references/mcp-tools.md — 7 KB - scaffold/references/rbac-roles.md — 4 KB - scaffold/references/scaffold-healing-rules.md — 3 KB - scaffold/references/scaffold-schemas.ts — 3 KB - scaffold/references/self-healing.md — 2 KB - scaffold/references/self-review-checklist.md — 9 KB - scaffold/references/self-review-procedure.md — 2 KB - scaffold/references/subagent-iac-gen.md — 10 KB - scaffold/references/subagent-review.md — 4 KB - scaffold/references/subagent-validate.md — 7 KB - scaffold/references/terraform-patterns.md — 7 KB - scaffold/references/validation-and-manifest.md — 5 KB - scaffold/references/waf-checklist.md — 2 KB - scaffold/scripts/scaffold-conformance.ps1 — 13 KB - scaffold/scripts/scaffold-conformance.sh — 14 KB ## SKILL.md Reproduced verbatim from microsoft/azure-skills under MIT. This section is the upstream document and is in English. # Azure App Onboard > ⛔ **Every repo goes through the full pipeline (Steps 1–10). No exceptions.** Do not skip steps, refuse, or short-circuit based on what you recognize. Follow the Workflow table below sequentially — read each step's references before acting. ## Quick Reference | Property | Value | |----------|-------| | Best for | Developers who know what to build but not which Azure services to use | | Inputs | Business idea or existing codebase, budget/scale preferences (optional) | | Outputs | Architecture plan, cost estimate, IaC files, deployed Azure resources | | Phases | Discover → Architect → Scaffold → Deploy (self-contained, no external skill calls) | ## When to Use This Skill - Deploy existing code without knowing which Azure services to use - Check if your existing code is ready to deploy to Azure - Move an existing app to Azure without rewriting or with minimal changes - Get cost estimates before committing to infrastructure - Understand architecture decisions and rejected alternatives - Get answers to Azure architecture or service selection questions (e.g., "What database should I use?") - Get guided Azure onboarding without prior experience ## When NOT to Use | Scenario | Use Instead | |----------|-------------| | Run `azd up` or execute an existing deployment | `azure-deploy` | | Optimize existing Azure spend | `azure-cost` | | Generate Bicep/Terraform for a known architecture | `azure-prepare` | | Validate infrastructure or run preflight checks | `azure-validate` | | Troubleshoot a running Azure deployment | `azure-diagnostics` | | Deploy to or manage AKS/Kubernetes directly | `azure-kubernetes` | | Look up or list existing Azure resources | `azure-resource-lookup` | ## Pipeline Rules > ⛔ **You MUST read [`references/pipeline-rules.md`](references/pipeline-rules.md) at the start of every AppOnboard session.** It contains approval gates, phase lifecycle, session artifacts, deploy-as-is, and security baseline rules. ## Workflow > ⛔ **Deploy recovery:** After deploy gate approval OR before any `az deployment`/`az webapp deploy`/`az acr build` — if you haven't read `deploy/SKILL.md`, read `.copilot-azure/sessions/{id}/deploy-checklist.md` first, then `deploy/SKILL.md`. ⛔ NEVER invoke `{"skill": "azure-deploy"}` — that is a DIFFERENT skill for a DIFFERENT workflow. > ⛔ **Post-scaffold transition (MANDATORY):** Immediately after `scaffold-manifest.json` is written, YOUR NEXT ACTION MUST be Step 8 (Deploy Approval Gate) — NOT a summary report, NOT a "here are the generated files" message, NOT a completion signal. Confirm `context.json` has `completedPhases: [...,"scaffold"]` + `currentPhase: "deploy"` (update it yourself if the scaffold subagent didn't). Re-read [approval-gates.md § Deploy Gate](references/approval-gates.md) if evicted from context (scaffold reference loading is heavy), then present the exact prompt: **"🚀 Ready to deploy? (Yes / Run manually / Edit plan / Cancel)"**. This gate is the LAST content in your response — wait for the user's reply. | # | Step | Action | Reference | |---|------|--------|-----------| | 1 | **Session check + Azure login** | Create/resume session, verify Azure CLI auth, resolve subscription + user identity | ⛔ **You MUST read [session-protocol.md](references/session-protocol.md)** | | 2 | **Scope triage** | Check azd markers, triage question. Empty workspace or code-only (no infra) → Step 3 directly. | ⛔ Read [intent-gathering.md](references/intent-gathering.md) § Scope Triage | | 3 | **Prereq scan** | ⛔ Skip if `completedPhases` includes `"prereq"`. Otherwise: invoke `{"skill": "azure-app-onboard-prereq"}`. Write `prereq-output.json`, update `context.json`. **Halt if:** `overallHealth: "blocked"` OR `routeToSkill` set. | | | 4 | **Gather intent** | Present prereq results, confirm stack + Azure services, ask remaining questions. | ⛔ Read [intent-gathering.md](references/intent-gathering.md) § After Prereq Returns | | 5 | **Plan architecture** | Write `prepare-plan.json`. | ⛔ **You MUST read [prepare/SKILL.md](prepare/SKILL.md)** | | 6 | **Scaffold approval gate** | Display plan for user approval BEFORE generating any files. | ⛔ Read [approval-gates.md](references/approval-gates.md) § Scaffold Gate | | 7 | **Scaffold** | Generate IaC, self-review. Write `scaffold-manifest.json`. Update `context.json`. | ⛔ **You MUST read [scaffold/SKILL.md](scaffold/SKILL.md)** | | 8 | **Deploy approval gate** | Display validation summary. ⛔ After approval: FIRST read deploy-checklist.md → deploy/SKILL.md. NEVER `{"skill": "azure-deploy"}`. | ⛔ Read [approval-gates.md](references/approval-gates.md) § Deploy Gate | | 9 | **Deploy** | Execute IaC, health-check. Write `deploy-result.json`. | ⛔ **You MUST read [deploy/SKILL.md](deploy/SKILL.md)** | | 10 | **Handoff** | Surface deployment identity, cleanup commands, next steps. | ⛔ **You MUST read [`handoff-protocol.md`](references/handoff-protocol.md)** | ## Error Handling | Error | Remediation | |-------|-------------| | Phase fails | Halt, report phase + error. User decides: retry, skip, abort. | | MCP server unavailable | Skip affected checks, add disclaimer to `costEstimate.assumptions[]` and every approval gate. | | Missing RBAC | Report required role + `az role assignment` command. | > **Shared references:** [MCP tools](references/mcp-tool-reference.md) (cross-phase tool parameters) | [IaC resources](references/iac-resources.md) (Azure resource docs for troubleshooting) --- Skills Agentes — https://skillsagentes.com/skills/microsoft/azure-skills/azure-app-onboard