CtrlK
BlogDocsLog inGet started
Tessl Logo

provider-upgrade

Upgrade any Pulumi provider to a newer version and reconcile the resulting diff. Use when users want to upgrade or update a provider (including editing package.json, requirements.txt, pyproject.toml, go.mod, or Pulumi.yaml to bump a provider SDK), check for breaking changes before or during an upgrade, fix resources that broke after a provider upgrade, or resolve unexpected replacements, creates, or deletes in a post-upgrade preview. Applies to all providers (aws, azure-native, gcp, kubernetes, aws-native, cloudflare, datadog, etc.) — not just Tier 1. Do NOT use for querying which stacks use what package versions; use skill `package-usage` for cross-stack audits. Do NOT use for general infrastructure tasks.

76

Quality

94%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

88%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.

A well-structured, highly actionable skill body with excellent workflow sequencing and validation for a destructive operation, supported by a properly signaled one-level reference file. The main weakness is mild verbosity and some inlined content (dependency commands, summary template) that could be factored into references.

Suggestions

Consolidate the repeated no-delete/no-replace and evidence-requirement rules into a single authoritative statement to reduce restatement and tighten conciseness.

Move the per-language dependency-update command list and the upgrade-summary template into a reference file (e.g. references/dependency-commands.md and references/upgrade-summary.md) to improve progressive disclosure and shorten the main body.

Trim or collapse the four recurring 'Ask yourself' prompts into one reusable self-check pattern to cut token overhead without losing the diagnostic framing.

DimensionReasoningScore

Conciseness

Largely efficient and avoids explaining concepts Claude already knows (no 'what is Pulumi' padding), but the Principle section and repeated 'Ask yourself' prompts plus restated rules (the no-delete/no-replace and evidence-requirement rules each appear more than once) could be trimmed. Noticeably above the 'mostly efficient with some unnecessary explanation' anchor but not perfectly lean.

4 / 5

Actionability

Provides copy-paste-ready commands and code: `pulumi preview --refresh --run-program`, `pulumi state delete '<urn>'`, per-language install commands (npm/yarn/pyproject/go get/dotnet), and a concrete `import` code example contrasting wrong vs. right usage. Coverage of common cases is complete.

5 / 5

Workflow Clarity

A clearly sequenced multi-step loop (mermaid flowchart + numbered steps) with explicit validation checkpoints (re-preview after every fix, completeness check that every non-same resource is categorized) and feedback loops (fix Category A before B, repeat until clean, halt on any remaining delete/replace) — exactly the validation discipline a destructive operation requires.

5 / 5

Progressive Disclosure

The detailed diagnostic tooling is split into a real, clearly signaled one-level-deep reference (`references/diagnostic-toolbox.md`, linked in the body and References section), and the overview keeps the core loop inline. However the body inlines substantial material that could live in references (per-language dependency-update commands, the full upgrade-summary template), leaving minor organization gaps.

4 / 5

Total

18

/

20

Passed

Description

100%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, third-person description that clearly states what the skill does and when to use it, with rich natural trigger terms and explicit disambiguation from neighboring skills. No significant weaknesses; every dimension lands at the top anchor.

DimensionReasoningScore

Specificity

Names the domain and lists multiple concrete actions — bumping SDK versions across specific manifests (package.json, requirements.txt, pyproject.toml, go.mod, Pulumi.yaml), checking for breaking changes, fixing broken resources, and resolving unexpected replacements/creates/deletes in a post-upgrade preview — giving comprehensive coverage.

5 / 5

Completeness

Explicitly answers both 'what' (upgrade a Pulumi provider and reconcile the diff) and 'when' (a detailed 'Use when users want to...' clause enumerating concrete trigger scenarios), with additional negative triggers bounding the scope.

5 / 5

Trigger Term Quality

Covers natural user phrasing ('upgrade or update a provider', 'bump a provider SDK', 'fix resources that broke after a provider upgrade', 'resolve unexpected replacements, creates, or deletes in a post-upgrade preview') plus concrete manifest filenames and provider names (aws, azure-native, gcp, kubernetes, etc.).

5 / 5

Distinctiveness Conflict Risk

Occupies a clear niche (Pulumi provider upgrades) and explicitly disambiguates from adjacent skills via 'Do NOT use for querying which stacks use what package versions; use skill package-usage' and 'Do NOT use for general infrastructure tasks', minimizing wrong-skill triggering.

5 / 5

Total

20

/

20

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.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
pulumi/agent-skills
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.