Prepare Azure apps for deployment (infra Bicep/Terraform, azure.yaml, Dockerfiles). Use for create/modernize or create+deploy; not cross-cloud migration (use azure-cloud-migrate). DO NOT USE FOR: copilot-sdk apps (use azure-hosted-copilot-sdk). WHEN: "create app", "build web app", "create API", "create serverless HTTP API", "create frontend", "create back end", "build a service", "modernize application", "update application", "add authentication", "add caching", "host on Azure", "create and deploy", "deploy to Azure", "deploy to Azure using Terraform", "deploy to Azure App Service", "deploy to Azure App Service using Terraform", "deploy to Azure Container Apps", "deploy to Azure Container Apps using Terraform", "generate Terraform", "generate Bicep", "function app", "timer trigger", "service bus trigger", "event-driven function", "containerized Node.js app", "social media app", "static portfolio website", "todo list with frontend and API", "prepare my Azure application to use Key Vault", "managed identity".
63
73%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Failed to scan
The risk profile of this skill
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugin/skills/azure-prepare/SKILL.mdQuality
Discovery
100%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a strong skill description that excels across all dimensions. It provides specific capabilities, extensive natural trigger terms, clear what/when guidance, and explicit boundary-setting with named alternative skills. The only minor concern is that the sheer length and density of trigger terms could be slightly overwhelming, but this is a minor stylistic issue rather than a functional one.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: prepare Azure apps for deployment, infrastructure via Bicep/Terraform, azure.yaml, Dockerfiles, create/modernize apps, add authentication, add caching, and more. Very detailed about what it does. | 3 / 3 |
Completeness | Clearly answers both 'what' (prepare Azure apps for deployment with infra Bicep/Terraform, azure.yaml, Dockerfiles) and 'when' with an extensive explicit WHEN clause listing numerous trigger phrases. Also includes explicit exclusions (DO NOT USE FOR) which further clarifies when to use it. | 3 / 3 |
Trigger Term Quality | Excellent coverage of natural user phrases including 'create app', 'build web app', 'deploy to Azure', 'generate Terraform', 'generate Bicep', 'function app', 'todo list with frontend and API', 'static portfolio website', and many more variations users would naturally say. | 3 / 3 |
Distinctiveness Conflict Risk | Explicitly distinguishes itself from related skills by name: 'not cross-cloud migration (use azure-cloud-migrate)' and 'DO NOT USE FOR: copilot-sdk apps (use azure-hosted-copilot-sdk)'. This clear boundary-setting with named alternatives makes it highly distinctive and reduces conflict risk. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
47%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill has a well-structured multi-phase workflow with clear sequencing and validation checkpoints, which is its strongest aspect. However, it suffers significantly from extreme verbosity — critical instructions like the plan-first requirement and the azure-validate hand-off are repeated 3-4 times each, consuming excessive tokens. The actual actionable content is almost entirely deferred to reference files, making this document more of a verbose routing table than a self-contained skill.
Suggestions
Consolidate the repeated plan-first and azure-validate instructions — state each requirement once clearly rather than 3-4 times with slight variations. This could cut the document length by 30-40%.
Add at least one concrete example of what `.azure/deployment-plan.md` should look like (even a minimal skeleton) so the skill is actionable without loading plan-template.md.
Remove the 'AUTHORITATIVE GUIDANCE — MANDATORY COMPLIANCE' preamble and excessive warning formatting (⛔, ❌, bold+caps) — Claude follows instructions without needing to be told they are mandatory multiple times.
Merge the 'Rules' section, the 'PLAN-FIRST WORKFLOW' callout, and the Phase 1 table into a single coherent workflow section to eliminate redundancy.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The document is extremely verbose and repetitive. The same instructions are stated multiple times — the plan-first requirement is repeated at least 4 times with nearly identical wording, the mandatory hand-off to azure-validate is repeated 3+ times, and the deployment-plan.md file creation requirement is hammered in redundantly. Many warnings and rules restate what was already said, wasting significant token budget. | 1 / 3 |
Actionability | The skill provides a clear structured workflow with specific file paths, tool references, and step sequences, but almost all concrete guidance is deferred to reference files (analyze.md, requirements.md, scan.md, etc.) which are not provided. The skill itself contains no executable code, no command examples, and no concrete templates — it's essentially a routing document pointing elsewhere. | 2 / 3 |
Workflow Clarity | The multi-phase workflow is clearly sequenced with explicit blocking points (STOP before Phase 2), mandatory validation checkpoints (update plan status before hand-off, invoke azure-validate before azure-deploy), and a clear error recovery path. The Phase 1 → approval gate → Phase 2 → validation → deployment pipeline is well-defined with explicit prerequisites at each transition. | 3 / 3 |
Progressive Disclosure | The skill references many external files (references/analyze.md, references/requirements.md, etc.) which is good progressive disclosure in principle, but since no bundle files are provided, we cannot verify these references exist. The main document itself is bloated with repeated warnings that could be consolidated, and the routing tables and rules sections contain substantial inline content that could be better organized. | 2 / 3 |
Total | 8 / 12 Passed |
Validation
100%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 11 / 11 Passed
Validation for skill structure
No warnings or errors.
915f809
Table of Contents
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.