CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

deploy-site

Deploys an existing Power Pages site to a Power Pages environment using PAC CLI. Routes SPA sites to the existing build and upload-code-site workflow, and PAC-downloaded non-SPA (classic) sites to an isolated upload workflow with explicit data-model and website-identity checks. Handles tooling verification, authentication, environment confirmation, upload approval, and verification. Use when the user wants to deploy, upload, publish, or push either site type.

Quality

86%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

81%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An operationally excellent skill: copy-paste-ready commands, verbatim error signatures, consent gates for destructive settings changes, and validation/retry loops at every fragile step. The weaknesses are token efficiency (summary sections duplicate phase-level detail) and a monolithic SPA path that could offload more to the bundle.

Suggestions

Remove or collapse the "Key Decision Points" and "Throughout All Phases" sections — they restate prompts and principles already explicit in each phase — and drop meta-commentary like "This gives the user visibility into progress...".

Trim the Phase 2 free-text-option construction guidance ("Provide two placeholder options to guide the user") to the table itself; the intent is inferable from the example.

Consider moving the Troubleshooting HTML blocked-attachment section and the Phase 6 blocked-JS recovery details into a troubleshooting reference file, keeping SKILL.md as the routing + core workflow overview.

DimensionReasoningScore

Conciseness

The body is mostly operational (commands, tables, gates) but includes unnecessary repetition: the "Key Decision Points" and "Throughout All Phases" sections restate prompts already spelled out in each phase, and meta-commentary like "This gives the user visibility into progress and keeps the workflow deterministic" and the multi-line guidance for fabricating placeholder AskUserQuestion options pad the text. It fits "mostly efficient but includes some unnecessary explanation or could be tightened" better than the minor-trims anchor.

3 / 5

Actionability

Guidance is fully executable throughout: exact bash commands (pac auth create --environment, pac pages upload-code-site --rootPath, node "${PLUGIN_ROOT}/scripts/check-activation-status.js" --projectRoot), verbatim error text to match against, exact glob patterns, concrete AskUserQuestion tables with question/header/options, and a complete semicolon-separated blockedattachments example for the filter-rejoin fix. This is copy-paste-ready across the common cases.

5 / 5

Workflow Clarity

Six phases are explicitly sequenced with Goal/Actions/Output structure, validation checkpoints at every risky step (re-run pac help, re-run pac auth who after auth and env switch, evaluate the activation JSON, verify .powerpages-site contents), and genuine feedback loops for error recovery (blocked-.js upload failure → Phase 6 unblock → retry; misleading .html blocked error → locate and delete stale manifest → retry). Destructive shared-state changes (blockedattachments modification, env switch) are gated behind explicit consent.

5 / 5

Progressive Disclosure

Structure is good: site-type routing delegates the entire non-SPA path to workflows/non-spa-site.md (clearly signaled, one level deep), and skill tracking is delegated to a reference file. However, the SPA workflow, troubleshooting, and gate definitions form a ~400-line monolithic body, and the referenced bundle files (scripts/check-version.js, check-activation-status.js, clear-site-cache.js, references/skill-tracking-reference.md) could not be verified in this review copy. This fits "good structure; most content appropriately placed; minor organization gaps" rather than the fully split, easy-navigation anchor.

4 / 5

Total

17

/

20

Passed

Description

88%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: specific, third-person, comprehensive on capabilities, and anchored by an explicit Use-when trigger clause with natural deploy/upload/publish/push verbs. Its only weaknesses are a few missing natural synonyms and minor trigger overlap with sibling deployment skills.

Suggestions

Add one or two natural trigger synonyms such as "go live" or "release my site" to the Use-when clause.

Sharpen the trigger to "deploy a Power Pages site" explicitly to reduce overlap with pipeline-deployment sibling skills on bare "deploy" requests.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — "Deploys an existing Power Pages site... using PAC CLI", "Routes SPA sites to the existing build and upload-code-site workflow", "explicit data-model and website-identity checks", "tooling verification, authentication, environment confirmation, upload approval, and verification" — giving comprehensive coverage of the skill's behavior. It uses third-person voice throughout, so no voice penalty applies.

5 / 5

Completeness

It explicitly answers both questions: the "what" is a full capability inventory (deploy via PAC CLI, route by site type, handle auth/env/approval/verification) and the "when" is a concrete "Use when the user wants to deploy, upload, publish, or push either site type" clause. This matches the anchor with explicit trigger phrases.

5 / 5

Trigger Term Quality

The trigger clause "Use when the user wants to deploy, upload, publish, or push either site type" covers the main natural verbs a user would say, plus domain terms like Power Pages, SPA, and non-SPA/classic. A few natural synonyms are missing (e.g., "go live", "release", "ship my site"), which keeps it just below the comprehensive anchor.

4 / 5

Distinctiveness Conflict Risk

The Power Pages + PAC CLI + SPA/non-SPA routing niche is clear and largely self-distinguishing, but generic "deploy" triggers create minor overlap risk with closely related sibling skills in the same plugin (e.g., the deploy-pipeline skill referenced in the body). This fits "mostly distinct; minor overlap risk" better than the minimal-conflict anchor.

4 / 5

Total

18

/

20

Passed

Validation

81%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (535 lines); consider splitting into references/ and linking

Warning

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

13

/

16

Passed

Repository

microsoft/power-platform-skills

Path

plugins/power-pages/skills/deploy-site/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.