首页
/ 在 awesome-copilot 中启用 Azure Principal Architect:以 Well-Architected Framework 五大支柱驱动的 Azure 架构咨询 Agent

在 awesome-copilot 中启用 Azure Principal Architect:以 Well-Architected Framework 五大支柱驱动的 Azure 架构咨询 Agent

2026-09-08 21:12:16作者:蔡怀权

导读

本文深入解读 awesome-copilot 社区仓库中 Azure Principal Architect Agent 的完整设计:它是一份面向 GitHub Copilot 的自定义 Agent 指令文件,让编码代理以"Azure 首席架构师"身份工作,在给出任何架构建议前先基于 Azure Well-Architected Framework(WAF)五大支柱与 Microsoft 官方文档进行系统化评估。读完本文,你将掌握该 Agent 的职责边界、七步架构咨询方法论、五大支柱评估要点、响应结构约定,以及它与仓库内 azure-cloud-development 插件、azure-well-architected-review 技能之间的配套关系,并可直接在自己的仓库中安装使用。

一、Agent 是什么:一份文件、一种"角色切换"

awesome-copilot 是一个社区驱动的 GitHub Copilot 扩展集合,其 agents/ 目录下收录了数百个自定义 Agent,每个都是一个 Markdown 文件(如 .agent.md),通过简单的文件级配置让 Copilot 编码代理(CCA)"专业化"。docs/README.agents.md 明确说明:用户可以将这些 *.agent.md 文件下载并加入自己的仓库,在 VS Code Chat 界面中激活使用。

Azure Principal Architect Agent 正是这一机制在 Azure 云架构领域的落地。其 frontmatter(agents/azure-principal-architect.agent.md)中声明了:

  • nameAzure Principal Architect mode instructions,即它定义的是一个"架构师模式指令";
  • description:以 Azure Well-Architected Framework 原则和 Microsoft 最佳实践提供专家级 Azure 首席架构师指导;
  • tools:除常规的代码浏览、编辑、运行命令、测试、搜索等工具外,还挂载了两个关键的 MCP 服务器能力——microsoft.docs.mcp(Microsoft 文档查询)与 azure_query_learn(Azure 学习/文档查询),以及 azure_design_architectureazure_get_code_gen_best_practicesazure_get_deployment_best_practicesazure_get_swa_best_practices 等 Azure 专用工具,使其具备实时检索官方文档的能力。

从仓库的插件清单可见,该 Agent 归属于 azure-cloud-development 插件:plugins/azure-cloud-development/plugin.jsonazure-principal-architect.mdazure-saas-architectazure-logic-apps-expertazure-verified-modules-bicepazure-verified-modules-terraform 等 Agent 编组在一起,共同构成 Azure 云开发工具箱;plugins/azure-cloud-development/README.md 将其描述为"使用 Azure Well-Architected Framework 原则和 Microsoft 最佳实践提供专家级 Azure Principal Architect 指导"。

安装与激活方式

根据 docs/README.agents.md 的通用说明,使用方式如下:

  1. 通过 VS Code 或 VS Code Insiders 的安装按钮安装该 Agent,或直接下载 agents/azure-principal-architect.agent.md 加入你的仓库;
  2. 为 Agent 配置所需的 MCP 服务器(本文档依赖 microsoft.docs.mcpazure_query_learn,确保可以查询 Microsoft Learn 文档);
  3. 在 VS Code Chat 界面或 CCA 中激活该 Agent,即可获得其挂载的 MCP 工具能力。

二、核心职责:文档优先 + 五大支柱评估

Agent 指令在 "Core Responsibilities" 中定义了行为铁律(agents/azure-principal-architect.agent.md):

第一条铁律是"永远先用 Microsoft 文档工具"。任何推荐给出之前,必须使用 microsoft.docs.mcpazure_query_learn 检索最新的 Azure 指导与最佳实践,针对具体服务与架构模式进行查询,确保建议与微软当前官方指引一致。这意味着该 Agent 的抗幻觉设计是"文档优先于模型记忆"——静态知识仅作起点,动态事实以官方文档为准。

第二条铁律是"每次架构决策都要对照 WAF 五大支柱评估"。五大支柱及其关注点如下表:

支柱 核心关注点
Security(安全) 身份(Identity)、数据保护、网络安全、治理
Reliability(可靠性) 韧性(Resiliency)、可用性、灾难恢复、监控
Performance Efficiency(性能效率) 可伸缩性、容量规划、优化
Cost Optimization(成本优化) 资源优化、监控、治理
Operational Excellence(运营卓越) DevOps、自动化、监控、管理

支柱评估的落地:仓库内的检查清单参照

该 Agent 本身只给出支柱框架,而仓库内配套的 skills/azure-well-architected-review/SKILL.md 提供了每个支柱可执行的细化检查清单,二者配合即可把"评估"变成"可操作的审查"。例如:

  • 可靠性:可用性区域是否启用(VM、VMSS、AKS 节点池、App Service、SQL、Storage ZRS)、生产 SKU 是否满足 SLA、SQL/Cosmos DB 备份与时间点恢复、按 RPO 配置地理冗余(GRS/RA-GRS、SQL 故障转移组、Cosmos 多区域)、自动伸缩规则、负载均衡健康探测、Service Bus/Event Grid 死信、指数退避重试、文档化的 RTO/RPO 灾备计划;
  • 安全:使用托管身份而非带机密的 service principal、代码与 IaC 中无硬编码凭据、密钥进 Key Vault 并启用 RBAC、存储账户禁止公共 Blob 访问、PaaS 数据服务使用 Private Endpoint、NSG 最小化入站规则(不允许 * → *)、全网端点 TLS 1.2+、最小权限 RBAC、Defender for Cloud、公共 Web 端点启用 Azure WAF(Application Gateway 或 Front Door)、诊断设置将安全日志送入 Log Analytics/Sentinel;
  • 成本优化:稳态计算评估预留或节省计划、存储生命周期策略将 Blob 转入冷/归档层、按实际利用率调整 SKU 大小、开发/测试环境自动关机、配置 Azure Budgets 与成本告警、清理未挂载托管磁盘与孤立公网 IP、突发/低流量负载使用消费/Serverless 层、调整 Log Analytics 保留期与数据上限;
  • 运营卓越:全部基础设施以 IaC 定义(拒绝手动门户改动)、统一的资源标记策略(owner、environment、cost center)、关键指标与服务健康告警、自动化部署流水线(GitHub Actions / Azure Pipelines)、Activity Log 与诊断设置汇入 Log Analytics、Application Insights 或 OpenTelemetry 埋点、Azure Policy 强制组织标准、runbook 与运维文档;
  • 性能效率:按负载校验计算 SKU、合理使用缓存(Azure Cache for Redis、CDN/Front Door 缓存)、Front Door/CDN 服务全球静态内容、基于负载指标而非固定实例数伸缩、数据库性能层选型(DTU 与 vCore、弹性池、Cosmos RU 自动伸缩)、延迟敏感磁盘用 Premium/区域冗余存储、数据库与 HTTP 客户端使用连接池与异步模式。

这组清单可以作为使用 Azure Principal Architect Agent 时"五大支柱该查什么"的落地参考。

三、架构方法论:七步决策流程

Agent 规定了一套固定的架构咨询流程(agents/azure-principal-architect.agent.md):

  1. 先检索文档(Search Documentation First):用 microsoft.docs.mcpazure_query_learn 查找相关 Azure 服务的现行最佳实践;
  2. 理解需求(Understand Requirements):澄清业务需求、约束与优先级;
  3. 不明先问,不臆测(Ask Before Assuming):当关键架构需求缺失或模糊时,显式向用户提问而非假设,关键维度包括——性能与规模要求(SLA、RTO、RPO、预期负载)、安全与合规要求(监管框架、数据驻留)、预算约束与成本优化优先级、运营能力与 DevOps 成熟度、集成需求与既有系统约束;
  4. 评估权衡(Assess Trade-offs):显式识别并讨论 WAF 各支柱之间的取舍;
  5. 推荐模式(Recommend Patterns):引用具体的 Azure Architecture Center 模式与参考架构;
  6. 验证决策(Validate Decisions):确保用户理解并接受架构选择带来的后果;
  7. 给出具体方案(Provide Specifics):包含具体的 Azure 服务、配置与实现指导。

这一流程与仓库中 skills/azure-architecture-autopilot/references/architecture-guidance-sources.md 的"设计方向决策只查架构文档、部署规格验证(API 版本/SKU/区域)另查动态来源"的职责分离思路一脉相承:架构方向与部署细节分层检索,避免把文档内容硬编码为固定事实。

四、响应结构:每次推荐的统一输出框架

为了让每一次建议都可审计、可引用,Agent 要求每条推荐按固定结构组织(agents/azure-principal-architect.agent.md):

  • Requirements Validation:关键需求不明确时,先提出具体问题再继续;
  • Documentation Lookup:检索 microsoft.docs.mcpazure_query_learn 获取服务专属最佳实践;
  • Primary WAF Pillar:标识本次优化针对的主导支柱;
  • Trade-offs:明确说明为达成该优化牺牲了什么;
  • Azure Services:给出确切的 Azure 服务与配置,并附文档化的最佳实践依据;
  • Reference Architecture:链接相关的 Azure Architecture Center 文档;
  • Implementation Guidance:基于 Microsoft 指引给出可执行的下一步。

这一"先验证、再查证、后权衡、终落地"的结构,保证输出既有理论依据又有落地路径,同时把取舍透明化,避免"只报喜不报忧"的单向推荐。

五、重点聚焦领域:七类高频架构议题

Agent 明确列出其专精的七类架构议题(agents/azure-principal-architect.agent.md),可作为使用时的提问引导:

  1. 多区域策略:带清晰故障转移模式(failover patterns)的多区域部署;
  2. 零信任安全模型:以身份优先(identity-first)的方式设计安全边界;
  3. 成本优化策略:含具体治理建议的成本控制方案;
  4. 可观测性模式:基于 Azure Monitor 生态的监控方案;
  5. 自动化与 IaC:与 Azure DevOps / GitHub Actions 集成的基础设施即代码;
  6. 数据架构模式:面向现代工作负载的数据架构;
  7. 微服务与容器策略:Azure 上的微服务和容器化方案。

这些议题与仓库中其他 Azure 相关内容形成互补:例如 azure-architecture-autopilot 技能覆盖自然语言设计架构到 Bicep 部署的流水线,azure-well-architected-review 覆盖存量架构的体检,而本 Agent 则专注于"给出架构建议前的专家级评估与决策支持"。

六、使用建议与边界

使用 Azure Principal Architect Agent 时有几点值得注意:

  • 依赖文档工具:其推荐质量直接取决于 microsoft.docs.mcpazure_query_learn 是否可用并正确配置,建议在使用前确认 MCP 服务器已就绪;
  • 擅长决策支持而非代码生成:它的产出是架构建议、权衡分析和实现指引,适合作为方案评审、架构选型、迁移规划的辅助角色,与负责写 Bicep/Terraform 的 IaC 类 Agent(如 azure-verified-modules-bicep.agent.md)配合使用效果更佳;
  • 强制文档先行:由于指令要求"为每个提到的 Azure 服务都先检索 Microsoft 文档",遇到需要快速响应的简单问答时,该 Agent 可能比其他轻量 Agent 多一步查证开销,但换来的是更高的准确性。

结语

Azure Principal Architect Agent 的价值在于把"首席架构师"的思考纪律固化进 Copilot:先查官方文档、再对五大支柱逐项评估、明确权衡取舍、最后给出具体可执行的方案。配合仓库内 azure-cloud-development 插件体系与 WAF 审查技能,它既是云架构决策的"顾问",也是团队架构评审流程的"守门人"。如果你正在 Azure 上进行架构设计、方案评审或成本/安全优化,不妨将 agents/azure-principal-architect.agent.md 加入你的仓库,让每次架构讨论都有据可依、有取舍可查。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
33
18
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
1.14 K
2.76 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
858
1.35 K
docsdocs
暂无描述
Markdown
899
5.82 K
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
923
1.85 K
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.83 K
1.02 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
532
596
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
1.03 K
524
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.37 K
1.46 K
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
548
393