关于 add-azuredevops
用于在应用中添加和配置 Azure DevOps 连接器的开发技能,面向构建 Power Platform 应用的开发者。它包含修复生成代码 HttpRequest 参数问题的步骤,并介绍通过 REST API 执行请求。
主要功能
- 01检查并更新 Memory Bank
- 02添加 Azure DevOps 连接器
- 03修复 HttpRequest 参数配置
- 04配置操作并构建应用
适用场景
- 01查询或创建 Azure DevOps 工作项
- 02通过 REST API 触发流水线
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ microsoft/ power-platform-skills --skill add-azuredevops安装后在 Claude Code 中输入/add-azuredevops确认已加载。
详细介绍
📋 共享说明:shared-instructions.md - 通用注意事项。
添加 Azure DevOps
工作流
- 检查 Memory Bank → 2. 添加连接器 → 3. 应用 HttpRequest 修复 → 4. 配置 → 5. 构建 → 6. 更新 Memory Bank
第 1 步:检查 Memory Bank
按照 shared-instructions.md 检查 memory-bank.md。
第 2 步:添加连接器
首先,查找连接 ID(参见 connector-reference.md):
运行 /list-connections 技能。在输出中查找 Azure DevOps 连接。如果没有,则引导用户使用特定于环境的 Connections URL 创建连接 — 根据上下文中的当前环境 ID(来自 power.config.json 或前一步)构造该 URL:https://make.powerapps.com/environments/<environment-id>/connections → + 新建连接 → 搜索连接器 → 创建。
pa app add data-source --connector azuredevops -c <connection-id>
第 3 步:应用 HttpRequest 修复(必需)
生成的代码存在一个已知问题:HttpRequest 方法将 parameters 用作参数名称,但 API 要求使用 body。在以下 3 个文件中,将 parameters 重命名为 body:
使用 Edit 工具,在每个文件中将 parameters 重命名为 body:
1. src/generated/services/AzureDevOpsService.ts:
找到 HttpRequest 方法。重命名参数及其用法:
// BEFORE (generated):
async HttpRequest(parameters: any) {
const params = { parameters: parameters, ... };
// AFTER (fixed):
async HttpRequest(body: any) {
const params = { body: body, ... };
2. .power/appschemas/dataSourceInfo.ts:
找到 visualstudioteamservices → HttpRequest → parameters 部分。重命名属性键:
// BEFORE (generated):
HttpRequest: {
parameters: {
parameters: { ... }
// AFTER (fixed):
HttpRequest: {
parameters: {
body: { ... }
3. .power/schemas/visualstudioteamservices/visualstudioteamservices.Schema.json:
找到 /{connectionId}/httprequest → post → parameters 数组。修改 name 字段:
// BEFORE (generated):
{ "name": "parameters", "in": "body", ... }
// AFTER (fixed):
{ "name": "body", "in": "body", ... }
第 4 步:配置
询问用户需要哪些 Azure DevOps 操作(查询工作项、创建工作项、触发管道等)。
HttpRequest —— 发起任意 ADO REST API 调用:
await AzureDevOpsService.HttpRequest({
Uri: "https://dev.azure.com/{org}/{project}/_apis/wit/wiql?api-version=7.2",
Method: "POST",
Body: JSON.stringify({
query:
"SELECT [System.Id], [System.Title] FROM WorkItems WHERE [System.TeamProject] = @project"
})
});
使用 Grep 在 src/generated/services/AzureDevOpsService.ts 中查找特定方法(生成的文件可能非常大 — 参见 connector-reference.md)。
第 5 步:构建
npm run build
继续之前,请修复 TypeScript 错误。暂勿部署。
第 6 步:更新 Memory Bank
在 memory-bank.md 中更新以下内容:已添加连接器、已应用 HttpRequest 修复、构建状态。