az prototype
注释
此参考是 Azure CLI(版本 2.50.0 或更高版本) 的原型 扩展的一部分。 该扩展将在首次运行 az prototype 命令时自动安装。 了解更多关于扩展的信息。
此命令组处于预览状态,正在开发中。 参考和支持级别:https://aka.ms/CLI_refstatus
使用 AI 驱动的代理团队快速创建 Azure 原型。
az 原型扩展使你能够使用由 GitHub Copilot 或 Azure OpenAI 提供支持的智能代理团队生成功能 Azure 原型。
工作流:init →设计→生成→部署
每个阶段都可以独立运行(使用先决条件防护),并且大多数阶段都重新进入 — 你可以返回以优化设计或重新生成特定组件。
分析命令允许你随时诊断错误和估算成本。
命令
| 名称 | 说明 | 类型 | Status |
|---|---|---|---|
| az prototype agent |
管理用于生成原型的 AI 代理。 |
Extension | 预览版 |
| az prototype agent add |
将自定义代理添加到项目。 |
Extension | 预览版 |
| az prototype agent export |
将任何代理(包括内置)导出为 YAML 文件。 |
Extension | 预览版 |
| az prototype agent list |
列出所有可用的代理(内置和自定义)。 |
Extension | 预览版 |
| az prototype agent override |
使用自定义定义替代内置代理。 |
Extension | 预览版 |
| az prototype agent remove |
删除自定义代理或重写。 |
Extension | 预览版 |
| az prototype agent show |
显示特定代理的详细信息。 |
Extension | 预览版 |
| az prototype agent test |
向任何代理发送测试提示并显示响应。 |
Extension | 预览版 |
| az prototype agent update |
更新现有自定义代理的属性。 |
Extension | 预览版 |
| az prototype analyze |
分析原型的错误、成本和诊断。 |
Extension | 预览版 |
| az prototype analyze costs |
估算 Azure 成本(小/中/大 T 恤大小)。 |
Extension | 预览版 |
| az prototype analyze error |
使用重新部署说明分析错误并获取修补程序。 |
Extension | 预览版 |
| az prototype build |
在分阶段输出中生成基础结构和应用程序代码。 |
Extension | 预览版 |
| az prototype config |
管理原型项目配置。 |
Extension | 预览版 |
| az prototype config get |
获取单个配置值。 |
Extension | 预览版 |
| az prototype config init |
用于创建原型.yaml 配置文件的交互式设置。 |
Extension | 预览版 |
| az prototype config set |
设置配置值。 |
Extension | 预览版 |
| az prototype config show |
显示当前项目配置。 |
Extension | 预览版 |
| az prototype deploy |
使用交互式分阶段部署将原型部署到 Azure。 |
Extension | 预览版 |
| az prototype design |
分析要求并生成体系结构设计。 |
Extension | 预览版 |
| az prototype generate |
生成文档和规格工具包项目。 |
Extension | 预览版 |
| az prototype generate backlog |
生成积压工作项并将工作项推送到 GitHub 或 Azure DevOps。 |
Extension | 预览版 |
| az prototype generate docs |
从具有 AI 填充的模板生成文档。 |
Extension | 预览版 |
| az prototype generate speckit |
生成具有 AI 填充的规范工具包文档捆绑包。 |
Extension | 预览版 |
| az prototype init |
初始化新的原型项目。 |
Extension | 预览版 |
| az prototype knowledge |
管理知识库贡献。 |
Extension | 预览版 |
| az prototype knowledge contribute |
将知识库贡献作为 GitHub 问题提交。 |
Extension | 预览版 |
| az prototype status |
在所有阶段显示当前项目状态。 |
Extension | 预览版 |
az prototype build
命令组“原型”处于预览状态,正在开发中。 参考和支持级别:https://aka.ms/CLI_refstatus
在分阶段输出中生成基础结构和应用程序代码。
使用体系结构设计生成 Terraform/Bicep 模块、应用程序代码、数据库脚本和文档。
默认情况下,交互式 - 生成会话使用 Claude Code 启发的边框提示、进度指示器、策略强制和对话评审循环。
所有输出都组织成细粒度的依赖项排序部署阶段。 每个基础结构组件、数据库系统和应用程序都获得了自己的阶段。 工作负荷模板在与设计匹配时用作可选的起点。
生成后,生成报告会显示生成的内容,你可以提供反馈来重新生成特定阶段。 键入“done”以接受生成。
生成期间的斜杠命令:/status - 显示阶段完成摘要 /阶段 - 显示完整部署计划 /files - 列出所有生成的文件 /policy - 显示策略检查摘要 /help - 显示可用命令
对非交互式预览使用 --dry-run。
az prototype build [--auto-accept]
[--dry-run]
[--reset]
[--scope {all, apps, db, docs, infra}]
[--status]
示例
交互式生成会话 (默认值)
az prototype build
显示当前生成进度
az prototype build --status
清除生成状态并重新开始
az prototype build --reset
仅生成基础结构代码
az prototype build --scope infra
预览将生成的内容
az prototype build --scope all --dry-run
可选参数
以下参数是可选的,但根据上下文,命令可能需要一个或多个参数才能成功执行。
自动接受策略冲突和标准冲突的默认建议。
| 属性 | 值 |
|---|---|
| 默认值: | False |
预览在不写入文件的情况下生成的内容。
| 属性 | 值 |
|---|---|
| 默认值: | False |
清除现有生成状态并重新开始。
| 属性 | 值 |
|---|---|
| 默认值: | False |
要生成的内容。
| 属性 | 值 |
|---|---|
| 默认值: | all |
| 接受的值: | all, apps, db, docs, infra |
在不启动会话的情况下显示当前生成进度。
| 属性 | 值 |
|---|---|
| 默认值: | False |
全局参数
提高日志记录详细程度以显示所有调试日志。
| 属性 | 值 |
|---|---|
| 默认值: | False |
显示此帮助消息并退出。
只显示错误,取消显示警告。
| 属性 | 值 |
|---|---|
| 默认值: | False |
输出格式。
| 属性 | 值 |
|---|---|
| 默认值: | json |
| 接受的值: | json, jsonc, none, table, tsv, yaml, yamlc |
JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
| 属性 | 值 |
|---|---|
| 默认值: | False |
az prototype deploy
命令组“原型”处于预览状态,正在开发中。 参考和支持级别:https://aka.ms/CLI_refstatus
使用交互式分阶段部署将原型部署到 Azure。
默认情况下,交互式 - 运行预检检查(订阅、IaC 工具、资源组、资源提供程序),然后按顺序部署阶段,并按进度跟踪和 QA 优先错误路由。
部署后,输入对话循环,可以使用斜杠命令检查状态、回滚、重新部署或预览更改。
部署期间的斜杠命令:/status - 显示阶段完成摘要 /阶段 - 显示完整阶段细分(/status 的别名) /deploy N - 部署特定阶段(或“all”用于挂起) /rollback N - 回滚特定阶段(或“all” 按相反顺序) /重新部署 N - 回滚和重新部署阶段 /计划 N - 阶段 /输出的 What-if / terraform 计划 - 显示捕获的部署输出 /预检 - 重新运行预检检查 /help - 显示可用的命令
对非交互式 what-if/terraform 计划预览使用 --dry-run。 对非交互式单阶段部署使用 --stage N。 对单个阶段的 what-if 预览使用 --stage N --dry-run。 使用 --outputs 显示捕获的部署输出。 使用 --rollback-info 显示回滚说明。 使用 --generate-scripts 为应用程序目录生成 deploy.sh。
az prototype deploy [--client-id]
[--client-secret]
[--dry-run]
[--force]
[--generate-scripts]
[--outputs]
[--reset]
[--rollback-info]
[--script-registry]
[--script-resource-group]
[--script-type {container_app, function, webapp}]
[--service-principal]
[--stage]
[--status]
[--tenant]
[--tenant-id]
示例
交互式部署会话 (默认值)
az prototype deploy
显示当前部署进度
az prototype deploy --status
预览所有阶段(what-if /terraform 计划)
az prototype deploy --dry-run
仅部署阶段 2
az prototype deploy --stage 2
强制完全重新部署
az prototype deploy --force
显示捕获的部署输出
az prototype deploy --outputs
显示回滚说明
az prototype deploy --rollback-info
生成应用服务部署脚本
az prototype deploy --generate-scripts --script-type webapp
可选参数
以下参数是可选的,但根据上下文,命令可能需要一个或多个参数才能成功执行。
服务主体应用程序/客户端 ID(或通过配置设置)。
服务主体客户端机密(或通过配置设置)。
预览将部署的内容(适用于 Bicep 的 what-if,计划 Terraform)。
| 属性 | 值 |
|---|---|
| 默认值: | False |
强制完全部署,忽略更改跟踪。
| 属性 | 值 |
|---|---|
| 默认值: | False |
为应用程序目录生成 deploy.sh 脚本。
| 属性 | 值 |
|---|---|
| 默认值: | False |
显示 Terraform/Bicep 中捕获的部署输出。
| 属性 | 值 |
|---|---|
| 默认值: | False |
清除部署状态并重新开始。
| 属性 | 值 |
|---|---|
| 默认值: | False |
显示基于部署历史记录的回滚说明。
| 属性 | 值 |
|---|---|
| 默认值: | False |
--generate-scripts 的容器注册表 URL(container_app类型)。
--generate-scripts 的默认资源组名称。
--generate-scripts 的 Azure 部署目标类型。
| 属性 | 值 |
|---|---|
| 默认值: | webapp |
| 接受的值: | container_app, function, webapp |
在部署之前使用服务主体进行身份验证。
| 属性 | 值 |
|---|---|
| 默认值: | False |
仅部署特定的阶段号(使用 --status 查看阶段)。
显示当前部署进度,而无需启动会话。
| 属性 | 值 |
|---|---|
| 默认值: | False |
用于跨租户部署的 Azure AD 租户 ID。
服务主体身份验证的租户 ID(或通过配置设置)。
全局参数
提高日志记录详细程度以显示所有调试日志。
| 属性 | 值 |
|---|---|
| 默认值: | False |
显示此帮助消息并退出。
只显示错误,取消显示警告。
| 属性 | 值 |
|---|---|
| 默认值: | False |
输出格式。
| 属性 | 值 |
|---|---|
| 默认值: | json |
| 接受的值: | json, jsonc, none, table, tsv, yaml, yamlc |
JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
| 属性 | 值 |
|---|---|
| 默认值: | False |
az prototype design
命令组“原型”处于预览状态,正在开发中。 参考和支持级别:https://aka.ms/CLI_refstatus
分析要求并生成体系结构设计。
读取项目(文档、关系图、规格),让 biz-analyst 代理识别差距,并生成体系结构文档。
在没有参数的情况下运行时,启动交互式对话以通过引导式问题捕获要求。
使用 --interactive,在生成体系结构后输入精简循环,以便可以查看设计和请求更改。
biz-analyst 代理始终参与(即使提供上下文)来检查缺少的要求和未声明的假设。
此阶段重新进入 — 再次运行它以优化设计。
az prototype design [--artifacts]
[--context]
[--interactive]
[--reset]
[--skip-discovery]
[--status]
示例
交互式设计会话(引导式对话)
az prototype design
使用体系结构优化循环的交互式设计
az prototype design --interactive
从项目目录进行设计
az prototype design --artifacts ./requirements/
将上下文添加到现有设计
az prototype design --context "Add Redis caching layer"
重置和开始设计新鲜
az prototype design --reset
可选参数
以下参数是可选的,但根据上下文,命令可能需要一个或多个参数才能成功执行。
包含要求文档、关系图或其他项目的目录的路径。
其他上下文或要求作为自由文本。
在生成体系结构后输入交互式优化循环。
| 属性 | 值 |
|---|---|
| 默认值: | False |
重置设计状态并重新开始。
| 属性 | 值 |
|---|---|
| 默认值: | False |
跳过发现对话,直接从现有发现状态生成体系结构。
| 属性 | 值 |
|---|---|
| 默认值: | False |
显示当前发现状态(打开的项目,已确认的项目),而无需启动会话。
| 属性 | 值 |
|---|---|
| 默认值: | False |
全局参数
提高日志记录详细程度以显示所有调试日志。
| 属性 | 值 |
|---|---|
| 默认值: | False |
显示此帮助消息并退出。
只显示错误,取消显示警告。
| 属性 | 值 |
|---|---|
| 默认值: | False |
输出格式。
| 属性 | 值 |
|---|---|
| 默认值: | json |
| 接受的值: | json, jsonc, none, table, tsv, yaml, yamlc |
JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
| 属性 | 值 |
|---|---|
| 默认值: | False |
az prototype init
命令组“原型”处于预览状态,正在开发中。 参考和支持级别:https://aka.ms/CLI_refstatus
初始化新的原型项目。
设置项目基架、创建项目配置文件,并选择性地使用 GitHub 进行身份验证(验证 Copilot 许可证)。
只有 copilot 和 github-models AI 提供程序才需要 GitHub 身份验证。 使用 azure-openai 时,完全跳过 GitHub 身份验证。
如果目标目录已包含一个 prototype.yaml,则命令将在覆盖之前提示。
az prototype init [--ai-provider {azure-openai, copilot, github-models}]
[--environment {dev, prod, staging}]
[--iac-tool {bicep, terraform}]
[--location]
[--model]
[--name]
[--output-dir]
[--template]
示例
创建新的原型项目
az prototype init --name my-prototype --location eastus
使用 Bicep 首选项进行初始化
az prototype init --name my-app --location westus2 --iac-tool bicep
使用 Azure OpenAI (跳过 GitHub 身份验证)
az prototype init --name my-app --location eastus --ai-provider azure-openai
指定环境和模型
az prototype init --name my-app --location eastus --environment staging --model gpt-4o
可选参数
以下参数是可选的,但根据上下文,命令可能需要一个或多个参数才能成功执行。
用于代理交互的 AI 提供程序。
| 属性 | 值 |
|---|---|
| 默认值: | copilot |
| 接受的值: | azure-openai, copilot, github-models |
原型的目标环境。
| 属性 | 值 |
|---|---|
| 默认值: | dev |
| 接受的值: | dev, prod, staging |
基础结构即代码工具首选项。
| 属性 | 值 |
|---|---|
| 默认值: | terraform |
| 接受的值: | bicep, terraform |
用于资源部署的 Azure 区域(例如 eastus)。
要使用的 AI 模型(默认值:claude-sonnet-4.5 for copilot、gpt-4o for others)。
原型项目的名称。
项目文件的输出目录。
| 属性 | 值 |
|---|---|
| 默认值: | . |
要使用的项目模板(例如 web-app、data-pipeline、ai-app)。
全局参数
提高日志记录详细程度以显示所有调试日志。
| 属性 | 值 |
|---|---|
| 默认值: | False |
显示此帮助消息并退出。
只显示错误,取消显示警告。
| 属性 | 值 |
|---|---|
| 默认值: | False |
输出格式。
| 属性 | 值 |
|---|---|
| 默认值: | json |
| 接受的值: | json, jsonc, none, table, tsv, yaml, yamlc |
JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
| 属性 | 值 |
|---|---|
| 默认值: | False |
az prototype status
命令组“原型”处于预览状态,正在开发中。 参考和支持级别:https://aka.ms/CLI_refstatus
在所有阶段显示当前项目状态。
显示原型项目的摘要,包括配置、阶段进度(设计、生成、部署)和挂起的更改。
默认情况下,显示人工可读摘要。 将 --json 用于适合编写脚本的计算机可读输出。 使用 --detailed 了解每个阶段的扩展详细信息。
az prototype status [--detailed]
[--json]
示例
显示项目状态
az prototype status
显示按阶段细分的详细状态
az prototype status --detailed
获取计算机可读 JSON 输出
az prototype status --json
可选参数
以下参数是可选的,但根据上下文,命令可能需要一个或多个参数才能成功执行。
显示扩展的每个阶段的详细信息。
| 属性 | 值 |
|---|---|
| 默认值: | False |
输出计算机可读 JSON,而不是格式化的显示。
| 属性 | 值 |
|---|---|
| 默认值: | False |
全局参数
提高日志记录详细程度以显示所有调试日志。
| 属性 | 值 |
|---|---|
| 默认值: | False |
显示此帮助消息并退出。
只显示错误,取消显示警告。
| 属性 | 值 |
|---|---|
| 默认值: | False |
输出格式。
| 属性 | 值 |
|---|---|
| 默认值: | json |
| 接受的值: | json, jsonc, none, table, tsv, yaml, yamlc |
JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/。
订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。
增加日志记录详细程度。 使用 --debug 获取完整的调试日志。
| 属性 | 值 |
|---|---|
| 默认值: | False |