CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

azure-to-aws

Migrate workloads from Microsoft Azure to AWS. Triggers on: migrate from Azure, Azure to AWS, migrate AKS to EKS, migrate App Service or Azure VMs to AWS compute, migrate Azure SQL or Azure Database to RDS, migrate Cosmos DB to DynamoDB, migrate Azure OpenAI to Bedrock, estimate AWS costs for Azure, what-if workshop. Runs a 6-phase process: discover Azure resources from Terraform, the live `az` CLI, a customer-supplied Resource Discovery for Azure (RDfA) report, and app code, then clarify, design, estimate, optionally reprice, generate artifacts, and collect feedback. Clarify gates Design, Estimate, and Generate; Generate is opt-in at the post-Estimate gate. Bicep/ARM discovery is not yet implemented; a Bicep/ARM-only workspace halts. Azure Cost Management billing-export discovery is not implemented. Do not use for: GCP (see gcp-to-aws) or Heroku (see heroku-to-aws) migrations, general AWS architecture advice (see architect-for-startups), AWS-to-Azure reverse migration, or Azure-to-Azure refactoring.

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 strong orchestration body: every instruction is skill-specific and actionable, validation and error-recovery paths are explicit, and detail is properly delegated to a disciplined on-demand bundle. The weaknesses are verbosity at the margins — restated rules and long multi-clause policy sentences — and reference paths that are not uniformly fully qualified.

Suggestions

State the `run_mode` ("decide" | "decide_and_execute") semantics once in a canonical section and cross-reference it from Execution, State Management, and Sidebar Placement instead of restating it three times.

Split or shorten the densest policy passages — the Clarify fast-path paragraph and the live-first Philosophy bullet — into shorter rule statements; the rationale sentences (e.g., "The eligibility rule exists precisely so that ...") can be cut once the rule itself is stated.

Use fully qualified paths consistently for phase and fragment references (e.g., `references/phases/clarify/clarify.md` § Step 0.5 instead of `clarify.md` § Step 0.5) so every reference resolves without searching the bundle.

DimensionReasoningScore

Conciseness

The body is dense, skill-specific policy with no padding about concepts Claude already knows ("Re-platform by default: pick the AWS service that matches the Azure workload type (App Service → Elastic Beanstalk, AKS → EKS, ...)"). It fits the 4 anchor (efficient, minor instances of over-explanation that could be trimmed): the `run_mode` semantics appear in three sections (Execution, State Management, Sidebar Placement), and passages like "The eligibility rule exists precisely so that the two cases named above ... never reach the short path" over-justify already-stated rules. It is not 3 because nearly every token carries non-inferable skill policy, and not 5 because some multi-clause sentences (e.g., the Clarify fast-path and live-first Philosophy paragraphs) must be re-read to parse.

4 / 5

Actionability

Directives are specific and executable: an exact entry point ("begin at `references/phases/discover/discover.md`"), copy-paste-ready outputs ("Unrecognized phase: [value]. Valid phases: discover, clarify, design, estimate, workshop, generate, feedback."), a verbatim feedback prompt with [A]/[B] options, exact defaults ("Region: `us-east-1`", "CPU architecture: `x86_64`"), and named MCP tools (`aws___search_documentation`, etc.). For an instruction-only orchestrator this matches the 5 anchor — concrete, specific guidance covering the common cases; not 4, because there are no high-level hints without a corresponding executable directive.

5 / 5

Workflow Clarity

Sequencing is unambiguous (cold start entry phase, `_advances_to` chain, warm-start rules, mandatory Clarify with no exceptions) and validation is explicit: seven numbered state-validation checks with STOP conditions, plus a full error-recovery feedback loop for corrupt `.phase-status.json` (enumerate artifacts → infer completed phases → confirm with the user → rewrite the file). This matches the 5 anchor (explicit validation steps, feedback loops for error recovery, checklists); it is not 4 because checkpoints are explicit rather than implicit, and the noted caveat that `generate.md`'s `_assert` "has no mechanical teeth" is disclosed rather than hidden.

5 / 5

Progressive Disclosure

The body is a genuine overview that pushes detail into a well-organized bundle (phases/, design-refs/, shared/, vendored/), enforces load discipline ("~800 lines of instructions", "Do not speculatively load files", "a pattern may never change a deterministic mapping's target" lives once in Philosophy), and the vendored contracts (`INTERPRETER.md`, `phase-status.schema.json`, `PROTOCOL.md`) are loaded once and referenced by name. It fits the 4 anchor (good structure, references mostly clear, minor organization gaps) rather than 5 because references chain more than one level (SKILL.md → phase file → fragment → shared ref such as `extract-terraform.md`) and several mentions are bare filenames without paths ("`clarify.md` § Step 0.5", "`estimate-assemble.md` § Step 3b"). It is not 3 because nothing that belongs in a separate file is inlined and navigation is easy via the directory layout.

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 model trigger description: concrete capabilities, an explicit trigger list with service-level synonyms, stated limitations (Bicep/ARM not implemented, Cost Management exports not implemented), and explicit exclusions pointing at sibling skills. Its only weakness is length — internal mechanics like "Clarify gates Design, Estimate, and Generate; Generate is opt-in at the post-Estimate gate" add tokens without aiding triggering — but every clause is concrete, so no dimension is materially penalized.

DimensionReasoningScore

Specificity

Lists many concrete actions and inputs — "discover Azure resources from Terraform, the live `az` CLI, a customer-supplied Resource Discovery for Azure (RDfA) report, and app code, then clarify, design, estimate, optionally reprice, generate artifacts, and collect feedback" — plus concrete service mappings ("migrate AKS to EKS", "migrate Cosmos DB to DynamoDB", "migrate Azure OpenAI to Bedrock"). This matches the 5 anchor (multiple specific concrete actions, comprehensive coverage); it is not 4 because there is no coverage gap — discovery sources, phases, gates, and exclusions are all enumerated.

5 / 5

Completeness

Both questions are answered explicitly: the "what" ("Migrate workloads from Microsoft Azure to AWS. Runs a 6-phase process: ...") and the "when" (an explicit "Triggers on:" clause with concrete phrases, plus a "Do not use for: GCP ... Heroku ... AWS-to-Azure reverse migration" exclusion list). This is exactly the 5 anchor — explicit what AND when with concrete trigger phrases — not 4, since the "when" needs no additional specificity.

5 / 5

Trigger Term Quality

"Triggers on: migrate from Azure, Azure to AWS, migrate AKS to EKS, migrate App Service or Azure VMs to AWS compute, ... estimate AWS costs for Azure, what-if workshop" covers the natural phrasings and service-pair synonyms a user would actually type. It fits the 5 anchor (comprehensive natural terms including synonyms) rather than 4 ("a few natural terms missing") because every common way of asking for an Azure-to-AWS migration or cost estimate is present.

5 / 5

Distinctiveness Conflict Risk

The direction is unambiguous (Azure-to-AWS, not reverse) and sibling conflicts are explicitly redirected: "Do not use for: GCP (see gcp-to-aws) or Heroku (see heroku-to-aws) migrations, general AWS architecture advice (see architect-for-startups), AWS-to-Azure reverse migration, or Azure-to-Azure refactoring." Clear niche with distinct triggers and minimal conflict risk — the 5 anchor; not 4 because it does not merely reduce overlap, it enumerates and routes the overlapping cases.

5 / 5

Total

20

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

referenced_paths_exist

Referenced path issues: 1 missing, 11 deeper-than-1-level

Warning

Total

15

/

16

Passed

Repository

aws/agent-toolkit-for-aws

Path

plugins/aws-startup-advisor/skills/azure-to-aws/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.