@structured-world/gitlab-mcp 6.18.0 → 6.20.0
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/dist/src/config.d.ts +1 -0
- package/dist/src/config.js +2 -1
- package/dist/src/config.js.map +1 -1
- package/dist/src/entities/core/registry.js +1 -1
- package/dist/src/entities/core/registry.js.map +1 -1
- package/dist/src/entities/index.d.ts +1 -0
- package/dist/src/entities/index.js +1 -0
- package/dist/src/entities/index.js.map +1 -1
- package/dist/src/entities/mrs/registry.js +32 -2
- package/dist/src/entities/mrs/registry.js.map +1 -1
- package/dist/src/entities/mrs/schema.d.ts +64 -0
- package/dist/src/entities/mrs/schema.js +38 -0
- package/dist/src/entities/mrs/schema.js.map +1 -1
- package/dist/src/entities/releases/index.d.ts +3 -0
- package/dist/src/entities/releases/index.js +13 -0
- package/dist/src/entities/releases/index.js.map +1 -0
- package/dist/src/entities/releases/registry.d.ts +5 -0
- package/dist/src/entities/releases/registry.js +183 -0
- package/dist/src/entities/releases/registry.js.map +1 -0
- package/dist/src/entities/releases/schema-readonly.d.ts +28 -0
- package/dist/src/entities/releases/schema-readonly.js +56 -0
- package/dist/src/entities/releases/schema-readonly.js.map +1 -0
- package/dist/src/entities/releases/schema.d.ts +56 -0
- package/dist/src/entities/releases/schema.js +97 -0
- package/dist/src/entities/releases/schema.js.map +1 -0
- package/dist/src/entities/webhooks/registry.js +2 -2
- package/dist/src/entities/webhooks/registry.js.map +1 -1
- package/dist/src/registry-manager.js +11 -0
- package/dist/src/registry-manager.js.map +1 -1
- package/dist/src/services/ToolAvailability.js +16 -0
- package/dist/src/services/ToolAvailability.js.map +1 -1
- package/dist/structured-world-gitlab-mcp-6.20.0.tgz +0 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +7 -7
- package/dist/structured-world-gitlab-mcp-6.18.0.tgz +0 -0
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.releasesToolRegistry = void 0;
|
|
37
|
+
exports.getReleasesReadOnlyToolNames = getReleasesReadOnlyToolNames;
|
|
38
|
+
exports.getReleasesToolDefinitions = getReleasesToolDefinitions;
|
|
39
|
+
exports.getFilteredReleasesTools = getFilteredReleasesTools;
|
|
40
|
+
const z = __importStar(require("zod"));
|
|
41
|
+
const schema_readonly_1 = require("./schema-readonly");
|
|
42
|
+
const schema_1 = require("./schema");
|
|
43
|
+
const gitlab_api_1 = require("../../utils/gitlab-api");
|
|
44
|
+
const config_1 = require("../../config");
|
|
45
|
+
exports.releasesToolRegistry = new Map([
|
|
46
|
+
[
|
|
47
|
+
"browse_releases",
|
|
48
|
+
{
|
|
49
|
+
name: "browse_releases",
|
|
50
|
+
description: 'BROWSE GitLab project releases. Actions: "list" shows all releases sorted by date, "get" retrieves specific release by tag name, "assets" lists release asset links. Releases are versioned software distributions with changelogs, assets, and milestone associations.',
|
|
51
|
+
inputSchema: z.toJSONSchema(schema_readonly_1.BrowseReleasesSchema),
|
|
52
|
+
handler: async (args) => {
|
|
53
|
+
const input = schema_readonly_1.BrowseReleasesSchema.parse(args);
|
|
54
|
+
if ((0, config_1.isActionDenied)("browse_releases", input.action)) {
|
|
55
|
+
throw new Error(`Action '${input.action}' is not allowed for browse_releases tool`);
|
|
56
|
+
}
|
|
57
|
+
const encodedProjectId = encodeURIComponent(input.project_id);
|
|
58
|
+
switch (input.action) {
|
|
59
|
+
case "list": {
|
|
60
|
+
const { action: _action, project_id: _projectId, ...queryOptions } = input;
|
|
61
|
+
return gitlab_api_1.gitlab.get(`projects/${encodedProjectId}/releases`, {
|
|
62
|
+
query: (0, gitlab_api_1.toQuery)(queryOptions, []),
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
case "get": {
|
|
66
|
+
const { tag_name, include_html_description } = input;
|
|
67
|
+
const encodedTagName = encodeURIComponent(tag_name);
|
|
68
|
+
const query = include_html_description ? { include_html_description: true } : {};
|
|
69
|
+
return gitlab_api_1.gitlab.get(`projects/${encodedProjectId}/releases/${encodedTagName}`, {
|
|
70
|
+
query,
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
case "assets": {
|
|
74
|
+
const { tag_name, per_page, page } = input;
|
|
75
|
+
const encodedTagName = encodeURIComponent(tag_name);
|
|
76
|
+
return gitlab_api_1.gitlab.get(`projects/${encodedProjectId}/releases/${encodedTagName}/assets/links`, {
|
|
77
|
+
query: (0, gitlab_api_1.toQuery)({ per_page, page }, []),
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
default:
|
|
81
|
+
throw new Error(`Unknown action: ${input.action}`);
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
},
|
|
85
|
+
],
|
|
86
|
+
[
|
|
87
|
+
"manage_release",
|
|
88
|
+
{
|
|
89
|
+
name: "manage_release",
|
|
90
|
+
description: 'MANAGE GitLab releases. Actions: "create" creates release with optional assets, "update" modifies release metadata, "delete" removes release (preserves tag), "create_link" adds asset link, "delete_link" removes asset link.',
|
|
91
|
+
inputSchema: z.toJSONSchema(schema_1.ManageReleaseSchema),
|
|
92
|
+
handler: async (args) => {
|
|
93
|
+
const input = schema_1.ManageReleaseSchema.parse(args);
|
|
94
|
+
if ((0, config_1.isActionDenied)("manage_release", input.action)) {
|
|
95
|
+
throw new Error(`Action '${input.action}' is not allowed for manage_release tool`);
|
|
96
|
+
}
|
|
97
|
+
const encodedProjectId = encodeURIComponent(input.project_id);
|
|
98
|
+
switch (input.action) {
|
|
99
|
+
case "create": {
|
|
100
|
+
const { action: _action, project_id: _projectId, tag_name, name, description, ref, tag_message, milestones, released_at, assets, } = input;
|
|
101
|
+
const body = { tag_name };
|
|
102
|
+
if (name !== undefined)
|
|
103
|
+
body.name = name;
|
|
104
|
+
if (description !== undefined)
|
|
105
|
+
body.description = description;
|
|
106
|
+
if (ref !== undefined)
|
|
107
|
+
body.ref = ref;
|
|
108
|
+
if (tag_message !== undefined)
|
|
109
|
+
body.tag_message = tag_message;
|
|
110
|
+
if (milestones !== undefined)
|
|
111
|
+
body.milestones = milestones;
|
|
112
|
+
if (released_at !== undefined)
|
|
113
|
+
body.released_at = released_at;
|
|
114
|
+
if (assets !== undefined)
|
|
115
|
+
body.assets = assets;
|
|
116
|
+
return gitlab_api_1.gitlab.post(`projects/${encodedProjectId}/releases`, {
|
|
117
|
+
body,
|
|
118
|
+
contentType: "json",
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
case "update": {
|
|
122
|
+
const { action: _action, project_id: _projectId, tag_name, name, description, milestones, released_at, } = input;
|
|
123
|
+
const encodedTagName = encodeURIComponent(tag_name);
|
|
124
|
+
const body = {};
|
|
125
|
+
if (name !== undefined)
|
|
126
|
+
body.name = name;
|
|
127
|
+
if (description !== undefined)
|
|
128
|
+
body.description = description;
|
|
129
|
+
if (milestones !== undefined)
|
|
130
|
+
body.milestones = milestones;
|
|
131
|
+
if (released_at !== undefined)
|
|
132
|
+
body.released_at = released_at;
|
|
133
|
+
return gitlab_api_1.gitlab.put(`projects/${encodedProjectId}/releases/${encodedTagName}`, {
|
|
134
|
+
body,
|
|
135
|
+
contentType: "json",
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
case "delete": {
|
|
139
|
+
const { tag_name } = input;
|
|
140
|
+
const encodedTagName = encodeURIComponent(tag_name);
|
|
141
|
+
await gitlab_api_1.gitlab.delete(`projects/${encodedProjectId}/releases/${encodedTagName}`);
|
|
142
|
+
return { deleted: true, tag_name };
|
|
143
|
+
}
|
|
144
|
+
case "create_link": {
|
|
145
|
+
const { action: _action, project_id: _projectId, tag_name, name, url, direct_asset_path, link_type, } = input;
|
|
146
|
+
const encodedTagName = encodeURIComponent(tag_name);
|
|
147
|
+
const body = { name, url };
|
|
148
|
+
if (direct_asset_path !== undefined)
|
|
149
|
+
body.direct_asset_path = direct_asset_path;
|
|
150
|
+
if (link_type !== undefined)
|
|
151
|
+
body.link_type = link_type;
|
|
152
|
+
return gitlab_api_1.gitlab.post(`projects/${encodedProjectId}/releases/${encodedTagName}/assets/links`, {
|
|
153
|
+
body,
|
|
154
|
+
contentType: "json",
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
case "delete_link": {
|
|
158
|
+
const { tag_name, link_id } = input;
|
|
159
|
+
const encodedTagName = encodeURIComponent(tag_name);
|
|
160
|
+
await gitlab_api_1.gitlab.delete(`projects/${encodedProjectId}/releases/${encodedTagName}/assets/links/${link_id}`);
|
|
161
|
+
return { deleted: true, tag_name, link_id };
|
|
162
|
+
}
|
|
163
|
+
default:
|
|
164
|
+
throw new Error(`Unknown action: ${input.action}`);
|
|
165
|
+
}
|
|
166
|
+
},
|
|
167
|
+
},
|
|
168
|
+
],
|
|
169
|
+
]);
|
|
170
|
+
function getReleasesReadOnlyToolNames() {
|
|
171
|
+
return ["browse_releases"];
|
|
172
|
+
}
|
|
173
|
+
function getReleasesToolDefinitions() {
|
|
174
|
+
return Array.from(exports.releasesToolRegistry.values());
|
|
175
|
+
}
|
|
176
|
+
function getFilteredReleasesTools(readOnlyMode = false) {
|
|
177
|
+
if (readOnlyMode) {
|
|
178
|
+
const readOnlyNames = getReleasesReadOnlyToolNames();
|
|
179
|
+
return Array.from(exports.releasesToolRegistry.values()).filter(tool => readOnlyNames.includes(tool.name));
|
|
180
|
+
}
|
|
181
|
+
return getReleasesToolDefinitions();
|
|
182
|
+
}
|
|
183
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/entities/releases/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const BrowseReleasesSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
3
|
+
action: z.ZodLiteral<"list">;
|
|
4
|
+
project_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
5
|
+
order_by: z.ZodOptional<z.ZodEnum<{
|
|
6
|
+
created_at: "created_at";
|
|
7
|
+
released_at: "released_at";
|
|
8
|
+
}>>;
|
|
9
|
+
sort: z.ZodOptional<z.ZodEnum<{
|
|
10
|
+
asc: "asc";
|
|
11
|
+
desc: "desc";
|
|
12
|
+
}>>;
|
|
13
|
+
include_html_description: z.ZodOptional<z.ZodPipe<z.ZodTransform<boolean, unknown>, z.ZodBoolean>>;
|
|
14
|
+
per_page: z.ZodOptional<z.ZodNumber>;
|
|
15
|
+
page: z.ZodOptional<z.ZodNumber>;
|
|
16
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
17
|
+
action: z.ZodLiteral<"get">;
|
|
18
|
+
project_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
19
|
+
tag_name: z.ZodString;
|
|
20
|
+
include_html_description: z.ZodOptional<z.ZodPipe<z.ZodTransform<boolean, unknown>, z.ZodBoolean>>;
|
|
21
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
22
|
+
action: z.ZodLiteral<"assets">;
|
|
23
|
+
project_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
24
|
+
tag_name: z.ZodString;
|
|
25
|
+
per_page: z.ZodOptional<z.ZodNumber>;
|
|
26
|
+
page: z.ZodOptional<z.ZodNumber>;
|
|
27
|
+
}, z.core.$strip>], "action">;
|
|
28
|
+
export type BrowseReleasesInput = z.infer<typeof BrowseReleasesSchema>;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BrowseReleasesSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
6
|
+
const projectIdField = utils_1.requiredId.describe("Project ID or URL-encoded path (e.g., 'my-group/my-project')");
|
|
7
|
+
const tagNameField = zod_1.z
|
|
8
|
+
.string()
|
|
9
|
+
.describe("The Git tag associated with the release (e.g., 'v1.0.0')");
|
|
10
|
+
const ListReleasesSchema = zod_1.z.object({
|
|
11
|
+
action: zod_1.z.literal("list").describe("List all releases for a project, sorted by release date"),
|
|
12
|
+
project_id: projectIdField,
|
|
13
|
+
order_by: zod_1.z
|
|
14
|
+
.enum(["released_at", "created_at"])
|
|
15
|
+
.optional()
|
|
16
|
+
.describe("Sort releases by field (default: released_at)"),
|
|
17
|
+
sort: zod_1.z.enum(["desc", "asc"]).optional().describe("Sort direction (default: desc)"),
|
|
18
|
+
include_html_description: utils_1.flexibleBoolean
|
|
19
|
+
.optional()
|
|
20
|
+
.describe("Include HTML-rendered description in response"),
|
|
21
|
+
per_page: zod_1.z
|
|
22
|
+
.number()
|
|
23
|
+
.int()
|
|
24
|
+
.min(1)
|
|
25
|
+
.max(100)
|
|
26
|
+
.optional()
|
|
27
|
+
.describe("Number of items per page (max 100)"),
|
|
28
|
+
page: zod_1.z.number().int().min(1).optional().describe("Page number"),
|
|
29
|
+
});
|
|
30
|
+
const GetReleaseSchema = zod_1.z.object({
|
|
31
|
+
action: zod_1.z.literal("get").describe("Get a specific release by its tag name"),
|
|
32
|
+
project_id: projectIdField,
|
|
33
|
+
tag_name: tagNameField,
|
|
34
|
+
include_html_description: utils_1.flexibleBoolean
|
|
35
|
+
.optional()
|
|
36
|
+
.describe("Include HTML-rendered description in response"),
|
|
37
|
+
});
|
|
38
|
+
const ListReleaseAssetsSchema = zod_1.z.object({
|
|
39
|
+
action: zod_1.z.literal("assets").describe("List all asset links for a specific release"),
|
|
40
|
+
project_id: projectIdField,
|
|
41
|
+
tag_name: tagNameField,
|
|
42
|
+
per_page: zod_1.z
|
|
43
|
+
.number()
|
|
44
|
+
.int()
|
|
45
|
+
.min(1)
|
|
46
|
+
.max(100)
|
|
47
|
+
.optional()
|
|
48
|
+
.describe("Number of items per page (max 100)"),
|
|
49
|
+
page: zod_1.z.number().int().min(1).optional().describe("Page number"),
|
|
50
|
+
});
|
|
51
|
+
exports.BrowseReleasesSchema = zod_1.z.discriminatedUnion("action", [
|
|
52
|
+
ListReleasesSchema,
|
|
53
|
+
GetReleaseSchema,
|
|
54
|
+
ListReleaseAssetsSchema,
|
|
55
|
+
]);
|
|
56
|
+
//# sourceMappingURL=schema-readonly.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-readonly.js","sourceRoot":"","sources":["../../../../src/entities/releases/schema-readonly.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,oCAAuD;AAUvD,MAAM,cAAc,GAAG,kBAAU,CAAC,QAAQ,CACxC,8DAA8D,CAC/D,CAAC;AACF,MAAM,YAAY,GAAG,OAAC;KACnB,MAAM,EAAE;KACR,QAAQ,CAAC,0DAA0D,CAAC,CAAC;AAGxE,MAAM,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IAClC,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,yDAAyD,CAAC;IAC7F,UAAU,EAAE,cAAc;IAC1B,QAAQ,EAAE,OAAC;SACR,IAAI,CAAC,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;SACnC,QAAQ,EAAE;SACV,QAAQ,CAAC,+CAA+C,CAAC;IAC5D,IAAI,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IACnF,wBAAwB,EAAE,uBAAe;SACtC,QAAQ,EAAE;SACV,QAAQ,CAAC,+CAA+C,CAAC;IAC5D,QAAQ,EAAE,OAAC;SACR,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,oCAAoC,CAAC;IACjD,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;CACjE,CAAC,CAAC;AAGH,MAAM,gBAAgB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IAC3E,UAAU,EAAE,cAAc;IAC1B,QAAQ,EAAE,YAAY;IACtB,wBAAwB,EAAE,uBAAe;SACtC,QAAQ,EAAE;SACV,QAAQ,CAAC,+CAA+C,CAAC;CAC7D,CAAC,CAAC;AAGH,MAAM,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IACvC,MAAM,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,6CAA6C,CAAC;IACnF,UAAU,EAAE,cAAc;IAC1B,QAAQ,EAAE,YAAY;IACtB,QAAQ,EAAE,OAAC;SACR,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,oCAAoC,CAAC;IACjD,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;CACjE,CAAC,CAAC;AAGU,QAAA,oBAAoB,GAAG,OAAC,CAAC,kBAAkB,CAAC,QAAQ,EAAE;IACjE,kBAAkB;IAClB,gBAAgB;IAChB,uBAAuB;CACxB,CAAC,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const ManageReleaseSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
3
|
+
action: z.ZodLiteral<"create">;
|
|
4
|
+
project_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
5
|
+
tag_name: z.ZodString;
|
|
6
|
+
name: z.ZodOptional<z.ZodString>;
|
|
7
|
+
description: z.ZodOptional<z.ZodString>;
|
|
8
|
+
ref: z.ZodOptional<z.ZodString>;
|
|
9
|
+
tag_message: z.ZodOptional<z.ZodString>;
|
|
10
|
+
milestones: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
11
|
+
released_at: z.ZodOptional<z.ZodString>;
|
|
12
|
+
assets: z.ZodOptional<z.ZodObject<{
|
|
13
|
+
links: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
14
|
+
name: z.ZodString;
|
|
15
|
+
url: z.ZodString;
|
|
16
|
+
direct_asset_path: z.ZodOptional<z.ZodString>;
|
|
17
|
+
link_type: z.ZodOptional<z.ZodEnum<{
|
|
18
|
+
image: "image";
|
|
19
|
+
other: "other";
|
|
20
|
+
runbook: "runbook";
|
|
21
|
+
package: "package";
|
|
22
|
+
}>>;
|
|
23
|
+
}, z.core.$strip>>>;
|
|
24
|
+
}, z.core.$strip>>;
|
|
25
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
26
|
+
action: z.ZodLiteral<"update">;
|
|
27
|
+
project_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
28
|
+
tag_name: z.ZodString;
|
|
29
|
+
name: z.ZodOptional<z.ZodString>;
|
|
30
|
+
description: z.ZodOptional<z.ZodString>;
|
|
31
|
+
milestones: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
32
|
+
released_at: z.ZodOptional<z.ZodString>;
|
|
33
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
34
|
+
action: z.ZodLiteral<"delete">;
|
|
35
|
+
project_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
36
|
+
tag_name: z.ZodString;
|
|
37
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
38
|
+
action: z.ZodLiteral<"create_link">;
|
|
39
|
+
project_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
40
|
+
tag_name: z.ZodString;
|
|
41
|
+
name: z.ZodString;
|
|
42
|
+
url: z.ZodString;
|
|
43
|
+
direct_asset_path: z.ZodOptional<z.ZodString>;
|
|
44
|
+
link_type: z.ZodOptional<z.ZodEnum<{
|
|
45
|
+
image: "image";
|
|
46
|
+
other: "other";
|
|
47
|
+
runbook: "runbook";
|
|
48
|
+
package: "package";
|
|
49
|
+
}>>;
|
|
50
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
51
|
+
action: z.ZodLiteral<"delete_link">;
|
|
52
|
+
project_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
53
|
+
tag_name: z.ZodString;
|
|
54
|
+
link_id: z.ZodPipe<z.ZodTransform<{}, unknown>, z.ZodCoercedString<unknown>>;
|
|
55
|
+
}, z.core.$strip>], "action">;
|
|
56
|
+
export type ManageReleaseInput = z.infer<typeof ManageReleaseSchema>;
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ManageReleaseSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
6
|
+
const projectIdField = utils_1.requiredId.describe("Project ID or URL-encoded path (e.g., 'my-group/my-project')");
|
|
7
|
+
const tagNameField = zod_1.z
|
|
8
|
+
.string()
|
|
9
|
+
.describe("The Git tag associated with the release (e.g., 'v1.0.0')");
|
|
10
|
+
const nameField = zod_1.z.string().optional().describe("The release title/name");
|
|
11
|
+
const descriptionField = zod_1.z.string().optional().describe("Release description (supports Markdown)");
|
|
12
|
+
const milestonesField = zod_1.z
|
|
13
|
+
.array(zod_1.z.string())
|
|
14
|
+
.optional()
|
|
15
|
+
.describe("Array of milestone titles to associate with the release");
|
|
16
|
+
const releasedAtField = zod_1.z
|
|
17
|
+
.string()
|
|
18
|
+
.optional()
|
|
19
|
+
.describe("Release date/time in ISO 8601 format (e.g., '2024-01-15T12:00:00Z')");
|
|
20
|
+
const linkTypeEnum = zod_1.z
|
|
21
|
+
.enum(["other", "runbook", "image", "package"])
|
|
22
|
+
.optional()
|
|
23
|
+
.describe("Type of asset link (default: other)");
|
|
24
|
+
const CreateReleaseSchema = zod_1.z.object({
|
|
25
|
+
action: zod_1.z.literal("create").describe("Create a new release for an existing or new tag"),
|
|
26
|
+
project_id: projectIdField,
|
|
27
|
+
tag_name: tagNameField,
|
|
28
|
+
name: nameField,
|
|
29
|
+
description: descriptionField,
|
|
30
|
+
ref: zod_1.z
|
|
31
|
+
.string()
|
|
32
|
+
.optional()
|
|
33
|
+
.describe("Branch/commit SHA to create tag from (if tag does not exist)"),
|
|
34
|
+
tag_message: zod_1.z
|
|
35
|
+
.string()
|
|
36
|
+
.optional()
|
|
37
|
+
.describe("Annotation message for the tag (creates annotated tag)"),
|
|
38
|
+
milestones: milestonesField,
|
|
39
|
+
released_at: releasedAtField,
|
|
40
|
+
assets: zod_1.z
|
|
41
|
+
.object({
|
|
42
|
+
links: zod_1.z
|
|
43
|
+
.array(zod_1.z.object({
|
|
44
|
+
name: zod_1.z.string().describe("Display name for the asset link"),
|
|
45
|
+
url: zod_1.z.string().url().describe("URL of the asset"),
|
|
46
|
+
direct_asset_path: zod_1.z
|
|
47
|
+
.string()
|
|
48
|
+
.optional()
|
|
49
|
+
.describe("Path for direct asset download (creates permanent URL)"),
|
|
50
|
+
link_type: linkTypeEnum,
|
|
51
|
+
}))
|
|
52
|
+
.optional()
|
|
53
|
+
.describe("Asset links to create with the release"),
|
|
54
|
+
})
|
|
55
|
+
.optional()
|
|
56
|
+
.describe("Release assets configuration"),
|
|
57
|
+
});
|
|
58
|
+
const UpdateReleaseSchema = zod_1.z.object({
|
|
59
|
+
action: zod_1.z.literal("update").describe("Update an existing release"),
|
|
60
|
+
project_id: projectIdField,
|
|
61
|
+
tag_name: tagNameField,
|
|
62
|
+
name: nameField,
|
|
63
|
+
description: descriptionField,
|
|
64
|
+
milestones: milestonesField,
|
|
65
|
+
released_at: releasedAtField,
|
|
66
|
+
});
|
|
67
|
+
const DeleteReleaseSchema = zod_1.z.object({
|
|
68
|
+
action: zod_1.z.literal("delete").describe("Delete a release (preserves the Git tag)"),
|
|
69
|
+
project_id: projectIdField,
|
|
70
|
+
tag_name: tagNameField,
|
|
71
|
+
});
|
|
72
|
+
const CreateReleaseLinkSchema = zod_1.z.object({
|
|
73
|
+
action: zod_1.z.literal("create_link").describe("Add an asset link to an existing release"),
|
|
74
|
+
project_id: projectIdField,
|
|
75
|
+
tag_name: tagNameField,
|
|
76
|
+
name: zod_1.z.string().describe("Display name for the asset link (must be unique per release)"),
|
|
77
|
+
url: zod_1.z.string().url().describe("URL of the asset (must be unique per release)"),
|
|
78
|
+
direct_asset_path: zod_1.z
|
|
79
|
+
.string()
|
|
80
|
+
.optional()
|
|
81
|
+
.describe("Path for direct asset download (e.g., '/binaries/linux-amd64')"),
|
|
82
|
+
link_type: linkTypeEnum,
|
|
83
|
+
});
|
|
84
|
+
const DeleteReleaseLinkSchema = zod_1.z.object({
|
|
85
|
+
action: zod_1.z.literal("delete_link").describe("Remove an asset link from a release"),
|
|
86
|
+
project_id: projectIdField,
|
|
87
|
+
tag_name: tagNameField,
|
|
88
|
+
link_id: utils_1.requiredId.describe("The ID of the asset link to delete"),
|
|
89
|
+
});
|
|
90
|
+
exports.ManageReleaseSchema = zod_1.z.discriminatedUnion("action", [
|
|
91
|
+
CreateReleaseSchema,
|
|
92
|
+
UpdateReleaseSchema,
|
|
93
|
+
DeleteReleaseSchema,
|
|
94
|
+
CreateReleaseLinkSchema,
|
|
95
|
+
DeleteReleaseLinkSchema,
|
|
96
|
+
]);
|
|
97
|
+
//# sourceMappingURL=schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/entities/releases/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,7 +47,7 @@ exports.webhooksToolRegistry = new Map([
|
|
|
47
47
|
"list_webhooks",
|
|
48
48
|
{
|
|
49
49
|
name: "list_webhooks",
|
|
50
|
-
description: "List all webhooks configured for a project or group. Use to discover existing integrations, audit webhook configurations, debug delivery issues, or understand event subscriptions. Shows webhook URLs, enabled event types, SSL settings, and delivery status. Group webhooks
|
|
50
|
+
description: "List all webhooks configured for a project or group. Use to discover existing integrations, audit webhook configurations, debug delivery issues, or understand event subscriptions. Shows webhook URLs, enabled event types, SSL settings, and delivery status. Group webhooks are inherited by all child projects.",
|
|
51
51
|
inputSchema: z.toJSONSchema(schema_readonly_1.ListWebhooksSchema),
|
|
52
52
|
gate: { envVar: "USE_WEBHOOKS", defaultValue: true },
|
|
53
53
|
handler: async (args) => {
|
|
@@ -78,7 +78,7 @@ exports.webhooksToolRegistry = new Map([
|
|
|
78
78
|
"manage_webhook",
|
|
79
79
|
{
|
|
80
80
|
name: "manage_webhook",
|
|
81
|
-
description: "Manage webhooks with full CRUD operations plus testing. Actions: 'create' (add new webhook with URL and event types), 'read' (get webhook details
|
|
81
|
+
description: "Manage webhooks with full CRUD operations plus testing. Actions: 'create' (add new webhook with URL and event types), 'read' (get webhook details), 'update' (modify URL, events, or settings), 'delete' (remove webhook), 'test' (trigger test delivery for specific event type). Use for setting up CI/CD automation, configuring notifications, integrating external systems, or managing event subscriptions.",
|
|
82
82
|
inputSchema: z.toJSONSchema(schema_1.ManageWebhookSchema),
|
|
83
83
|
gate: { envVar: "USE_WEBHOOKS", defaultValue: true },
|
|
84
84
|
handler: async (args) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/entities/webhooks/registry.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyKA,oEAOC;AAKD,gEAEC;AAKD,4DAQC;AApMD,uCAAyB;AACzB,uDAAuD;AACvD,qCAA+C;AAC/C,uDAAyD;AAGzD,yCAA8C;AAQjC,QAAA,oBAAoB,GAAiB,IAAI,GAAG,CAAiC;IAKxF;QACE,eAAe;QACf;YACE,IAAI,EAAE,eAAe;YACrB,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/entities/webhooks/registry.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyKA,oEAOC;AAKD,gEAEC;AAKD,4DAQC;AApMD,uCAAyB;AACzB,uDAAuD;AACvD,qCAA+C;AAC/C,uDAAyD;AAGzD,yCAA8C;AAQjC,QAAA,oBAAoB,GAAiB,IAAI,GAAG,CAAiC;IAKxF;QACE,eAAe;QACf;YACE,IAAI,EAAE,eAAe;YACrB,WAAW,EACT,qTAAqT;YACvT,WAAW,EAAE,CAAC,CAAC,YAAY,CAAC,oCAAkB,CAAC;YAC/C,IAAI,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,IAAI,EAAE;YACpD,OAAO,EAAE,KAAK,EAAE,IAAa,EAAE,EAAE;gBAC/B,MAAM,KAAK,GAAG,oCAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAG7C,IAAI,IAAA,uBAAc,EAAC,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;oBACjD,MAAM,IAAI,KAAK,CAAC,UAAU,KAAK,CAAC,KAAK,yCAAyC,CAAC,CAAC;gBAClF,CAAC;gBAED,QAAQ,KAAK,CAAC,KAAK,EAAE,CAAC;oBACpB,KAAK,SAAS,CAAC,CAAC,CAAC;wBAEf,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,CAAC;wBAC3D,OAAO,mBAAM,CAAC,GAAG,CAAC,YAAY,kBAAkB,CAAC,SAAS,CAAC,QAAQ,EAAE;4BACnE,KAAK,EAAE,IAAA,oBAAO,EAAC,WAAW,EAAE,EAAE,CAAC;yBAChC,CAAC,CAAC;oBACL,CAAC;oBAED,KAAK,OAAO,CAAC,CAAC,CAAC;wBAEb,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,CAAC;wBACzD,OAAO,mBAAM,CAAC,GAAG,CAAC,UAAU,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE;4BAC/D,KAAK,EAAE,IAAA,oBAAO,EAAC,WAAW,EAAE,EAAE,CAAC;yBAChC,CAAC,CAAC;oBACL,CAAC;oBAGD;wBACE,MAAM,IAAI,KAAK,CAAC,kBAAmB,KAA2B,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC5E,CAAC;YACH,CAAC;SACF;KACF;IAMD;QACE,gBAAgB;QAChB;YACE,IAAI,EAAE,gBAAgB;YACtB,WAAW,EACT,mZAAmZ;YACrZ,WAAW,EAAE,CAAC,CAAC,YAAY,CAAC,4BAAmB,CAAC;YAChD,IAAI,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,IAAI,EAAE;YACpD,OAAO,EAAE,KAAK,EAAE,IAAa,EAAE,EAAE;gBAC/B,MAAM,KAAK,GAAG,4BAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAG9C,IAAI,IAAA,uBAAc,EAAC,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;oBACnD,MAAM,IAAI,KAAK,CAAC,WAAW,KAAK,CAAC,MAAM,0CAA0C,CAAC,CAAC;gBACrF,CAAC;gBAGD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,MAAM,CAAC;gBAChE,IAAI,UAAU,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC1C,MAAM,IAAI,KAAK,CACb,cAAc,KAAK,CAAC,MAAM,sEAAsE,CACjG,CAAC;gBACJ,CAAC;gBAGD,MAAM,WAAW,GAAG,CAAC,KAA0B,EAAE,SAAkB,EAAE,OAAgB,EAAE,EAAE;oBACvF,IAAI,KAAK,KAAK,SAAS,IAAI,SAAS,EAAE,CAAC;wBACrC,OAAO,YAAY,kBAAkB,CAAC,SAAS,CAAC,QAAQ,CAAC;oBAC3D,CAAC;yBAAM,IAAI,KAAK,KAAK,OAAO,IAAI,OAAO,EAAE,CAAC;wBACxC,OAAO,UAAU,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC;oBACvD,CAAC;oBACD,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBAC/D,CAAC,CAAC;gBAGF,MAAM,gBAAgB,GAAG,CAAC,IAA6B,EAA2B,EAAE;oBAClF,MAAM,IAAI,GAA4B,EAAE,CAAC;oBACzC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;wBAChD,IACE,KAAK,KAAK,SAAS;4BACnB,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAC/E,CAAC;4BACD,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;wBACpB,CAAC;oBACH,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC;gBAEF,QAAQ,KAAK,CAAC,MAAM,EAAE,CAAC;oBACrB,KAAK,QAAQ,CAAC,CAAC,CAAC;wBAEd,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;wBAE1E,OAAO,mBAAM,CAAC,IAAI,CAAC,QAAQ,EAAE;4BAC3B,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC;4BAC7B,WAAW,EAAE,MAAM;yBACpB,CAAC,CAAC;oBACL,CAAC;oBAED,KAAK,MAAM,CAAC,CAAC,CAAC;wBAEZ,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;wBAE1E,OAAO,mBAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;oBACnD,CAAC;oBAED,KAAK,QAAQ,CAAC,CAAC,CAAC;wBAEd,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;wBAE1E,OAAO,mBAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE;4BAC/C,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC;4BAC7B,WAAW,EAAE,MAAM;yBACpB,CAAC,CAAC;oBACL,CAAC;oBAED,KAAK,QAAQ,CAAC,CAAC,CAAC;wBAEd,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;wBAE1E,MAAM,mBAAM,CAAC,MAAM,CAAC,GAAG,QAAQ,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;wBACnD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC;oBACpE,CAAC;oBAED,KAAK,MAAM,CAAC,CAAC,CAAC;wBAEZ,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;wBAE1E,OAAO,mBAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,IAAI,KAAK,CAAC,MAAM,SAAS,KAAK,CAAC,OAAO,EAAE,EAAE;4BACtE,WAAW,EAAE,MAAM;yBACpB,CAAC,CAAC;oBACL,CAAC;oBAGD;wBACE,MAAM,IAAI,KAAK,CAAC,mBAAoB,KAA4B,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC/E,CAAC;YACH,CAAC;SACF;KACF;CACF,CAAC,CAAC;AAKH,SAAgB,4BAA4B;IAM1C,OAAO,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;AAC7C,CAAC;AAKD,SAAgB,0BAA0B;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,4BAAoB,CAAC,MAAM,EAAE,CAAC,CAAC;AACnD,CAAC;AAKD,SAAgB,wBAAwB,CAAC,eAAwB,KAAK;IACpE,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,aAAa,GAAG,4BAA4B,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC,IAAI,CAAC,4BAAoB,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAC7D,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAClC,CAAC;IACJ,CAAC;IACD,OAAO,0BAA0B,EAAE,CAAC;AACtC,CAAC"}
|
|
@@ -13,6 +13,7 @@ const registry_9 = require("./entities/workitems/registry");
|
|
|
13
13
|
const registry_10 = require("./entities/webhooks/registry");
|
|
14
14
|
const registry_11 = require("./entities/snippets/registry");
|
|
15
15
|
const registry_12 = require("./entities/integrations/registry");
|
|
16
|
+
const registry_13 = require("./entities/releases/registry");
|
|
16
17
|
const config_1 = require("./config");
|
|
17
18
|
const ToolAvailability_1 = require("./services/ToolAvailability");
|
|
18
19
|
const logger_1 = require("./logger");
|
|
@@ -71,6 +72,9 @@ class RegistryManager {
|
|
|
71
72
|
if (config_1.USE_INTEGRATIONS) {
|
|
72
73
|
this.registries.set("integrations", registry_12.integrationsToolRegistry);
|
|
73
74
|
}
|
|
75
|
+
if (config_1.USE_RELEASES) {
|
|
76
|
+
this.registries.set("releases", registry_13.releasesToolRegistry);
|
|
77
|
+
}
|
|
74
78
|
}
|
|
75
79
|
loadDescriptionOverrides() {
|
|
76
80
|
this.descriptionOverrides = (0, config_1.getToolDescriptionOverrides)();
|
|
@@ -117,6 +121,9 @@ class RegistryManager {
|
|
|
117
121
|
if (config_1.USE_INTEGRATIONS) {
|
|
118
122
|
readOnlyTools.push(...(0, registry_12.getIntegrationsReadOnlyToolNames)());
|
|
119
123
|
}
|
|
124
|
+
if (config_1.USE_RELEASES) {
|
|
125
|
+
readOnlyTools.push(...(0, registry_13.getReleasesReadOnlyToolNames)());
|
|
126
|
+
}
|
|
120
127
|
return readOnlyTools;
|
|
121
128
|
}
|
|
122
129
|
getReadOnlyTools() {
|
|
@@ -210,6 +217,7 @@ class RegistryManager {
|
|
|
210
217
|
const useSnippets = process.env.USE_SNIPPETS !== "false";
|
|
211
218
|
const useWebhooks = process.env.USE_WEBHOOKS !== "false";
|
|
212
219
|
const useIntegrations = process.env.USE_INTEGRATIONS !== "false";
|
|
220
|
+
const useReleases = process.env.USE_RELEASES !== "false";
|
|
213
221
|
const registriesToUse = new Map();
|
|
214
222
|
registriesToUse.set("core", registry_1.coreToolRegistry);
|
|
215
223
|
if (useLabels)
|
|
@@ -234,6 +242,8 @@ class RegistryManager {
|
|
|
234
242
|
registriesToUse.set("webhooks", registry_10.webhooksToolRegistry);
|
|
235
243
|
if (useIntegrations)
|
|
236
244
|
registriesToUse.set("integrations", registry_12.integrationsToolRegistry);
|
|
245
|
+
if (useReleases)
|
|
246
|
+
registriesToUse.set("releases", registry_13.releasesToolRegistry);
|
|
237
247
|
const descOverrides = (0, config_1.getToolDescriptionOverrides)();
|
|
238
248
|
for (const registry of registriesToUse.values()) {
|
|
239
249
|
for (const [toolName, tool] of registry) {
|
|
@@ -274,6 +284,7 @@ class RegistryManager {
|
|
|
274
284
|
registry_11.snippetsToolRegistry,
|
|
275
285
|
registry_10.webhooksToolRegistry,
|
|
276
286
|
registry_12.integrationsToolRegistry,
|
|
287
|
+
registry_13.releasesToolRegistry,
|
|
277
288
|
];
|
|
278
289
|
for (const registry of allRegistries) {
|
|
279
290
|
for (const [, tool] of registry) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry-manager.js","sourceRoot":"","sources":["../../src/registry-manager.ts"],"names":[],"mappings":";;;AACA,uDAAsF;AACtF,yDAA4F;AAC5F,sDAAmF;AACnF,wDAAyF;AACzF,6DAGwC;AACxC,4DAGuC;AACvC,4DAGuC;AACvC,uDAAsF;AACtF,4DAGuC;AACvC,4DAAkG;AAClG,4DAAkG;AAClG,gEAG0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"registry-manager.js","sourceRoot":"","sources":["../../src/registry-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -354,6 +354,14 @@ class ToolAvailability {
|
|
|
354
354
|
},
|
|
355
355
|
manage_merge_request: {
|
|
356
356
|
default: { tier: "free", minVersion: 8.0 },
|
|
357
|
+
actions: {
|
|
358
|
+
create: { tier: "free", minVersion: 8.0 },
|
|
359
|
+
update: { tier: "free", minVersion: 8.0 },
|
|
360
|
+
merge: { tier: "free", minVersion: 8.0 },
|
|
361
|
+
approve: { tier: "premium", minVersion: 10.6, notes: "MR approvals" },
|
|
362
|
+
unapprove: { tier: "premium", minVersion: 10.6, notes: "MR approvals" },
|
|
363
|
+
get_approval_state: { tier: "premium", minVersion: 13.8, notes: "MR approval state" },
|
|
364
|
+
},
|
|
357
365
|
},
|
|
358
366
|
manage_mr_discussion: {
|
|
359
367
|
default: { tier: "free", minVersion: 8.0 },
|
|
@@ -364,6 +372,8 @@ class ToolAvailability {
|
|
|
364
372
|
update: { tier: "free", minVersion: 8.0 },
|
|
365
373
|
apply_suggestion: { tier: "free", minVersion: 13.0 },
|
|
366
374
|
apply_suggestions: { tier: "free", minVersion: 13.0 },
|
|
375
|
+
resolve: { tier: "free", minVersion: 10.0, notes: "Resolve discussion threads" },
|
|
376
|
+
suggest: { tier: "free", minVersion: 10.5, notes: "Code suggestions" },
|
|
367
377
|
},
|
|
368
378
|
},
|
|
369
379
|
manage_draft_notes: {
|
|
@@ -455,6 +465,12 @@ class ToolAvailability {
|
|
|
455
465
|
download_attachment: {
|
|
456
466
|
default: { tier: "free", minVersion: 10.0 },
|
|
457
467
|
},
|
|
468
|
+
browse_releases: {
|
|
469
|
+
default: { tier: "free", minVersion: 11.7 },
|
|
470
|
+
},
|
|
471
|
+
manage_release: {
|
|
472
|
+
default: { tier: "free", minVersion: 11.7 },
|
|
473
|
+
},
|
|
458
474
|
};
|
|
459
475
|
static getActionRequirement(toolName, action) {
|
|
460
476
|
const toolReq = this.actionRequirements[toolName];
|