Build Copilot Studio agents like software: local YAML, source control, repeatable packaging, and an AI assistant that already knows the platform's sharp edges.
copilot plugin install microsoft/FastTrack:copilot-agent-samples/github-copilot-skills/copilot-studio-workflow📖 View the interactive showcase → — see the full workflow, example conversations, and platform gotchas in a visual guide.
Copilot Studio is powerful, but the default workflow is still portal-heavy: click through the UI, hope you remember what changed, and figure out packaging only when it is time to ship. That is workable for demos. It is not a good engineering workflow.
This skill gives builders a better model. Your agent definition lives as YAML in git. You pull from the cloud, revert environment-specific artifacts, edit locally, push intentionally, publish, test in the real channel, and package for deployment with a repeatable process. Instead of learning the platform by trial and error, you can ask for the next step in plain English and get workflow-aware guidance.
It also bakes in the painful lessons most teams discover the hard way: why pull dirties workflow files, why push does not update solution membership, why variable hygiene matters for imports, and how to move from dev environment to clean solution zip without surprises. The result is a Copilot Studio workflow that feels like engineering, not archaeology.
You: I need to start building a Copilot Studio agent. What's the workflow?
Copilot: I'll walk you through the local dev loop, run cps-status.ps1, and
make sure VS Code plus the Copilot Studio extension are ready before you pull
or push anything.
You: I just pulled my agent from the cloud and git shows a bunch of changed
workflow files. What happened?
Copilot: That's the environment URL translation problem. A pull can bring
live URLs and settings into repo files. Run cps-revert.ps1 now, then review a
clean diff that only shows intentional source changes.
You: I pushed a new topic via VS Code but it's not showing up in my solution
export. What's wrong?
Copilot: Push created the Dataverse component, but it did not add that
component to the Power Platform solution. Run cps-add-component.ps1 with the
solution name and schema pattern, then re-export.
You: I'm about to push my changes. Anything I should check first?
Copilot: Run cps-preflight.ps1. It will catch dirty workflow files, missing
variable definitions, and basic repo hygiene issues before the push becomes a
cloud problem.
Run this in your terminal:
copilot plugin install microsoft/FastTrack:copilot-agent-samples/github-copilot-skills/copilot-studio-workflowUpdate later with copilot plugin update copilot-studio-workflow.
After install, just ask naturally:
Help me safely push my Copilot Studio YAML changes.Why did my pull dirty workflow JSON files?How do I package this agent for production?Run a preflight check before I push.
Tip: If needed, force activation by including
/copilot-studio-workflowin your prompt.
Manual install — personal skill (all repos)
Copy the folder to your personal skills directory.
Windows
Copy-Item -Recurse path\to\copilot-studio-workflow "$env:USERPROFILE\.copilot\skills\copilot-studio-workflow"macOS / Linux
cp -r path/to/copilot-studio-workflow ~/.copilot/skills/copilot-studio-workflowManual install — project skill (single repo)
Windows
Copy-Item -Recurse path\to\copilot-studio-workflow .\.github\skills\copilot-studio-workflowmacOS / Linux
cp -r path/to/copilot-studio-workflow .github/skills/copilot-studio-workflowClaude Code
cp -r path/to/copilot-studio-workflow ~/.claude/skills/copilot-studio-workflow| File | Why it matters |
|---|---|
SKILL.md |
Core workflow logic, triggers, and operational guidance |
scripts/cps-status.ps1 |
Checks project health, tool availability, and repo state |
scripts/cps-revert.ps1 |
Cleans up pull-induced workflow and settings churn |
scripts/cps-preflight.ps1 |
Runs pre-push hygiene checks before you sync |
scripts/cps-add-component.ps1 |
Adds pushed components to the Power Platform solution |
reference/gotchas.md |
Documents platform traps and workarounds |
reference/workflow-guide.md |
Expands the day-to-day development and packaging loop |
docs/showcase.html |
Interactive visual guide to the skill and workflow |
plugin.json |
Plugin manifest for copilot plugin install |
CHANGELOG.md |
Release history |
| Tool | Status | Install path |
|---|---|---|
| GitHub Copilot CLI | Recommended | Plugin install or ~/.copilot/skills/ |
| VS Code Copilot | Supported | .github/skills/ |
| Claude Code | Supported | ~/.claude/skills/ |
| Copilot Cloud Agent | Supported | .github/skills/ |
The SKILL.md format follows the Agent Skills open standard, so the same workflow knowledge travels across tools.
Keep this short list in place and the workflow becomes smooth:
- Git for version control
- VS Code plus the Copilot Studio VS Code extension for pull/push
- PowerShell (7+ recommended; Windows PowerShell 5.1 works on Windows)
- Power Platform CLI (
pac) recommended for solution packaging and exports - Access to a Copilot Studio-enabled Power Platform environment
For YAML authoring, schema validation, topic creation, and agent testing in Copilot CLI, also install the Copilot Studio Plugin by the Microsoft Copilot Studio CAT Team (copilot-studio from skills-for-copilot-studio). It complements this skill's engineering workflow guidance; see SKILL.md for details.
Run skills\copilot-studio-workflow\scripts\cps-status.ps1 to validate the local setup.
This plugin uses Semantic Versioning. Current version: 1.0.0.
- Release notes:
CHANGELOG.md - Update:
copilot plugin update copilot-studio-workflow
Keep the skill lean and operational:
- Put core instructions in
SKILL.md - Put deeper explanations in
reference/ - Keep scripts safe to run repeatedly
- Bump
plugin.jsonandCHANGELOG.mdtogether on release
Quick script check:
powershell -NoProfile -File skills\copilot-studio-workflow\scripts\<name>.ps1 -?MIT