원클릭으로
migrate
Plan and execute migrations to Astro or between Astro versions with minimal regressions.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Plan and execute migrations to Astro or between Astro versions with minimal regressions.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Add and configure Astro integrations, adapters, and UI framework tooling.
Set up and evolve Astro content collections with typed schemas and reliable querying patterns.
Apply performant, accessible, and maintainable defaults when building or reviewing Astro projects.
Create Astro components, pages, and layouts with accessible markup and minimal client-side JavaScript.
Look up official Astro documentation and answer version-sensitive Astro questions accurately.
| name | migrate |
| description | Plan and execute migrations to Astro or between Astro versions with minimal regressions. |
Use this skill when moving a project from another framework to Astro, converting a static site into Astro, or upgrading an existing Astro codebase.
If astro-best-practices is available, apply it alongside this skill so the migrated result follows good Astro defaults rather than just reproducing the old system mechanically.
Before changing code, identify:
This determines whether the target should be static, hybrid, or server-rendered.
Common patterns:
Prefer an incremental migration plan when the existing app has meaningful runtime behavior or a large interactive surface.
Typical mappings:
| Source | Astro target |
|---|---|
| shared app shell | layout |
| route component | page or dynamic route |
| markdown/content pipeline | content collection |
| framework-only widget | island with client directive |
| image helper | astro:assets or the project’s current image strategy |
Keep framework components only where they still add value. Static content should usually become .astro.
For each migrated slice:
src/pages/src/layouts/src/content/When a page was using getStaticPaths-style route generation before, rebuild it explicitly in Astro rather than simulating the old framework lifecycle.
Do not port an entire framework app into Astro unchanged unless that is a deliberate compatibility bridge.
Instead:
.astroCheck at least:
For Astro-to-Astro upgrades:
npx @astrojs/upgrade when it fits the repoFor Astro 6 specifically, check these breakpoints:
src/content.config.*, define a loader for every collection, remove type, import z from astro/zod, use entry.id instead of slug, and replace entry.render() with render(entry)legacy.collections configAstro.glob() with import.meta.glob() or getCollection() for content collections<ViewTransitions /> with <ClientRouter /> if it still exists in the projectgetStaticPaths(): remove Astro.generator, and replace Astro.site with import.meta.env.SITE if it is used inside getStaticPaths()Use version-specific docs for breaking changes. Do not assume older migration advice still applies to the current Astro release.