CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

gcp-to-aws

Migrate GCP workloads to AWS, including AI and agentic workloads from any provider. Triggers on: migrate from GCP, GCP to AWS, move off Google Cloud, Cloud SQL to RDS, GKE to EKS, Cloud Run to Fargate, App Engine to Elastic Beanstalk, or OpenAI/Gemini/agentic workloads to Bedrock. Discovery uses the authenticated read-only `gcloud` CLI, Terraform, app code, or billing exports, with optional consent-gated OpenAI, OpenRouter, and Anthropic usage APIs. Terraform is optional. Runs Discover, Clarify, Design, Estimate, Generate, and Feedback; Clarify gates later phases. Do not use for Azure migrations (see azure-to-aws), reverse migrations, general AWS architecture without migration intent, or GCP-to-GCP refactoring.

Quality

86%

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

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

The body is an exceptionally actionable and well-gated state-machine orchestrator — deterministic sequencing, fail-closed handoff gates, and validation feedback loops are all present — but it pays for that with poor token efficiency: heavy rule duplication and long inline policy sections that its own context-loading philosophy says belong in conditional reference files. The bundle structure is strong, though the in-body file tree no longer matches the actual bundle contents.

Suggestions

State the Generate opt-in consent rule once in a canonical location (e.g., the HARD RULE paragraph) and have the state-machine table rows and deterministic steps reference it, removing the three-to-four near-duplicate formulations.

Move the corrupted-state reconstruction heuristics (State Validation rule 2) into references/shared/schema-phase-status.md and the Contextual offers mechanics (~45 lines) into a dedicated reference, keeping one-line pointers in SKILL.md.

Sync the 'Files in This Skill' tree with the actual bundle — add the missing discover-openrouter-api.md, discover-anthropic-api.md, discover-preview.md, design-refs/security.md, generate-artifacts-report.md, the additional shared/ files, and the vendored/clarify/ directory — and clarify the duplicate ai-gemini-to-bedrock.md copies in design-refs/ vs vendored/ai/.

DimensionReasoningScore

Conciseness

At 507 lines (~61KB) loaded on every turn, the body is noticeably verbose: the Generate opt-in consent rule is stated at least four times (state machine generate/decide-complete/legacy-generate rows, the 'Generate is opt-in (HARD RULE)' paragraph, and deterministic step 6), the workshop-resume rule appears in both the table and step 2, and BigQuery guidance is repeated across Philosophy, the conditional table, and Workflow step 10. Substantial policy detail that the skill's own Context Loading Rules would place in conditional references is inlined instead — the ~45-line Contextual offers section, the ~30-line corrupted-state reconstruction heuristics, and the full hybrid-stack warning prompt — matching anchor 2 ('noticeably verbose; several unnecessary... padded sections') rather than the mostly-efficient anchor 3.

2 / 5

Actionability

Guidance is fully executable: copy-paste bash probes ('uv --version 2>/dev/null || echo "UV_MISSING"'), a literal .phase-status.json schema, exact error strings to output ('Unrecognized phase: [value]. Valid phases: ...'), a deterministic state-transition table with JSON-path conditions, exact file paths per phase, and precise accuracy ranges (±5-10% infra, ±15-25% Bedrock). It matches anchor 5 — concrete commands and specific examples covering the common cases — with no vague-only direction.

5 / 5

Workflow Clarity

The six-phase process has an exact mandated sequence (Workflow Execution steps 1-10), explicit validation checkpoints (HANDOFF_OK/GATE_FAIL fail-closed gates, 'Confirm all required output files exist with correct schema', validate-artifacts.md, validate-migration-report.md with exit-code handling, POLICY_OK policy gate), and error-recovery feedback loops (GATE_FAIL handling, corrupted-state reconstruction with user confirmation, re-entry reset rules). This matches anchor 5's explicit-validation-plus-feedback-loops profile; validation for the batch artifact-generation operations is thoroughly present, so no cap applies.

5 / 5

Progressive Disclosure

The structure is genuinely good — one orchestrator with per-phase reference files, an explicit conditional-loading table keyed to JSON conditions, a stated ~800-line per-phase budget, a design-refs index, and a full file tree — but scored against the actual bundle it has real gaps: the 'Files in This Skill' tree is out of sync with disk (omits discover-openrouter-api.md, discover-anthropic-api.md, discover-preview.md, design-refs/security.md, generate-artifacts-report.md, several shared/ files, and the whole vendored/clarify/ directory), cross-bundle paths (../knowledge-base-for-startups/..., ../contextual-offers-for-startups/..., $PLUGIN_ROOT/...) are unresolvable from this bundle, and ai-gemini-to-bedrock.md exists in both design-refs/ and vendored/ai/. This is anchor 4 ('good structure... minor organization gaps') rather than the clean easy-navigation anchor 5.

4 / 5

Total

16

/

20

Passed

Description

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

An excellent description: concrete capabilities, explicit trigger phrases with synonym coverage, both what/when answered, and explicit exclusions for the nearest competing skill. The only weakness is that the Bedrock-oriented trigger phrases could pull in AI-migration requests that have no GCP component, overlapping a dedicated LLM-to-Bedrock skill.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions with comprehensive coverage: 'Migrate GCP workloads to AWS, including AI and agentic workloads from any provider', 'Discovery uses the authenticated read-only `gcloud` CLI, Terraform, app code, or billing exports', 'Runs Discover, Clarify, Design, Estimate, Generate, and Feedback', plus concrete service mappings (Cloud SQL to RDS, GKE to EKS). It matches the anchor 'Lists multiple specific concrete actions; comprehensive coverage' and is clearly above the minor-gaps anchor 4; it uses third-person voice with no fluff.

5 / 5

Completeness

Both 'what' (migrate GCP workloads to AWS; discovery via gcloud/Terraform/app code/billing; six-phase pipeline) and 'when' (explicit 'Triggers on:' clause with concrete phrases) are clearly and explicitly answered, and it adds 'when not' guidance ('Do not use for Azure migrations... reverse migrations, general AWS architecture without migration intent, or GCP-to-GCP refactoring'). This exceeds anchor 4's 'when could be more explicit' and matches anchor 5.

5 / 5

Trigger Term Quality

Trigger phrases are natural user utterances with synonym variation: 'migrate from GCP, GCP to AWS, move off Google Cloud, Cloud SQL to RDS, GKE to EKS, Cloud Run to Fargate, App Engine to Elastic Beanstalk, or OpenAI/Gemini/agentic workloads to Bedrock' covers the explicit phrase, the abbreviation form, and a colloquial synonym. This matches the comprehensive-synonyms anchor 5 rather than the few-terms-missing anchor 4.

5 / 5

Distinctiveness Conflict Risk

The GCP-to-AWS niche is clear and it explicitly disambiguates the closest sibling ('Do not use for Azure migrations (see azure-to-aws)') with distinct service-pair triggers. However, the trigger 'OpenAI/Gemini/agentic workloads to Bedrock' would also naturally fire for users with non-GCP AI workloads (e.g., a dedicated llm-to-bedrock-style skill), creating minor overlap risk with closely related skills — anchor 4 rather than the minimal-conflict anchor 5.

4 / 5

Total

19

/

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 (508 lines); consider splitting into references/ and linking

Warning

relative_links

Relative link issues: 1 missing, 2 suspicious

Warning

referenced_paths_exist

Referenced path issues: 43 deeper-than-1-level

Warning

Total

13

/

16

Passed

Repository

aws/agent-toolkit-for-aws

Path

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