Agent Skill for safe Microsoft Power Automate cloud-flow DEV authoring and diagnosis with Codex and Claude Code.
It combines optional FlowAgent MCP discovery, connector contracts, validation, and run diagnosis with a canonical Git and Power Platform CLI solution workflow. It includes guardrails for naming conventions, runAfter, connection references, deployment settings, pre-import drift checks, TRY/CATCH logging, Power Automate expressions, SharePoint/Dataverse/SQL/HTTP connectors, runtime verification, and tenant-impacting commands.
Use this skill when an agent needs to:
- create, modify, debug, harden, package, import, export, or review Power Automate cloud flows;
- use optional FlowAgent MCP capabilities for inventory, connector operation discovery, preflight, previewed DEV changes, and run diagnosis;
- work with Dataverse solution exports and
Workflows/*.json; - preserve connector contracts, connection references, trigger shapes, and action names;
- define or preserve flow, action, scope, variable, solution, connection reference, and environment variable naming conventions;
- add production-oriented TRY/CATCH logging and structured failure payloads;
- check for portal-side drift before import and avoid silently overwriting another maker's changes;
- verify expressions, run-after paths, idempotency, retry behavior, and runtime tests;
- work from Codex, Claude Code, VS Code, or a local shell using
pac,m365,jq, andrg.
This is not a tenant-admin policy guide, licensing guide, or TEST/PROD managed-release guide. It focuses on safe DEV authoring, local validation, controlled DEV imports, and handoff to the project's ALM or release process.
FlowAgent MCP is optional. The skill detects available capabilities at runtime and falls back to PAC, Dataverse, Microsoft 365 CLI, or the Maker portal. It does not depend on a fixed FlowAgent version or tool count.
| Need | Preferred path |
|---|---|
| Inventory, connector schemas, validation, or run diagnosis | FlowAgent MCP when available |
| Standalone DEV prototype | FlowAgent, created stopped and verified |
| Solution-aware source and deployment | Git plus PAC solution export/pack/import |
| Managed flow or cross-environment promotion | Approved solution pipeline |
| Interactive trigger or missing capability | Maker portal |
Before an MCP mutation, the skill requires account, tenant, environment, flow, preview, side-effect, and recovery checks. Direct managed-flow mutation and cross-environment copies used as ALM promotion are rejected.
power-automate-authoring/
SKILL.md
agents/openai.yaml
references/
flowagent-mcp.md
run-output-inspection.md
scripts/
validate-workflow-json.py
docs/
how-to-vscode-codex-claude-code.md
evals/
001-fix-expression.md
rubric.md
...
scripts/
validate-workflow-json.py # repo wrapper for the packaged validator
validate-skill.sh
test-install.sh
package-skill.sh
tests/
test_validate_workflow_json.py
Install for Codex:
./install.shInstall for Codex and Claude Code:
./install.sh --target allTargets:
~/.agents/skills/power-automate-authoring # Codex user skills
~/.claude/skills/power-automate-authoring # Claude Code personal skills
~/.codex/skills/power-automate-authoring # legacy/local fallback only
For current Codex versions, prefer ~/.agents/skills.
bash scripts/validate-skill.sh
bash scripts/test-install.sh
python3 -m unittest discover -s tests
python3 scripts/validate-workflow-json.py path/to/Workflows/<workflow-file>.json
python3 scripts/validate-workflow-json.py --strict path/to/Workflows/<workflow-file>.jsonThe installable skill package includes power-automate-authoring/scripts/validate-workflow-json.py. The repository-level scripts/validate-workflow-json.py command is a wrapper for local repo development. By default, hardcoded URLs, emails, GUID-like IDs, and secret-like values are warnings; --strict makes those warnings fail the command.
Behavioral evals also cover FlowAgent DEV routing, managed-flow refusal, read-only run diagnosis, and account/tenant mismatch handling.
Build a local release archive:
scripts/package-skill.sh --version v0.1.0The archive is written to dist/ and contains the installable power-automate-authoring/ skill directory, including the workflow JSON validator under scripts/. A matching .sha256 checksum is created next to the zip.
The checksum records the zip basename, so it can be verified from the download directory with shasum -a 256 -c <zip-name>.sha256.
Push a version tag:
git tag v0.1.0
git push origin v0.1.0The release workflow validates the skill, creates the zip, and attaches it to the hosted release.
The full operational guide is in docs/how-to-vscode-codex-claude-code.md.
This project is licensed under the MIT License. See LICENSE.