add-data-source
Guide the user to add a data source, connection, or API connector to a Canvas App via Power Apps Studio, then verify and…
Adds Azure DevOps connector to a Power Apps code app. Use when querying work items, creating bugs, managing pipelines, or making ADO API calls.
Claude Code
$ npx -y skills add microsoft/power-platform-skills --skill add-azuredevops --agent claude-code
Codex
$ npx skills add microsoft/power-platform-skills --skill add-azuredevops -a codex -y
Cursor
$ npx skills add microsoft/power-platform-skills --skill add-azuredevops -a cursor -y
Gemini CLI
$ npx skills add microsoft/power-platform-skills --skill add-azuredevops -a gemini-cli -y
GitHub Copilot
$ npx skills add microsoft/power-platform-skills --skill add-azuredevops -a github-copilot -y
OpenCode
$ npx skills add microsoft/power-platform-skills --skill add-azuredevops -a opencode -y
Windsurf
$ npx skills add microsoft/power-platform-skills --skill add-azuredevops -a windsurf -y
name: add-azuredevops description: Adds Azure DevOps connector to a Power Apps code app. Use when querying work items, creating bugs, managing pipelines, or making ADO API calls. user-invocable: true allowed-tools: Read, Edit, Write, Grep, Glob, Bash, LSP, TaskCreate, TaskUpdate, TaskList, TaskGet, AskUserQuestion, Skill model: sonnet
**📋 Shared Instructions: [shared-instructions.md](../../shared/shared-instructions.md)** - Cross-cutting concerns.
1. Check Memory Bank → 2. Add Connector → 3. Apply HttpRequest Fix → 4. Configure → 5. Build → 6. Update Memory Bank
---
Check for `memory-bank.md` per [shared-instructions.md](../../shared/shared-instructions.md).
Get the connection as described in [connector-reference.md](../../shared/connector-reference.md#connections). The Azure DevOps connector's ID is `shared_visualstudioteamservices`.
**CLI 1.3.0+ (`PA_INLINE_CONNECTIONS=yes`):** tell the user that adding Azure DevOps may create a connection with their account, then run the add without `-c` and handle the result with the outcome table in connector-reference.md:
pa app add data-source --connector shared_visualstudioteamservices --non-interactive
**Older CLIs:** run `/list-connections` to find the Azure DevOps connection ID (if none exists, create one with `pa connection create` as described in connector-reference.md), then:
pa app add data-source --connector shared_visualstudioteamservices -c <connection-id>
The generated code has a known issue: the `HttpRequest` method uses `parameters` as the parameter name, but the API expects `body`. Rename `parameters` to `body` in these 3 files:
Use the `Edit` tool to rename `parameters` to `body` in each file:
**1. `src/generated/services/AzureDevOpsService.ts`:** Find the `HttpRequest` method. Rename the parameter and its usage:
// 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`:** Find the `visualstudioteamservices` → `HttpRequest` → `parameters` section. Rename the property key:
// BEFORE (generated):
HttpRequest: {
parameters: {
parameters: { ... }
// AFTER (fixed):
HttpRequest: {
parameters: {
body: { ... }**3. `.power/schemas/visualstudioteamservices/visualstudioteamservices.Schema.json`:** Find the `/{connectionId}/httprequest` → `post` → `parameters` array. Change the `name` field:
// BEFORE (generated):
{ "name": "parameters", "in": "body", ... }
// AFTER (fixed):
{ "name": "body", "in": "body", ... }Ask the user what Azure DevOps operations they need (query work items, create items, trigger pipelines, etc.).
**HttpRequest** -- make arbitrary ADO REST API calls:
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"
})
});Docs: [Azure DevOps REST API](https://learn.microsoft.com/en-us/rest/api/azure/devops/?view=azure-devops-rest-7.2)
Use `Grep` to find specific methods in `src/generated/services/AzureDevOpsService.ts` (generated files can be very large -- see [connector-reference.md](../../shared/connector-reference.md#inspecting-large-generated-files)).
npm run build
Fix TypeScript errors before proceeding. Do NOT deploy yet.
Update `memory-bank.md` with: connector added, HttpRequest fix applied, build status.
Plugins from Microsoft that teach AI assistants, such as GitHub Copilot and Claude Code, to build on Power Platform.
Guide the user to add a data source, connection, or API connector to a Canvas App via Power Apps Studio, then verify and…
Creates or edits a Power Apps Canvas App through the Canvas Authoring MCP coauthoring session. Handles staged experience design,…
Configure the Canvas Authoring MCP server for the current coauthoring session. Use before starting to edit a canvas app with the…
Use this skill when the user wants to "report a bug", "file an issue", "report an issue", "submit a bug report", or report any…
Adds any Power Platform connector to a Power Apps code app. Generic fallback for connectors not covered by a specific skill.
Adds a data source or connector to a Power Apps code app. Asks what the user wants to accomplish and routes to the appropriate…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.