[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71BCJGW3PVRKVE6PFFY4SH2":3,"skill-same:01M71BCJGW3PVRKVE6PFFY4SH2":67},{"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":44,"commitSha":45,"skillDirectory":46,"forksCount":47,"repositoryHtmlUrl":48,"repositoryHomepageUrl":49,"ownerHtmlUrl":50,"ownerBlogUrl":51,"ownerDescription":6,"updatedAt":52,"install":53,"resources":66},"01M71BCJGW3PVRKVE6PFFY4SH2","github-create-pr",null,"Create a pull request for the current story branch with JIRA link and AC summary. Use when the user says 'create a PR', 'open a pull request', or 'ready for review'.","superMLdev\u002Fsmart-sdlc","superMLdev","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F214327565?v=4","01M71B92B8VKCZZ0YCSNAJ9CB1","superML.dev","01M71B92BVCWP4F23ANQ0ZKF6S",8,"MIT","https:\u002F\u002Fgithub.com\u002FsuperMLdev\u002Fsmart-sdlc\u002Fblob\u002Fmaster\u002Fskills\u002Fintegrations\u002Fgithub\u002Fcreate-pr\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"create pr","create","github","github create pr","pr","summary","ac","jira","link","request","pull request","with","review","when","use","open","for","branch","ready","pull","2026-11-10 10:12:30",false,"---\nname: github-create-pr\ndescription: \"Create a pull request for the current story branch with JIRA link and AC summary. Use when the user says 'create a PR', 'open a pull request', or 'ready for review'.\"\n---\n\n# GitHub — Create Pull Request\n\n## Goal\n\nCreate a well-formatted pull request that links to the JIRA ticket, summarizes the story, lists ACs verified, and guides reviewers effectively.\n\n---\n\n## Prerequisite Check\n\nCheck `integrations.github` in config. If missing: \"Run `github-connect` first.\"\n\nCheck current branch:\n```bash\ngit branch --show-current\n```\n\nEnsure it's a feature branch (not `main` or `develop`). If on default branch, warn and ask which branch to create PR from.\n\n---\n\n## Step 1: Load Story Context\n\nExtract from current branch name or ask:\n- JIRA key: `{JIRA-KEY}`\n- Story S-ID: `{S-ID}`\n\nLoad story file from `{implementation_artifacts}\u002Fstories\u002FS-{id}-*.md`.\n\n---\n\n## Step 2: Pre-PR Checks\n\nRun:\n```bash\n# Ensure branch is pushed\ngit status\ngit log origin\u002F{default_branch}..HEAD --oneline\n```\n\nReport:\n```\nBranch: {branch_name}\nCommits ahead of {default_branch}: {n}\nChanged files: {list}\n```\n\nAsk: \"Are all changes committed and pushed? Any merge conflicts to resolve first?\"\n\n⏸️ **STOP** — confirm branch is clean.\n\n---\n\n## Step 3: Build PR Description\n\nGenerate PR description from the story:\n\n```markdown\n## {story_title}\n\n**JIRA:** [{JIRA-KEY}]({jira_url}\u002Fbrowse\u002F{JIRA-KEY})\n**Story:** {S-ID}\n**Epic:** {epic_name}\n\n---\n\n## Summary\n\n{user_story_text}\n\n{2-3 sentence description of what was implemented and any notable approach decisions}\n\n---\n\n## Acceptance Criteria Verified\n\n- [x] AC-1: {criteria} — _tested: {test_name}_\n- [x] AC-2: {criteria} — _tested: {test_name}_\n- [x] AC-3: {criteria} — _tested: {test_name}_\n\n---\n\n## Tests\n\n- Tests written: {n}\n- All tests passing: ✅\n- Run: `{test_command}`\n\n---\n\n## Security Checklist\n\n- [x] Input validation in place\n- [x] No hardcoded secrets\n- [x] Auth checks verified\n- [x] Error messages don't leak internals\n\n---\n\n## Notes for Reviewer\n\n{any specific areas to focus review attention on}\n```\n\n⏸️ **STOP** — review and edit the PR description before creating.\n\n---\n\n## Step 4: Create the PR\n\n```bash\ngh pr create \\\n  --title \"{JIRA-KEY}: {story_title}\" \\\n  --body \"{pr_description}\" \\\n  --base {default_branch} \\\n  --head {branch_name} \\\n  --label \"story,superml\"\n```\n\n---\n\n## Step 5: Update JIRA\n\nUpdate JIRA ticket to \"In Review\":\n```bash\ncurl -s -X POST \\\n  \"{jira_url}\u002Frest\u002Fapi\u002F3\u002Fissue\u002F{JIRA-KEY}\u002Ftransitions\" \\\n  -u \"{email}:{api_token}\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"transition\": {\"id\": \"31\"}}'\n```\n\nAdd PR link as JIRA remote link:\n```bash\ncurl -s -X POST \\\n  \"{jira_url}\u002Frest\u002Fapi\u002F3\u002Fissue\u002F{JIRA-KEY}\u002Fremotelink\" \\\n  -u \"{email}:{api_token}\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"object\": {\"url\": \"{pr_url}\", \"title\": \"PR: {pr_title}\"}}'\n```\n\n---\n\n## Completion\n\n> \"✅ Pull Request created: [{pr_title}]({pr_url})\n> JIRA ticket moved to 'In Review'.\"\n\nAsk: \"Would you like to request specific reviewers?\"\n\nIf yes:\n```bash\ngh pr edit {pr_number} --add-reviewer {username1},{username2}\n```\n","# GitHub — Create Pull Request\n\n## Goal\n\nCreate a well-formatted pull request that links to the JIRA ticket, summarizes the story, lists ACs verified, and guides reviewers effectively.\n\n---\n\n## Prerequisite Check\n\nCheck `integrations.github` in config. If missing: \"Run `github-connect` first.\"\n\nCheck current branch:\n```bash\ngit branch --show-current\n```\n\nEnsure it's a feature branch (not `main` or `develop`). If on default branch, warn and ask which branch to create PR from.\n\n---\n\n## Step 1: Load Story Context\n\nExtract from current branch name or ask:\n- JIRA key: `{JIRA-KEY}`\n- Story S-ID: `{S-ID}`\n\nLoad story file from `{implementation_artifacts}\u002Fstories\u002FS-{id}-*.md`.\n\n---\n\n## Step 2: Pre-PR Checks\n\nRun:\n```bash\n# Ensure branch is pushed\ngit status\ngit log origin\u002F{default_branch}..HEAD --oneline\n```\n\nReport:\n```\nBranch: {branch_name}\nCommits ahead of {default_branch}: {n}\nChanged files: {list}\n```\n\nAsk: \"Are all changes committed and pushed? Any merge conflicts to resolve first?\"\n\n⏸️ **STOP** — confirm branch is clean.\n\n---\n\n## Step 3: Build PR Description\n\nGenerate PR description from the story:\n\n```markdown\n## {story_title}\n\n**JIRA:** [{JIRA-KEY}]({jira_url}\u002Fbrowse\u002F{JIRA-KEY})\n**Story:** {S-ID}\n**Epic:** {epic_name}\n\n---\n\n## Summary\n\n{user_story_text}\n\n{2-3 sentence description of what was implemented and any notable approach decisions}\n\n---\n\n## Acceptance Criteria Verified\n\n- [x] AC-1: {criteria} — _tested: {test_name}_\n- [x] AC-2: {criteria} — _tested: {test_name}_\n- [x] AC-3: {criteria} — _tested: {test_name}_\n\n---\n\n## Tests\n\n- Tests written: {n}\n- All tests passing: ✅\n- Run: `{test_command}`\n\n---\n\n## Security Checklist\n\n- [x] Input validation in place\n- [x] No hardcoded secrets\n- [x] Auth checks verified\n- [x] Error messages don't leak internals\n\n---\n\n## Notes for Reviewer\n\n{any specific areas to focus review attention on}\n```\n\n⏸️ **STOP** — review and edit the PR description before creating.\n\n---\n\n## Step 4: Create the PR\n\n```bash\ngh pr create \\\n  --title \"{JIRA-KEY}: {story_title}\" \\\n  --body \"{pr_description}\" \\\n  --base {default_branch} \\\n  --head {branch_name} \\\n  --label \"story,superml\"\n```\n\n---\n\n## Step 5: Update JIRA\n\nUpdate JIRA ticket to \"In Review\":\n```bash\ncurl -s -X POST \\\n  \"{jira_url}\u002Frest\u002Fapi\u002F3\u002Fissue\u002F{JIRA-KEY}\u002Ftransitions\" \\\n  -u \"{email}:{api_token}\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"transition\": {\"id\": \"31\"}}'\n```\n\nAdd PR link as JIRA remote link:\n```bash\ncurl -s -X POST \\\n  \"{jira_url}\u002Frest\u002Fapi\u002F3\u002Fissue\u002F{JIRA-KEY}\u002Fremotelink\" \\\n  -u \"{email}:{api_token}\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"object\": {\"url\": \"{pr_url}\", \"title\": \"PR: {pr_title}\"}}'\n```\n\n---\n\n## Completion\n\n> \"✅ Pull Request created: [{pr_title}]({pr_url})\n> JIRA ticket moved to 'In Review'.\"\n\nAsk: \"Would you like to request specific reviewers?\"\n\nIf yes:\n```bash\ngh pr edit {pr_number} --add-reviewer {username1},{username2}\n```\n",{"name":5,"description":7},"master","86f9b15bf32a913d78f2dce364b9fe56e53ddf12","skills\u002Fintegrations\u002Fgithub\u002Fcreate-pr",1,"https:\u002F\u002Fgithub.com\u002FsuperMLdev\u002Fsmart-sdlc","https:\u002F\u002Fsupermldev.github.io\u002Fsmart-sdlc\u002F","https:\u002F\u002Fgithub.com\u002FsuperMLdev","https:\u002F\u002Fsuperml.dev","2026-05-12 11:55:28",{"source":8,"skillName":5,"commands":54,"prompt":64,"zipAvailable":65},[55,58,61],{"tool":56,"command":57},"npx","npx skills add superMLdev\u002Fsmart-sdlc --skill github-create-pr",{"tool":59,"command":60},"bunx","bunx skills add superMLdev\u002Fsmart-sdlc --skill github-create-pr",{"tool":62,"command":63},"pnpm","pnpm dlx skills add superMLdev\u002Fsmart-sdlc --skill github-create-pr","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FsuperMLdev\u002Fsmart-sdlc\u002Fblob\u002Fmaster\u002Fskills\u002Fintegrations\u002Fgithub\u002Fcreate-pr\u002FSKILL.md",true,[],[68,84,97,109,129,142],{"skillNo":69,"name":70,"nameZh":6,"description":71,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":72,"categories":73,"keywords":74,"publishedAt":39},"01M71BD2HCRX8SP34Y37NZGVX2","jira-sync","Bulk sync all epics and stories from the local backlog to JIRA. Use when the user says 'sync to JIRA', 'push everything to JIRA', or 'create all JIRA tickets'.","https:\u002F\u002Fgithub.com\u002FsuperMLdev\u002Fsmart-sdlc\u002Fblob\u002Fmaster\u002Fskills\u002Fintegrations\u002Fjira\u002Fsync\u002FSKILL.md",[],[75,26,76,77,78,79,80,81,33,32,82,20,83],"jira sync","sync","user","bulk","push","backlog","local","stories","tickets",{"skillNo":85,"name":86,"nameZh":6,"description":87,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":39},"01M71BD0C5A3A3J7WF4YCGJJPY","jira-create-story","Create a single story ticket in JIRA from a local story file. Use when the user says 'create this story in JIRA' or 'push story to JIRA'.","https:\u002F\u002Fgithub.com\u002FsuperMLdev\u002Fsmart-sdlc\u002Fblob\u002Fmaster\u002Fskills\u002Fintegrations\u002Fjira\u002Fcreate-story\u002FSKILL.md",[],[91,26,20,92,93,79,94,81,95,33,32,96,77],"Story","create story","jira create story","ticket","single","file",{"skillNo":98,"name":99,"nameZh":6,"description":100,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":101,"categories":102,"keywords":103,"publishedAt":39},"01M71BCYVDM32DNS0XJAKTHRZ1","jira-create-epic","Create an epic in JIRA from a planning artifact. Use when the user says 'create this epic in JIRA' or 'push epic to JIRA'.","https:\u002F\u002Fgithub.com\u002FsuperMLdev\u002Fsmart-sdlc\u002Fblob\u002Fmaster\u002Fskills\u002Fintegrations\u002Fjira\u002Fcreate-epic\u002FSKILL.md",[],[20,104,26,105,106,77,32,33,107,79,108],"create epic","EPIC","jira create epic","planning","artifact",{"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":120,"publishedAt":39},"01M71BCWGYW8T1TD07JJ1G12G9","jira-connect","Set up and verify JIRA integration. Use when the user says 'connect to JIRA', 'set up JIRA', or 'configure JIRA'.","https:\u002F\u002Fgithub.com\u002FsuperMLdev\u002Fsmart-sdlc\u002Fblob\u002Fmaster\u002Fskills\u002Fintegrations\u002Fjira\u002Fconnect\u002FSKILL.md",[115],{"categoryNo":116,"categoryName":117,"taxonomyType":118,"taxonomyTypeDesc":119},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[121,26,122,123,124,33,32,125,126,127,128,77],"jira connect","connect","SET","up","configure","verify","jira integration","integration",{"skillNo":130,"name":131,"nameZh":6,"description":132,"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":39},"01M71BCTZ1EW31JHP6AMBHEM9G","jira-conflict-detect","Check if a story is already being worked on by another team member. Use before starting any story implementation.","https:\u002F\u002Fgithub.com\u002FsuperMLdev\u002Fsmart-sdlc\u002Fblob\u002Fmaster\u002Fskills\u002Fintegrations\u002Fjira\u002Fconflict-detect\u002FSKILL.md",[],[136,26,137,138,139,33,140,141,91],"jira conflict detect","detect","conflict","check","team","implementation",{"skillNo":143,"name":144,"nameZh":6,"description":145,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":146,"categories":147,"keywords":148,"publishedAt":39},"01M71BCRX4ZHQ60DXGRAEECHB9","gitlab-create-mr","Create a GitLab Merge Request for the current story branch. Use when the user says 'create an MR', 'open a merge request', or 'ready for review' in a GitLab project.","https:\u002F\u002Fgithub.com\u002FsuperMLdev\u002Fsmart-sdlc\u002Fblob\u002Fmaster\u002Fskills\u002Fintegrations\u002Fgitlab\u002Fcreate-mr\u002FSKILL.md",[],[20,149,150,151,152,37,36,35,153,34,33,32,31,154,28,91,77],"mr","gitlab create mr","create mr","gitlab","project","merge"]