@cyanheads/git-mcp-server 2.2.4 → 2.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +69 -25
- package/dist/config/index.d.ts +87 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +7 -3
- package/dist/config/index.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/index.d.ts +6 -0
- package/dist/mcp-server/resources/gitWorkingDir/index.d.ts.map +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/index.js +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/index.js.map +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/logic.d.ts +15 -0
- package/dist/mcp-server/resources/gitWorkingDir/logic.d.ts.map +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/logic.js +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/logic.js.map +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/registration.d.ts +15 -0
- package/dist/mcp-server/resources/gitWorkingDir/registration.d.ts.map +1 -0
- package/dist/mcp-server/resources/gitWorkingDir/registration.js +9 -7
- package/dist/mcp-server/resources/gitWorkingDir/registration.js.map +1 -0
- package/dist/mcp-server/server.d.ts +13 -0
- package/dist/mcp-server/server.d.ts.map +1 -0
- package/dist/mcp-server/server.js +17 -6
- package/dist/mcp-server/server.js.map +1 -0
- package/dist/mcp-server/tools/gitAdd/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitAdd/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitAdd/index.js +1 -0
- package/dist/mcp-server/tools/gitAdd/index.js.map +1 -0
- package/dist/mcp-server/tools/gitAdd/logic.d.ts +167 -0
- package/dist/mcp-server/tools/gitAdd/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitAdd/logic.js +24 -5
- package/dist/mcp-server/tools/gitAdd/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitAdd/registration.d.ts +6 -0
- package/dist/mcp-server/tools/gitAdd/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitAdd/registration.js +5 -2
- package/dist/mcp-server/tools/gitAdd/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitBranch/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitBranch/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitBranch/index.js +1 -0
- package/dist/mcp-server/tools/gitBranch/index.js.map +1 -0
- package/dist/mcp-server/tools/gitBranch/logic.d.ts +175 -0
- package/dist/mcp-server/tools/gitBranch/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitBranch/logic.js +75 -27
- package/dist/mcp-server/tools/gitBranch/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitBranch/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitBranch/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitBranch/registration.js +13 -4
- package/dist/mcp-server/tools/gitBranch/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitCheckout/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitCheckout/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCheckout/index.js +1 -0
- package/dist/mcp-server/tools/gitCheckout/index.js.map +1 -0
- package/dist/mcp-server/tools/gitCheckout/logic.d.ts +184 -0
- package/dist/mcp-server/tools/gitCheckout/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCheckout/logic.js +45 -10
- package/dist/mcp-server/tools/gitCheckout/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitCheckout/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitCheckout/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCheckout/registration.js +12 -3
- package/dist/mcp-server/tools/gitCheckout/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitCherryPick/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitCherryPick/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCherryPick/index.js +1 -0
- package/dist/mcp-server/tools/gitCherryPick/index.js.map +1 -0
- package/dist/mcp-server/tools/gitCherryPick/logic.d.ts +190 -0
- package/dist/mcp-server/tools/gitCherryPick/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCherryPick/logic.js +38 -10
- package/dist/mcp-server/tools/gitCherryPick/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitCherryPick/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitCherryPick/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCherryPick/registration.js +12 -3
- package/dist/mcp-server/tools/gitCherryPick/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitClean/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitClean/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClean/index.js +1 -0
- package/dist/mcp-server/tools/gitClean/index.js.map +1 -0
- package/dist/mcp-server/tools/gitClean/logic.d.ts +187 -0
- package/dist/mcp-server/tools/gitClean/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClean/logic.js +48 -11
- package/dist/mcp-server/tools/gitClean/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitClean/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitClean/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClean/registration.js +12 -3
- package/dist/mcp-server/tools/gitClean/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/index.js +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/index.js.map +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/logic.d.ts +33 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/logic.js +21 -5
- package/dist/mcp-server/tools/gitClearWorkingDir/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClearWorkingDir/registration.js +12 -3
- package/dist/mcp-server/tools/gitClearWorkingDir/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitClone/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitClone/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClone/index.js +1 -0
- package/dist/mcp-server/tools/gitClone/index.js.map +1 -0
- package/dist/mcp-server/tools/gitClone/logic.d.ts +46 -0
- package/dist/mcp-server/tools/gitClone/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClone/logic.js +33 -10
- package/dist/mcp-server/tools/gitClone/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitClone/registration.d.ts +12 -0
- package/dist/mcp-server/tools/gitClone/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitClone/registration.js +13 -5
- package/dist/mcp-server/tools/gitClone/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitCommit/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitCommit/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCommit/index.js +1 -0
- package/dist/mcp-server/tools/gitCommit/index.js.map +1 -0
- package/dist/mcp-server/tools/gitCommit/logic.d.ts +211 -0
- package/dist/mcp-server/tools/gitCommit/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCommit/logic.js +67 -14
- package/dist/mcp-server/tools/gitCommit/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitCommit/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitCommit/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitCommit/registration.js +12 -3
- package/dist/mcp-server/tools/gitCommit/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitDiff/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitDiff/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitDiff/index.js +1 -0
- package/dist/mcp-server/tools/gitDiff/index.js.map +1 -0
- package/dist/mcp-server/tools/gitDiff/logic.d.ts +87 -0
- package/dist/mcp-server/tools/gitDiff/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitDiff/logic.js +59 -15
- package/dist/mcp-server/tools/gitDiff/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitDiff/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitDiff/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitDiff/registration.js +13 -3
- package/dist/mcp-server/tools/gitDiff/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitFetch/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitFetch/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitFetch/index.js +1 -0
- package/dist/mcp-server/tools/gitFetch/index.js.map +1 -0
- package/dist/mcp-server/tools/gitFetch/logic.d.ts +45 -0
- package/dist/mcp-server/tools/gitFetch/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitFetch/logic.js +18 -5
- package/dist/mcp-server/tools/gitFetch/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitFetch/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitFetch/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitFetch/registration.js +12 -3
- package/dist/mcp-server/tools/gitFetch/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitInit/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitInit/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitInit/index.js +1 -0
- package/dist/mcp-server/tools/gitInit/index.js.map +1 -0
- package/dist/mcp-server/tools/gitInit/logic.d.ts +46 -0
- package/dist/mcp-server/tools/gitInit/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitInit/logic.js +73 -21
- package/dist/mcp-server/tools/gitInit/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitInit/registration.d.ts +12 -0
- package/dist/mcp-server/tools/gitInit/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitInit/registration.js +13 -5
- package/dist/mcp-server/tools/gitInit/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitLog/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitLog/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitLog/index.js +1 -0
- package/dist/mcp-server/tools/gitLog/index.js.map +1 -0
- package/dist/mcp-server/tools/gitLog/logic.d.ts +92 -0
- package/dist/mcp-server/tools/gitLog/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitLog/logic.js +84 -26
- package/dist/mcp-server/tools/gitLog/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitLog/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitLog/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitLog/registration.js +12 -3
- package/dist/mcp-server/tools/gitLog/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitMerge/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitMerge/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitMerge/index.js +1 -0
- package/dist/mcp-server/tools/gitMerge/index.js.map +1 -0
- package/dist/mcp-server/tools/gitMerge/logic.d.ts +196 -0
- package/dist/mcp-server/tools/gitMerge/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitMerge/logic.js +44 -11
- package/dist/mcp-server/tools/gitMerge/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitMerge/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitMerge/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitMerge/registration.js +12 -3
- package/dist/mcp-server/tools/gitMerge/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitPull/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitPull/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitPull/index.js +1 -0
- package/dist/mcp-server/tools/gitPull/index.js.map +1 -0
- package/dist/mcp-server/tools/gitPull/logic.d.ts +184 -0
- package/dist/mcp-server/tools/gitPull/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitPull/logic.js +31 -7
- package/dist/mcp-server/tools/gitPull/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitPull/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitPull/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitPull/registration.js +12 -3
- package/dist/mcp-server/tools/gitPull/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitPush/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitPush/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitPush/index.js +1 -0
- package/dist/mcp-server/tools/gitPush/index.js.map +1 -0
- package/dist/mcp-server/tools/gitPush/logic.d.ts +134 -0
- package/dist/mcp-server/tools/gitPush/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitPush/logic.js +28 -9
- package/dist/mcp-server/tools/gitPush/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitPush/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitPush/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitPush/registration.js +12 -3
- package/dist/mcp-server/tools/gitPush/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitRebase/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitRebase/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitRebase/index.js +1 -0
- package/dist/mcp-server/tools/gitRebase/index.js.map +1 -0
- package/dist/mcp-server/tools/gitRebase/logic.d.ts +242 -0
- package/dist/mcp-server/tools/gitRebase/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitRebase/logic.js +44 -10
- package/dist/mcp-server/tools/gitRebase/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitRebase/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitRebase/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitRebase/registration.js +12 -3
- package/dist/mcp-server/tools/gitRebase/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitRemote/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitRemote/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitRemote/index.js +1 -0
- package/dist/mcp-server/tools/gitRemote/index.js.map +1 -0
- package/dist/mcp-server/tools/gitRemote/logic.d.ts +107 -0
- package/dist/mcp-server/tools/gitRemote/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitRemote/logic.js +45 -19
- package/dist/mcp-server/tools/gitRemote/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitRemote/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitRemote/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitRemote/registration.js +12 -3
- package/dist/mcp-server/tools/gitRemote/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitReset/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitReset/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitReset/index.js +1 -0
- package/dist/mcp-server/tools/gitReset/index.js.map +1 -0
- package/dist/mcp-server/tools/gitReset/logic.d.ts +178 -0
- package/dist/mcp-server/tools/gitReset/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitReset/logic.js +24 -7
- package/dist/mcp-server/tools/gitReset/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitReset/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitReset/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitReset/registration.js +12 -3
- package/dist/mcp-server/tools/gitReset/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/index.js +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/index.js.map +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/logic.d.ts +45 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/logic.js +29 -8
- package/dist/mcp-server/tools/gitSetWorkingDir/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitSetWorkingDir/registration.js +12 -3
- package/dist/mcp-server/tools/gitSetWorkingDir/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitShow/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitShow/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitShow/index.js +1 -0
- package/dist/mcp-server/tools/gitShow/index.js.map +1 -0
- package/dist/mcp-server/tools/gitShow/logic.d.ts +39 -0
- package/dist/mcp-server/tools/gitShow/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitShow/logic.js +17 -5
- package/dist/mcp-server/tools/gitShow/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitShow/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitShow/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitShow/registration.js +13 -3
- package/dist/mcp-server/tools/gitShow/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitStash/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitStash/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitStash/index.js +1 -0
- package/dist/mcp-server/tools/gitStash/index.js.map +1 -0
- package/dist/mcp-server/tools/gitStash/logic.d.ts +236 -0
- package/dist/mcp-server/tools/gitStash/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitStash/logic.js +76 -18
- package/dist/mcp-server/tools/gitStash/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitStash/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitStash/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitStash/registration.js +12 -3
- package/dist/mcp-server/tools/gitStash/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitStatus/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitStatus/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitStatus/index.js +1 -0
- package/dist/mcp-server/tools/gitStatus/index.js.map +1 -0
- package/dist/mcp-server/tools/gitStatus/logic.d.ts +115 -0
- package/dist/mcp-server/tools/gitStatus/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitStatus/logic.js +38 -23
- package/dist/mcp-server/tools/gitStatus/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitStatus/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitStatus/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitStatus/registration.js +12 -3
- package/dist/mcp-server/tools/gitStatus/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitTag/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitTag/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitTag/index.js +1 -0
- package/dist/mcp-server/tools/gitTag/index.js.map +1 -0
- package/dist/mcp-server/tools/gitTag/logic.d.ts +121 -0
- package/dist/mcp-server/tools/gitTag/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitTag/logic.js +59 -17
- package/dist/mcp-server/tools/gitTag/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitTag/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitTag/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitTag/registration.js +12 -3
- package/dist/mcp-server/tools/gitTag/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitWorktree/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitWorktree/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitWorktree/index.js +1 -0
- package/dist/mcp-server/tools/gitWorktree/index.js.map +1 -0
- package/dist/mcp-server/tools/gitWorktree/logic.d.ts +218 -0
- package/dist/mcp-server/tools/gitWorktree/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitWorktree/logic.js +61 -17
- package/dist/mcp-server/tools/gitWorktree/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitWorktree/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitWorktree/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitWorktree/registration.js +12 -3
- package/dist/mcp-server/tools/gitWorktree/registration.js.map +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/index.d.ts +6 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/index.js +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/index.js.map +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/logic.d.ts +175 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/logic.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/logic.js +20 -6
- package/dist/mcp-server/tools/gitWrapupInstructions/logic.js.map +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/registration.d.ts +16 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/registration.d.ts.map +1 -0
- package/dist/mcp-server/tools/gitWrapupInstructions/registration.js +12 -3
- package/dist/mcp-server/tools/gitWrapupInstructions/registration.js.map +1 -0
- package/dist/mcp-server/transports/auth/authFactory.d.ts +11 -0
- package/dist/mcp-server/transports/auth/authFactory.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/authFactory.js +1 -0
- package/dist/mcp-server/transports/auth/authFactory.js.map +1 -0
- package/dist/mcp-server/transports/auth/authMiddleware.d.ts +20 -0
- package/dist/mcp-server/transports/auth/authMiddleware.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/authMiddleware.js +1 -0
- package/dist/mcp-server/transports/auth/authMiddleware.js.map +1 -0
- package/dist/mcp-server/transports/auth/index.d.ts +14 -0
- package/dist/mcp-server/transports/auth/index.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/index.js +1 -0
- package/dist/mcp-server/transports/auth/index.js.map +1 -0
- package/dist/mcp-server/transports/auth/lib/authContext.d.ts +34 -0
- package/dist/mcp-server/transports/auth/lib/authContext.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/lib/authContext.js +1 -0
- package/dist/mcp-server/transports/auth/lib/authContext.js.map +1 -0
- package/dist/mcp-server/transports/auth/lib/authTypes.d.ts +13 -0
- package/dist/mcp-server/transports/auth/lib/authTypes.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/lib/authTypes.js +1 -0
- package/dist/mcp-server/transports/auth/lib/authTypes.js.map +1 -0
- package/dist/mcp-server/transports/auth/lib/authUtils.d.ts +19 -0
- package/dist/mcp-server/transports/auth/lib/authUtils.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/lib/authUtils.js +1 -0
- package/dist/mcp-server/transports/auth/lib/authUtils.js.map +1 -0
- package/dist/mcp-server/transports/auth/strategies/authStrategy.d.ts +18 -0
- package/dist/mcp-server/transports/auth/strategies/authStrategy.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/strategies/authStrategy.js +1 -0
- package/dist/mcp-server/transports/auth/strategies/authStrategy.js.map +1 -0
- package/dist/mcp-server/transports/auth/strategies/jwtStrategy.d.ts +8 -0
- package/dist/mcp-server/transports/auth/strategies/jwtStrategy.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/strategies/jwtStrategy.js +5 -0
- package/dist/mcp-server/transports/auth/strategies/jwtStrategy.js.map +1 -0
- package/dist/mcp-server/transports/auth/strategies/oauthStrategy.d.ts +8 -0
- package/dist/mcp-server/transports/auth/strategies/oauthStrategy.d.ts.map +1 -0
- package/dist/mcp-server/transports/auth/strategies/oauthStrategy.js +6 -0
- package/dist/mcp-server/transports/auth/strategies/oauthStrategy.js.map +1 -0
- package/dist/mcp-server/transports/core/baseTransportManager.d.ts +18 -0
- package/dist/mcp-server/transports/core/baseTransportManager.d.ts.map +1 -0
- package/dist/mcp-server/transports/core/baseTransportManager.js +1 -0
- package/dist/mcp-server/transports/core/baseTransportManager.js.map +1 -0
- package/dist/mcp-server/transports/core/honoNodeBridge.d.ts +24 -0
- package/dist/mcp-server/transports/core/honoNodeBridge.d.ts.map +1 -0
- package/dist/mcp-server/transports/core/honoNodeBridge.js +11 -4
- package/dist/mcp-server/transports/core/honoNodeBridge.js.map +1 -0
- package/dist/mcp-server/transports/core/statefulTransportManager.d.ts +32 -0
- package/dist/mcp-server/transports/core/statefulTransportManager.d.ts.map +1 -0
- package/dist/mcp-server/transports/core/statefulTransportManager.js +1 -0
- package/dist/mcp-server/transports/core/statefulTransportManager.js.map +1 -0
- package/dist/mcp-server/transports/core/statelessTransportManager.d.ts +21 -0
- package/dist/mcp-server/transports/core/statelessTransportManager.d.ts.map +1 -0
- package/dist/mcp-server/transports/core/statelessTransportManager.js +1 -0
- package/dist/mcp-server/transports/core/statelessTransportManager.js.map +1 -0
- package/dist/mcp-server/transports/core/transportTypes.d.ts +69 -0
- package/dist/mcp-server/transports/core/transportTypes.d.ts.map +1 -0
- package/dist/mcp-server/transports/core/transportTypes.js +1 -0
- package/dist/mcp-server/transports/core/transportTypes.js.map +1 -0
- package/dist/mcp-server/transports/http/httpErrorHandler.d.ts +22 -0
- package/dist/mcp-server/transports/http/httpErrorHandler.d.ts.map +1 -0
- package/dist/mcp-server/transports/http/httpErrorHandler.js +1 -0
- package/dist/mcp-server/transports/http/httpErrorHandler.js.map +1 -0
- package/dist/mcp-server/transports/http/httpTransport.d.ts +23 -0
- package/dist/mcp-server/transports/http/httpTransport.d.ts.map +1 -0
- package/dist/mcp-server/transports/http/httpTransport.js +29 -10
- package/dist/mcp-server/transports/http/httpTransport.js.map +1 -0
- package/dist/mcp-server/transports/http/httpTypes.d.ts +17 -0
- package/dist/mcp-server/transports/http/httpTypes.d.ts.map +1 -0
- package/dist/mcp-server/transports/http/httpTypes.js +1 -0
- package/dist/mcp-server/transports/http/httpTypes.js.map +1 -0
- package/dist/mcp-server/transports/http/index.d.ts +8 -0
- package/dist/mcp-server/transports/http/index.d.ts.map +1 -0
- package/dist/mcp-server/transports/http/index.js +1 -0
- package/dist/mcp-server/transports/http/index.js.map +1 -0
- package/dist/mcp-server/transports/http/mcpTransportMiddleware.d.ts +27 -0
- package/dist/mcp-server/transports/http/mcpTransportMiddleware.d.ts.map +1 -0
- package/dist/mcp-server/transports/http/mcpTransportMiddleware.js +27 -24
- package/dist/mcp-server/transports/http/mcpTransportMiddleware.js.map +1 -0
- package/dist/mcp-server/transports/stdio/index.d.ts +6 -0
- package/dist/mcp-server/transports/stdio/index.d.ts.map +1 -0
- package/dist/mcp-server/transports/stdio/index.js +1 -0
- package/dist/mcp-server/transports/stdio/index.js.map +1 -0
- package/dist/mcp-server/transports/stdio/stdioTransport.d.ts +43 -0
- package/dist/mcp-server/transports/stdio/stdioTransport.d.ts.map +1 -0
- package/dist/mcp-server/transports/stdio/stdioTransport.js +1 -0
- package/dist/mcp-server/transports/stdio/stdioTransport.js.map +1 -0
- package/dist/types-global/errors.d.ts +122 -0
- package/dist/types-global/errors.d.ts.map +1 -0
- package/dist/types-global/errors.js +1 -0
- package/dist/types-global/errors.js.map +1 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/internal/errorHandler.d.ts +91 -0
- package/dist/utils/internal/errorHandler.d.ts.map +1 -0
- package/dist/utils/internal/errorHandler.js +8 -6
- package/dist/utils/internal/errorHandler.js.map +1 -0
- package/dist/utils/internal/index.d.ts +4 -0
- package/dist/utils/internal/index.d.ts.map +1 -0
- package/dist/utils/internal/index.js +1 -0
- package/dist/utils/internal/index.js.map +1 -0
- package/dist/utils/internal/logger.d.ts +55 -0
- package/dist/utils/internal/logger.d.ts.map +1 -0
- package/dist/utils/internal/logger.js +19 -5
- package/dist/utils/internal/logger.js.map +1 -0
- package/dist/utils/internal/requestContext.d.ts +48 -0
- package/dist/utils/internal/requestContext.d.ts.map +1 -0
- package/dist/utils/internal/requestContext.js +1 -0
- package/dist/utils/internal/requestContext.js.map +1 -0
- package/dist/utils/metrics/index.d.ts +2 -0
- package/dist/utils/metrics/index.d.ts.map +1 -0
- package/dist/utils/metrics/index.js +1 -0
- package/dist/utils/metrics/index.js.map +1 -0
- package/dist/utils/metrics/tokenCounter.d.ts +28 -0
- package/dist/utils/metrics/tokenCounter.d.ts.map +1 -0
- package/dist/utils/metrics/tokenCounter.js +1 -0
- package/dist/utils/metrics/tokenCounter.js.map +1 -0
- package/dist/utils/parsing/dateParser.d.ts +25 -0
- package/dist/utils/parsing/dateParser.d.ts.map +1 -0
- package/dist/utils/parsing/dateParser.js +57 -56
- package/dist/utils/parsing/dateParser.js.map +1 -0
- package/dist/utils/parsing/index.d.ts +3 -0
- package/dist/utils/parsing/index.d.ts.map +1 -0
- package/dist/utils/parsing/index.js +1 -0
- package/dist/utils/parsing/index.js.map +1 -0
- package/dist/utils/parsing/jsonParser.d.ts +83 -0
- package/dist/utils/parsing/jsonParser.d.ts.map +1 -0
- package/dist/utils/parsing/jsonParser.js +85 -45
- package/dist/utils/parsing/jsonParser.js.map +1 -0
- package/dist/utils/security/idGenerator.d.ts +94 -0
- package/dist/utils/security/idGenerator.d.ts.map +1 -0
- package/dist/utils/security/idGenerator.js +9 -2
- package/dist/utils/security/idGenerator.js.map +1 -0
- package/dist/utils/security/index.d.ts +4 -0
- package/dist/utils/security/index.d.ts.map +1 -0
- package/dist/utils/security/index.js +1 -0
- package/dist/utils/security/index.js.map +1 -0
- package/dist/utils/security/rateLimiter.d.ts +93 -0
- package/dist/utils/security/rateLimiter.d.ts.map +1 -0
- package/dist/utils/security/rateLimiter.js +1 -0
- package/dist/utils/security/rateLimiter.js.map +1 -0
- package/dist/utils/security/sanitization.d.ts +181 -0
- package/dist/utils/security/sanitization.d.ts.map +1 -0
- package/dist/utils/security/sanitization.js +6 -5
- package/dist/utils/security/sanitization.js.map +1 -0
- package/package.json +52 -34
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Defines the core logic, schemas, and types for the git_rebase tool.
|
|
3
|
+
* @module src/mcp-server/tools/gitRebase/logic
|
|
4
|
+
*/
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
import { type RequestContext } from "../../../utils/index.js";
|
|
7
|
+
export declare const GitRebaseBaseSchema: z.ZodObject<{
|
|
8
|
+
path: z.ZodDefault<z.ZodString>;
|
|
9
|
+
mode: z.ZodDefault<z.ZodEnum<["start", "continue", "abort", "skip"]>>;
|
|
10
|
+
upstream: z.ZodOptional<z.ZodString>;
|
|
11
|
+
branch: z.ZodOptional<z.ZodString>;
|
|
12
|
+
interactive: z.ZodDefault<z.ZodBoolean>;
|
|
13
|
+
strategy: z.ZodOptional<z.ZodEnum<["recursive", "resolve", "ours", "theirs", "octopus", "subtree"]>>;
|
|
14
|
+
strategyOption: z.ZodOptional<z.ZodString>;
|
|
15
|
+
onto: z.ZodOptional<z.ZodString>;
|
|
16
|
+
}, "strip", z.ZodTypeAny, {
|
|
17
|
+
path: string;
|
|
18
|
+
mode: "abort" | "start" | "continue" | "skip";
|
|
19
|
+
interactive: boolean;
|
|
20
|
+
branch?: string | undefined;
|
|
21
|
+
strategy?: "recursive" | "resolve" | "ours" | "theirs" | "octopus" | "subtree" | undefined;
|
|
22
|
+
upstream?: string | undefined;
|
|
23
|
+
strategyOption?: string | undefined;
|
|
24
|
+
onto?: string | undefined;
|
|
25
|
+
}, {
|
|
26
|
+
path?: string | undefined;
|
|
27
|
+
mode?: "abort" | "start" | "continue" | "skip" | undefined;
|
|
28
|
+
branch?: string | undefined;
|
|
29
|
+
strategy?: "recursive" | "resolve" | "ours" | "theirs" | "octopus" | "subtree" | undefined;
|
|
30
|
+
upstream?: string | undefined;
|
|
31
|
+
interactive?: boolean | undefined;
|
|
32
|
+
strategyOption?: string | undefined;
|
|
33
|
+
onto?: string | undefined;
|
|
34
|
+
}>;
|
|
35
|
+
export declare const GitRebaseInputSchema: z.ZodEffects<z.ZodObject<{
|
|
36
|
+
path: z.ZodDefault<z.ZodString>;
|
|
37
|
+
mode: z.ZodDefault<z.ZodEnum<["start", "continue", "abort", "skip"]>>;
|
|
38
|
+
upstream: z.ZodOptional<z.ZodString>;
|
|
39
|
+
branch: z.ZodOptional<z.ZodString>;
|
|
40
|
+
interactive: z.ZodDefault<z.ZodBoolean>;
|
|
41
|
+
strategy: z.ZodOptional<z.ZodEnum<["recursive", "resolve", "ours", "theirs", "octopus", "subtree"]>>;
|
|
42
|
+
strategyOption: z.ZodOptional<z.ZodString>;
|
|
43
|
+
onto: z.ZodOptional<z.ZodString>;
|
|
44
|
+
}, "strip", z.ZodTypeAny, {
|
|
45
|
+
path: string;
|
|
46
|
+
mode: "abort" | "start" | "continue" | "skip";
|
|
47
|
+
interactive: boolean;
|
|
48
|
+
branch?: string | undefined;
|
|
49
|
+
strategy?: "recursive" | "resolve" | "ours" | "theirs" | "octopus" | "subtree" | undefined;
|
|
50
|
+
upstream?: string | undefined;
|
|
51
|
+
strategyOption?: string | undefined;
|
|
52
|
+
onto?: string | undefined;
|
|
53
|
+
}, {
|
|
54
|
+
path?: string | undefined;
|
|
55
|
+
mode?: "abort" | "start" | "continue" | "skip" | undefined;
|
|
56
|
+
branch?: string | undefined;
|
|
57
|
+
strategy?: "recursive" | "resolve" | "ours" | "theirs" | "octopus" | "subtree" | undefined;
|
|
58
|
+
upstream?: string | undefined;
|
|
59
|
+
interactive?: boolean | undefined;
|
|
60
|
+
strategyOption?: string | undefined;
|
|
61
|
+
onto?: string | undefined;
|
|
62
|
+
}>, {
|
|
63
|
+
path: string;
|
|
64
|
+
mode: "abort" | "start" | "continue" | "skip";
|
|
65
|
+
interactive: boolean;
|
|
66
|
+
branch?: string | undefined;
|
|
67
|
+
strategy?: "recursive" | "resolve" | "ours" | "theirs" | "octopus" | "subtree" | undefined;
|
|
68
|
+
upstream?: string | undefined;
|
|
69
|
+
strategyOption?: string | undefined;
|
|
70
|
+
onto?: string | undefined;
|
|
71
|
+
}, {
|
|
72
|
+
path?: string | undefined;
|
|
73
|
+
mode?: "abort" | "start" | "continue" | "skip" | undefined;
|
|
74
|
+
branch?: string | undefined;
|
|
75
|
+
strategy?: "recursive" | "resolve" | "ours" | "theirs" | "octopus" | "subtree" | undefined;
|
|
76
|
+
upstream?: string | undefined;
|
|
77
|
+
interactive?: boolean | undefined;
|
|
78
|
+
strategyOption?: string | undefined;
|
|
79
|
+
onto?: string | undefined;
|
|
80
|
+
}>;
|
|
81
|
+
export declare const GitRebaseOutputSchema: z.ZodObject<{
|
|
82
|
+
success: z.ZodBoolean;
|
|
83
|
+
message: z.ZodString;
|
|
84
|
+
rebaseCompleted: z.ZodOptional<z.ZodBoolean>;
|
|
85
|
+
needsManualAction: z.ZodOptional<z.ZodBoolean>;
|
|
86
|
+
status: z.ZodOptional<z.ZodObject<{
|
|
87
|
+
current_branch: z.ZodNullable<z.ZodString>;
|
|
88
|
+
staged_changes: z.ZodObject<{
|
|
89
|
+
Added: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
90
|
+
Modified: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
91
|
+
Deleted: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
92
|
+
Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
93
|
+
Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
94
|
+
TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
95
|
+
}, "strip", z.ZodTypeAny, {
|
|
96
|
+
Added?: string[] | undefined;
|
|
97
|
+
Modified?: string[] | undefined;
|
|
98
|
+
Deleted?: string[] | undefined;
|
|
99
|
+
Renamed?: string[] | undefined;
|
|
100
|
+
Copied?: string[] | undefined;
|
|
101
|
+
TypeChanged?: string[] | undefined;
|
|
102
|
+
}, {
|
|
103
|
+
Added?: string[] | undefined;
|
|
104
|
+
Modified?: string[] | undefined;
|
|
105
|
+
Deleted?: string[] | undefined;
|
|
106
|
+
Renamed?: string[] | undefined;
|
|
107
|
+
Copied?: string[] | undefined;
|
|
108
|
+
TypeChanged?: string[] | undefined;
|
|
109
|
+
}>;
|
|
110
|
+
unstaged_changes: z.ZodObject<{
|
|
111
|
+
Added: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
112
|
+
Modified: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
113
|
+
Deleted: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
114
|
+
Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
115
|
+
Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
116
|
+
TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
117
|
+
}, "strip", z.ZodTypeAny, {
|
|
118
|
+
Added?: string[] | undefined;
|
|
119
|
+
Modified?: string[] | undefined;
|
|
120
|
+
Deleted?: string[] | undefined;
|
|
121
|
+
Renamed?: string[] | undefined;
|
|
122
|
+
Copied?: string[] | undefined;
|
|
123
|
+
TypeChanged?: string[] | undefined;
|
|
124
|
+
}, {
|
|
125
|
+
Added?: string[] | undefined;
|
|
126
|
+
Modified?: string[] | undefined;
|
|
127
|
+
Deleted?: string[] | undefined;
|
|
128
|
+
Renamed?: string[] | undefined;
|
|
129
|
+
Copied?: string[] | undefined;
|
|
130
|
+
TypeChanged?: string[] | undefined;
|
|
131
|
+
}>;
|
|
132
|
+
untracked_files: z.ZodArray<z.ZodString, "many">;
|
|
133
|
+
conflicted_files: z.ZodArray<z.ZodString, "many">;
|
|
134
|
+
is_clean: z.ZodBoolean;
|
|
135
|
+
}, "strip", z.ZodTypeAny, {
|
|
136
|
+
current_branch: string | null;
|
|
137
|
+
staged_changes: {
|
|
138
|
+
Added?: string[] | undefined;
|
|
139
|
+
Modified?: string[] | undefined;
|
|
140
|
+
Deleted?: string[] | undefined;
|
|
141
|
+
Renamed?: string[] | undefined;
|
|
142
|
+
Copied?: string[] | undefined;
|
|
143
|
+
TypeChanged?: string[] | undefined;
|
|
144
|
+
};
|
|
145
|
+
unstaged_changes: {
|
|
146
|
+
Added?: string[] | undefined;
|
|
147
|
+
Modified?: string[] | undefined;
|
|
148
|
+
Deleted?: string[] | undefined;
|
|
149
|
+
Renamed?: string[] | undefined;
|
|
150
|
+
Copied?: string[] | undefined;
|
|
151
|
+
TypeChanged?: string[] | undefined;
|
|
152
|
+
};
|
|
153
|
+
untracked_files: string[];
|
|
154
|
+
conflicted_files: string[];
|
|
155
|
+
is_clean: boolean;
|
|
156
|
+
}, {
|
|
157
|
+
current_branch: string | null;
|
|
158
|
+
staged_changes: {
|
|
159
|
+
Added?: string[] | undefined;
|
|
160
|
+
Modified?: string[] | undefined;
|
|
161
|
+
Deleted?: string[] | undefined;
|
|
162
|
+
Renamed?: string[] | undefined;
|
|
163
|
+
Copied?: string[] | undefined;
|
|
164
|
+
TypeChanged?: string[] | undefined;
|
|
165
|
+
};
|
|
166
|
+
unstaged_changes: {
|
|
167
|
+
Added?: string[] | undefined;
|
|
168
|
+
Modified?: string[] | undefined;
|
|
169
|
+
Deleted?: string[] | undefined;
|
|
170
|
+
Renamed?: string[] | undefined;
|
|
171
|
+
Copied?: string[] | undefined;
|
|
172
|
+
TypeChanged?: string[] | undefined;
|
|
173
|
+
};
|
|
174
|
+
untracked_files: string[];
|
|
175
|
+
conflicted_files: string[];
|
|
176
|
+
is_clean: boolean;
|
|
177
|
+
}>>;
|
|
178
|
+
}, "strip", z.ZodTypeAny, {
|
|
179
|
+
message: string;
|
|
180
|
+
success: boolean;
|
|
181
|
+
status?: {
|
|
182
|
+
current_branch: string | null;
|
|
183
|
+
staged_changes: {
|
|
184
|
+
Added?: string[] | undefined;
|
|
185
|
+
Modified?: string[] | undefined;
|
|
186
|
+
Deleted?: string[] | undefined;
|
|
187
|
+
Renamed?: string[] | undefined;
|
|
188
|
+
Copied?: string[] | undefined;
|
|
189
|
+
TypeChanged?: string[] | undefined;
|
|
190
|
+
};
|
|
191
|
+
unstaged_changes: {
|
|
192
|
+
Added?: string[] | undefined;
|
|
193
|
+
Modified?: string[] | undefined;
|
|
194
|
+
Deleted?: string[] | undefined;
|
|
195
|
+
Renamed?: string[] | undefined;
|
|
196
|
+
Copied?: string[] | undefined;
|
|
197
|
+
TypeChanged?: string[] | undefined;
|
|
198
|
+
};
|
|
199
|
+
untracked_files: string[];
|
|
200
|
+
conflicted_files: string[];
|
|
201
|
+
is_clean: boolean;
|
|
202
|
+
} | undefined;
|
|
203
|
+
rebaseCompleted?: boolean | undefined;
|
|
204
|
+
needsManualAction?: boolean | undefined;
|
|
205
|
+
}, {
|
|
206
|
+
message: string;
|
|
207
|
+
success: boolean;
|
|
208
|
+
status?: {
|
|
209
|
+
current_branch: string | null;
|
|
210
|
+
staged_changes: {
|
|
211
|
+
Added?: string[] | undefined;
|
|
212
|
+
Modified?: string[] | undefined;
|
|
213
|
+
Deleted?: string[] | undefined;
|
|
214
|
+
Renamed?: string[] | undefined;
|
|
215
|
+
Copied?: string[] | undefined;
|
|
216
|
+
TypeChanged?: string[] | undefined;
|
|
217
|
+
};
|
|
218
|
+
unstaged_changes: {
|
|
219
|
+
Added?: string[] | undefined;
|
|
220
|
+
Modified?: string[] | undefined;
|
|
221
|
+
Deleted?: string[] | undefined;
|
|
222
|
+
Renamed?: string[] | undefined;
|
|
223
|
+
Copied?: string[] | undefined;
|
|
224
|
+
TypeChanged?: string[] | undefined;
|
|
225
|
+
};
|
|
226
|
+
untracked_files: string[];
|
|
227
|
+
conflicted_files: string[];
|
|
228
|
+
is_clean: boolean;
|
|
229
|
+
} | undefined;
|
|
230
|
+
rebaseCompleted?: boolean | undefined;
|
|
231
|
+
needsManualAction?: boolean | undefined;
|
|
232
|
+
}>;
|
|
233
|
+
export type GitRebaseInput = z.infer<typeof GitRebaseInputSchema>;
|
|
234
|
+
export type GitRebaseOutput = z.infer<typeof GitRebaseOutputSchema>;
|
|
235
|
+
/**
|
|
236
|
+
* 4. IMPLEMENT the core logic function.
|
|
237
|
+
* @throws {McpError} If the logic encounters an unrecoverable issue.
|
|
238
|
+
*/
|
|
239
|
+
export declare function gitRebaseLogic(params: GitRebaseInput, context: RequestContext & {
|
|
240
|
+
getWorkingDirectory: () => string | undefined;
|
|
241
|
+
}): Promise<GitRebaseOutput>;
|
|
242
|
+
//# sourceMappingURL=logic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitRebase/logic.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAEL,KAAK,cAAc,EAEpB,MAAM,yBAAyB,CAAC;AAOjC,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+B9B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOhC,CAAC;AAGF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAchC,CAAC;AAGH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;GAGG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,cAAc,GAAG;IAAE,mBAAmB,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1E,OAAO,CAAC,eAAe,CAAC,CA+C1B"}
|
|
@@ -5,19 +5,40 @@
|
|
|
5
5
|
import { execFile } from "child_process";
|
|
6
6
|
import { promisify } from "util";
|
|
7
7
|
import { z } from "zod";
|
|
8
|
-
import { logger, sanitization } from "../../../utils/index.js";
|
|
8
|
+
import { logger, sanitization, } from "../../../utils/index.js";
|
|
9
9
|
import { McpError, BaseErrorCode } from "../../../types-global/errors.js";
|
|
10
|
+
import { getGitStatus, GitStatusOutputSchema } from "../gitStatus/logic.js";
|
|
10
11
|
const execFileAsync = promisify(execFile);
|
|
11
12
|
// 1. DEFINE the Zod input schema.
|
|
12
13
|
export const GitRebaseBaseSchema = z.object({
|
|
13
14
|
path: z.string().default(".").describe("Path to the local Git repository."),
|
|
14
|
-
mode: z
|
|
15
|
-
|
|
15
|
+
mode: z
|
|
16
|
+
.enum(["start", "continue", "abort", "skip"])
|
|
17
|
+
.default("start")
|
|
18
|
+
.describe("Rebase operation mode."),
|
|
19
|
+
upstream: z
|
|
20
|
+
.string()
|
|
21
|
+
.min(1)
|
|
22
|
+
.optional()
|
|
23
|
+
.describe("The upstream branch or commit to rebase onto."),
|
|
16
24
|
branch: z.string().min(1).optional().describe("The branch to rebase."),
|
|
17
|
-
interactive: z
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
25
|
+
interactive: z
|
|
26
|
+
.boolean()
|
|
27
|
+
.default(false)
|
|
28
|
+
.describe("Perform an interactive rebase."),
|
|
29
|
+
strategy: z
|
|
30
|
+
.enum(["recursive", "resolve", "ours", "theirs", "octopus", "subtree"])
|
|
31
|
+
.optional()
|
|
32
|
+
.describe("The merge strategy to use."),
|
|
33
|
+
strategyOption: z
|
|
34
|
+
.string()
|
|
35
|
+
.optional()
|
|
36
|
+
.describe("Pass a specific option to the merge strategy."),
|
|
37
|
+
onto: z
|
|
38
|
+
.string()
|
|
39
|
+
.min(1)
|
|
40
|
+
.optional()
|
|
41
|
+
.describe("Rebase onto a specific commit/branch instead of the upstream's base."),
|
|
21
42
|
});
|
|
22
43
|
export const GitRebaseInputSchema = GitRebaseBaseSchema.refine((data) => !(data.mode === "start" && !data.interactive && !data.upstream), {
|
|
23
44
|
message: "An 'upstream' branch/commit is required for 'start' mode unless 'interactive' is true.",
|
|
@@ -27,8 +48,15 @@ export const GitRebaseInputSchema = GitRebaseBaseSchema.refine((data) => !(data.
|
|
|
27
48
|
export const GitRebaseOutputSchema = z.object({
|
|
28
49
|
success: z.boolean().describe("Indicates if the command was successful."),
|
|
29
50
|
message: z.string().describe("A summary message of the result."),
|
|
30
|
-
rebaseCompleted: z
|
|
31
|
-
|
|
51
|
+
rebaseCompleted: z
|
|
52
|
+
.boolean()
|
|
53
|
+
.optional()
|
|
54
|
+
.describe("True if the rebase finished successfully."),
|
|
55
|
+
needsManualAction: z
|
|
56
|
+
.boolean()
|
|
57
|
+
.optional()
|
|
58
|
+
.describe("True if conflicts or interactive steps require user input."),
|
|
59
|
+
status: GitStatusOutputSchema.optional().describe("The status of the repository after the rebase operation."),
|
|
32
60
|
});
|
|
33
61
|
/**
|
|
34
62
|
* 4. IMPLEMENT the core logic function.
|
|
@@ -62,13 +90,19 @@ export async function gitRebaseLogic(params, context) {
|
|
|
62
90
|
args.push(`--${params.mode}`);
|
|
63
91
|
break;
|
|
64
92
|
}
|
|
65
|
-
logger.debug(`Executing command: git ${args.join(" ")}`, {
|
|
93
|
+
logger.debug(`Executing command: git ${args.join(" ")}`, {
|
|
94
|
+
...context,
|
|
95
|
+
operation,
|
|
96
|
+
});
|
|
66
97
|
const { stdout, stderr } = await execFileAsync("git", args);
|
|
67
98
|
const output = stdout + stderr;
|
|
99
|
+
const status = await getGitStatus({ path: targetPath }, context);
|
|
68
100
|
return {
|
|
69
101
|
success: true,
|
|
70
102
|
message: `Rebase ${params.mode} executed successfully.`,
|
|
71
103
|
rebaseCompleted: /successfully rebased/i.test(output),
|
|
72
104
|
needsManualAction: /conflict|stopped at|edit/i.test(output),
|
|
105
|
+
status,
|
|
73
106
|
};
|
|
74
107
|
}
|
|
108
|
+
//# sourceMappingURL=logic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitRebase/logic.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Handles registration and error handling for the git_rebase tool.
|
|
3
|
+
* @module src/mcp-server/tools/gitRebase/registration
|
|
4
|
+
*/
|
|
5
|
+
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
6
|
+
import { RequestContext } from "../../../utils/index.js";
|
|
7
|
+
export type GetWorkingDirectoryFn = (sessionId: string | undefined) => string | undefined;
|
|
8
|
+
export type GetSessionIdFn = (context: RequestContext) => string | undefined;
|
|
9
|
+
/**
|
|
10
|
+
* Registers the git_rebase tool with the MCP server instance.
|
|
11
|
+
* @param server The MCP server instance.
|
|
12
|
+
* @param getWorkingDirectory Function to get the session's working directory.
|
|
13
|
+
* @param getSessionId Function to get the session ID from context.
|
|
14
|
+
*/
|
|
15
|
+
export declare const registerGitRebaseTool: (server: McpServer, getWorkingDirectory: GetWorkingDirectoryFn, getSessionId: GetSessionIdFn) => Promise<void>;
|
|
16
|
+
//# sourceMappingURL=registration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitRebase/registration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAGL,cAAc,EAEf,MAAM,yBAAyB,CAAC;AASjC,MAAM,MAAM,qBAAqB,GAAG,CAClC,SAAS,EAAE,MAAM,GAAG,SAAS,KAC1B,MAAM,GAAG,SAAS,CAAC;AACxB,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,cAAc,KAAK,MAAM,GAAG,SAAS,CAAC;AAM7E;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAChC,QAAQ,SAAS,EACjB,qBAAqB,qBAAqB,EAC1C,cAAc,cAAc,KAC3B,OAAO,CAAC,IAAI,CAgEd,CAAC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @fileoverview Handles registration and error handling for the git_rebase tool.
|
|
3
3
|
* @module src/mcp-server/tools/gitRebase/registration
|
|
4
4
|
*/
|
|
5
|
-
import { ErrorHandler, logger, requestContextService } from "../../../utils/index.js";
|
|
5
|
+
import { ErrorHandler, logger, requestContextService, } from "../../../utils/index.js";
|
|
6
6
|
import { gitRebaseLogic, GitRebaseOutputSchema, GitRebaseBaseSchema, } from "./logic.js";
|
|
7
7
|
const TOOL_NAME = "git_rebase";
|
|
8
8
|
const TOOL_DESCRIPTION = "Reapplies commits on top of another base tip. Supports starting a rebase (standard or interactive), continuing, aborting, or skipping steps in an ongoing rebase. Returns results as a JSON object.";
|
|
@@ -39,11 +39,19 @@ export const registerGitRebaseTool = async (server, getWorkingDirectory, getSess
|
|
|
39
39
|
});
|
|
40
40
|
return {
|
|
41
41
|
structuredContent: result,
|
|
42
|
-
content: [
|
|
42
|
+
content: [
|
|
43
|
+
{
|
|
44
|
+
type: "text",
|
|
45
|
+
text: `Success: ${JSON.stringify(result, null, 2)}`,
|
|
46
|
+
},
|
|
47
|
+
],
|
|
43
48
|
};
|
|
44
49
|
}
|
|
45
50
|
catch (error) {
|
|
46
|
-
logger.error(`Error in ${TOOL_NAME} handler`, {
|
|
51
|
+
logger.error(`Error in ${TOOL_NAME} handler`, {
|
|
52
|
+
error,
|
|
53
|
+
...handlerContext,
|
|
54
|
+
});
|
|
47
55
|
const mcpError = ErrorHandler.handleError(error, {
|
|
48
56
|
operation: `tool:${TOOL_NAME}`,
|
|
49
57
|
context: handlerContext,
|
|
@@ -62,3 +70,4 @@ export const registerGitRebaseTool = async (server, getWorkingDirectory, getSess
|
|
|
62
70
|
});
|
|
63
71
|
logger.info(`Tool '${TOOL_NAME}' registered successfully.`, context);
|
|
64
72
|
};
|
|
73
|
+
//# sourceMappingURL=registration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registration.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitRebase/registration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,YAAY,EACZ,MAAM,EAEN,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,cAAc,EAEd,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAOpB,MAAM,SAAS,GAAG,YAAY,CAAC;AAC/B,MAAM,gBAAgB,GACpB,qMAAqM,CAAC;AAExM;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EACxC,MAAiB,EACjB,mBAA0C,EAC1C,YAA4B,EACb,EAAE;IACjB,MAAM,SAAS,GAAG,uBAAuB,CAAC;IAC1C,MAAM,OAAO,GAAG,qBAAqB,CAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAE1E,MAAM,CAAC,YAAY,CACjB,SAAS,EACT;QACE,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,gBAAgB;QAC7B,WAAW,EAAE,mBAAmB,CAAC,KAAK;QACtC,YAAY,EAAE,qBAAqB,CAAC,KAAK;QACzC,WAAW,EAAE;YACX,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,IAAI,EAAE,+BAA+B;YACtD,cAAc,EAAE,KAAK;YACrB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAAsB,EAAE,WAAoC,EAAE,EAAE;QACrE,MAAM,cAAc,GAAG,qBAAqB,CAAC,oBAAoB,CAAC;YAChE,QAAQ,EAAE,SAAS;YACnB,aAAa,EAAE,WAAW;SAC3B,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE;gBAC1C,GAAG,cAAc;gBACjB,mBAAmB,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC;aAC1D,CAAC,CAAC;YAEH,OAAO;gBACL,iBAAiB,EAAE,MAAM;gBACzB,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,YAAY,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;qBACpD;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,YAAY,SAAS,UAAU,EAAE;gBAC5C,KAAK;gBACL,GAAG,cAAc;aAClB,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE;gBAC/C,SAAS,EAAE,QAAQ,SAAS,EAAE;gBAC9B,OAAO,EAAE,cAAc;gBACvB,KAAK,EAAE,MAAM;aACd,CAAa,CAAC;YAEf,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC/D,iBAAiB,EAAE;oBACjB,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,OAAO,EAAE,QAAQ,CAAC,OAAO;iBAC1B;aACF,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,SAAS,SAAS,4BAA4B,EAAE,OAAO,CAAC,CAAC;AACvE,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitRemote/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitRemote/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Defines the core logic, schemas, and types for the git_remote tool.
|
|
3
|
+
* @module src/mcp-server/tools/gitRemote/logic
|
|
4
|
+
*/
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
import { type RequestContext } from "../../../utils/index.js";
|
|
7
|
+
export declare const GitRemoteBaseSchema: z.ZodObject<{
|
|
8
|
+
path: z.ZodDefault<z.ZodString>;
|
|
9
|
+
mode: z.ZodEnum<["list", "add", "remove", "show"]>;
|
|
10
|
+
name: z.ZodOptional<z.ZodString>;
|
|
11
|
+
url: z.ZodOptional<z.ZodString>;
|
|
12
|
+
}, "strip", z.ZodTypeAny, {
|
|
13
|
+
path: string;
|
|
14
|
+
mode: "add" | "list" | "show" | "remove";
|
|
15
|
+
url?: string | undefined;
|
|
16
|
+
name?: string | undefined;
|
|
17
|
+
}, {
|
|
18
|
+
mode: "add" | "list" | "show" | "remove";
|
|
19
|
+
path?: string | undefined;
|
|
20
|
+
url?: string | undefined;
|
|
21
|
+
name?: string | undefined;
|
|
22
|
+
}>;
|
|
23
|
+
export declare const GitRemoteInputSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
24
|
+
path: z.ZodDefault<z.ZodString>;
|
|
25
|
+
mode: z.ZodEnum<["list", "add", "remove", "show"]>;
|
|
26
|
+
name: z.ZodOptional<z.ZodString>;
|
|
27
|
+
url: z.ZodOptional<z.ZodString>;
|
|
28
|
+
}, "strip", z.ZodTypeAny, {
|
|
29
|
+
path: string;
|
|
30
|
+
mode: "add" | "list" | "show" | "remove";
|
|
31
|
+
url?: string | undefined;
|
|
32
|
+
name?: string | undefined;
|
|
33
|
+
}, {
|
|
34
|
+
mode: "add" | "list" | "show" | "remove";
|
|
35
|
+
path?: string | undefined;
|
|
36
|
+
url?: string | undefined;
|
|
37
|
+
name?: string | undefined;
|
|
38
|
+
}>, {
|
|
39
|
+
path: string;
|
|
40
|
+
mode: "add" | "list" | "show" | "remove";
|
|
41
|
+
url?: string | undefined;
|
|
42
|
+
name?: string | undefined;
|
|
43
|
+
}, {
|
|
44
|
+
mode: "add" | "list" | "show" | "remove";
|
|
45
|
+
path?: string | undefined;
|
|
46
|
+
url?: string | undefined;
|
|
47
|
+
name?: string | undefined;
|
|
48
|
+
}>, {
|
|
49
|
+
path: string;
|
|
50
|
+
mode: "add" | "list" | "show" | "remove";
|
|
51
|
+
url?: string | undefined;
|
|
52
|
+
name?: string | undefined;
|
|
53
|
+
}, {
|
|
54
|
+
mode: "add" | "list" | "show" | "remove";
|
|
55
|
+
path?: string | undefined;
|
|
56
|
+
url?: string | undefined;
|
|
57
|
+
name?: string | undefined;
|
|
58
|
+
}>;
|
|
59
|
+
export declare const GitRemoteOutputSchema: z.ZodObject<{
|
|
60
|
+
success: z.ZodBoolean;
|
|
61
|
+
mode: z.ZodString;
|
|
62
|
+
message: z.ZodOptional<z.ZodString>;
|
|
63
|
+
remotes: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
64
|
+
name: z.ZodString;
|
|
65
|
+
fetchUrl: z.ZodString;
|
|
66
|
+
pushUrl: z.ZodString;
|
|
67
|
+
}, "strip", z.ZodTypeAny, {
|
|
68
|
+
name: string;
|
|
69
|
+
fetchUrl: string;
|
|
70
|
+
pushUrl: string;
|
|
71
|
+
}, {
|
|
72
|
+
name: string;
|
|
73
|
+
fetchUrl: string;
|
|
74
|
+
pushUrl: string;
|
|
75
|
+
}>, "many">>;
|
|
76
|
+
details: z.ZodOptional<z.ZodString>;
|
|
77
|
+
}, "strip", z.ZodTypeAny, {
|
|
78
|
+
success: boolean;
|
|
79
|
+
mode: string;
|
|
80
|
+
message?: string | undefined;
|
|
81
|
+
details?: string | undefined;
|
|
82
|
+
remotes?: {
|
|
83
|
+
name: string;
|
|
84
|
+
fetchUrl: string;
|
|
85
|
+
pushUrl: string;
|
|
86
|
+
}[] | undefined;
|
|
87
|
+
}, {
|
|
88
|
+
success: boolean;
|
|
89
|
+
mode: string;
|
|
90
|
+
message?: string | undefined;
|
|
91
|
+
details?: string | undefined;
|
|
92
|
+
remotes?: {
|
|
93
|
+
name: string;
|
|
94
|
+
fetchUrl: string;
|
|
95
|
+
pushUrl: string;
|
|
96
|
+
}[] | undefined;
|
|
97
|
+
}>;
|
|
98
|
+
export type GitRemoteInput = z.infer<typeof GitRemoteInputSchema>;
|
|
99
|
+
export type GitRemoteOutput = z.infer<typeof GitRemoteOutputSchema>;
|
|
100
|
+
/**
|
|
101
|
+
* 4. IMPLEMENT the core logic function.
|
|
102
|
+
* @throws {McpError} If the logic encounters an unrecoverable issue.
|
|
103
|
+
*/
|
|
104
|
+
export declare function gitRemoteLogic(params: GitRemoteInput, context: RequestContext & {
|
|
105
|
+
getWorkingDirectory: () => string | undefined;
|
|
106
|
+
}): Promise<GitRemoteOutput>;
|
|
107
|
+
//# sourceMappingURL=logic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitRemote/logic.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAEL,KAAK,cAAc,EAEpB,MAAM,yBAAyB,CAAC;AAMjC,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;EAQ9B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYhC,CAAC;AASF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAShC,CAAC;AAGH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;GAGG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,cAAc,GAAG;IAAE,mBAAmB,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1E,OAAO,CAAC,eAAe,CAAC,CA8E1B"}
|
|
@@ -5,20 +5,23 @@
|
|
|
5
5
|
import { execFile } from "child_process";
|
|
6
6
|
import { promisify } from "util";
|
|
7
7
|
import { z } from "zod";
|
|
8
|
-
import { logger, sanitization } from "../../../utils/index.js";
|
|
8
|
+
import { logger, sanitization, } from "../../../utils/index.js";
|
|
9
9
|
import { McpError, BaseErrorCode } from "../../../types-global/errors.js";
|
|
10
10
|
const execFileAsync = promisify(execFile);
|
|
11
11
|
// 1. DEFINE the Zod input schema.
|
|
12
12
|
export const GitRemoteBaseSchema = z.object({
|
|
13
13
|
path: z.string().default(".").describe("Path to the Git repository."),
|
|
14
14
|
mode: z.enum(["list", "add", "remove", "show"]).describe("Operation mode."),
|
|
15
|
-
name: z
|
|
15
|
+
name: z
|
|
16
|
+
.string()
|
|
17
|
+
.optional()
|
|
18
|
+
.describe("Remote name (required for 'add', 'remove', 'show')."),
|
|
16
19
|
url: z.string().optional().describe("Remote URL (required for 'add')."),
|
|
17
20
|
});
|
|
18
|
-
export const GitRemoteInputSchema = GitRemoteBaseSchema.refine(data => !(data.mode ===
|
|
21
|
+
export const GitRemoteInputSchema = GitRemoteBaseSchema.refine((data) => !(data.mode === "add" && (!data.name || !data.url)), {
|
|
19
22
|
message: "Remote 'name' and 'url' are required for 'add' mode.",
|
|
20
23
|
path: ["name", "url"],
|
|
21
|
-
}).refine(data => !((data.mode ===
|
|
24
|
+
}).refine((data) => !((data.mode === "remove" || data.mode === "show") && !data.name), {
|
|
22
25
|
message: "Remote 'name' is required for 'remove' or 'show' mode.",
|
|
23
26
|
path: ["name"],
|
|
24
27
|
});
|
|
@@ -32,7 +35,10 @@ export const GitRemoteOutputSchema = z.object({
|
|
|
32
35
|
success: z.boolean().describe("Indicates if the command was successful."),
|
|
33
36
|
mode: z.string().describe("The mode of operation that was performed."),
|
|
34
37
|
message: z.string().optional().describe("A summary message of the result."),
|
|
35
|
-
remotes: z
|
|
38
|
+
remotes: z
|
|
39
|
+
.array(RemoteInfoSchema)
|
|
40
|
+
.optional()
|
|
41
|
+
.describe("A list of remotes for the 'list' mode."),
|
|
36
42
|
details: z.string().optional().describe("Details for the 'show' mode."),
|
|
37
43
|
});
|
|
38
44
|
/**
|
|
@@ -62,28 +68,48 @@ export async function gitRemoteLogic(params, context) {
|
|
|
62
68
|
args.push("show", params.name);
|
|
63
69
|
break;
|
|
64
70
|
}
|
|
65
|
-
logger.debug(`Executing command: git ${args.join(" ")}`, {
|
|
71
|
+
logger.debug(`Executing command: git ${args.join(" ")}`, {
|
|
72
|
+
...context,
|
|
73
|
+
operation,
|
|
74
|
+
});
|
|
66
75
|
const { stdout } = await execFileAsync("git", args);
|
|
67
|
-
if (params.mode ===
|
|
76
|
+
if (params.mode === "list") {
|
|
68
77
|
const remoteMap = new Map();
|
|
69
|
-
stdout
|
|
78
|
+
stdout
|
|
79
|
+
.trim()
|
|
80
|
+
.split("\n")
|
|
81
|
+
.forEach((line) => {
|
|
70
82
|
const parts = line.split(/\s+/);
|
|
71
83
|
if (parts.length < 3)
|
|
72
84
|
return;
|
|
73
|
-
const
|
|
74
|
-
const
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
remoteMap.
|
|
79
|
-
|
|
80
|
-
remoteMap.get(name)
|
|
85
|
+
const name = parts[0];
|
|
86
|
+
const url = parts[1];
|
|
87
|
+
const type = parts[2];
|
|
88
|
+
if (name && url && type) {
|
|
89
|
+
const cleanType = type.replace(/[()]/g, "");
|
|
90
|
+
if (!remoteMap.has(name))
|
|
91
|
+
remoteMap.set(name, {});
|
|
92
|
+
const remote = remoteMap.get(name);
|
|
93
|
+
if (cleanType === "fetch")
|
|
94
|
+
remote.fetchUrl = url;
|
|
95
|
+
if (cleanType === "push")
|
|
96
|
+
remote.pushUrl = url;
|
|
97
|
+
}
|
|
81
98
|
});
|
|
82
|
-
const remotes = Array.from(remoteMap.entries()).map(([name, urls]) => ({
|
|
99
|
+
const remotes = Array.from(remoteMap.entries()).map(([name, urls]) => ({
|
|
100
|
+
name,
|
|
101
|
+
fetchUrl: urls.fetchUrl || "N/A",
|
|
102
|
+
pushUrl: urls.pushUrl || urls.fetchUrl || "N/A",
|
|
103
|
+
}));
|
|
83
104
|
return { success: true, mode: params.mode, remotes };
|
|
84
105
|
}
|
|
85
|
-
if (params.mode ===
|
|
106
|
+
if (params.mode === "show") {
|
|
86
107
|
return { success: true, mode: params.mode, details: stdout.trim() };
|
|
87
108
|
}
|
|
88
|
-
return {
|
|
109
|
+
return {
|
|
110
|
+
success: true,
|
|
111
|
+
mode: params.mode,
|
|
112
|
+
message: `Remote '${params.name}' ${params.mode === "add" ? "added" : "removed"} successfully.`,
|
|
113
|
+
};
|
|
89
114
|
}
|
|
115
|
+
//# sourceMappingURL=logic.js.map
|