Incrementally migrate React + Vite components to Astro using islands architecture while preserving behavior and deferring risky components.
From claude-dev-ecosystemnpx claudepluginhub oiranca/claude-dev-ecosystemThis skill is limited to using the following tools:
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Guides agent creation for Claude Code plugins with file templates, frontmatter specs (name, description, model), triggering examples, system prompts, and best practices.
Use this skill to migrate a React + Vite application incrementally toward Astro using islands architecture.
Constraint: This is a migration playbook skill. It must never run outside an approved migration workflow.
Convert selected React + Vite components into Astro-compatible structure by classifying them as STATIC, ISLAND, or SHARED, and migrating them in small, reversible batches.
MIGRATION_REACT_VITE_TO_ASTRO playbook is active.docs/STACK_PROFILE.md must confirm React + Vite with HIGH confidence.docs/ROUTE_MAP.md and docs/ARCHITECTURE.md (with migration classification) must exist.As context is not shared natively, the Team Lead must ensure the migration-engineer has access to these artifacts:
.agent-cache/AGENT_STATE.json.docs/STACK_PROFILE.md.docs/ROUTE_MAP.md.docs/ARCHITECTURE.md.docs/INVENTORY.md.docs/MIGRATION_STATE.md (if present).Abort immediately if any of the following fail:
A component is STATIC if it has no hooks, no local state, no effects, and no required runtime interactivity.
.astro.Astro.props, convert JSX to Astro syntax, and className to class.A component must remain an ISLAND if it uses hooks, state, effects, or event-driven browser behavior.
.tsx/.jsx and create an Astro wrapper.client:visible or client:idle. Use client:load only if immediate interactivity is required.Structural components (e.g., layouts).
.astro.<slot />.Upon completion of the batch, the migration-engineer must:
.astro files and wrappers.docs/MIGRATION_STATE.md with the required structure.docs/DECISIONS.md.