AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Pcf Deploy

skill-ryanmakesandbreaksstuff-custom-codex-claude-plugins-and-skills-auto-pcf-deploy · by RyanMakesAndBreaksStuff

Deploy Power Apps component framework (PCF) controls through Dataverse solution build and import using Microsoft Power Platform CLI. Use when asked to deploy, publish, import, release, or redeploy a PCF control, verify PAC auth targets the correct Dataverse environment, keep PCF manifest and solution versions in sync, build solution packages, import solutions, or troubleshoot PCF solution deploym…

No reviews yet
0 installs
36 views
0.0% view→install

Install

$ agentstack add skill-ryanmakesandbreaksstuff-custom-codex-claude-plugins-and-skills-auto-pcf-deploy

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-ryanmakesandbreaksstuff-custom-codex-claude-plugins-and-skills-auto-pcf-deploy)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
2mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Pcf Deploy? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

PCF Deploy

Deploy PCF controls with PAC CLI only. Before using any PAC command that reads or writes Dataverse, verify the active auth profile and target environment.

Use Microsoft Learn MCP for current details when command syntax, flags, build behavior, or ALM guidance matters:

  • Search/fetch pac pcf, pac solution, pac auth, and PCF ALM docs.
  • Prefer current Microsoft Learn details over remembered command options.

Ask Before Searching

Before automatic filesystem discovery or Microsoft Learn MCP searches, ask the user for known details:

  • PCF project path.
  • Target Dataverse environment URL, ID, or name.
  • Solution unique name if already known.
  • Version policy, especially whether PCF manifest and solution version must stay in sync.

Search only after the user provides those details, says they do not know, or explicitly asks for discovery/research. Do not start broad repo searches just because the task is deploy-related.

Required Inputs

Identify or ask for:

  • Target Dataverse environment URL, environment ID, or unambiguous environment name.
  • PCF project directory containing a .pcfproj and ControlManifest.Input.xml.
  • Solution project or unpacked solution folder, output zip path, and managed/unmanaged intent.

Always deploy by building or packing the Dataverse solution and importing it.

Project Discovery

From the repo root, locate:

Get-ChildItem -Recurse -Filter *.pcfproj
Get-ChildItem -Recurse -Filter ControlManifest.Input.xml
Get-ChildItem -Recurse -Filter *.cdsproj

Read the discovered project files before choosing commands. Do not assume paths such as src/pcf-control.

Check:

  • The .pcfproj output path and whether PcfBuildMode is set to production.
  • The control version in ControlManifest.Input.xml.
  • Whether a .cdsproj references the PCF project.
  • Existing npm scripts for build/test/lint.

Environment Guardrail

Always verify PAC is installed and authenticated before deployment:

pac
pac auth list

Confirm the active row from pac auth list points to the intended environment URL or name. Treat a blank Environment or Environment Url on the active row as not verified. If the profile is wrong or not environment-bound, select or create the correct profile:

pac auth select --index 
pac auth create --environment 

Profile confirmation rule:

  • If pac auth list shows exactly one profile, it is active, and it has a nonblank Environment Url, treat that profile as the candidate target without asking for extra confirmation. State the environment before deploying and still pass its URL through --environment.
  • If pac auth list shows multiple profiles, ask the user to confirm the intended profile/environment before any import, even when one profile is currently active.
  • If the only profile has a blank Environment or Environment Url, stop and select/create an environment-bound profile before deployment.

When the target environment is known, prefer passing it explicitly on Dataverse operations even after selecting the profile:

--environment 

Stop before deploying if the selected profile and explicit target do not agree.

Versioning

Increment the PCF control version before deploying an update so Dataverse and apps can detect the new build.

Preferred PAC CLI options:

pac pcf version --strategy manifest --path 
pac pcf version --patchversion  --path 

Use manual XML editing only when PAC CLI cannot express the desired version change. For solution import flows, also update the solution version when the project requires it:

pac solution version --solutionPath  --buildversion  --revisionversion 

Solution Build Then Import

Use this for every PCF deployment.

  1. Verify environment with the guardrail above.
  2. Increment PCF and solution versions as appropriate.
  3. Restore and build using the repo's existing toolchain.
  4. Build/package the solution.
  5. Import with PAC CLI.
  6. Publish changes if the import did not publish them.

For .cdsproj solution projects:

Set-Location 
dotnet build /restore /p:configuration=Release

If the repo uses MSBuild directly:

msbuild .cdsproj /restore /p:configuration=Release

For unpacked solution folders:

pac solution pack --zipfile  --folder  --packagetype 

Import the generated solution zip:

pac solution import --path  --environment  --publish-changes --force-overwrite

Use --activate-plugins only when the solution contains plug-ins or workflows that should be activated during import.

Verification

Do not report done until evidence exists.

Minimum checks:

  • pac auth list showed either one environment-bound profile or a user-confirmed profile, and commands used explicit --environment.
  • Version bump completed and the manifest or solution version shows the expected value.
  • Build/package command completed without errors.
  • pac solution import completed without errors.
  • The target solution/component appears in Dataverse, using PAC where possible:
pac solution list --environment 

For UI/runtime validation, ask the user to smoke-test the model-driven or canvas app if browser access is not available.

Failure Handling

  • If auth points at the wrong environment, stop and fix auth before continuing.
  • If import rejects the same or lower version, bump PCF and/or solution version and rebuild.
  • If dependencies fail during solution import, inspect the import error, do not skip dependency checks unless the user explicitly accepts that risk.
  • If command syntax is uncertain, fetch Microsoft Learn docs through MCP before retrying.

Completion Checklist

  • [ ] PAC CLI installed.
  • [ ] PAC auth profile verified: single environment-bound profile, or user-confirmed profile when multiple profiles exist.
  • [ ] Explicit --environment used where supported.
  • [ ] PCF project and manifest discovered from this repo, not assumed.
  • [ ] PCF version incremented.
  • [ ] Production build behavior confirmed.
  • [ ] Solution import completed.
  • [ ] Dataverse result verified.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.