microsoft/power-platform-skills is a plugin marketplace containing reusable skills, agents, and commands for developing with Microsoft Power Platform. Developers use it to build and deploy Power Pages sites, model-driven Power Apps, and related solutions through Claude Code or GitHub Copilot. The catalogue entries are the marketplace's included skills, agents, plugins, and other agent components.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/microsoft/power-platform-skills/debug-extensionnpx skills add microsoft/power-platform-skills --skill debug-extensiongit clone --depth 1 https://github.com/microsoft/power-platform-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/microsoft/power-platform-skills/debug-extension)<a href="https://agentmods.dev/skills/microsoft/power-platform-skills/debug-extension"><img src="https://agentmods.dev/badge/skills/microsoft/power-platform-skills/debug-extension.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00108 | $0.07028 |
| Opus 5 | $0.00054 | $0.03514 |
| Sonnet 5 | $0.00022 | $0.01406 |
| Haiku 4.5 | $0.00011 | $0.00703 |
Grade A, and why
debug-extension scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 445 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/debug-extension
Investigate a failure the user observed while testing a built .ppmplugin control,
find the root cause, and fix it. The wrap binary runs inside the customer's shell with
no logcat / Xcode console / native debugger reachable, so the evidence is usually just
the PCF's ErrorCode / ErrorMessage, the raw <name>Json diagnostic output, a host log
line, or the user's description of what they saw. This skill turns that thin evidence into
a located root cause and a fix.
Investigation-first, fix as the resolution. Unlike a plain "apply this change" flow,
/debug-extension starts from a symptom and works backward to a cause before touching
code. When the cause is found, it proposes the fix and applies it under the same discipline
a careful edit uses (spec-vs-drift diagnosis, contract-consistency, surgical edits, gates).
This is one door, not the only door. Per shared/shared-instructions.md §7.5, a fix
can be applied from any skill or a plain conversational turn — the user is never blocked
or forced to route through this skill. What this skill adds is structure for a reported
problem: the symptom→layer triage, the dispatch-path trace, and the located-evidence
diagnosis before any edit. Reach for it when something broke on device and you don't yet
know why; for a planned feature change where you already know what to edit, just edit
directly.
When to use:
- "I tapped the button and nothing happened — no error, no UI." (silent no-op)
- "The PCF shows
ErrorCode: PARSE/ErrorMessage: ...." (a code to trace) - "The app crashes the moment the screen loads." (crash-at-launch)
- "Host log says
Loaded 0 plugin package(s)." (a native-load signature) - "It works on iOS but does nothing on Android." (parity / transport bug)
- "The Done button returns the wrong data." (behavior drift)
When NOT to use:
- No repo yet →
/generate-native-extension. - A brand-new operation →
/design-native-extension-feature, then generate. - A planned change with a known edit and no reported failure → just edit (any skill / chat).
- A build that never produced a binary → the failure is a build failure; run
/generate-ppmpluginand read its stage output first.
Decoupled from generate-*. This skill refuses to run if no extension repo is detected. It does NOT scaffold, install dependencies, build binaries, or assemble the bundle. It diagnoses, then edits files.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 445 lines · 108 tokens per session scan A 6ecca44f4694
debug-extension is a skill published in the GitHub repository microsoft/power-platform-skills (814 stars, last pushed yesterday), licensed MIT. It adds 108 tokens to every session and 7,028 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
canvas-apps-ui-gen
Generates paste-ready Power Apps Canvas App YAML. Invoke when the user wants to replicate a UI mockup, improve an existing Canvas app screen, or build a new screen from a text description. Also invoke when the user asks to "improve", "redesign", or "generate YAML" for a Canvas app screen.
cesiumjs-camera
CesiumJS camera control - Camera, flyTo, lookAt, setView, ScreenSpaceCameraController, CameraEventAggregator, flight animation. Use when positioning the camera, creating flyTo animations, constraining user navigation, tracking entities, or converting between screen and world coordinates.
cesiumjs-custom-shader
CustomShader authoring — vertexShaderText and fragmentShaderText against VertexInput, FragmentInput, FeatureIds, Metadata, czmmodelMaterial. Use when reading EXTmeshfeatures or EXTstructuralmetadata property textures/tables, vertex displacement, or shading VoxelPrimitive.
cesiumjs-core-utilities
CesiumJS core utilities and networking - Resource, Color, Event, Request, RequestScheduler, error handling, helper functions, feature detection. Use when fetching remote data, managing HTTP requests, working with colors, handling events, debugging errors, or using utility functions like defined, clone, or…
cesiumjs-materials-shaders
CesiumJS materials and post-processing — Material, Fabric JSON, MaterialAppearance, ImageBasedLighting, PostProcessStage, PostProcessStageLibrary, bloom, depth of field, ambient occlusion, FXAA, tonemapping, BlendingState. Use when defining Fabric materials for entities or primitives, configuring PBR image-based…
cesiumjs-models-particles
CesiumJS models, glTF, and particle effects - Model, KHRmeshoptcompression, CAD glTF extensions, EdgeDisplayMode, ModelAnimation, ModelNode, ParticleSystem, emitters, GPM extensions. Use when loading compressed or CAD-style glTF/GLB models, controlling edge rendering, playing model animations, positioning particles…