[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71RFFKC8SPHA46JX7TB4B34":3,"skill-same:01M71RFFKC8SPHA46JX7TB4B34":70},{"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":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":48,"commitSha":49,"skillDirectory":50,"forksCount":14,"repositoryHtmlUrl":51,"repositoryHomepageUrl":6,"ownerHtmlUrl":52,"ownerBlogUrl":53,"ownerDescription":54,"updatedAt":55,"install":56,"resources":69},"01M71RFFKC8SPHA46JX7TB4B34","openspec-propose",null,"Propose a new change with all artifacts generated in one step. Use when the user wants to quickly describe what they want to build and get a complete proposal with design, specs, and tasks ready for implementation.","duvu\u002Fxlitellm","duvu","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F111038?v=4","01M71REK4X06FTJZHHAPSD5RC6","Vu","01M71REK5G98TNC0B4RT2CMK2P",0,"MIT","https:\u002F\u002Fgithub.com\u002Fduvu\u002Fxlitellm\u002Fblob\u002Fx51\u002Fv1.80.11-baseline\u002F.codex\u002Fskills\u002Fopenspec-propose\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"openspec propose","openspec","tasks","artifacts","when","use","describe","generated","implementation","new","design","complete","for","build","get","cli","change","proposal","ready","with","2026-11-10 13:02:02",false,"---\nname: openspec-propose\ndescription: Propose a new change with all artifacts generated in one step. Use when the user wants to quickly describe what they want to build and get a complete proposal with design, specs, and tasks ready for implementation.\nlicense: MIT\ncompatibility: Requires openspec CLI.\nmetadata:\n  author: openspec\n  version: \"1.0\"\n  generatedBy: \"1.3.1\"\n---\n\nPropose a new change - create the change and generate all artifacts in one step.\n\nI'll create a change with artifacts:\n- proposal.md (what & why)\n- design.md (how)\n- tasks.md (implementation steps)\n\nWhen ready to implement, run \u002Fopsx:apply\n\n---\n\n**Input**: The user's request should include a change name (kebab-case) OR a description of what they want to build.\n\n**Steps**\n\n1. **If no clear input provided, ask what they want to build**\n\n   Use the **AskUserQuestion tool** (open-ended, no preset options) to ask:\n   > \"What change do you want to work on? Describe what you want to build or fix.\"\n\n   From their description, derive a kebab-case name (e.g., \"add user authentication\" → `add-user-auth`).\n\n   **IMPORTANT**: Do NOT proceed without understanding what the user wants to build.\n\n2. **Create the change directory**\n   ```bash\n   openspec new change \"\u003Cname>\"\n   ```\n   This creates a scaffolded change at `openspec\u002Fchanges\u002F\u003Cname>\u002F` with `.openspec.yaml`.\n\n3. **Get the artifact build order**\n   ```bash\n   openspec status --change \"\u003Cname>\" --json\n   ```\n   Parse the JSON to get:\n   - `applyRequires`: array of artifact IDs needed before implementation (e.g., `[\"tasks\"]`)\n   - `artifacts`: list of all artifacts with their status and dependencies\n\n4. **Create artifacts in sequence until apply-ready**\n\n   Use the **TodoWrite tool** to track progress through the artifacts.\n\n   Loop through artifacts in dependency order (artifacts with no pending dependencies first):\n\n   a. **For each artifact that is `ready` (dependencies satisfied)**:\n      - Get instructions:\n        ```bash\n        openspec instructions \u003Cartifact-id> --change \"\u003Cname>\" --json\n        ```\n      - The instructions JSON includes:\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 for this artifact type\n        - `outputPath`: Where to write the artifact\n        - `dependencies`: Completed artifacts to read for context\n      - Read any completed dependency files for context\n      - Create the artifact file using `template` as the structure\n      - Apply `context` and `rules` as constraints - but do NOT copy them into the file\n      - Show brief progress: \"Created \u003Cartifact-id>\"\n\n   b. **Continue until all `applyRequires` artifacts are complete**\n      - After creating each artifact, re-run `openspec status --change \"\u003Cname>\" --json`\n      - Check if every artifact ID in `applyRequires` has `status: \"done\"` in the artifacts array\n      - Stop when all `applyRequires` artifacts are done\n\n   c. **If an artifact requires user input** (unclear context):\n      - Use **AskUserQuestion tool** to clarify\n      - Then continue with creation\n\n5. **Show final status**\n   ```bash\n   openspec status --change \"\u003Cname>\"\n   ```\n\n**Output**\n\nAfter completing all artifacts, summarize:\n- Change name and location\n- List of artifacts created with brief descriptions\n- What's ready: \"All artifacts created! Ready for implementation.\"\n- Prompt: \"Run `\u002Fopsx:apply` or ask me to implement to start working on the tasks.\"\n\n**Artifact Creation Guidelines**\n\n- Follow the `instruction` field from `openspec instructions` for each artifact type\n- The schema defines what each artifact should contain - follow it\n- Read dependency artifacts for context before creating new ones\n- Use `template` as the structure for your output file - fill in its sections\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\n**Guardrails**\n- Create ALL artifacts needed for implementation (as defined by schema's `apply.requires`)\n- Always read dependency artifacts before creating a new one\n- If context is critically unclear, ask the user - but prefer making reasonable decisions to keep momentum\n- If a change with that name already exists, ask if user wants to continue it or create a new one\n- Verify each artifact file exists after writing before proceeding to next\n","Propose a new change - create the change and generate all artifacts in one step.\n\nI'll create a change with artifacts:\n- proposal.md (what & why)\n- design.md (how)\n- tasks.md (implementation steps)\n\nWhen ready to implement, run \u002Fopsx:apply\n\n---\n\n**Input**: The user's request should include a change name (kebab-case) OR a description of what they want to build.\n\n**Steps**\n\n1. **If no clear input provided, ask what they want to build**\n\n   Use the **AskUserQuestion tool** (open-ended, no preset options) to ask:\n   > \"What change do you want to work on? Describe what you want to build or fix.\"\n\n   From their description, derive a kebab-case name (e.g., \"add user authentication\" → `add-user-auth`).\n\n   **IMPORTANT**: Do NOT proceed without understanding what the user wants to build.\n\n2. **Create the change directory**\n   ```bash\n   openspec new change \"\u003Cname>\"\n   ```\n   This creates a scaffolded change at `openspec\u002Fchanges\u002F\u003Cname>\u002F` with `.openspec.yaml`.\n\n3. **Get the artifact build order**\n   ```bash\n   openspec status --change \"\u003Cname>\" --json\n   ```\n   Parse the JSON to get:\n   - `applyRequires`: array of artifact IDs needed before implementation (e.g., `[\"tasks\"]`)\n   - `artifacts`: list of all artifacts with their status and dependencies\n\n4. **Create artifacts in sequence until apply-ready**\n\n   Use the **TodoWrite tool** to track progress through the artifacts.\n\n   Loop through artifacts in dependency order (artifacts with no pending dependencies first):\n\n   a. **For each artifact that is `ready` (dependencies satisfied)**:\n      - Get instructions:\n        ```bash\n        openspec instructions \u003Cartifact-id> --change \"\u003Cname>\" --json\n        ```\n      - The instructions JSON includes:\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 for this artifact type\n        - `outputPath`: Where to write the artifact\n        - `dependencies`: Completed artifacts to read for context\n      - Read any completed dependency files for context\n      - Create the artifact file using `template` as the structure\n      - Apply `context` and `rules` as constraints - but do NOT copy them into the file\n      - Show brief progress: \"Created \u003Cartifact-id>\"\n\n   b. **Continue until all `applyRequires` artifacts are complete**\n      - After creating each artifact, re-run `openspec status --change \"\u003Cname>\" --json`\n      - Check if every artifact ID in `applyRequires` has `status: \"done\"` in the artifacts array\n      - Stop when all `applyRequires` artifacts are done\n\n   c. **If an artifact requires user input** (unclear context):\n      - Use **AskUserQuestion tool** to clarify\n      - Then continue with creation\n\n5. **Show final status**\n   ```bash\n   openspec status --change \"\u003Cname>\"\n   ```\n\n**Output**\n\nAfter completing all artifacts, summarize:\n- Change name and location\n- List of artifacts created with brief descriptions\n- What's ready: \"All artifacts created! Ready for implementation.\"\n- Prompt: \"Run `\u002Fopsx:apply` or ask me to implement to start working on the tasks.\"\n\n**Artifact Creation Guidelines**\n\n- Follow the `instruction` field from `openspec instructions` for each artifact type\n- The schema defines what each artifact should contain - follow it\n- Read dependency artifacts for context before creating new ones\n- Use `template` as the structure for your output file - fill in its sections\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\n**Guardrails**\n- Create ALL artifacts needed for implementation (as defined by schema's `apply.requires`)\n- Always read dependency artifacts before creating a new one\n- If context is critically unclear, ask the user - but prefer making reasonable decisions to keep momentum\n- If a change with that name already exists, ask if user wants to continue it or create a new one\n- Verify each artifact file exists after writing before proceeding to next\n",{"name":5,"license":15,"metadata":44,"description":7,"compatibility":47},{"author":20,"version":45,"generatedBy":46},"1.0","1.3.1","Requires openspec CLI.","x51\u002Fv1.80.11-baseline","440611df864699e50ffe9e8a52051270517c195c",".codex\u002Fskills\u002Fopenspec-propose","https:\u002F\u002Fgithub.com\u002Fduvu\u002Fxlitellm","https:\u002F\u002Fgithub.com\u002Fduvu","https:\u002F\u002Fx51.vn","AI & Backend Architect | Java\u002FSpring, Python\u002FFastAPI | Production AI integrations and scalable APIs.","2026-11-11 21:59:49",{"source":8,"skillName":5,"commands":57,"prompt":67,"zipAvailable":68},[58,61,64],{"tool":59,"command":60},"npx","npx skills add duvu\u002Fxlitellm --skill openspec-propose",{"tool":62,"command":63},"bunx","bunx skills add duvu\u002Fxlitellm --skill openspec-propose",{"tool":65,"command":66},"pnpm","pnpm dlx skills add duvu\u002Fxlitellm --skill openspec-propose","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fduvu\u002Fxlitellm\u002Fblob\u002Fx51\u002Fv1.80.11-baseline\u002F.codex\u002Fskills\u002Fopenspec-propose\u002FSKILL.md",true,[],[71,104,109,126,137,153],{"skillNo":72,"name":73,"nameZh":6,"description":74,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":75,"licenseFileUrl":76,"sourceHtmlUrl":77,"categories":78,"keywords":87,"publishedAt":39},"01M71RFSNG1Q7KJ6HW9SBR4HD7","slack-gif-creator","Knowledge and utilities for creating animated GIFs optimized for Slack. Provides constraints, validation tools, and animation concepts. Use when users request animated GIFs for Slack like \"make me a GIF of X doing Y for Slack.\"","Apache-2.0","https:\u002F\u002Fgithub.com\u002Fduvu\u002Fxlitellm\u002Fblob\u002Fx51\u002Fv1.80.11-baseline\u002Ftests\u002Fllm_translation\u002Ftest_skills_data\u002Fslack-gif-creator\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002Fduvu\u002Fxlitellm\u002Fblob\u002Fx51\u002Fv1.80.11-baseline\u002Ftests\u002Fllm_translation\u002Ftest_skills_data\u002Fslack-gif-creator\u002FSKILL.md",[79,84],{"categoryNo":80,"categoryName":81,"taxonomyType":82,"taxonomyTypeDesc":83},"01JBSEEDCAT000000000000005","邮件与沟通","SCENARIO","使用场景",{"categoryNo":85,"categoryName":86,"taxonomyType":82,"taxonomyTypeDesc":83},"01JBSEEDCAT000000000000016","图像与多媒体",[88,89,90,91,92,23,93,94,95,96,97,98,99,100,101,24,102,31,103],"slack","slack gif creator","gif","creator","make","constraints","Tools","concepts","Utilities","gifs","validation","request","me","users","knowledge","Animation",{"skillNo":105,"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":106,"categories":107,"keywords":108,"publishedAt":39},"01M71RFPAAQMA6DT8YENKSKZ9Q","https:\u002F\u002Fgithub.com\u002Fduvu\u002Fxlitellm\u002Fblob\u002Fx51\u002Fv1.80.11-baseline\u002F.github\u002Fskills\u002Fopenspec-propose\u002FSKILL.md",[],[19,20,27,28,29,30,31,32,33,38,37,36,35,34,26,21,22,23,24,25],{"skillNo":110,"name":111,"nameZh":6,"description":112,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":113,"categories":114,"keywords":115,"publishedAt":39},"01M71RFKS421A3VECV1K2R6TMR","openspec-explore","Enter explore mode - a thinking partner for exploring ideas, investigating problems, and clarifying requirements. Use when the user wants to think through something before or during a change.","https:\u002F\u002Fgithub.com\u002Fduvu\u002Fxlitellm\u002Fblob\u002Fx51\u002Fv1.80.11-baseline\u002F.github\u002Fskills\u002Fopenspec-explore\u002FSKILL.md",[],[20,116,117,118,119,120,35,121,23,24,122,31,123,124,125,34],"openspec explore","explore","partner","think","user","requirements","mode","thinking partner","ideas","thinking",{"skillNo":127,"name":128,"nameZh":6,"description":129,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":132,"publishedAt":39},"01M71RFJD1KSRJGVJ00NS3AQRP","openspec-archive-change","Archive a completed change in the experimental workflow. Use when the user wants to finalize and archive a change after implementation is complete.","https:\u002F\u002Fgithub.com\u002Fduvu\u002Fxlitellm\u002Fblob\u002Fx51\u002Fv1.80.11-baseline\u002F.github\u002Fskills\u002Fopenspec-archive-change\u002FSKILL.md",[],[133,20,134,35,30,120,135,23,24,34,27,136],"archive","openspec archive change","workflow","finalize",{"skillNo":138,"name":139,"nameZh":6,"description":140,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":141,"categories":142,"keywords":143,"publishedAt":39},"01M71RFH4427V1KP3JBQPAGBKK","openspec-apply-change","Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks.","https:\u002F\u002Fgithub.com\u002Fduvu\u002Fxlitellm\u002Fblob\u002Fx51\u002Fv1.80.11-baseline\u002F.github\u002Fskills\u002Fopenspec-apply-change\u002FSKILL.md",[],[144,145,20,146,147,35,24,27,148,149,150,34,151,23,152,120,21],"apply","openspec apply","apply change","openspec apply change","start","implementing","continue","work","implement",{"skillNo":154,"name":111,"nameZh":6,"description":112,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":155,"categories":156,"keywords":157,"publishedAt":39},"01M71RFD6VG70TRD1T0VJZ6JG0","https:\u002F\u002Fgithub.com\u002Fduvu\u002Fxlitellm\u002Fblob\u002Fx51\u002Fv1.80.11-baseline\u002F.codex\u002Fskills\u002Fopenspec-explore\u002FSKILL.md",[],[117,116,20,34,120,119,118,35,121,23,24,122,31,123,124,125]]