repoburg 1.3.134 → 1.3.136

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 (52) hide show
  1. package/.playwright-mcp/console-2026-05-14T23-58-12-858Z.log +28 -0
  2. package/.playwright-mcp/console-2026-05-15T00-15-00-760Z.log +81 -0
  3. package/.playwright-mcp/page-2026-05-14T23-58-13-064Z.yml +3 -0
  4. package/.playwright-mcp/page-2026-05-14T23-58-33-500Z.yml +1561 -0
  5. package/.playwright-mcp/page-2026-05-15T00-15-00-945Z.yml +3 -0
  6. package/backend/.env +2 -2
  7. package/backend/database.sqlite +0 -0
  8. package/backend/dist/src/core-entities/ai-action.entity.js +2 -1
  9. package/backend/dist/src/core-entities/ai-action.entity.js.map +1 -1
  10. package/backend/dist/src/core-entities/execution-log.entity.js +2 -1
  11. package/backend/dist/src/core-entities/execution-log.entity.js.map +1 -1
  12. package/backend/dist/src/llm-orchestration/action-handlers/manage-context-snippets.handler.d.ts +18 -0
  13. package/backend/dist/src/llm-orchestration/action-handlers/manage-context-snippets.handler.js +224 -0
  14. package/backend/dist/src/llm-orchestration/action-handlers/manage-context-snippets.handler.js.map +1 -0
  15. package/backend/dist/src/llm-orchestration/action-handlers/manage-context-templates.handler.d.ts +20 -0
  16. package/backend/dist/src/llm-orchestration/action-handlers/manage-context-templates.handler.js +309 -0
  17. package/backend/dist/src/llm-orchestration/action-handlers/manage-context-templates.handler.js.map +1 -0
  18. package/backend/dist/src/llm-orchestration/action-handlers/manage-custom-snippets.handler.d.ts +19 -0
  19. package/backend/dist/src/llm-orchestration/action-handlers/manage-custom-snippets.handler.js +249 -0
  20. package/backend/dist/src/llm-orchestration/action-handlers/manage-custom-snippets.handler.js.map +1 -0
  21. package/backend/dist/src/llm-orchestration/action-handlers/manage-custom-variables.handler.d.ts +17 -0
  22. package/backend/dist/src/llm-orchestration/action-handlers/manage-custom-variables.handler.js +227 -0
  23. package/backend/dist/src/llm-orchestration/action-handlers/manage-custom-variables.handler.js.map +1 -0
  24. package/backend/dist/src/llm-orchestration/action-handlers/manage-mcp-servers.handler.d.ts +18 -0
  25. package/backend/dist/src/llm-orchestration/action-handlers/manage-mcp-servers.handler.js +246 -0
  26. package/backend/dist/src/llm-orchestration/action-handlers/manage-mcp-servers.handler.js.map +1 -0
  27. package/backend/dist/src/llm-orchestration/action-handlers/manage-sub-agents.handler.d.ts +19 -0
  28. package/backend/dist/src/llm-orchestration/action-handlers/manage-sub-agents.handler.js +297 -0
  29. package/backend/dist/src/llm-orchestration/action-handlers/manage-sub-agents.handler.js.map +1 -0
  30. package/backend/dist/src/llm-orchestration/action-handlers/manage-system-prompts.handler.d.ts +27 -0
  31. package/backend/dist/src/llm-orchestration/action-handlers/manage-system-prompts.handler.js +493 -0
  32. package/backend/dist/src/llm-orchestration/action-handlers/manage-system-prompts.handler.js.map +1 -0
  33. package/backend/dist/src/llm-orchestration/action-handlers/manage-tool-hooks.handler.d.ts +20 -0
  34. package/backend/dist/src/llm-orchestration/action-handlers/manage-tool-hooks.handler.js +313 -0
  35. package/backend/dist/src/llm-orchestration/action-handlers/manage-tool-hooks.handler.js.map +1 -0
  36. package/backend/dist/src/llm-orchestration/llm-orchestration.module.js +41 -1
  37. package/backend/dist/src/llm-orchestration/llm-orchestration.module.js.map +1 -1
  38. package/backend/dist/src/llm-provider/ollama-llm.provider.js +2 -0
  39. package/backend/dist/src/llm-provider/ollama-llm.provider.js.map +1 -1
  40. package/backend/dist/src/seeding/data/sub-agents/config-manager.d.ts +4 -0
  41. package/backend/dist/src/seeding/data/sub-agents/config-manager.js +25 -0
  42. package/backend/dist/src/seeding/data/sub-agents/config-manager.js.map +1 -0
  43. package/backend/dist/src/seeding/data/system-prompts/config-manager-agent.d.ts +3 -0
  44. package/backend/dist/src/seeding/data/system-prompts/config-manager-agent.js +78 -0
  45. package/backend/dist/src/seeding/data/system-prompts/config-manager-agent.js.map +1 -0
  46. package/backend/dist/src/session-inputs/session-inputs.controller.d.ts +1 -0
  47. package/backend/dist/src/session-inputs/session-inputs.controller.js +22 -0
  48. package/backend/dist/src/session-inputs/session-inputs.controller.js.map +1 -1
  49. package/backend/dist/src/system-prompts/system-prompts.service.js +8 -0
  50. package/backend/dist/src/system-prompts/system-prompts.service.js.map +1 -1
  51. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  52. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manage-context-templates.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/manage-context-templates.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { ActionHandler } from './action-handler.interface';
2
+ import { ActionExecutionResult, PlanExecutionContext, ToolMetadata } from '../llm-orchestration.interfaces';
3
+ import { CustomSnippetsService } from '../../custom-snippets/custom-snippets.service';
4
+ export type CustomSnippetAction = 'list' | 'get' | 'create' | 'update' | 'delete' | 'duplicate';
5
+ export declare class ManageCustomSnippetsHandler implements ActionHandler {
6
+ private readonly customSnippetsService;
7
+ readonly toolName = "manage_custom_snippets";
8
+ private readonly logger;
9
+ constructor(customSnippetsService: CustomSnippetsService);
10
+ getMetadata(): ToolMetadata;
11
+ getDefinition(): string;
12
+ execute(args: Record<string, any>, _context: PlanExecutionContext): Promise<ActionExecutionResult>;
13
+ private handleList;
14
+ private handleGet;
15
+ private handleCreate;
16
+ private handleUpdate;
17
+ private handleDelete;
18
+ private handleDuplicate;
19
+ }
@@ -0,0 +1,249 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var ManageCustomSnippetsHandler_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.ManageCustomSnippetsHandler = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const custom_snippets_service_1 = require("../../custom-snippets/custom-snippets.service");
16
+ let ManageCustomSnippetsHandler = ManageCustomSnippetsHandler_1 = class ManageCustomSnippetsHandler {
17
+ constructor(customSnippetsService) {
18
+ this.customSnippetsService = customSnippetsService;
19
+ this.toolName = 'manage_custom_snippets';
20
+ this.logger = new common_1.Logger(ManageCustomSnippetsHandler_1.name);
21
+ }
22
+ getMetadata() {
23
+ return {
24
+ name: this.toolName,
25
+ description: 'Manage RepoBurg custom snippets — text expansion templates triggered by a prefix. Similar to VS Code snippets.',
26
+ arguments: [
27
+ {
28
+ name: 'action',
29
+ type: 'string',
30
+ description: 'Operation: list|get|create|update|delete|duplicate',
31
+ required: true,
32
+ },
33
+ {
34
+ name: 'id',
35
+ type: 'string',
36
+ description: 'UUID of the custom snippet (required for get/update/delete/duplicate)',
37
+ required: false,
38
+ },
39
+ {
40
+ name: 'data',
41
+ type: 'object',
42
+ description: 'Fields for create/update. Keys: prefix (required for create, unique trigger), description, body (required for create, expanded content), scope.',
43
+ required: false,
44
+ },
45
+ ],
46
+ };
47
+ }
48
+ getDefinition() {
49
+ return `## manage_custom_snippets
50
+
51
+ Manage RepoBurg custom snippets — text expansion templates triggered by a prefix. Similar to VS Code snippets. Type the prefix to expand into the body content. Useful for frequently-used code patterns, templates, or prompts.
52
+
53
+ ### Actions:
54
+
55
+ - **list** — List all custom snippets (returns id, prefix, description, scope)
56
+ - **get** — Get full details of a snippet by ID
57
+ - **create** — Create a new snippet. Provide \`data\` with: prefix (required, unique trigger), description (required), body (required, expanded content), scope (optional)
58
+ - **update** — Update a snippet. Provide \`id\` and \`data\` with fields to change
59
+ - **delete** — Delete a snippet by ID
60
+ - **duplicate** — Duplicate a snippet by ID
61
+
62
+ ### Parameters:
63
+ - **action** (required): Operation to perform
64
+ - **id** (optional): UUID of the custom snippet
65
+ - **data** (optional): Object with snippet fields
66
+
67
+ ### Examples:
68
+
69
+ List all snippets:
70
+ \`\`\`typescript
71
+ tool: manage_custom_snippets
72
+ args: { action: "list" }
73
+ \`\`\`
74
+
75
+ Create a snippet:
76
+ \`\`\`typescript
77
+ tool: manage_custom_snippets
78
+ args: { action: "create", data: { prefix: "auth-module", description: "Creates a basic auth module template", body: "// auth module template code here", scope: "prompt" } }
79
+ \`\`\``;
80
+ }
81
+ async execute(args, _context) {
82
+ const { action } = args;
83
+ try {
84
+ switch (action) {
85
+ case 'list':
86
+ return await this.handleList();
87
+ case 'get':
88
+ return await this.handleGet(args.id);
89
+ case 'create':
90
+ return await this.handleCreate(args.data);
91
+ case 'update':
92
+ return await this.handleUpdate(args.id, args.data);
93
+ case 'delete':
94
+ return await this.handleDelete(args.id);
95
+ case 'duplicate':
96
+ return await this.handleDuplicate(args.id);
97
+ default:
98
+ return {
99
+ status: 'FAILURE',
100
+ summary: `Unknown action "${action}". Valid actions: list, get, create, update, delete, duplicate`,
101
+ error_message: `Unknown action: ${action}`,
102
+ execution_log: {
103
+ output: '',
104
+ error_message: `Unknown action: ${action}`,
105
+ },
106
+ };
107
+ }
108
+ }
109
+ catch (error) {
110
+ this.logger.error(`manage_custom_snippets error: ${error.message}`, error.stack);
111
+ return {
112
+ status: 'FAILURE',
113
+ summary: `Failed to ${action} custom snippet: ${error.message}`,
114
+ error_message: error.message,
115
+ execution_log: { output: '', error_message: error.message },
116
+ };
117
+ }
118
+ }
119
+ async handleList() {
120
+ const snippets = await this.customSnippetsService.findAll();
121
+ const summary = snippets.map((s) => ({
122
+ id: s.id,
123
+ prefix: s.prefix,
124
+ description: s.description,
125
+ scope: s.scope,
126
+ }));
127
+ return {
128
+ status: 'SUCCESS',
129
+ summary: `Found ${snippets.length} custom snippet(s).`,
130
+ execution_log: {
131
+ output: JSON.stringify(summary, null, 2),
132
+ error_message: '',
133
+ },
134
+ persisted_args: {},
135
+ };
136
+ }
137
+ async handleGet(id) {
138
+ if (!id) {
139
+ return {
140
+ status: 'FAILURE',
141
+ summary: 'id is required for get action',
142
+ error_message: 'Missing id',
143
+ execution_log: { output: '', error_message: 'Missing id' },
144
+ };
145
+ }
146
+ const snippet = await this.customSnippetsService.findOne(id);
147
+ return {
148
+ status: 'SUCCESS',
149
+ summary: `Custom snippet "${snippet.prefix}"`,
150
+ execution_log: {
151
+ output: JSON.stringify(snippet, null, 2),
152
+ error_message: '',
153
+ },
154
+ persisted_args: {},
155
+ };
156
+ }
157
+ async handleCreate(data) {
158
+ if (!data || !data.prefix || !data.description || !data.body) {
159
+ return {
160
+ status: 'FAILURE',
161
+ summary: 'data.prefix, data.description, and data.body are required for create',
162
+ error_message: 'Missing required fields',
163
+ execution_log: { output: '', error_message: 'Missing required fields' },
164
+ };
165
+ }
166
+ const snippet = await this.customSnippetsService.create({
167
+ prefix: data.prefix,
168
+ description: data.description,
169
+ body: data.body,
170
+ scope: data.scope,
171
+ });
172
+ const result = { id: snippet.id, prefix: snippet.prefix };
173
+ return {
174
+ status: 'SUCCESS',
175
+ summary: `Custom snippet "${snippet.prefix}" created with ID ${snippet.id}`,
176
+ execution_log: {
177
+ output: JSON.stringify(result, null, 2),
178
+ error_message: '',
179
+ },
180
+ persisted_args: {},
181
+ };
182
+ }
183
+ async handleUpdate(id, data) {
184
+ if (!id || !data) {
185
+ return {
186
+ status: 'FAILURE',
187
+ summary: 'id and data are required for update action',
188
+ error_message: 'Missing parameters',
189
+ execution_log: { output: '', error_message: 'Missing parameters' },
190
+ };
191
+ }
192
+ const snippet = await this.customSnippetsService.update(id, data);
193
+ return {
194
+ status: 'SUCCESS',
195
+ summary: `Custom snippet "${snippet.prefix}" updated`,
196
+ execution_log: {
197
+ output: JSON.stringify({ id: snippet.id, prefix: snippet.prefix }, null, 2),
198
+ error_message: '',
199
+ },
200
+ persisted_args: {},
201
+ };
202
+ }
203
+ async handleDelete(id) {
204
+ if (!id) {
205
+ return {
206
+ status: 'FAILURE',
207
+ summary: 'id is required for delete action',
208
+ error_message: 'Missing id',
209
+ execution_log: { output: '', error_message: 'Missing id' },
210
+ };
211
+ }
212
+ await this.customSnippetsService.remove(id);
213
+ return {
214
+ status: 'SUCCESS',
215
+ summary: `Custom snippet ${id} deleted`,
216
+ execution_log: {
217
+ output: JSON.stringify({ deleted: true, id }),
218
+ error_message: '',
219
+ },
220
+ persisted_args: {},
221
+ };
222
+ }
223
+ async handleDuplicate(id) {
224
+ if (!id) {
225
+ return {
226
+ status: 'FAILURE',
227
+ summary: 'id is required for duplicate action',
228
+ error_message: 'Missing id',
229
+ execution_log: { output: '', error_message: 'Missing id' },
230
+ };
231
+ }
232
+ const snippet = await this.customSnippetsService.duplicate(id);
233
+ return {
234
+ status: 'SUCCESS',
235
+ summary: `Custom snippet duplicated as "${snippet.prefix}"`,
236
+ execution_log: {
237
+ output: JSON.stringify({ id: snippet.id, prefix: snippet.prefix }, null, 2),
238
+ error_message: '',
239
+ },
240
+ persisted_args: {},
241
+ };
242
+ }
243
+ };
244
+ exports.ManageCustomSnippetsHandler = ManageCustomSnippetsHandler;
245
+ exports.ManageCustomSnippetsHandler = ManageCustomSnippetsHandler = ManageCustomSnippetsHandler_1 = __decorate([
246
+ (0, common_1.Injectable)(),
247
+ __metadata("design:paramtypes", [custom_snippets_service_1.CustomSnippetsService])
248
+ ], ManageCustomSnippetsHandler);
249
+ //# sourceMappingURL=manage-custom-snippets.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manage-custom-snippets.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/manage-custom-snippets.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { ActionHandler } from './action-handler.interface';
2
+ import { ActionExecutionResult, PlanExecutionContext, ToolMetadata } from '../llm-orchestration.interfaces';
3
+ import { CustomVariablesService } from '../../custom-variables/custom-variables.service';
4
+ export type CustomVariableAction = 'list' | 'create' | 'update' | 'delete';
5
+ export declare class ManageCustomVariablesHandler implements ActionHandler {
6
+ private readonly customVariablesService;
7
+ readonly toolName = "manage_custom_variables";
8
+ private readonly logger;
9
+ constructor(customVariablesService: CustomVariablesService);
10
+ getMetadata(): ToolMetadata;
11
+ getDefinition(): string;
12
+ execute(args: Record<string, any>, _context: PlanExecutionContext): Promise<ActionExecutionResult>;
13
+ private handleList;
14
+ private handleCreate;
15
+ private handleUpdate;
16
+ private handleDelete;
17
+ }
@@ -0,0 +1,227 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var ManageCustomVariablesHandler_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.ManageCustomVariablesHandler = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const custom_variables_service_1 = require("../../custom-variables/custom-variables.service");
16
+ let ManageCustomVariablesHandler = ManageCustomVariablesHandler_1 = class ManageCustomVariablesHandler {
17
+ constructor(customVariablesService) {
18
+ this.customVariablesService = customVariablesService;
19
+ this.toolName = 'manage_custom_variables';
20
+ this.logger = new common_1.Logger(ManageCustomVariablesHandler_1.name);
21
+ }
22
+ getMetadata() {
23
+ return {
24
+ name: this.toolName,
25
+ description: 'Manage RepoBurg custom variables — key-value pairs available in context templates via it.variables.KEY.',
26
+ arguments: [
27
+ {
28
+ name: 'action',
29
+ type: 'string',
30
+ description: 'Operation: list|create|update|delete',
31
+ required: true,
32
+ },
33
+ {
34
+ name: 'id',
35
+ type: 'string',
36
+ description: 'UUID of the variable (required for update/delete)',
37
+ required: false,
38
+ },
39
+ {
40
+ name: 'data',
41
+ type: 'object',
42
+ description: 'Fields for create/update. Keys: key (required for create, unique identifier), value (required for create), enabled (boolean), is_freq_used (boolean), order_number (number).',
43
+ required: false,
44
+ },
45
+ ],
46
+ };
47
+ }
48
+ getDefinition() {
49
+ return `## manage_custom_variables
50
+
51
+ Manage RepoBurg custom variables — key-value pairs available in context templates via \`it.variables.KEY\`. Use for frequently-changing values like API endpoints, author names, project names, etc.
52
+
53
+ ### Actions:
54
+
55
+ - **list** — List all custom variables (returns id, key, value, enabled, order_number)
56
+ - **create** — Create a new variable. Provide \`data\` with: key (required, unique), value (required), enabled (default true), is_freq_used (default false), order_number (default 0)
57
+ - **update** — Update a variable. Provide \`id\` and \`data\` with fields to change
58
+ - **delete** — Delete a variable by ID
59
+
60
+ ### Parameters:
61
+ - **action** (required): Operation to perform
62
+ - **id** (optional): UUID of the variable
63
+ - **data** (optional): Object with variable fields
64
+
65
+ ### Examples:
66
+
67
+ List all variables:
68
+ \`\`\`typescript
69
+ tool: manage_custom_variables
70
+ args: { action: "list" }
71
+ \`\`\`
72
+
73
+ Create a variable:
74
+ \`\`\`typescript
75
+ tool: manage_custom_variables
76
+ args: { action: "create", data: { key: "project_name", value: "MyApp", enabled: true } }
77
+ \`\`\`
78
+
79
+ Update a variable:
80
+ \`\`\`typescript
81
+ tool: manage_custom_variables
82
+ args: { action: "update", id: "uuid-here", data: { value: "NewValue", enabled: false } }
83
+ \`\`\``;
84
+ }
85
+ async execute(args, _context) {
86
+ const { action } = args;
87
+ try {
88
+ switch (action) {
89
+ case 'list':
90
+ return await this.handleList();
91
+ case 'create':
92
+ return await this.handleCreate(args.data);
93
+ case 'update':
94
+ return await this.handleUpdate(args.id, args.data);
95
+ case 'delete':
96
+ return await this.handleDelete(args.id);
97
+ default:
98
+ return {
99
+ status: 'FAILURE',
100
+ summary: `Unknown action "${action}". Valid actions: list, create, update, delete`,
101
+ error_message: `Unknown action: ${action}`,
102
+ execution_log: {
103
+ output: '',
104
+ error_message: `Unknown action: ${action}`,
105
+ },
106
+ };
107
+ }
108
+ }
109
+ catch (error) {
110
+ this.logger.error(`manage_custom_variables error: ${error.message}`, error.stack);
111
+ return {
112
+ status: 'FAILURE',
113
+ summary: `Failed to ${action} custom variable: ${error.message}`,
114
+ error_message: error.message,
115
+ execution_log: { output: '', error_message: error.message },
116
+ };
117
+ }
118
+ }
119
+ async handleList() {
120
+ const variables = await this.customVariablesService.findAll();
121
+ const summary = variables.map((v) => ({
122
+ id: v.id,
123
+ key: v.key,
124
+ value: v.value,
125
+ enabled: v.enabled,
126
+ is_freq_used: v.is_freq_used,
127
+ order_number: v.order_number,
128
+ }));
129
+ return {
130
+ status: 'SUCCESS',
131
+ summary: `Found ${variables.length} custom variable(s).`,
132
+ execution_log: {
133
+ output: JSON.stringify(summary, null, 2),
134
+ error_message: '',
135
+ },
136
+ persisted_args: {},
137
+ };
138
+ }
139
+ async handleCreate(data) {
140
+ if (!data || !data.key || data.value === undefined || data.value === null) {
141
+ return {
142
+ status: 'FAILURE',
143
+ summary: 'data.key and data.value are required for create',
144
+ error_message: 'Missing required fields',
145
+ execution_log: { output: '', error_message: 'Missing required fields' },
146
+ };
147
+ }
148
+ const variable = await this.customVariablesService.create({
149
+ key: data.key,
150
+ value: String(data.value),
151
+ enabled: data.enabled ?? true,
152
+ is_freq_used: data.is_freq_used ?? false,
153
+ order_number: data.order_number ?? 0,
154
+ });
155
+ const result = {
156
+ id: variable.id,
157
+ key: variable.key,
158
+ value: variable.value,
159
+ };
160
+ return {
161
+ status: 'SUCCESS',
162
+ summary: `Custom variable "${variable.key}" created with ID ${variable.id}`,
163
+ execution_log: {
164
+ output: JSON.stringify(result, null, 2),
165
+ error_message: '',
166
+ },
167
+ persisted_args: {},
168
+ };
169
+ }
170
+ async handleUpdate(id, data) {
171
+ if (!id || !data) {
172
+ return {
173
+ status: 'FAILURE',
174
+ summary: 'id and data are required for update action',
175
+ error_message: 'Missing parameters',
176
+ execution_log: { output: '', error_message: 'Missing parameters' },
177
+ };
178
+ }
179
+ const updateData = {};
180
+ if (data.key !== undefined)
181
+ updateData.key = data.key;
182
+ if (data.value !== undefined)
183
+ updateData.value = String(data.value);
184
+ if (data.enabled !== undefined)
185
+ updateData.enabled = data.enabled;
186
+ if (data.is_freq_used !== undefined)
187
+ updateData.is_freq_used = data.is_freq_used;
188
+ if (data.order_number !== undefined)
189
+ updateData.order_number = data.order_number;
190
+ const variable = await this.customVariablesService.update(id, updateData);
191
+ return {
192
+ status: 'SUCCESS',
193
+ summary: `Custom variable "${variable.key}" updated`,
194
+ execution_log: {
195
+ output: JSON.stringify({ id: variable.id, key: variable.key, value: variable.value }, null, 2),
196
+ error_message: '',
197
+ },
198
+ persisted_args: {},
199
+ };
200
+ }
201
+ async handleDelete(id) {
202
+ if (!id) {
203
+ return {
204
+ status: 'FAILURE',
205
+ summary: 'id is required for delete action',
206
+ error_message: 'Missing id',
207
+ execution_log: { output: '', error_message: 'Missing id' },
208
+ };
209
+ }
210
+ await this.customVariablesService.remove(id);
211
+ return {
212
+ status: 'SUCCESS',
213
+ summary: `Custom variable ${id} deleted`,
214
+ execution_log: {
215
+ output: JSON.stringify({ deleted: true, id }),
216
+ error_message: '',
217
+ },
218
+ persisted_args: {},
219
+ };
220
+ }
221
+ };
222
+ exports.ManageCustomVariablesHandler = ManageCustomVariablesHandler;
223
+ exports.ManageCustomVariablesHandler = ManageCustomVariablesHandler = ManageCustomVariablesHandler_1 = __decorate([
224
+ (0, common_1.Injectable)(),
225
+ __metadata("design:paramtypes", [custom_variables_service_1.CustomVariablesService])
226
+ ], ManageCustomVariablesHandler);
227
+ //# sourceMappingURL=manage-custom-variables.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manage-custom-variables.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/manage-custom-variables.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { ActionHandler } from './action-handler.interface';
2
+ import { ActionExecutionResult, PlanExecutionContext, ToolMetadata } from '../llm-orchestration.interfaces';
3
+ import { McpService } from '../../mcp/mcp.service';
4
+ export type McpServerAction = 'list' | 'create' | 'toggle_active' | 'delete' | 'toggle_tools';
5
+ export declare class ManageMcpServersHandler implements ActionHandler {
6
+ private readonly mcpService;
7
+ readonly toolName = "manage_mcp_servers";
8
+ private readonly logger;
9
+ constructor(mcpService: McpService);
10
+ getMetadata(): ToolMetadata;
11
+ getDefinition(): string;
12
+ execute(args: Record<string, any>, _context: PlanExecutionContext): Promise<ActionExecutionResult>;
13
+ private handleList;
14
+ private handleCreate;
15
+ private handleToggleActive;
16
+ private handleDelete;
17
+ private handleToggleTools;
18
+ }