Azure Durable Task 资源管理器技能
帮助 .NET 开发者通过 Azure Resource Manager 配置和管理 Durable Task Scheduler。
技能明确区分管理面与数据面,使用 DefaultAzureCredential,并提醒不要硬编码密钥;但示例包含客户端密钥环境变量,未说明最小 RBAC 权限、敏感配置保护、执行前用户确认、变更影响、回滚或恢复流程,因此扣分。
文档覆盖创建、读取、更新、删除、保留策略和 RequestFailedException 处理,且操作顺序基本一致;但未提供该技能关键路径的可执行测试,部分 API/扩展方法和版本信息无法仅凭静态文件确认,异常反馈和边界条件也不完整,因此受静态上限限制并扣分。
名称、描述、触发词、管理面边界、安装方式和核心场景清晰,覆盖调度器、任务中心及保留策略;但未明确非适用场景、权限前置条件、区域/服务可用性或中文使用指导,环境适配证据有限,因此扣分。
SKILL.md 结构清楚,包含安装、认证、资源层级、工作流、类型表、最佳实践、错误处理、完整示例、相关 SDK、MIT 许可证和版本元数据;但缺少技能专属变更记录、维护责任人/更新路径、已知限制及兼容性说明,版本信息也缺乏静态佐证,因此扣分。
示例对常见 ARM 管理任务具有直接参考价值,且说明了管理面与数据面的替代 SDK;但没有该技能专属输出验证、完整参数覆盖、权限与失败恢复指导,代码可能仍需人工核对,因此按静态评估保守给分。
技能提供 GitHub SDK 源码和 NuGet 参考,并且仓库存在通用 CI 与测试基础设施;但给出的材料没有证明该技能关键路径有专属测试或独立复现结果,无法进行静态之外的交叉验证,因此低分。
- 这是仅基于源文件的静态审查,未执行或编译示例代码;使用前应核对当前 NuGet 包、API 版本、扩展方法名称及区域可用性。
- 创建、更新和删除 Azure 资源会产生外部副作用;文档未规定执行前确认、权限范围、变更预览或回滚方案。
- 不要将 AZURE_CLIENT_SECRET 写入源码或不受保护的环境;应优先使用托管身份或安全的密钥注入机制,并确认最小 RBAC 权限。
它能做什么 & 适用场景
这是一个面向 .NET 的 Azure Durable Task Scheduler 管理平面技能。它指导编码代理使用 Azure.ResourceManager.DurableTask 创建、查询、更新和删除调度器、任务中心及保留策略。内容涵盖 Azure 身份验证、资源层级、Dedicated 与 Consumption SKU、IP 允许列表和 ARM 错误处理。它不负责启动编排、查询实例或发送事件等数据平面操作。
提供安装命令、环境变量、DefaultAzureCredential 和 ArmClient 配置示例;生成用于获取订阅和资源组、创建或更新 Durable Task Scheduler、创建 Task Hub、列出或按名称获取资源、管理保留策略以及按依赖顺序删除资源的 C# 代码;说明 WaitUntil.Completed、WaitUntil.Started、CreateOrUpdateAsync 和 RequestFailedException 的用法。
- 负责 Azure 基础设施的 .NET 工程师需要以代码创建 Dedicated Durable Task Scheduler,并设置实例容量。
- 平台工程师需要为开发或波动负载配置 Consumption SKU 的 Durable Task Scheduler。
- 应用团队需要在现有调度器下创建 Task Hub,并通过 ARM 管理其生命周期。
- 运维或基础设施团队需要调整 IP 允许列表、扩容调度器或配置保留策略。
- 开发者需要区分 Durable Task 的资源管理操作与编排运行时的数据平面操作。
优缺点一览
- 覆盖调度器、任务中心和保留策略的完整管理平面工作流。
- 提供可复制的 C# 示例,包含认证、资源层级、异步操作和错误处理。
- 明确区分管理平面 SDK 与 Durable Task 数据平面 SDK。
- 说明 Dedicated 与 Consumption SKU 及删除资源的依赖顺序。
- 仅面向 .NET 和 Azure Resource Manager 管理操作,不覆盖编排执行或实例查询。
- 代码依赖 Azure 订阅、资源组和有效身份凭据;来源未提供本地模拟方案。
- 来源未说明费用、区域可用性或该技能自身的独立测试覆盖情况。
如何安装
在项目中运行:
dotnet add package Azure.ResourceManager.DurableTask
dotnet add package Azure.Identity
如果安装整个仓库集合,可运行 npx skills add microsoft/skills,在向导中选择该技能;集合技能会安装到所选代理目录,例如 .github/skills/。来源未说明更具体的单技能安装命令。
如何使用
在编码代理中提出类似请求:使用 azure-resource-manager-durabletask-dotnet 创建一个 East US 的 Dedicated Durable Task Scheduler 和 Task Hub,并使用 DefaultAzureCredential。
运行生成的代码前设置 AZURE_SUBSCRIPTION_ID 和 AZURE_RESOURCE_GROUP;使用服务主体时还可设置 AZURE_TENANT_ID、AZURE_CLIENT_ID 和 AZURE_CLIENT_SECRET。需要启动编排、查询实例或发送事件时,应改用 Microsoft.DurableTask.Client.AzureManaged 等数据平面 SDK。
对比同类
该技能明确将 Azure.ResourceManager.DurableTask 与 Microsoft.DurableTask.Client.AzureManaged、Microsoft.DurableTask.Worker.AzureManaged 区分:前者用于管理调度器、任务中心和保留策略,后两者用于数据平面编排与工作器运行。