원클릭으로
refactor-to-runelight-vue
Refactor existing Vue 3 TypeScript SFCs into production .g.vue UI models without preview wrappers.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Refactor existing Vue 3 TypeScript SFCs into production .g.vue UI models without preview wrappers.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Install, upgrade, or ensure Runelight preview/capture integration in a TypeScript React project or TypeScript Vue 3 project. Use when a project asks for "install Runelight", "set up Runelight", "upgrade Runelight", or "update Runelight"; this bootstrap skill detects the host, wires the integration, and verifies end-to-end.
Write, edit, or review Runelight React components in .g.tsx files. Use when working on React/TSX .g protocol components, GFrames, createGScopeHook, createGProvider, provider variants, JSX branch coverage, or React Runelight authoring diagnostics.
Write, edit, or review Runelight Vue SFC components in .g.vue files. Use when working on Vue .g protocol components, <g:frames>, template-first scope frames, Vite Vue preview, or Vue Runelight authoring diagnostics.
Polish Runelight-covered GUI through a required explicit sync before editing, then a red-team observe-edit-reobserve loop that works from product surface model down to details one confirmed point at a time. Use when the user asks to polish, refine, improve visual quality, clean up UI details, or make an existing `.g.tsx` / `.g.vue` interface feel better.
Refactor existing React TSX into production .g.tsx UI models without preview wrappers.
Ask the agent to do agent-driven end-to-end validation for this Runelight repo. Use when the user mentions intelligence test, `.it.md`, agent-driven E2E, or wants confidence beyond unit/type/build checks.
| name | refactor-to-runelight-vue |
| description | Refactor existing Vue 3 TypeScript SFCs into production .g.vue UI models without preview wrappers. |
Convert existing Vue 3 TypeScript components into .g.vue UI models.
.g.vue writing patterns, route to authoring-runelight-vue and read Authoring Reference.If the project isn't wired for Runelight yet, follow the Runelight setup playbook first.
.g.vue owns the real SFC template, script, styles, and enumerable visual states. Not a wrapper around an old component.
.g.vue just wrap the old SFC?.g.vue, add <g:frames>scopedescend: keep reading until finding real visual surfaces.migrate: move the real template, script, styles, props, and helpers into Component.g.vue, add frames, update imports.scope: identify every non-prop template value that affects branch shape or visible state, then add static scope values for each important frame.<g:frames>, use providers: [[key, value]], and mark meaningful finite axes with GVueProviderFrame.v-if, v-else-if, v-show, v-for, and dynamic :is should depend directly on props, scope, or injected frame values../Component.vue to ./Component.g.vue. Preserve barrels.runelight check + project typecheck. Render preview if available, defaulting to the nearest covered app/screen/parent entry that contains the migrated surface. Use runelight containing-frames <entry#default> --json to find those top-level contexts. Use isolated preview only when no covered parent exists or when debugging the component's own frame contract.For the packaged command reference and workflow prompts, read node_modules/@runelight/skills/references/cli.md.
.g.vue that only renders the old componentscope values that contain old component nodes.g.vue for every file in a directorybindings; Vue frames use props, scope, and providers.g.vue owns the migrated template and stylesscope valuesproviders and, when variant axes matter, GVueProviderFrame.vue no longer owns migrated visual branchesrunelight check passes