Power Platform Skills
Official agent skills/plugins for Power Platform development by Microsoft.
Overview
This repository is a plugin marketplace containing Claude Code/GitHub Copilot plugins for Power Platform services. Each plugin provides skills, agents, and commands to help developers build on the Power Platform.
Installation
Quick Install (Recommended)
Run the installer to set up all plugins with auto-update enabled:
Windows (PowerShell):
iwr https://raw.githubusercontent.com/microsoft/power-platform-skills/main/scripts/install.js -OutFile install.js; node install.js; del install.js
Mac OS/Linux/Windows (cmd):
curl -fsSL https://raw.githubusercontent.com/microsoft/power-platform-skills/main/scripts/install.js | node
The installer automatically:
- Installs
pac CLI if not already installed
- Detects available tools (Claude Code, GitHub Copilot CLI)
- Registers the plugin marketplace and installs all listed plugins
- Enables auto-update so plugins stay current
Manual Installation
If you prefer to install manually, run these commands inside a Claude Code or GitHub Copilot CLI session:
-
Add the marketplace
/plugin marketplace add microsoft/power-platform-skills
-
Install the desired plugin
/plugin install power-pages@power-platform-skills
/plugin install model-apps@power-platform-skills
/plugin install code-apps@power-platform-skills
/plugin install canvas-apps@power-platform-skills
Available Plugins
Create and deploy Power Pages sites using modern development approaches.
Currently supported: Code Sites (SPAs) with React, Angular, Vue, or Astro
Model Apps (plugins/model-apps)
Build and deploy Power Apps generative pages for model-driven apps.
Stack: React + TypeScript + Fluent, deployed via PAC CLI
Code Apps (plugins/code-apps)
Build and deploy Power Apps code apps connected to Power Platform via connectors.
Stack: React + Vite + TypeScript, deployed via PAC CLI
Author Power Apps Canvas Apps using the Canvas Authoring MCP server.
Stack: PA YAML (.pa.yaml) authored via CanvasAuthoringMcpServer, requires .NET 10 SDK
Local Development
To develop and test plugins locally, follow these steps:
-
Clone this repository
-
Launch Claude Code with plugin path:
claude --plugin-dir /path/to/power-platform-skills/plugins/power-pages
claude --plugin-dir /path/to/power-platform-skills/plugins/model-apps
claude --plugin-dir /path/to/power-platform-skills/plugins/code-apps
claude --plugin-dir /path/to/power-platform-skills/plugins/canvas-apps
Running Without Interruption
Plugins in this repo may invoke multiple tools (file edits, shell commands, MCP servers) during a session, which can result in frequent approval prompts. Use the options below to reduce or eliminate these interruptions.
Warning: Auto-approval options give the agent the same access you have on your machine. Only use these in trusted or sandboxed environments.
Claude Code
Option 1 — Permission mode (recommended)
Set the acceptEdits mode to auto-approve file edits while still prompting for shell commands:
// .claude/settings.json (project-level) or ~/.claude/settings.json (user-level)
{
"defaultMode": "acceptEdits",
"permissions": {
"allow": [
"Bash(npm run *)",
"Bash(git *)",
"Bash(pac *)"
// add other commands your workflow needs
]
}
}
Option 2 — Allow all tools
Press Shift+Tab during a session to cycle to auto-accept mode, or launch with:
claude --dangerously-skip-permissions
See the Claude Code permissions docs for the full reference.
GitHub Copilot CLI
Option 1 — Allow specific tools (recommended)
Pre-approve only the tools your workflow needs:
copilot --allow-tool 'write' --allow-tool 'shell(npm run build)' --allow-tool 'shell(pac *)'
Option 2 — Allow all tools in Copilot
copilot --allow-all-tools
To allow everything except dangerous commands:
copilot --allow-all-tools --deny-tool 'shell(rm)' --deny-tool 'shell(git push)'
See the Copilot CLI docs for the full reference.
Repository Structure