SuperAPI AI 工具集

azure-app-onboard

部署与运维

查看项目

更新于 10-13 20:08

技能介绍

用途

Azure App Onboard 是一个端到端的编排技能,用于把商业想法、应用想法或已有代码推进到可运行的 Azure 部署,并附带成本估算与部署前审批。它最适合那些知道自己要构建什么、但不确定应该使用哪些 Azure 服务的开发者。

主要能力

  • 接收商业想法或现有代码库作为输入,预算与规模偏好为可选项。
  • 输出架构方案、成本估算、IaC(基础设施即代码)文件以及已部署的 Azure 资源。
  • 流程分为发现、架构、脚手架、部署四个阶段,且为自包含流程,不调用外部技能。
  • 可回答 Azure 架构或服务选型类问题,例如“应该用哪种数据库”。
  • 在投入基础设施前提供成本估算,并解释架构决策与被否决的备选方案。

适用场景

  • 在不清楚该使用哪些 Azure 服务的情况下部署现有代码。
  • 检查现有代码是否已经具备部署到 Azure 的条件。
  • 把现有应用迁移到 Azure,尽量不重写或只做最小改动。
  • 在决定基础设施之前先获取成本估算。
  • 在没有 Azure 经验的情况下获得引导式入门。

使用方式

该技能遵循一个严格的十步工作流,每一步都要求先阅读对应的参考文档再执行,并且规定“每个仓库都必须走完整条流水线(第 1–10 步),没有例外,不得跳过、拒绝或基于已有认知走捷径”。

工作流各步概要:

  1. 会话检查与 Azure 登录:创建或恢复会话,验证 Azure CLI 认证,解析订阅与用户身份(必须先读 session-protocol.md)。
  2. 范围分诊:检查 azd 标记与分诊问题;空工作区或仅代码(无基础设施)直接进入第 3 步(读 intent-gathering.md § Scope Triage)。
  3. 前置条件扫描:若已完成阶段中包含 prereq 则跳过;否则调用 azure-app-onboard-prereq,写入 prereq-output.json 并更新 context.json;若 overallHealth 为 blocked 或设置了 routeToSkill 则暂停。
  4. 收集意图:展示前置条件结果,确认技术栈与 Azure 服务,询问剩余问题。
  5. 规划架构:写入 prepare-plan.json(必须先读 prepare/SKILL.md)。
  6. 脚手架审批门:在生成任何文件之前,先向用户展示方案并获得批准(读 approval-gates.md § Scaffold Gate)。
  7. 脚手架:生成 IaC 并自审,写入 scaffold-manifest.json,更新 context.json(必须先读 scaffold/SKILL.md)。
  8. 部署审批门:展示验证摘要;获得批准后先读 deploy-checklist.md,再读 deploy/SKILL.md,禁止调用 azure-deploy 技能。
  9. 部署:执行 IaC 并进行健康检查,写入 deploy-result.json(必须先读 deploy/SKILL.md)。
  10. 交付:呈现部署身份、清理命令与后续步骤(必须先读 handoff-protocol.md)。

流程中还包含若干强制规则:每次 AppOnboard 会话开始都必须读 references/pipeline-rules.md,其中包含审批门、阶段生命周期、会话产物、原样部署与安全基线规则;脚手架完成后下一步必须是部署审批门,而不是总结报告或完成信号;部署审批门中要给出固定提示“🚀 Ready to deploy? (Yes / Run manually / Edit plan / Cancel)”,并等待用户回复。

不适用场景

以下场景应改用其他技能:执行 azd up 或运行已有部署用 azure-deploy;优化现有 Azure 支出用可选 azure-cost 插件中的 cost-optimization;为已知架构生成 Bicep/Terraform 用 azure-prepare;验证基础设施或运行预检用 azure-validate;排查运行中的 Azure 部署用 azure-diagnostics;直接部署或管理 AKS/Kubernetes 用 azure-kubernetes;查询或列出已有 Azure 资源用 azure-resource-lookup。

如果 cost-optimization 不可用,应说明它由可选的 azure-cost 插件提供,并引导用户前往其客户端支持的插件安装流程,不得暗示交接已完成。

错误处理

  • 阶段失败:暂停并报告阶段与错误,由用户决定重试、跳过或中止。
  • MCP 服务器不可用:跳过受影响的检查,并在 costEstimate.assumptions[] 和每个审批门中加上免责声明。
  • 缺少 RBAC:报告所需角色与 az role assignment 命令。

限制

关于价格、收费模式、平台支持范围等具体信息,资料中暂未提供。