Convert or migrate Azure ARM (Azure Resource Manager) templates, Bicep templates, or code to Pulumi, including importing existing Azure resources. This skill MUST be loaded whenever a user requests migration, conversion, or import of ARM templates, Bicep templates, ARM code, Bicep code, or Azure resources to Pulumi.
Install with Tessl CLI
npx tessl i github:pulumi/agent-skills --skill pulumi-arm-to-pulumi92
Does it follow best practices?
Validation for skill structure
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 well-crafted skill description that excels across all dimensions. It clearly specifies the concrete actions (convert, migrate, import), uses natural trigger terms that users would actually say, explicitly states when the skill should be used, and occupies a distinct niche that won't conflict with other skills.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: 'Convert or migrate Azure ARM templates, Bicep templates, or code to Pulumi' and 'importing existing Azure resources'. Clearly names the source formats (ARM, Bicep) and target (Pulumi). | 3 / 3 |
Completeness | Clearly answers both what ('Convert or migrate Azure ARM/Bicep templates to Pulumi, including importing existing Azure resources') and when ('MUST be loaded whenever a user requests migration, conversion, or import of ARM templates, Bicep templates...'). Has explicit trigger guidance. | 3 / 3 |
Trigger Term Quality | Excellent coverage of natural terms users would say: 'ARM templates', 'Bicep templates', 'ARM code', 'Bicep code', 'Azure resources', 'migration', 'conversion', 'import', 'Pulumi'. These are exactly the terms a user would use when needing this skill. | 3 / 3 |
Distinctiveness Conflict Risk | Very clear niche with distinct triggers. The combination of Azure-specific formats (ARM, Bicep) with Pulumi as the target creates a highly specific use case unlikely to conflict with other skills. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
85%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a high-quality, comprehensive migration skill with excellent actionability and workflow clarity. The code examples are executable and cover the full range of ARM-to-Pulumi conversion patterns. The main weakness is verbosity - some sections could be tightened without losing clarity, particularly the conversion pattern examples which, while thorough, add significant token overhead.
Suggestions
Condense the ARM template conversion patterns section by showing fewer complete examples and instead providing a reference table mapping ARM constructs to Pulumi equivalents
Remove explanatory text that Claude would already know (e.g., 'ARM templates do not have the concept of stacks like CloudFormation') to reduce token usage
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is comprehensive but includes some redundant explanations and verbose sections. The ARM template conversion patterns section is thorough but could be more condensed, and some concepts like Output handling are explained at length when Claude would understand them quickly. | 2 / 3 |
Actionability | Excellent actionability with fully executable code examples throughout. Every conversion pattern includes both ARM template JSON and corresponding Pulumi TypeScript code that is copy-paste ready. CLI commands are complete and specific. | 3 / 3 |
Workflow Clarity | Clear sequential workflow with numbered steps (1-5), explicit validation checkpoints including zero-diff validation requirements, and feedback loops for error recovery. The 'CRITICAL SUCCESS REQUIREMENTS' section establishes clear validation criteria upfront. | 3 / 3 |
Progressive Disclosure | Well-structured with clear navigation. References to external files like [arm-import.md] are one level deep and clearly signaled. The skill appropriately delegates detailed import procedures to a separate file while keeping the main workflow in the primary document. | 3 / 3 |
Total | 11 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
skill_md_line_count | SKILL.md is long (771 lines); consider splitting into references/ and linking | Warning |
Total | 10 / 11 Passed | |
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.