@cyanheads/git-mcp-server 2.3.3 → 2.3.5

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.
Files changed (36) hide show
  1. package/README.md +15 -14
  2. package/dist/config/index.d.ts +2 -0
  3. package/dist/config/index.d.ts.map +1 -1
  4. package/dist/config/index.js +4 -0
  5. package/dist/config/index.js.map +1 -1
  6. package/dist/mcp-server/tools/gitAdd/logic.d.ts +46 -30
  7. package/dist/mcp-server/tools/gitAdd/logic.d.ts.map +1 -1
  8. package/dist/mcp-server/tools/gitCheckout/logic.d.ts +46 -30
  9. package/dist/mcp-server/tools/gitCheckout/logic.d.ts.map +1 -1
  10. package/dist/mcp-server/tools/gitCherryPick/logic.d.ts +46 -30
  11. package/dist/mcp-server/tools/gitCherryPick/logic.d.ts.map +1 -1
  12. package/dist/mcp-server/tools/gitClean/logic.d.ts +46 -30
  13. package/dist/mcp-server/tools/gitClean/logic.d.ts.map +1 -1
  14. package/dist/mcp-server/tools/gitCommit/logic.d.ts +46 -30
  15. package/dist/mcp-server/tools/gitCommit/logic.d.ts.map +1 -1
  16. package/dist/mcp-server/tools/gitCommit/logic.js +11 -3
  17. package/dist/mcp-server/tools/gitCommit/logic.js.map +1 -1
  18. package/dist/mcp-server/tools/gitMerge/logic.d.ts +46 -30
  19. package/dist/mcp-server/tools/gitMerge/logic.d.ts.map +1 -1
  20. package/dist/mcp-server/tools/gitPull/logic.d.ts +46 -30
  21. package/dist/mcp-server/tools/gitPull/logic.d.ts.map +1 -1
  22. package/dist/mcp-server/tools/gitRebase/logic.d.ts +46 -30
  23. package/dist/mcp-server/tools/gitRebase/logic.d.ts.map +1 -1
  24. package/dist/mcp-server/tools/gitReset/logic.d.ts +46 -30
  25. package/dist/mcp-server/tools/gitReset/logic.d.ts.map +1 -1
  26. package/dist/mcp-server/tools/gitStash/logic.d.ts +46 -30
  27. package/dist/mcp-server/tools/gitStash/logic.d.ts.map +1 -1
  28. package/dist/mcp-server/tools/gitStatus/logic.d.ts +38 -30
  29. package/dist/mcp-server/tools/gitStatus/logic.d.ts.map +1 -1
  30. package/dist/mcp-server/tools/gitStatus/logic.js +4 -2
  31. package/dist/mcp-server/tools/gitStatus/logic.js.map +1 -1
  32. package/dist/mcp-server/tools/gitWrapupInstructions/logic.d.ts +46 -30
  33. package/dist/mcp-server/tools/gitWrapupInstructions/logic.d.ts.map +1 -1
  34. package/dist/mcp-server/tools/gitWrapupInstructions/logic.js +63 -8
  35. package/dist/mcp-server/tools/gitWrapupInstructions/logic.js.map +1 -1
  36. package/package.json +18 -12
@@ -20,21 +20,21 @@ export declare const GitStatusOutputSchema: z.ZodObject<{
20
20
  Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
21
21
  Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
22
22
  TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
23
- }, "strip", z.ZodTypeAny, {
24
- Added?: string[] | undefined;
25
- Modified?: string[] | undefined;
26
- Deleted?: string[] | undefined;
27
- Renamed?: string[] | undefined;
28
- Copied?: string[] | undefined;
29
- TypeChanged?: string[] | undefined;
30
- }, {
31
- Added?: string[] | undefined;
32
- Modified?: string[] | undefined;
33
- Deleted?: string[] | undefined;
34
- Renamed?: string[] | undefined;
35
- Copied?: string[] | undefined;
36
- TypeChanged?: string[] | undefined;
37
- }>;
23
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
24
+ Added: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
25
+ Modified: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
26
+ Deleted: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
27
+ Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
28
+ Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
29
+ TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
30
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
31
+ Added: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
32
+ Modified: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
33
+ Deleted: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
34
+ Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
35
+ Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
36
+ TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
37
+ }, z.ZodTypeAny, "passthrough">>;
38
38
  unstaged_changes: z.ZodObject<{
39
39
  Added: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
40
40
  Modified: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -42,21 +42,21 @@ export declare const GitStatusOutputSchema: z.ZodObject<{
42
42
  Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
43
43
  Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
44
44
  TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
45
- }, "strip", z.ZodTypeAny, {
46
- Added?: string[] | undefined;
47
- Modified?: string[] | undefined;
48
- Deleted?: string[] | undefined;
49
- Renamed?: string[] | undefined;
50
- Copied?: string[] | undefined;
51
- TypeChanged?: string[] | undefined;
52
- }, {
53
- Added?: string[] | undefined;
54
- Modified?: string[] | undefined;
55
- Deleted?: string[] | undefined;
56
- Renamed?: string[] | undefined;
57
- Copied?: string[] | undefined;
58
- TypeChanged?: string[] | undefined;
59
- }>;
45
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
46
+ Added: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
47
+ Modified: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
48
+ Deleted: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
49
+ Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
50
+ Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
51
+ TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
52
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
53
+ Added: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
54
+ Modified: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
55
+ Deleted: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
56
+ Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
57
+ Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
58
+ TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
59
+ }, z.ZodTypeAny, "passthrough">>;
60
60
  untracked_files: z.ZodArray<z.ZodString, "many">;
61
61
  conflicted_files: z.ZodArray<z.ZodString, "many">;
62
62
  is_clean: z.ZodBoolean;
@@ -69,6 +69,8 @@ export declare const GitStatusOutputSchema: z.ZodObject<{
69
69
  Renamed?: string[] | undefined;
70
70
  Copied?: string[] | undefined;
71
71
  TypeChanged?: string[] | undefined;
72
+ } & {
73
+ [k: string]: unknown;
72
74
  };
73
75
  unstaged_changes: {
74
76
  Added?: string[] | undefined;
@@ -77,6 +79,8 @@ export declare const GitStatusOutputSchema: z.ZodObject<{
77
79
  Renamed?: string[] | undefined;
78
80
  Copied?: string[] | undefined;
79
81
  TypeChanged?: string[] | undefined;
82
+ } & {
83
+ [k: string]: unknown;
80
84
  };
81
85
  untracked_files: string[];
82
86
  conflicted_files: string[];
@@ -90,6 +94,8 @@ export declare const GitStatusOutputSchema: z.ZodObject<{
90
94
  Renamed?: string[] | undefined;
91
95
  Copied?: string[] | undefined;
92
96
  TypeChanged?: string[] | undefined;
97
+ } & {
98
+ [k: string]: unknown;
93
99
  };
94
100
  unstaged_changes: {
95
101
  Added?: string[] | undefined;
@@ -98,6 +104,8 @@ export declare const GitStatusOutputSchema: z.ZodObject<{
98
104
  Renamed?: string[] | undefined;
99
105
  Copied?: string[] | undefined;
100
106
  TypeChanged?: string[] | undefined;
107
+ } & {
108
+ [k: string]: unknown;
101
109
  };
102
110
  untracked_files: string[];
103
111
  conflicted_files: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitStatus/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,oBAAoB;;;;;;EAE/B,CAAC;AAYH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUhC,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;AAgFpE;;;GAGG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,cAAc,GAAG;IAAE,mBAAmB,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1E,OAAO,CAAC,eAAe,CAAC,CAwB1B"}
1
+ {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitStatus/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,oBAAoB;;;;;;EAE/B,CAAC;AAcH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUhC,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;AAgFpE;;;GAGG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,cAAc,GAAG;IAAE,mBAAmB,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1E,OAAO,CAAC,eAAe,CAAC,CAwB1B"}
@@ -13,14 +13,16 @@ export const GitStatusInputSchema = z.object({
13
13
  path: z.string().default(".").describe("Path to the Git repository."),
14
14
  });
15
15
  // 2. DEFINE the Zod response schema.
16
- const ChangesSchema = z.object({
16
+ const ChangesSchema = z
17
+ .object({
17
18
  Added: z.array(z.string()).optional(),
18
19
  Modified: z.array(z.string()).optional(),
19
20
  Deleted: z.array(z.string()).optional(),
20
21
  Renamed: z.array(z.string()).optional(),
21
22
  Copied: z.array(z.string()).optional(),
22
23
  TypeChanged: z.array(z.string()).optional(),
23
- });
24
+ })
25
+ .passthrough();
24
26
  export const GitStatusOutputSchema = z.object({
25
27
  current_branch: z
26
28
  .string()
@@ -1 +1 @@
1
- {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitStatus/logic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitStatus/logic.ts"],"names":[],"mappings":"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"}
@@ -28,21 +28,21 @@ export declare const GitWrapupInstructionsOutputSchema: z.ZodObject<{
28
28
  Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
29
29
  Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
30
30
  TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
31
- }, "strip", z.ZodTypeAny, {
32
- Added?: string[] | undefined;
33
- Modified?: string[] | undefined;
34
- Deleted?: string[] | undefined;
35
- Renamed?: string[] | undefined;
36
- Copied?: string[] | undefined;
37
- TypeChanged?: string[] | undefined;
38
- }, {
39
- Added?: string[] | undefined;
40
- Modified?: string[] | undefined;
41
- Deleted?: string[] | undefined;
42
- Renamed?: string[] | undefined;
43
- Copied?: string[] | undefined;
44
- TypeChanged?: string[] | undefined;
45
- }>;
31
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
32
+ Added: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
33
+ Modified: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
34
+ Deleted: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
35
+ Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
36
+ Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
37
+ TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
38
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
39
+ Added: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
40
+ Modified: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
41
+ Deleted: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
42
+ Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
43
+ Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
44
+ TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
45
+ }, z.ZodTypeAny, "passthrough">>;
46
46
  unstaged_changes: z.ZodObject<{
47
47
  Added: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
48
48
  Modified: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -50,21 +50,21 @@ export declare const GitWrapupInstructionsOutputSchema: z.ZodObject<{
50
50
  Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
51
51
  Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
52
52
  TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
53
- }, "strip", z.ZodTypeAny, {
54
- Added?: string[] | undefined;
55
- Modified?: string[] | undefined;
56
- Deleted?: string[] | undefined;
57
- Renamed?: string[] | undefined;
58
- Copied?: string[] | undefined;
59
- TypeChanged?: string[] | undefined;
60
- }, {
61
- Added?: string[] | undefined;
62
- Modified?: string[] | undefined;
63
- Deleted?: string[] | undefined;
64
- Renamed?: string[] | undefined;
65
- Copied?: string[] | undefined;
66
- TypeChanged?: string[] | undefined;
67
- }>;
53
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
54
+ Added: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
55
+ Modified: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
56
+ Deleted: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
57
+ Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
58
+ Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
59
+ TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
60
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
61
+ Added: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
62
+ Modified: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
63
+ Deleted: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
64
+ Renamed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
65
+ Copied: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
66
+ TypeChanged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
67
+ }, z.ZodTypeAny, "passthrough">>;
68
68
  untracked_files: z.ZodArray<z.ZodString, "many">;
69
69
  conflicted_files: z.ZodArray<z.ZodString, "many">;
70
70
  is_clean: z.ZodBoolean;
@@ -77,6 +77,8 @@ export declare const GitWrapupInstructionsOutputSchema: z.ZodObject<{
77
77
  Renamed?: string[] | undefined;
78
78
  Copied?: string[] | undefined;
79
79
  TypeChanged?: string[] | undefined;
80
+ } & {
81
+ [k: string]: unknown;
80
82
  };
81
83
  unstaged_changes: {
82
84
  Added?: string[] | undefined;
@@ -85,6 +87,8 @@ export declare const GitWrapupInstructionsOutputSchema: z.ZodObject<{
85
87
  Renamed?: string[] | undefined;
86
88
  Copied?: string[] | undefined;
87
89
  TypeChanged?: string[] | undefined;
90
+ } & {
91
+ [k: string]: unknown;
88
92
  };
89
93
  untracked_files: string[];
90
94
  conflicted_files: string[];
@@ -98,6 +102,8 @@ export declare const GitWrapupInstructionsOutputSchema: z.ZodObject<{
98
102
  Renamed?: string[] | undefined;
99
103
  Copied?: string[] | undefined;
100
104
  TypeChanged?: string[] | undefined;
105
+ } & {
106
+ [k: string]: unknown;
101
107
  };
102
108
  unstaged_changes: {
103
109
  Added?: string[] | undefined;
@@ -106,6 +112,8 @@ export declare const GitWrapupInstructionsOutputSchema: z.ZodObject<{
106
112
  Renamed?: string[] | undefined;
107
113
  Copied?: string[] | undefined;
108
114
  TypeChanged?: string[] | undefined;
115
+ } & {
116
+ [k: string]: unknown;
109
117
  };
110
118
  untracked_files: string[];
111
119
  conflicted_files: string[];
@@ -123,6 +131,8 @@ export declare const GitWrapupInstructionsOutputSchema: z.ZodObject<{
123
131
  Renamed?: string[] | undefined;
124
132
  Copied?: string[] | undefined;
125
133
  TypeChanged?: string[] | undefined;
134
+ } & {
135
+ [k: string]: unknown;
126
136
  };
127
137
  unstaged_changes: {
128
138
  Added?: string[] | undefined;
@@ -131,6 +141,8 @@ export declare const GitWrapupInstructionsOutputSchema: z.ZodObject<{
131
141
  Renamed?: string[] | undefined;
132
142
  Copied?: string[] | undefined;
133
143
  TypeChanged?: string[] | undefined;
144
+ } & {
145
+ [k: string]: unknown;
134
146
  };
135
147
  untracked_files: string[];
136
148
  conflicted_files: string[];
@@ -148,6 +160,8 @@ export declare const GitWrapupInstructionsOutputSchema: z.ZodObject<{
148
160
  Renamed?: string[] | undefined;
149
161
  Copied?: string[] | undefined;
150
162
  TypeChanged?: string[] | undefined;
163
+ } & {
164
+ [k: string]: unknown;
151
165
  };
152
166
  unstaged_changes: {
153
167
  Added?: string[] | undefined;
@@ -156,6 +170,8 @@ export declare const GitWrapupInstructionsOutputSchema: z.ZodObject<{
156
170
  Renamed?: string[] | undefined;
157
171
  Copied?: string[] | undefined;
158
172
  TypeChanged?: string[] | undefined;
173
+ } & {
174
+ [k: string]: unknown;
159
175
  };
160
176
  untracked_files: string[];
161
177
  conflicted_files: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitWrapupInstructions/logic.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAU,KAAK,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAQtE,eAAO,MAAM,gCAAgC;;;;;;;;;;;;EAc3C,CAAC;AAGH,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW5C,CAAC;AAGH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAC9C,OAAO,gCAAgC,CACxC,CAAC;AACF,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAC/C,OAAO,iCAAiC,CACzC,CAAC;AAaF;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,0BAA0B,EAClC,OAAO,EAAE,cAAc,GAAG;IAAE,mBAAmB,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1E,OAAO,CAAC,2BAA2B,CAAC,CA6BtC"}
1
+ {"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitWrapupInstructions/logic.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAU,KAAK,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAQtE,eAAO,MAAM,gCAAgC;;;;;;;;;;;;EAc3C,CAAC;AAGH,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW5C,CAAC;AAGH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAC9C,OAAO,gCAAgC,CACxC,CAAC;AACF,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAC/C,OAAO,iCAAiC,CACzC,CAAC;AA2EF;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,0BAA0B,EAClC,OAAO,EAAE,cAAc,GAAG;IAAE,mBAAmB,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;CAAE,GAC1E,OAAO,CAAC,2BAA2B,CAAC,CAiCtC"}
@@ -2,7 +2,10 @@
2
2
  * @fileoverview Defines the core logic, schemas, and types for the git_wrapup_instructions tool.
3
3
  * @module src/mcp-server/tools/gitWrapupInstructions/logic
4
4
  */
5
+ import { readFileSync } from "fs";
6
+ import path from "path";
5
7
  import { z } from "zod";
8
+ import { config } from "../../../config/index.js";
6
9
  import { logger } from "../../../utils/index.js";
7
10
  import { getGitStatus, GitStatusOutputSchema, } from "../gitStatus/logic.js";
8
11
  // 1. DEFINE the Zod input schema.
@@ -31,15 +34,67 @@ export const GitWrapupInstructionsOutputSchema = z.object({
31
34
  .describe("Any error message if getting git status failed."),
32
35
  });
33
36
  const WRAPUP_INSTRUCTIONS = `
34
- Perform all actions for our git wrapup workflow:
35
- 1. Use the git_diff tool to understand the precise nature and rationale behind each change (what changed and why did it change?) within the code base. Use the 'includeUntracked' parameter to view all changes, including untracked files. This will help you understand the context and purpose of the modifications made.
36
- 2. For substantial code updates, review and update the README to ensure it is up to date with our current codebase (make a note to the user of any discrepancies you noticed, gathered from everything you've seen of our codebase so far).
37
- 3. Update the CHANGELOG with concise, descriptive entries detailing all modifications, clearly indicating their purpose (e.g., bug fix, feature implementation, refactoring). Include specific metrics or identifiers where applicable, such as issue numbers or pull request links, to provide context and traceability for each change. This will help maintain a clear history of changes and their impacts on the project.
38
- 4. Proceed to commit all changes; based on your review of the git_diff and readme, group these changes into logical, atomic commits, each accompanied by a clear and descriptive message adhering to Conventional Commits standards (e.g. "docs(readme): updated readme to include xyz."). Note the 'git_commit' tool allows you to also stage the files while commiting. Ensure commit messages accurately convey the scope and impact of the changes, incorporating specific metrics or identifiers where applicable.
39
- Note: Be sure to set 'git_set_working_dir' if not already set.
37
+ # Git Wrap-up Protocol
40
38
 
41
- Instructions: Now write a concise list of what you must do to complete the git wrapup workflow, then perform all actions. Do not push unless requested.
39
+ **Objective**: Systematically review, document, and commit all pending changes in the repository. Adherence to this protocol is mandatory.
40
+
41
+ ### Phase 1: Analysis and Planning
42
+
43
+ You must begin by creating a task list that mirrors this protocol. This is your operational plan.
44
+
45
+ **Example Task List:**
46
+ \`\`\`
47
+ - [ ] Set Git working directory (if not set)
48
+ - [ ] Analyze repository changes with git_diff
49
+ - [ ] Update CHANGELOG.md with all modifications
50
+ - [ ] Review and update README.md for currency
51
+ - [ ] Commit changes in logical, atomic units
52
+ - [ ] Verify final repository status
53
+ \`\`\`
54
+
55
+ ### Phase 2: Execution Workflow
56
+
57
+ Execute the following steps sequentially. Do not proceed until the prior step is confirmed complete.
58
+
59
+ 1. **Set Context**: Ensure the working directory is correctly set using **\`git_set_working_dir\`**. This is a mandatory first step.
60
+
61
+ 2. **Analyze Changes**: Execute **\`git_diff\`** with the \`includeUntracked: true\` parameter. You must thoroughly analyze the output to understand the full scope and rationale of every modification. This analysis will inform & influence your commit strategy, commit messages, and overall workflow.
62
+
63
+ 3. **Update Changelog**: Read the **\`CHANGELOG.md\`** file. Append a new version entry detailing all changes. Your entry must be concise, use the past tense, and categorize modifications (e.g., "Added," "Changed," "Fixed").
64
+
65
+ 4. **Review Documentation**: For any substantial code changes, you are required to review **\`README.md\`**. Ensure it accurately reflects the current state of the codebase. Update it as necessary.
66
+
67
+ 5. **Commit Changes**: Execute **\`git_commit\`** for each logical group of changes.
68
+ - Commits **must be atomic** and group related changes.
69
+ - Commit messages **must adhere** to the **Conventional Commits** standard (e.g., \`feat(auth): implement password reset\`).
70
+ - Use the \`filesToStage\` parameter to precisely control which files are included in each commit.
71
+
72
+ **Directive**: Create your task list now. Then, execute the protocol. Do not push to the remote unless explicitly instructed.
42
73
  `;
74
+ /**
75
+ * 4. IMPLEMENT the core logic function.
76
+ * @throws {McpError} If the logic encounters an unrecoverable issue.
77
+ */
78
+ const loadInstructions = (filePath, context) => {
79
+ if (!filePath) {
80
+ logger.debug("No custom instructions path configured, using default.", {
81
+ ...context,
82
+ });
83
+ return WRAPUP_INSTRUCTIONS;
84
+ }
85
+ try {
86
+ const resolvedPath = path.resolve(filePath);
87
+ logger.debug(`Attempting to load custom instructions from ${resolvedPath}`, {
88
+ ...context,
89
+ });
90
+ return readFileSync(resolvedPath, "utf-8");
91
+ }
92
+ catch (error) {
93
+ const errorMessage = error instanceof Error ? error.message : "An unknown error occurred";
94
+ logger.warning(`Failed to load custom instructions from '${filePath}': ${errorMessage}. Falling back to default instructions.`, { ...context, error });
95
+ return WRAPUP_INSTRUCTIONS;
96
+ }
97
+ };
43
98
  /**
44
99
  * 4. IMPLEMENT the core logic function.
45
100
  * @throws {McpError} If the logic encounters an unrecoverable issue.
@@ -47,7 +102,7 @@ Instructions: Now write a concise list of what you must do to complete the git w
47
102
  export async function getWrapupInstructions(params, context) {
48
103
  const operation = "getWrapupInstructions";
49
104
  logger.debug(`Executing ${operation}`, { ...context, params });
50
- let finalInstructions = WRAPUP_INSTRUCTIONS;
105
+ let finalInstructions = loadInstructions(config.gitWrapupInstructionsPath, context);
51
106
  if (params.updateAgentMetaFiles) {
52
107
  finalInstructions += `\nExtra request: review and update if needed the .clinerules and claude.md files if present.`;
53
108
  }
@@ -1 +1 @@
1
- {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitWrapupInstructions/logic.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAuB,MAAM,yBAAyB,CAAC;AACtE,OAAO,EACL,YAAY,EAEZ,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAE/B,kCAAkC;AAClC,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,eAAe,EAAE,CAAC;SACf,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;SAC9B,QAAQ,CAAC,mDAAmD,CAAC;IAChE,oBAAoB,EAAE,CAAC;SACpB,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;SAC9B,QAAQ,EAAE;SACV,QAAQ,CAAC,6DAA6D,CAAC;IAC1E,SAAS,EAAE,CAAC;SACT,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CACP,+HAA+H,CAChI;CACJ,CAAC,CAAC;AAEH,qCAAqC;AACrC,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC;IACxD,YAAY,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,CAAC,mDAAmD,CAAC;IAChE,SAAS,EAAE,qBAAqB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAClD,oCAAoC,CACrC;IACD,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,iDAAiD,CAAC;CAC/D,CAAC,CAAC;AAUH,MAAM,mBAAmB,GAAG;;;;;;;;;CAS3B,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAkC,EAClC,OAA2E;IAE3E,MAAM,SAAS,GAAG,uBAAuB,CAAC;IAC1C,MAAM,CAAC,KAAK,CAAC,aAAa,SAAS,EAAE,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAE/D,IAAI,iBAAiB,GAAG,mBAAmB,CAAC;IAC5C,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;QAChC,iBAAiB,IAAI,8FAA8F,CAAC;IACtH,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,iBAAiB,IAAI,wQAAwQ,CAAC;IAChS,CAAC;IAED,IAAI,YAAyC,CAAC;IAC9C,IAAI,WAA+B,CAAC;IAEpC,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;IACjD,IAAI,UAAU,EAAE,CAAC;QACf,YAAY,GAAG,MAAM,YAAY,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACN,WAAW,GAAG,2DAA2D,CAAC;QAC1E,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,OAAO;QACL,YAAY,EAAE,iBAAiB;QAC/B,SAAS,EAAE,YAAY;QACvB,cAAc,EAAE,WAAW;KAC5B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"logic.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/gitWrapupInstructions/logic.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cyanheads/git-mcp-server",
3
- "version": "2.3.3",
3
+ "version": "2.3.5",
4
4
  "mcpName": "io.github.cyanheads/git-mcp-server",
5
5
  "description": "An MCP (Model Context Protocol) server enabling LLMs and AI agents to interact with Git repositories. Provides tools for comprehensive Git operations including clone, commit, branch, diff, log, status, push, pull, merge, rebase, worktree, tag management, and more, via the MCP standard. STDIO & HTTP.",
6
6
  "main": "dist/index.js",
@@ -37,12 +37,16 @@
37
37
  "dev:http": "MCP_LOG_LEVEL=debug MCP_TRANSPORT_TYPE=http tsx --watch src/index.ts",
38
38
  "rebuild": "tsx scripts/clean.ts && npm run build",
39
39
  "docs:generate": "typedoc --tsconfig ./tsconfig.typedoc.json",
40
+ "devcheck": "bun scripts/devcheck.ts",
41
+ "devdocs": "bun scripts/devdocs.ts",
40
42
  "depcheck": "npx depcheck",
41
43
  "lint": "eslint .",
42
44
  "lint:fix": "eslint . --fix",
43
45
  "typecheck": "tsc --noEmit",
44
46
  "tree": "tsx scripts/tree.ts",
45
47
  "fetch-spec": "tsx scripts/fetch-openapi-spec.ts",
48
+ "validate-schema": "bun scripts/validate-mcp-publish-schema.ts",
49
+ "clean": "bun scripts/clean.ts",
46
50
  "format": "prettier --write \"**/*.{ts,js,json,md,html,css}\"",
47
51
  "inspector": "npx mcp-inspector --config mcp.json --server git-mcp-server",
48
52
  "test": "vitest run",
@@ -53,16 +57,16 @@
53
57
  "prepublishOnly": "npm run typecheck && npm run lint && npm run test && npm run build"
54
58
  },
55
59
  "dependencies": {
56
- "@hono/node-server": "^1.18.0",
57
- "@modelcontextprotocol/sdk": "^1.18.0",
60
+ "@hono/node-server": "^1.19.5",
61
+ "@modelcontextprotocol/sdk": "^1.18.2",
58
62
  "axios": "^1.12.2",
59
63
  "chrono-node": "2.8.0",
60
64
  "dotenv": "16.6.1",
61
- "hono": "^4.8.10",
65
+ "hono": "^4.9.9",
62
66
  "ignore": "^7.0.5",
63
67
  "jose": "^6.1.0",
64
68
  "js-yaml": "^4.1.0",
65
- "openai": "^5.20.2",
69
+ "openai": "^5.23.1",
66
70
  "partial-json": "^0.1.7",
67
71
  "sanitize-html": "^2.17.0",
68
72
  "tiktoken": "^1.0.22",
@@ -72,22 +76,24 @@
72
76
  "zod": "^3.25.76"
73
77
  },
74
78
  "devDependencies": {
75
- "@eslint/js": "^9.35.0",
76
- "@types/node": "^24.4.0",
79
+ "@eslint/js": "^9.36.0",
80
+ "@types/node": "^24.6.0",
77
81
  "@types/sanitize-html": "^2.16.0",
78
82
  "@types/validator": "13.15.3",
79
83
  "@vitest/coverage-v8": "^3.2.4",
80
84
  "ajv": "^8.17.1",
81
85
  "ajv-formats": "^3.0.1",
86
+ "bun-types": "^1.2.23",
82
87
  "depcheck": "^1.4.7",
83
- "eslint": "^9.35.0",
88
+ "eslint": "^9.36.0",
84
89
  "globals": "^16.4.0",
85
- "msw": "^2.11.2",
90
+ "msw": "^2.11.3",
86
91
  "prettier": "^3.6.2",
87
- "tsx": "^4.20.5",
92
+ "tsx": "^4.20.6",
88
93
  "typedoc": "^0.28.13",
89
- "typescript": "^5.8.3",
90
- "typescript-eslint": "^8.43.0",
94
+ "typescript": "^5.9.2",
95
+ "typescript-eslint": "^8.45.0",
96
+ "vite": "^7.1.7",
91
97
  "vite-tsconfig-paths": "^5.1.4",
92
98
  "vitest": "^3.2.4"
93
99
  },