[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M754HMA2AF474JPA6XBTSXGE":3,"skill-same:01M754HMA2AF474JPA6XBTSXGE":52},{"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":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":29,"commitSha":30,"skillDirectory":31,"forksCount":32,"repositoryHtmlUrl":33,"repositoryHomepageUrl":6,"ownerHtmlUrl":34,"ownerBlogUrl":35,"ownerDescription":36,"updatedAt":37,"install":38,"resources":51},"01M754HMA2AF474JPA6XBTSXGE","openspec-bulk-archive-change",null,"Archive multiple completed changes at once. Use when archiving several parallel changes.","mambo-wang\u002FCodingHub","mambo-wang","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F17296917?v=4","01M75489WXT2KCG0TDVRGMTEET","WanderingBug","01M75489YB4Q10BJ2CWVRFWJHC",3,"MIT","https:\u002F\u002Fgithub.com\u002Fmambo-wang\u002FCodingHub\u002Fblob\u002Fpostgresql\u002F.qoderwork\u002Fskills\u002Fopenspec-bulk-archive-change\u002FSKILL.md",[],[],"2026-11-12 13:55:43",false,"---\nname: openspec-bulk-archive-change\ndescription: Archive multiple completed changes at once. Use when archiving several parallel changes.\nlicense: MIT\ncompatibility: Requires openspec CLI.\nmetadata:\n  author: openspec\n  version: \"1.0\"\n  generatedBy: \"1.3.1\"\n---\n\nArchive multiple completed changes in a single operation.\n\nThis skill allows you to batch-archive changes, handling spec conflicts intelligently by checking the codebase to determine what's actually implemented.\n\n**Input**: None required (prompts for selection)\n\n**Steps**\n\n1. **Get active changes**\n\n   Run `openspec list --json` to get all active changes.\n\n   If no active changes exist, inform user and stop.\n\n2. **Prompt for change selection**\n\n   Use **AskUserQuestion tool** with multi-select to let user choose changes:\n   - Show each change with its schema\n   - Include an option for \"All changes\"\n   - Allow any number of selections (1+ works, 2+ is the typical use case)\n\n   **IMPORTANT**: Do NOT auto-select. Always let the user choose.\n\n3. **Batch validation - gather status for all selected changes**\n\n   For each selected change, collect:\n\n   a. **Artifact status** - Run `openspec status --change \"\u003Cname>\" --json`\n      - Parse `schemaName` and `artifacts` list\n      - Note which artifacts are `done` vs other states\n\n   b. **Task completion** - Read `openspec\u002Fchanges\u002F\u003Cname>\u002Ftasks.md`\n      - Count `- [ ]` (incomplete) vs `- [x]` (complete)\n      - If no tasks file exists, note as \"No tasks\"\n\n   c. **Delta specs** - Check `openspec\u002Fchanges\u002F\u003Cname>\u002Fspecs\u002F` directory\n      - List which capability specs exist\n      - For each, extract requirement names (lines matching `### Requirement: \u003Cname>`)\n\n4. **Detect spec conflicts**\n\n   Build a map of `capability -> [changes that touch it]`:\n\n   ```\n   auth -> [change-a, change-b]  \u003C- CONFLICT (2+ changes)\n   api  -> [change-c]            \u003C- OK (only 1 change)\n   ```\n\n   A conflict exists when 2+ selected changes have delta specs for the same capability.\n\n5. **Resolve conflicts agentically**\n\n   **For each conflict**, investigate the codebase:\n\n   a. **Read the delta specs** from each conflicting change to understand what each claims to add\u002Fmodify\n\n   b. **Search the codebase** for implementation evidence:\n      - Look for code implementing requirements from each delta spec\n      - Check for related files, functions, or tests\n\n   c. **Determine resolution**:\n      - If only one change is actually implemented -> sync that one's specs\n      - If both implemented -> apply in chronological order (older first, newer overwrites)\n      - If neither implemented -> skip spec sync, warn user\n\n   d. **Record resolution** for each conflict:\n      - Which change's specs to apply\n      - In what order (if both)\n      - Rationale (what was found in codebase)\n\n6. **Show consolidated status table**\n\n   Display a table summarizing all changes:\n\n   ```\n   | Change              | Artifacts | Tasks | Specs   | Conflicts | Status |\n   |---------------------|-----------|-------|---------|-----------|--------|\n   | schema-management   | Done      | 5\u002F5   | 2 delta | None      | Ready  |\n   | project-config      | Done      | 3\u002F3   | 1 delta | None      | Ready  |\n   | add-oauth           | Done      | 4\u002F4   | 1 delta | auth (!)  | Ready* |\n   | add-verify-skill    | 1 left    | 2\u002F5   | None    | None      | Warn   |\n   ```\n\n   For conflicts, show the resolution:\n   ```\n   * Conflict resolution:\n     - auth spec: Will apply add-oauth then add-jwt (both implemented, chronological order)\n   ```\n\n   For incomplete changes, show warnings:\n   ```\n   Warnings:\n   - add-verify-skill: 1 incomplete artifact, 3 incomplete tasks\n   ```\n\n7. **Confirm batch operation**\n\n   Use **AskUserQuestion tool** with a single confirmation:\n\n   - \"Archive N changes?\" with options based on status\n   - Options might include:\n     - \"Archive all N changes\"\n     - \"Archive only N ready changes (skip incomplete)\"\n     - \"Cancel\"\n\n   If there are incomplete changes, make clear they'll be archived with warnings.\n\n8. **Execute archive for each confirmed change**\n\n   Process changes in the determined order (respecting conflict resolution):\n\n   a. **Sync specs** if delta specs exist:\n      - Use the openspec-sync-specs approach (agent-driven intelligent merge)\n      - For conflicts, apply in resolved order\n      - Track if sync was done\n\n   b. **Perform the archive**:\n      ```bash\n      mkdir -p openspec\u002Fchanges\u002Farchive\n      mv openspec\u002Fchanges\u002F\u003Cname> openspec\u002Fchanges\u002Farchive\u002FYYYY-MM-DD-\u003Cname>\n      ```\n\n   c. **Track outcome** for each change:\n      - Success: archived successfully\n      - Failed: error during archive (record error)\n      - Skipped: user chose not to archive (if applicable)\n\n9. **Display summary**\n\n   Show final results:\n\n   ```\n   ## Bulk Archive Complete\n\n   Archived 3 changes:\n   - schema-management-cli -> archive\u002F2026-01-19-schema-management-cli\u002F\n   - project-config -> archive\u002F2026-01-19-project-config\u002F\n   - add-oauth -> archive\u002F2026-01-19-add-oauth\u002F\n\n   Skipped 1 change:\n   - add-verify-skill (user chose not to archive incomplete)\n\n   Spec sync summary:\n   - 4 delta specs synced to main specs\n   - 1 conflict resolved (auth: applied both in chronological order)\n   ```\n\n   If any failures:\n   ```\n   Failed 1 change:\n   - some-change: Archive directory already exists\n   ```\n\n**Conflict Resolution Examples**\n\nExample 1: Only one implemented\n```\nConflict: specs\u002Fauth\u002Fspec.md touched by [add-oauth, add-jwt]\n\nChecking add-oauth:\n- Delta adds \"OAuth Provider Integration\" requirement\n- Searching codebase... found src\u002Fauth\u002Foauth.ts implementing OAuth flow\n\nChecking add-jwt:\n- Delta adds \"JWT Token Handling\" requirement\n- Searching codebase... no JWT implementation found\n\nResolution: Only add-oauth is implemented. Will sync add-oauth specs only.\n```\n\nExample 2: Both implemented\n```\nConflict: specs\u002Fapi\u002Fspec.md touched by [add-rest-api, add-graphql]\n\nChecking add-rest-api (created 2026-01-10):\n- Delta adds \"REST Endpoints\" requirement\n- Searching codebase... found src\u002Fapi\u002Frest.ts\n\nChecking add-graphql (created 2026-01-15):\n- Delta adds \"GraphQL Schema\" requirement\n- Searching codebase... found src\u002Fapi\u002Fgraphql.ts\n\nResolution: Both implemented. Will apply add-rest-api specs first,\nthen add-graphql specs (chronological order, newer takes precedence).\n```\n\n**Output On Success**\n\n```\n## Bulk Archive Complete\n\nArchived N changes:\n- \u003Cchange-1> -> archive\u002FYYYY-MM-DD-\u003Cchange-1>\u002F\n- \u003Cchange-2> -> archive\u002FYYYY-MM-DD-\u003Cchange-2>\u002F\n\nSpec sync summary:\n- N delta specs synced to main specs\n- No conflicts (or: M conflicts resolved)\n```\n\n**Output On Partial Success**\n\n```\n## Bulk Archive Complete (partial)\n\nArchived N changes:\n- \u003Cchange-1> -> archive\u002FYYYY-MM-DD-\u003Cchange-1>\u002F\n\nSkipped M changes:\n- \u003Cchange-2> (user chose not to archive incomplete)\n\nFailed K changes:\n- \u003Cchange-3>: Archive directory already exists\n```\n\n**Output When No Changes**\n\n```\n## No Changes to Archive\n\nNo active changes found. Create a new change to get started.\n```\n\n**Guardrails**\n- Allow any number of changes (1+ is fine, 2+ is the typical use case)\n- Always prompt for selection, never auto-select\n- Detect spec conflicts early and resolve by checking codebase\n- When both changes are implemented, apply specs in chronological order\n- Skip spec sync only when implementation is missing (warn user)\n- Show clear per-change status before confirming\n- Use single confirmation for entire batch\n- Track and report all outcomes (success\u002Fskip\u002Ffail)\n- Preserve .openspec.yaml when moving to archive\n- Archive directory target uses current date: YYYY-MM-DD-\u003Cname>\n- If archive target exists, fail that change but continue with others\n","Archive multiple completed changes in a single operation.\n\nThis skill allows you to batch-archive changes, handling spec conflicts intelligently by checking the codebase to determine what's actually implemented.\n\n**Input**: None required (prompts for selection)\n\n**Steps**\n\n1. **Get active changes**\n\n   Run `openspec list --json` to get all active changes.\n\n   If no active changes exist, inform user and stop.\n\n2. **Prompt for change selection**\n\n   Use **AskUserQuestion tool** with multi-select to let user choose changes:\n   - Show each change with its schema\n   - Include an option for \"All changes\"\n   - Allow any number of selections (1+ works, 2+ is the typical use case)\n\n   **IMPORTANT**: Do NOT auto-select. Always let the user choose.\n\n3. **Batch validation - gather status for all selected changes**\n\n   For each selected change, collect:\n\n   a. **Artifact status** - Run `openspec status --change \"\u003Cname>\" --json`\n      - Parse `schemaName` and `artifacts` list\n      - Note which artifacts are `done` vs other states\n\n   b. **Task completion** - Read `openspec\u002Fchanges\u002F\u003Cname>\u002Ftasks.md`\n      - Count `- [ ]` (incomplete) vs `- [x]` (complete)\n      - If no tasks file exists, note as \"No tasks\"\n\n   c. **Delta specs** - Check `openspec\u002Fchanges\u002F\u003Cname>\u002Fspecs\u002F` directory\n      - List which capability specs exist\n      - For each, extract requirement names (lines matching `### Requirement: \u003Cname>`)\n\n4. **Detect spec conflicts**\n\n   Build a map of `capability -> [changes that touch it]`:\n\n   ```\n   auth -> [change-a, change-b]  \u003C- CONFLICT (2+ changes)\n   api  -> [change-c]            \u003C- OK (only 1 change)\n   ```\n\n   A conflict exists when 2+ selected changes have delta specs for the same capability.\n\n5. **Resolve conflicts agentically**\n\n   **For each conflict**, investigate the codebase:\n\n   a. **Read the delta specs** from each conflicting change to understand what each claims to add\u002Fmodify\n\n   b. **Search the codebase** for implementation evidence:\n      - Look for code implementing requirements from each delta spec\n      - Check for related files, functions, or tests\n\n   c. **Determine resolution**:\n      - If only one change is actually implemented -> sync that one's specs\n      - If both implemented -> apply in chronological order (older first, newer overwrites)\n      - If neither implemented -> skip spec sync, warn user\n\n   d. **Record resolution** for each conflict:\n      - Which change's specs to apply\n      - In what order (if both)\n      - Rationale (what was found in codebase)\n\n6. **Show consolidated status table**\n\n   Display a table summarizing all changes:\n\n   ```\n   | Change              | Artifacts | Tasks | Specs   | Conflicts | Status |\n   |---------------------|-----------|-------|---------|-----------|--------|\n   | schema-management   | Done      | 5\u002F5   | 2 delta | None      | Ready  |\n   | project-config      | Done      | 3\u002F3   | 1 delta | None      | Ready  |\n   | add-oauth           | Done      | 4\u002F4   | 1 delta | auth (!)  | Ready* |\n   | add-verify-skill    | 1 left    | 2\u002F5   | None    | None      | Warn   |\n   ```\n\n   For conflicts, show the resolution:\n   ```\n   * Conflict resolution:\n     - auth spec: Will apply add-oauth then add-jwt (both implemented, chronological order)\n   ```\n\n   For incomplete changes, show warnings:\n   ```\n   Warnings:\n   - add-verify-skill: 1 incomplete artifact, 3 incomplete tasks\n   ```\n\n7. **Confirm batch operation**\n\n   Use **AskUserQuestion tool** with a single confirmation:\n\n   - \"Archive N changes?\" with options based on status\n   - Options might include:\n     - \"Archive all N changes\"\n     - \"Archive only N ready changes (skip incomplete)\"\n     - \"Cancel\"\n\n   If there are incomplete changes, make clear they'll be archived with warnings.\n\n8. **Execute archive for each confirmed change**\n\n   Process changes in the determined order (respecting conflict resolution):\n\n   a. **Sync specs** if delta specs exist:\n      - Use the openspec-sync-specs approach (agent-driven intelligent merge)\n      - For conflicts, apply in resolved order\n      - Track if sync was done\n\n   b. **Perform the archive**:\n      ```bash\n      mkdir -p openspec\u002Fchanges\u002Farchive\n      mv openspec\u002Fchanges\u002F\u003Cname> openspec\u002Fchanges\u002Farchive\u002FYYYY-MM-DD-\u003Cname>\n      ```\n\n   c. **Track outcome** for each change:\n      - Success: archived successfully\n      - Failed: error during archive (record error)\n      - Skipped: user chose not to archive (if applicable)\n\n9. **Display summary**\n\n   Show final results:\n\n   ```\n   ## Bulk Archive Complete\n\n   Archived 3 changes:\n   - schema-management-cli -> archive\u002F2026-01-19-schema-management-cli\u002F\n   - project-config -> archive\u002F2026-01-19-project-config\u002F\n   - add-oauth -> archive\u002F2026-01-19-add-oauth\u002F\n\n   Skipped 1 change:\n   - add-verify-skill (user chose not to archive incomplete)\n\n   Spec sync summary:\n   - 4 delta specs synced to main specs\n   - 1 conflict resolved (auth: applied both in chronological order)\n   ```\n\n   If any failures:\n   ```\n   Failed 1 change:\n   - some-change: Archive directory already exists\n   ```\n\n**Conflict Resolution Examples**\n\nExample 1: Only one implemented\n```\nConflict: specs\u002Fauth\u002Fspec.md touched by [add-oauth, add-jwt]\n\nChecking add-oauth:\n- Delta adds \"OAuth Provider Integration\" requirement\n- Searching codebase... found src\u002Fauth\u002Foauth.ts implementing OAuth flow\n\nChecking add-jwt:\n- Delta adds \"JWT Token Handling\" requirement\n- Searching codebase... no JWT implementation found\n\nResolution: Only add-oauth is implemented. Will sync add-oauth specs only.\n```\n\nExample 2: Both implemented\n```\nConflict: specs\u002Fapi\u002Fspec.md touched by [add-rest-api, add-graphql]\n\nChecking add-rest-api (created 2026-01-10):\n- Delta adds \"REST Endpoints\" requirement\n- Searching codebase... found src\u002Fapi\u002Frest.ts\n\nChecking add-graphql (created 2026-01-15):\n- Delta adds \"GraphQL Schema\" requirement\n- Searching codebase... found src\u002Fapi\u002Fgraphql.ts\n\nResolution: Both implemented. Will apply add-rest-api specs first,\nthen add-graphql specs (chronological order, newer takes precedence).\n```\n\n**Output On Success**\n\n```\n## Bulk Archive Complete\n\nArchived N changes:\n- \u003Cchange-1> -> archive\u002FYYYY-MM-DD-\u003Cchange-1>\u002F\n- \u003Cchange-2> -> archive\u002FYYYY-MM-DD-\u003Cchange-2>\u002F\n\nSpec sync summary:\n- N delta specs synced to main specs\n- No conflicts (or: M conflicts resolved)\n```\n\n**Output On Partial Success**\n\n```\n## Bulk Archive Complete (partial)\n\nArchived N changes:\n- \u003Cchange-1> -> archive\u002FYYYY-MM-DD-\u003Cchange-1>\u002F\n\nSkipped M changes:\n- \u003Cchange-2> (user chose not to archive incomplete)\n\nFailed K changes:\n- \u003Cchange-3>: Archive directory already exists\n```\n\n**Output When No Changes**\n\n```\n## No Changes to Archive\n\nNo active changes found. Create a new change to get started.\n```\n\n**Guardrails**\n- Allow any number of changes (1+ is fine, 2+ is the typical use case)\n- Always prompt for selection, never auto-select\n- Detect spec conflicts early and resolve by checking codebase\n- When both changes are implemented, apply specs in chronological order\n- Skip spec sync only when implementation is missing (warn user)\n- Show clear per-change status before confirming\n- Use single confirmation for entire batch\n- Track and report all outcomes (success\u002Fskip\u002Ffail)\n- Preserve .openspec.yaml when moving to archive\n- Archive directory target uses current date: YYYY-MM-DD-\u003Cname>\n- If archive target exists, fail that change but continue with others\n",{"name":5,"license":15,"metadata":24,"description":7,"compatibility":28},{"author":25,"version":26,"generatedBy":27},"openspec","1.0","1.3.1","Requires openspec CLI.","postgresql","62510b28c38c732725a8174466b9cd99a0f9972f",".qoderwork\u002Fskills\u002Fopenspec-bulk-archive-change",1,"https:\u002F\u002Fgithub.com\u002Fmambo-wang\u002FCodingHub","https:\u002F\u002Fgithub.com\u002Fmambo-wang","https:\u002F\u002Fblog.csdn.net\u002Fsinat_27143551","专注Java后端开发，喜欢运动","2026-09-09 14:46:49",{"source":8,"skillName":5,"commands":39,"prompt":49,"zipAvailable":50},[40,43,46],{"tool":41,"command":42},"npx","npx skills add mambo-wang\u002FCodingHub --skill openspec-bulk-archive-change",{"tool":44,"command":45},"bunx","bunx skills add mambo-wang\u002FCodingHub --skill openspec-bulk-archive-change",{"tool":47,"command":48},"pnpm","pnpm dlx skills add mambo-wang\u002FCodingHub --skill openspec-bulk-archive-change","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmambo-wang\u002FCodingHub\u002Fblob\u002Fpostgresql\u002F.qoderwork\u002Fskills\u002Fopenspec-bulk-archive-change\u002FSKILL.md",true,[],[53,60,67,74,81,88],{"skillNo":54,"name":55,"nameZh":6,"description":56,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":57,"categories":58,"keywords":59,"publishedAt":19},"01M754JDK9B3AR56T9WWPKECXG","openspec-write-plan","Use when an OpenSpec change has proposal, design, and tasks artifacts ready and a Superpowers implementation plan needs to be created before execution.","https:\u002F\u002Fgithub.com\u002Fmambo-wang\u002FCodingHub\u002Fblob\u002Fpostgresql\u002F.qoderwork\u002Fskills\u002Fopenspec-write-plan\u002FSKILL.md",[],[],{"skillNo":61,"name":62,"nameZh":6,"description":63,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":64,"categories":65,"keywords":66,"publishedAt":19},"01M754JBJPHAQ7GE905FBG3NZ3","openspec-verify-change","Verify implementation matches change artifacts. Use when the user wants to validate that implementation is complete, correct, and coherent before archiving.","https:\u002F\u002Fgithub.com\u002Fmambo-wang\u002FCodingHub\u002Fblob\u002Fpostgresql\u002F.qoderwork\u002Fskills\u002Fopenspec-verify-change\u002FSKILL.md",[],[],{"skillNo":68,"name":69,"nameZh":6,"description":70,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":73,"publishedAt":19},"01M754J95M1YMZD3ZG0Y0HVTXW","openspec-sync-specs","Sync delta specs from a change to main specs. Use when the user wants to update main specs with changes from a delta spec, without archiving the change.","https:\u002F\u002Fgithub.com\u002Fmambo-wang\u002FCodingHub\u002Fblob\u002Fpostgresql\u002F.qoderwork\u002Fskills\u002Fopenspec-sync-specs\u002FSKILL.md",[],[],{"skillNo":75,"name":76,"nameZh":6,"description":77,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":19},"01M754J6WGPAGTE2B1DTMBES6G","openspec-propose","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.","https:\u002F\u002Fgithub.com\u002Fmambo-wang\u002FCodingHub\u002Fblob\u002Fpostgresql\u002F.qoderwork\u002Fskills\u002Fopenspec-propose\u002FSKILL.md",[],[],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":19},"01M754J4EPQ34M7RCGDNMDVXDB","openspec-onboard","Guided onboarding for OpenSpec - walk through a complete workflow cycle with narration and real codebase work.","https:\u002F\u002Fgithub.com\u002Fmambo-wang\u002FCodingHub\u002Fblob\u002Fpostgresql\u002F.qoderwork\u002Fskills\u002Fopenspec-onboard\u002FSKILL.md",[],[],{"skillNo":89,"name":90,"nameZh":6,"description":91,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":94,"publishedAt":19},"01M754J29TKZ2TCFD2N577XR4W","openspec-new-change","Start a new OpenSpec change using the experimental artifact workflow. Use when the user wants to create a new feature, fix, or modification with a structured step-by-step approach.","https:\u002F\u002Fgithub.com\u002Fmambo-wang\u002FCodingHub\u002Fblob\u002Fpostgresql\u002F.qoderwork\u002Fskills\u002Fopenspec-new-change\u002FSKILL.md",[],[]]