[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M699DEXYFWDGW0BAXJ5QQ377":3,"skill-same:01M699DEXYFWDGW0BAXJ5QQ377":57},{"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":28,"linkOnly":29,"markdownContent":30,"markdownBody":31,"frontMatter":32,"refName":33,"commitSha":34,"skillDirectory":35,"forksCount":36,"repositoryHtmlUrl":37,"repositoryHomepageUrl":38,"ownerHtmlUrl":39,"ownerBlogUrl":40,"ownerDescription":41,"updatedAt":42,"install":43,"resources":56},"01M699DEXYFWDGW0BAXJ5QQ377","merge",null,"Merge changes from the topic branch to the merge base branch. Use when the user wants to merge their session's work back to the base branch.","microsoft\u002Fvscode","microsoft","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F6154722?v=4","01M698VYDXZ6JW5WH3CRV650R8","Microsoft","01M6998NK2WED5M549DX06VBCH",195271,"MIT","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fvscode\u002Fblob\u002Fmain\u002Fsrc\u002Fvs\u002Fsessions\u002Fskills\u002Fmerge\u002FSKILL.md",[],[5,19,20,21,22,23,24,25,26,27],"work","branch","user","session","use","back","base","changes","when","2026-11-10 10:12:30",false,"---\nname: merge\ndescription: Merge changes from the topic branch to the merge base branch. Use when the user wants to merge their session's work back to the base branch.\n---\n\u003C!-- Customize this skill and select save to override its behavior. Delete that copy to restore the built-in behavior. -->\n\n# Merge Changes\n\nMerge the topic branch (checked out in the current worktree) into the merge base branch (checked out in the main worktree). The context block appended to the prompt contains the source branch, target branch, and main worktree path.\n\n## Guidelines\n\n- **Never force-push** (`--force`, `--force-with-lease`) without explicit user approval.\n- **Never skip pre-push hooks** (do not use `--no-verify`).\n- **Never rewrite or drop commits** without asking the user.\n- When in doubt about conflict resolution — ask the user.\n\n## Workflow\n\n### 1. Commit uncommitted changes in the current worktree\n\nCheck for uncommitted changes in the current worktree:\n```\ngit status --porcelain\n```\nIf there are uncommitted changes, use the `\u002Fcommit` skill to commit them before continuing.\n\n### 2. Merge the topic branch into the base branch\n\nUse `git -C \u003Cmain-worktree-path>` to run commands against the main worktree without leaving the current worktree.\n\n```\ngit -C \u003Cmain-worktree-path> merge \u003Ctopic-branch>\n```\n\n### 3. Handle merge conflicts\n\nIf the merge reports conflicts:\n\n3.1. List conflicted files:\n```\ngit -C \u003Cmain-worktree-path> diff --name-only --diff-filter=U\n```\n\n3.2. For each conflicted file, read the file content, resolve the conflict by preserving the intent of both sides, and stage the resolved file:\n```\ngit -C \u003Cmain-worktree-path> add \u003Cresolved-file>\n```\n\n3.3. When in doubt on how to resolve a merge conflict, ask the user for guidance. If the user wants to abort, run:\n```\ngit -C \u003Cmain-worktree-path> merge --abort\n```\n\n3.4. Once all conflicts are resolved and staged, commit the merge:\n```\ngit -C \u003Cmain-worktree-path> commit --no-edit\n```\n\n## Validation\n\nAfter the merge completes, verify the result:\n\n1. Confirm the main worktree is clean:\n```\ngit -C \u003Cmain-worktree-path> status --porcelain\n```\n\n2. Confirm the topic branch is an ancestor of the base branch (i.e. all commits are merged):\n```\ngit -C \u003Cmain-worktree-path> merge-base --is-ancestor \u003Ctopic-branch> HEAD\n```\n","\u003C!-- Customize this skill and select save to override its behavior. Delete that copy to restore the built-in behavior. -->\n\n# Merge Changes\n\nMerge the topic branch (checked out in the current worktree) into the merge base branch (checked out in the main worktree). The context block appended to the prompt contains the source branch, target branch, and main worktree path.\n\n## Guidelines\n\n- **Never force-push** (`--force`, `--force-with-lease`) without explicit user approval.\n- **Never skip pre-push hooks** (do not use `--no-verify`).\n- **Never rewrite or drop commits** without asking the user.\n- When in doubt about conflict resolution — ask the user.\n\n## Workflow\n\n### 1. Commit uncommitted changes in the current worktree\n\nCheck for uncommitted changes in the current worktree:\n```\ngit status --porcelain\n```\nIf there are uncommitted changes, use the `\u002Fcommit` skill to commit them before continuing.\n\n### 2. Merge the topic branch into the base branch\n\nUse `git -C \u003Cmain-worktree-path>` to run commands against the main worktree without leaving the current worktree.\n\n```\ngit -C \u003Cmain-worktree-path> merge \u003Ctopic-branch>\n```\n\n### 3. Handle merge conflicts\n\nIf the merge reports conflicts:\n\n3.1. List conflicted files:\n```\ngit -C \u003Cmain-worktree-path> diff --name-only --diff-filter=U\n```\n\n3.2. For each conflicted file, read the file content, resolve the conflict by preserving the intent of both sides, and stage the resolved file:\n```\ngit -C \u003Cmain-worktree-path> add \u003Cresolved-file>\n```\n\n3.3. When in doubt on how to resolve a merge conflict, ask the user for guidance. If the user wants to abort, run:\n```\ngit -C \u003Cmain-worktree-path> merge --abort\n```\n\n3.4. Once all conflicts are resolved and staged, commit the merge:\n```\ngit -C \u003Cmain-worktree-path> commit --no-edit\n```\n\n## Validation\n\nAfter the merge completes, verify the result:\n\n1. Confirm the main worktree is clean:\n```\ngit -C \u003Cmain-worktree-path> status --porcelain\n```\n\n2. Confirm the topic branch is an ancestor of the base branch (i.e. all commits are merged):\n```\ngit -C \u003Cmain-worktree-path> merge-base --is-ancestor \u003Ctopic-branch> HEAD\n```\n",{"name":5,"description":7},"main","11ba54a90a0ff8720cf47c086f5a9948eef9cf2c","src\u002Fvs\u002Fsessions\u002Fskills\u002Fmerge",43773,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fvscode","https:\u002F\u002Fcode.visualstudio.com","https:\u002F\u002Fgithub.com\u002Fmicrosoft","https:\u002F\u002Fopensource.microsoft.com","Open source projects and samples from Microsoft","2026-11-11 08:47:49",{"source":8,"skillName":5,"commands":44,"prompt":54,"zipAvailable":55},[45,48,51],{"tool":46,"command":47},"npx","npx skills add microsoft\u002Fvscode --skill merge",{"tool":49,"command":50},"bunx","bunx skills add microsoft\u002Fvscode --skill merge",{"tool":52,"command":53},"pnpm","pnpm dlx skills add microsoft\u002Fvscode --skill merge","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fvscode\u002Fblob\u002Fmain\u002Fsrc\u002Fvs\u002Fsessions\u002Fskills\u002Fmerge\u002FSKILL.md",true,[],[58,84,104,117,131,146],{"skillNo":59,"name":60,"nameZh":6,"description":61,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":62,"categories":63,"keywords":64,"publishedAt":28},"01M70H0ANBKZAVEP1NVV4K28M3","sweeper-query","Answer natural-language questions about the VS Code Sweeper's published issue index (index-\u003Cname>.json for microsoft\u002Fvscode and the enrolled family repos) — which issues are agent-ready to implement or plan, what the sweeper proposed for an assignee or area, whether the sweeper knows a report as a duplicate, the highest-value open bugs in a lane — and, for one issue, the review's full record (evidence with file citations, fix brief, proposed comment). Use ONLY when the request explicitly names the sweeper — \"sweeper\", \"vscodesweeper\", \"sweeper-query\", a sweeper verdict, record, brief or index, an agent-ready issue — or asks what \"the sweeper\" found, proposed or knows. Do NOT use for general questions about issues, duplicates, priorities or ranking that do not mention the sweeper. Read-only; discovery only.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fvscode\u002Fblob\u002Fmain\u002F.github\u002Fskills\u002Fsweeper-query\u002FSKILL.md",[],[65,66,67,68,27,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83],"sweeper query","query","sweeper","read","request","which","natural-language","ranking","duplicates","ready","only","fix","plan","open","Citations","brief","issues","code","review",{"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":28},"01M699DRJS4YJCV600Q72SVVWE","update-skills","Create or update repository skills and instructions when major learnings are discovered during a session. Use when the user says \"learn!\", when a significant pattern or pitfall is identified, or when reusable domain knowledge should be captured for future sessions.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fvscode\u002Fblob\u002Fmain\u002Fsrc\u002Fvs\u002Fsessions\u002Fskills\u002Fupdate-skills\u002FSKILL.md",[],[91,92,93,94,95,96,23,22,21,97,98,99,100,101,102,103,27],"update","update skills","pattern","domain","learnings","reusable","instructions","knowledge","repository","learn","create","sessions","for",{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":110,"publishedAt":28},"01M699DPWHZ72B66P82EW31RNE","update-pr","Update the pull request for the current session. Use when the user wants to push new changes to an existing PR.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fvscode\u002Fblob\u002Fmain\u002Fsrc\u002Fvs\u002Fsessions\u002Fskills\u002Fupdate-pr\u002FSKILL.md",[],[91,111,112,26,27,69,113,23,22,21,114,115,116,103],"pr","update pr","Existing","push","pull","pull request",{"skillNo":118,"name":119,"nameZh":6,"description":120,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":121,"categories":122,"keywords":123,"publishedAt":28},"01M699DJMR6CE1MH5XCJZ0GFQ0","sync","Sync the current session branch with its upstream branch, or publish the current session branch to a remote. Use when the user asks to sync a branch, pull latest changes, rebase onto upstream, push current branch, publish branch, or set upstream.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fvscode\u002Fblob\u002Fmain\u002Fsrc\u002Fvs\u002Fsessions\u002Fskills\u002Fsync\u002FSKILL.md",[],[119,124,114,115,125,26,27,126,127,128,129,23,22,21,20,130],"publish","SET","latest","with","remote","upstream","rebase",{"skillNo":132,"name":133,"nameZh":6,"description":134,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":135,"categories":136,"keywords":137,"publishedAt":28},"01M699DGXHX6A2A72X57R6GGHJ","sync-upstream","Update a stale session branch by rebasing onto the latest origin. Use when the upstream has moved significantly and the session needs to catch up, resolving conflicts by preserving upstream changes and adapting session work to fit.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fvscode\u002Fblob\u002Fmain\u002Fsrc\u002Fvs\u002Fsessions\u002Fskills\u002Fsync-upstream\u002FSKILL.md",[],[129,119,138,27,139,140,26,126,141,142,143,144,145,23,22,20,19,91],"sync upstream","catch","catch up","fit","origin","conflicts","stale","up",{"skillNo":147,"name":148,"nameZh":6,"description":149,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":150,"categories":151,"keywords":152,"publishedAt":28},"01M699DD3FAAGVF9XBH1B2SJNY","generate-run-commands","Generate or modify run commands for the current session. Use when the user wants to set up or update run commands that appear in the session's Run button.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fvscode\u002Fblob\u002Fmain\u002Fsrc\u002Fvs\u002Fsessions\u002Fskills\u002Fgenerate-run-commands\u002FSKILL.md",[],[153,154,155,156,125,21,91,103,27,22,23,145],"generate","generate run commands","run","commands"]