[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6QQ931AXFX68WQB8RA3Y1XC":3,"skill-same:01M6QQ931AXFX68WQB8RA3Y1XC":61},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":31,"linkOnly":32,"markdownContent":33,"markdownBody":34,"frontMatter":35,"refName":40,"commitSha":41,"skillDirectory":42,"forksCount":14,"repositoryHtmlUrl":43,"repositoryHomepageUrl":6,"ownerHtmlUrl":44,"ownerBlogUrl":6,"ownerDescription":45,"updatedAt":46,"install":47,"resources":60},"01M6QQ931AXFX68WQB8RA3Y1XC","openspec-continue-change",null,"Continue working on an OpenSpec change by creating the next artifact. Use when the user wants to progress their change, create the next artifact, or continue their workflow.","lfr-ai\u002Fcopier-fullstack-template","lfr-ai","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F233346551?v=4","01M6QPWTJWTSJV1TQTTY8ZPBYJ","Laurits Fromberg","01M6QPWTQ47BZGA4TH17H14N80",0,"MIT","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fopenspec\u002Fopenspec-continue-change\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30],"change","openspec continue change","continue","openspec","cli","workflow","create","user","use","next","artifact","progress","2026-11-10 10:12:30",false,"---\nname: openspec-continue-change\ndescription: Continue working on an OpenSpec change by creating the next artifact. Use when the user wants to progress their change, create the next artifact, or continue their workflow.\nlicense: MIT\ncompatibility: Requires openspec CLI.\nmetadata:\n  author: openspec\n  version: \"1.0\"\n  generatedBy: \"1.4.1\"\n---\n\nContinue working on a change by creating the next artifact.\n\n**Input**: Optionally specify a change name. If omitted, check if it can be inferred from conversation context. If vague or ambiguous you MUST prompt for available changes.\n\n**Steps**\n\n1. **If no change name provided, prompt for selection**\n\n   Run `openspec list --json` to get available changes sorted by most recently modified. Then use the **AskUserQuestion tool** to let the user select which change to work on.\n\n   Present the top 3-4 most recently modified changes as options, showing:\n   - Change name\n   - Schema (from `schema` field if present, otherwise \"spec-driven\")\n   - Status (e.g., \"0\u002F5 tasks\", \"complete\", \"no tasks\")\n   - How recently it was modified (from `lastModified` field)\n\n   Mark the most recently modified change as \"(Recommended)\" since it's likely what the user wants to continue.\n\n   **IMPORTANT**: Do NOT guess or auto-select a change. Always let the user choose.\n\n2. **Check current status**\n   ```bash\n   openspec status --change \"\u003Cname>\" --json\n   ```\n   Parse the JSON to understand current state. The response includes:\n   - `schemaName`: The workflow schema being used (e.g., \"spec-driven\")\n   - `artifacts`: Array of artifacts with their status (\"done\", \"ready\", \"blocked\")\n   - `isComplete`: Boolean indicating if all artifacts are complete\n   - `planningHome`, `changeRoot`, `artifactPaths`, and `actionContext`: path and scope context. Use these instead of assuming repo-local paths.\n\n3. **Act based on status**:\n\n   ---\n\n   **If all artifacts are complete (`isComplete: true`)**:\n   - Congratulate the user\n   - Show final status including the schema used\n   - Suggest: \"All artifacts created! You can now implement this change or archive it.\"\n   - STOP\n\n   ---\n\n   **If artifacts are ready to create** (status shows artifacts with `status: \"ready\"`):\n   - Pick the FIRST artifact with `status: \"ready\"` from the status output\n   - Get its instructions:\n     ```bash\n     openspec instructions \u003Cartifact-id> --change \"\u003Cname>\" --json\n     ```\n   - Parse the JSON. The key fields are:\n     - `context`: Project background (constraints for you - do NOT include in output)\n     - `rules`: Artifact-specific rules (constraints for you - do NOT include in output)\n     - `template`: The structure to use for your output file\n     - `instruction`: Schema-specific guidance\n     - `resolvedOutputPath`: Resolved path or pattern to write the artifact\n     - `dependencies`: Completed artifacts to read for context\n   - **Create the artifact file**:\n     - Read any completed dependency files for context\n     - Use `template` as the structure - fill in its sections\n     - Apply `context` and `rules` as constraints when writing - but do NOT copy them into the file\n     - Write to the `resolvedOutputPath` specified in instructions. If it is a glob pattern, choose the concrete file path using the schema instruction and workspace planning context\n   - Show what was created and what's now unlocked\n   - STOP after creating ONE artifact\n\n   ---\n\n   **If no artifacts are ready (all blocked)**:\n   - This shouldn't happen with a valid schema\n   - Show status and suggest checking for issues\n\n4. **After creating an artifact, show progress**\n   ```bash\n   openspec status --change \"\u003Cname>\"\n   ```\n\n**Output**\n\nAfter each invocation, show:\n- Which artifact was created\n- Schema workflow being used\n- Current progress (N\u002FM complete)\n- What artifacts are now unlocked\n- Prompt: \"Want to continue? Just ask me to continue or tell me what to do next.\"\n\n**Artifact Creation Guidelines**\n\nThe artifact types and their purpose depend on the schema. Use the `instruction` field from the instructions output to understand what to create.\n\nCommon artifact patterns:\n\n**spec-driven schema** (proposal → specs → design → tasks):\n- **proposal.md**: Ask user about the change if not clear. Fill in Why, What Changes, Capabilities, Impact.\n  - The Capabilities section is critical - each capability listed will need a spec file.\n- **specs\u002F\u003Ccapability>\u002Fspec.md**: Create one spec per capability listed in the proposal's Capabilities section (use the capability name, not the change name).\n- **design.md**: Document technical decisions, architecture, and implementation approach.\n- **tasks.md**: Break down implementation into checkboxed tasks.\n\nFor other schemas, follow the `instruction` field from the CLI output.\n\n**Guardrails**\n- Create ONE artifact per invocation\n- Always read dependency artifacts before creating a new one\n- Never skip artifacts or create out of order\n- If context is unclear, ask the user before creating\n- Verify the artifact file exists after writing before marking progress\n- Use the schema's artifact sequence, don't assume specific artifact names\n- **IMPORTANT**: `context` and `rules` are constraints for YOU, not content for the file\n  - Do NOT copy `\u003Ccontext>`, `\u003Crules>`, `\u003Cproject_context>` blocks into the artifact\n  - These guide what you write, but should never appear in the output\n","Continue working on a change by creating the next artifact.\n\n**Input**: Optionally specify a change name. If omitted, check if it can be inferred from conversation context. If vague or ambiguous you MUST prompt for available changes.\n\n**Steps**\n\n1. **If no change name provided, prompt for selection**\n\n   Run `openspec list --json` to get available changes sorted by most recently modified. Then use the **AskUserQuestion tool** to let the user select which change to work on.\n\n   Present the top 3-4 most recently modified changes as options, showing:\n   - Change name\n   - Schema (from `schema` field if present, otherwise \"spec-driven\")\n   - Status (e.g., \"0\u002F5 tasks\", \"complete\", \"no tasks\")\n   - How recently it was modified (from `lastModified` field)\n\n   Mark the most recently modified change as \"(Recommended)\" since it's likely what the user wants to continue.\n\n   **IMPORTANT**: Do NOT guess or auto-select a change. Always let the user choose.\n\n2. **Check current status**\n   ```bash\n   openspec status --change \"\u003Cname>\" --json\n   ```\n   Parse the JSON to understand current state. The response includes:\n   - `schemaName`: The workflow schema being used (e.g., \"spec-driven\")\n   - `artifacts`: Array of artifacts with their status (\"done\", \"ready\", \"blocked\")\n   - `isComplete`: Boolean indicating if all artifacts are complete\n   - `planningHome`, `changeRoot`, `artifactPaths`, and `actionContext`: path and scope context. Use these instead of assuming repo-local paths.\n\n3. **Act based on status**:\n\n   ---\n\n   **If all artifacts are complete (`isComplete: true`)**:\n   - Congratulate the user\n   - Show final status including the schema used\n   - Suggest: \"All artifacts created! You can now implement this change or archive it.\"\n   - STOP\n\n   ---\n\n   **If artifacts are ready to create** (status shows artifacts with `status: \"ready\"`):\n   - Pick the FIRST artifact with `status: \"ready\"` from the status output\n   - Get its instructions:\n     ```bash\n     openspec instructions \u003Cartifact-id> --change \"\u003Cname>\" --json\n     ```\n   - Parse the JSON. The key fields are:\n     - `context`: Project background (constraints for you - do NOT include in output)\n     - `rules`: Artifact-specific rules (constraints for you - do NOT include in output)\n     - `template`: The structure to use for your output file\n     - `instruction`: Schema-specific guidance\n     - `resolvedOutputPath`: Resolved path or pattern to write the artifact\n     - `dependencies`: Completed artifacts to read for context\n   - **Create the artifact file**:\n     - Read any completed dependency files for context\n     - Use `template` as the structure - fill in its sections\n     - Apply `context` and `rules` as constraints when writing - but do NOT copy them into the file\n     - Write to the `resolvedOutputPath` specified in instructions. If it is a glob pattern, choose the concrete file path using the schema instruction and workspace planning context\n   - Show what was created and what's now unlocked\n   - STOP after creating ONE artifact\n\n   ---\n\n   **If no artifacts are ready (all blocked)**:\n   - This shouldn't happen with a valid schema\n   - Show status and suggest checking for issues\n\n4. **After creating an artifact, show progress**\n   ```bash\n   openspec status --change \"\u003Cname>\"\n   ```\n\n**Output**\n\nAfter each invocation, show:\n- Which artifact was created\n- Schema workflow being used\n- Current progress (N\u002FM complete)\n- What artifacts are now unlocked\n- Prompt: \"Want to continue? Just ask me to continue or tell me what to do next.\"\n\n**Artifact Creation Guidelines**\n\nThe artifact types and their purpose depend on the schema. Use the `instruction` field from the instructions output to understand what to create.\n\nCommon artifact patterns:\n\n**spec-driven schema** (proposal → specs → design → tasks):\n- **proposal.md**: Ask user about the change if not clear. Fill in Why, What Changes, Capabilities, Impact.\n  - The Capabilities section is critical - each capability listed will need a spec file.\n- **specs\u002F\u003Ccapability>\u002Fspec.md**: Create one spec per capability listed in the proposal's Capabilities section (use the capability name, not the change name).\n- **design.md**: Document technical decisions, architecture, and implementation approach.\n- **tasks.md**: Break down implementation into checkboxed tasks.\n\nFor other schemas, follow the `instruction` field from the CLI output.\n\n**Guardrails**\n- Create ONE artifact per invocation\n- Always read dependency artifacts before creating a new one\n- Never skip artifacts or create out of order\n- If context is unclear, ask the user before creating\n- Verify the artifact file exists after writing before marking progress\n- Use the schema's artifact sequence, don't assume specific artifact names\n- **IMPORTANT**: `context` and `rules` are constraints for YOU, not content for the file\n  - Do NOT copy `\u003Ccontext>`, `\u003Crules>`, `\u003Cproject_context>` blocks into the artifact\n  - These guide what you write, but should never appear in the output\n",{"name":5,"license":15,"metadata":36,"description":7,"compatibility":39},{"author":22,"version":37,"generatedBy":38},"1.0","1.4.1","Requires openspec CLI.","main","f726ce2f2bb4e3bcc2f56c066598f4acd910c5ee",".github\u002Fskills\u002Fopenspec\u002Fopenspec-continue-change","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template","https:\u002F\u002Fgithub.com\u002Flfr-ai","Optimizing for elegance","2026-07-20 12:19:48",{"source":8,"skillName":5,"commands":48,"prompt":58,"zipAvailable":59},[49,52,55],{"tool":50,"command":51},"npx","npx skills add lfr-ai\u002Fcopier-fullstack-template --skill openspec-continue-change",{"tool":53,"command":54},"bunx","bunx skills add lfr-ai\u002Fcopier-fullstack-template --skill openspec-continue-change",{"tool":56,"command":57},"pnpm","pnpm dlx skills add lfr-ai\u002Fcopier-fullstack-template --skill openspec-continue-change","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fopenspec\u002Fopenspec-continue-change\u002FSKILL.md",true,[],[62,95,107,113,130,136],{"skillNo":63,"name":64,"nameZh":6,"description":65,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":66,"categories":67,"keywords":78,"publishedAt":31},"01M6QQGVYW8BZ3W165A5YMJ1PF","ui-ux-frontend","Frontend UX, accessibility, responsive layout, and Storybook interaction quality standards.","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002Ftemplate\u002F.github\u002Fskills\u002Fui-ux-frontend\u002FSKILL.md",[68,73],{"categoryNo":69,"categoryName":70,"taxonomyType":71,"taxonomyTypeDesc":72},"01JBSEEDCAT000000000000009","前端开发","SCENARIO","使用场景",{"categoryNo":74,"categoryName":75,"taxonomyType":76,"taxonomyTypeDesc":77},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94],"ui ux","ui ux frontend","ui","ux","frontend","storybook","frontend ux","interaction","layout","responsive","mdx","tsx","standards","quality","accessibility","css",{"skillNo":96,"name":97,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":98,"categories":99,"keywords":103,"publishedAt":31},"01M6QQGS7N3ENQZR2Y5JBRYDHD","testing-conventions","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002Ftemplate\u002F.github\u002Fskills\u002Ftesting-conventions\u002FSKILL.md",[100],{"categoryNo":101,"categoryName":102,"taxonomyType":71,"taxonomyTypeDesc":72},"01JBSEEDCAT000000000000008","测试与质量",[104,105,106],"conventions","testing conventions","testing",{"skillNo":108,"name":109,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":112,"publishedAt":31},"01M6QQGQKA9Q6A147WXMS7QPGX","tdd","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002Ftemplate\u002F.github\u002Fskills\u002Ftdd\u002FSKILL.md",[],[109],{"skillNo":114,"name":115,"nameZh":6,"description":116,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":117,"categories":118,"keywords":120,"publishedAt":31},"01M6QQG5AZPRWSR6SSCCDDPAM3","shadcn-ui","shadcn\u002Fui component conventions and composition patterns","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002Ftemplate\u002F.github\u002Fskills\u002Fshadcn-ui\u002FSKILL.md",[119],{"categoryNo":74,"categoryName":75,"taxonomyType":76,"taxonomyTypeDesc":77},[121,81,122,123,90,124,125,126,127,104,128,129],"shadcn ui","shadcn","component","Composition","src","composition patterns","presentation","patterns","ui component",{"skillNo":131,"name":132,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":133,"categories":134,"keywords":135,"publishedAt":31},"01M6QQG3WMMB8X8C4T8PR7WBV4","sdd","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002Ftemplate\u002F.github\u002Fskills\u002Fsdd\u002FSKILL.md",[],[132],{"skillNo":137,"name":138,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":139,"categories":140,"keywords":141,"publishedAt":31},"01M6QQG241NAC5PQFXFD01NR16","quality-gate","https:\u002F\u002Fgithub.com\u002Flfr-ai\u002Fcopier-fullstack-template\u002Fblob\u002Fmain\u002Ftemplate\u002F.github\u002Fskills\u002Fquality-gate\u002FSKILL.md",[],[142,92,143],"quality gate","gate"]