repoburg 1.3.142 → 1.3.144
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/backend/dist/src/agents/agents.controller.d.ts +15 -0
- package/backend/dist/src/agents/agents.controller.js +154 -0
- package/backend/dist/src/agents/agents.controller.js.map +1 -0
- package/backend/dist/src/agents/agents.module.d.ts +2 -0
- package/backend/dist/src/agents/agents.module.js +26 -0
- package/backend/dist/src/agents/agents.module.js.map +1 -0
- package/backend/dist/src/agents/agents.service.d.ts +20 -0
- package/backend/dist/src/agents/agents.service.js +141 -0
- package/backend/dist/src/agents/agents.service.js.map +1 -0
- package/backend/dist/src/agents/dto/create-agent.dto.d.ts +14 -0
- package/backend/dist/src/agents/dto/create-agent.dto.js +110 -0
- package/backend/dist/src/agents/dto/create-agent.dto.js.map +1 -0
- package/backend/dist/src/agents/dto/update-agent.dto.d.ts +12 -0
- package/backend/dist/src/agents/dto/update-agent.dto.js +93 -0
- package/backend/dist/src/agents/dto/update-agent.dto.js.map +1 -0
- package/backend/dist/src/app.module.js +4 -0
- package/backend/dist/src/app.module.js.map +1 -1
- package/backend/dist/src/core-entities/agent.entity.d.ts +20 -0
- package/backend/dist/src/core-entities/agent.entity.js +153 -0
- package/backend/dist/src/core-entities/agent.entity.js.map +1 -0
- package/backend/dist/src/core-entities/index.d.ts +1 -0
- package/backend/dist/src/core-entities/index.js +1 -0
- package/backend/dist/src/core-entities/index.js.map +1 -1
- package/backend/dist/src/llm-orchestration/action-handlers/manage-agents.handler.d.ts +20 -0
- package/backend/dist/src/llm-orchestration/action-handlers/manage-agents.handler.js +321 -0
- package/backend/dist/src/llm-orchestration/action-handlers/manage-agents.handler.js.map +1 -0
- package/backend/dist/src/llm-orchestration/llm-orchestration.module.js +7 -1
- package/backend/dist/src/llm-orchestration/llm-orchestration.module.js.map +1 -1
- package/backend/dist/src/seeding/agent-seeding.service.d.ts +12 -0
- package/backend/dist/src/seeding/agent-seeding.service.js +147 -0
- package/backend/dist/src/seeding/agent-seeding.service.js.map +1 -0
- package/backend/dist/src/seeding/data/agents/config-manager.d.ts +8 -0
- package/backend/dist/src/seeding/data/agents/config-manager.js +12 -0
- package/backend/dist/src/seeding/data/agents/config-manager.js.map +1 -0
- package/backend/dist/src/seeding/data/agents/default-agent.d.ts +8 -0
- package/backend/dist/src/seeding/data/agents/default-agent.js +12 -0
- package/backend/dist/src/seeding/data/agents/default-agent.js.map +1 -0
- package/backend/dist/src/seeding/data/context-templates/config-manager-followup-context.d.ts +9 -0
- package/backend/dist/src/seeding/data/context-templates/config-manager-followup-context.js +28 -0
- package/backend/dist/src/seeding/data/context-templates/config-manager-followup-context.js.map +1 -0
- package/backend/dist/src/seeding/data/context-templates/config-manager-initial-context.d.ts +9 -0
- package/backend/dist/src/seeding/data/context-templates/config-manager-initial-context.js +22 -0
- package/backend/dist/src/seeding/data/context-templates/config-manager-initial-context.js.map +1 -0
- package/backend/dist/src/seeding/data/system-prompts/config-manager-agent.d.ts +1 -1
- package/backend/dist/src/seeding/data/system-prompts/config-manager-agent.js +10 -2
- package/backend/dist/src/seeding/data/system-prompts/config-manager-agent.js.map +1 -1
- package/backend/dist/src/seeding/seeding.module.js +6 -1
- package/backend/dist/src/seeding/seeding.module.js.map +1 -1
- package/backend/dist/src/seeding/seeding.service.d.ts +3 -1
- package/backend/dist/src/seeding/seeding.service.js +6 -2
- package/backend/dist/src/seeding/seeding.service.js.map +1 -1
- package/backend/dist/src/sub-agents/sub-agent-runner.service.js +15 -0
- package/backend/dist/src/sub-agents/sub-agent-runner.service.js.map +1 -1
- package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -14,6 +14,7 @@ const typeorm_1 = require("@nestjs/typeorm");
|
|
|
14
14
|
const core_entities_1 = require("./core-entities");
|
|
15
15
|
const sub_agent_entity_1 = require("./sub-agents/sub-agent.entity");
|
|
16
16
|
const sub_agent_run_entity_1 = require("./sub-agents/sub-agent-run.entity");
|
|
17
|
+
const core_entities_2 = require("./core-entities");
|
|
17
18
|
const projects_module_1 = require("./projects/projects.module");
|
|
18
19
|
const sessions_module_1 = require("./sessions/sessions.module");
|
|
19
20
|
const session_inputs_module_1 = require("./session-inputs/session-inputs.module");
|
|
@@ -42,6 +43,7 @@ const message_bus_module_1 = require("./message-bus/message-bus.module");
|
|
|
42
43
|
const session_input_subscriber_1 = require("./session-inputs/session-input.subscriber");
|
|
43
44
|
const llm_call_logs_module_1 = require("./llm-call-logs/llm-call-logs.module");
|
|
44
45
|
const global_config_module_1 = require("./global-config/global-config.module");
|
|
46
|
+
const agents_module_1 = require("./agents/agents.module");
|
|
45
47
|
let dbPath = ':memory:';
|
|
46
48
|
if (process.env.NODE_ENV === 'production') {
|
|
47
49
|
const projectPath = process.env.REPOBURG_PROJECT_PATH || process.cwd();
|
|
@@ -79,6 +81,7 @@ exports.AppModule = AppModule = __decorate([
|
|
|
79
81
|
core_entities_1.LlmCallLog,
|
|
80
82
|
sub_agent_entity_1.SubAgent,
|
|
81
83
|
sub_agent_run_entity_1.SubAgentRun,
|
|
84
|
+
core_entities_2.Agent,
|
|
82
85
|
],
|
|
83
86
|
subscribers: [session_input_subscriber_1.SessionInputSubscriber],
|
|
84
87
|
synchronize: true,
|
|
@@ -109,6 +112,7 @@ exports.AppModule = AppModule = __decorate([
|
|
|
109
112
|
tool_hooks_module_1.ToolHooksModule,
|
|
110
113
|
message_bus_module_1.MessageBusModule,
|
|
111
114
|
llm_call_logs_module_1.LlmCallLogsModule,
|
|
115
|
+
agents_module_1.AgentsModule,
|
|
112
116
|
],
|
|
113
117
|
controllers: [app_controller_1.AppController],
|
|
114
118
|
providers: [app_service_1.AppService],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.module.js","sourceRoot":"","sources":["../../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,qDAAiD;AACjD,+CAA2C;AAC3C,6CAAgD;AAChD,mDAgByB;AACzB,oEAAyD;AACzD,4EAAgE;AAChE,gEAA4D;AAC5D,gEAA4D;AAC5D,kFAA6E;AAC7E,sEAAiE;AACjE,kFAA6E;AAC7E,2FAAsF;AACtF,8FAAyF;AACzF,kFAA6E;AAC7E,6DAAyD;AACzD,mEAA+D;AAC/D,qFAAgF;AAChF,6BAA6B;AAC7B,yBAAyB;AACzB,wFAAmF;AACnF,wFAAmF;AACnF,2FAAsF;AACtF,+EAA0E;AAC1E,0DAAsD;AACtD,wFAAmF;AACnF,gEAAuE;AACvE,iDAA6C;AAC7C,+EAA0E;AAC1E,wFAAmF;AACnF,sEAAiE;AACjE,yEAAoE;AACpE,wFAAmF;AACnF,+EAAyE;AACzE,+EAA0E;
|
|
1
|
+
{"version":3,"file":"app.module.js","sourceRoot":"","sources":["../../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,qDAAiD;AACjD,+CAA2C;AAC3C,6CAAgD;AAChD,mDAgByB;AACzB,oEAAyD;AACzD,4EAAgE;AAChE,mDAAwC;AACxC,gEAA4D;AAC5D,gEAA4D;AAC5D,kFAA6E;AAC7E,sEAAiE;AACjE,kFAA6E;AAC7E,2FAAsF;AACtF,8FAAyF;AACzF,kFAA6E;AAC7E,6DAAyD;AACzD,mEAA+D;AAC/D,qFAAgF;AAChF,6BAA6B;AAC7B,yBAAyB;AACzB,wFAAmF;AACnF,wFAAmF;AACnF,2FAAsF;AACtF,+EAA0E;AAC1E,0DAAsD;AACtD,wFAAmF;AACnF,gEAAuE;AACvE,iDAA6C;AAC7C,+EAA0E;AAC1E,wFAAmF;AACnF,sEAAiE;AACjE,yEAAoE;AACpE,wFAAmF;AACnF,+EAAyE;AACzE,+EAA0E;AAC1E,0DAAsD;AAEtD,IAAI,MAAM,GAAG,UAAU,CAAC;AAExB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;IAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACvE,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAClD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IACD,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,iCAAiC,MAAM,EAAE,CAAC,CAAC;AACzD,CAAC;AA6DM,IAAM,SAAS,GAAf,MAAM,SAAS;CAAG,CAAA;AAAZ,8BAAS;oBAAT,SAAS;IA3DrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,OAAO,CAAC;gBACpB,IAAI,EAAE,QAAQ;gBACd,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE;oBACR,uBAAO;oBACP,uBAAO;oBACP,+BAAe;oBACf,4BAAY;oBACZ,wBAAQ;oBACR,4BAAY;oBACZ,4BAAY;oBACZ,6BAAa;oBACb,gCAAgB;oBAChB,8BAAc;oBACd,yBAAS;oBACT,uBAAO;oBACP,8BAAc;oBACd,wBAAQ;oBACR,0BAAU;oBACV,2BAAQ;oBACR,kCAAW;oBACX,qBAAK;iBACN;gBACD,WAAW,EAAE,CAAC,iDAAsB,CAAC;gBACrC,WAAW,EAAE,IAAI;gBACjB,gBAAgB,EAAE,IAAI;aACvB,CAAC;YACF,gCAAc;YACd,gCAAc;YACd,2CAAmB;YACnB,mCAAe;YACf,2CAAmB;YACnB,iDAAsB;YACtB,mDAAuB;YACvB,2CAAmB;YACnB,8BAAa;YACb,kCAAe;YACf,6CAAoB;YACpB,+CAAqB;YACrB,+CAAqB;YACrB,yCAAkB;YAClB,iDAAsB;YACtB,yCAAkB;YAClB,4BAAY;YACZ,+CAAqB;YACrB,mCAAqB;YACrB,sBAAS;YACT,yCAAkB;YAClB,+CAAqB;YACrB,mCAAe;YACf,qCAAgB;YAChB,wCAAiB;YACjB,4BAAY;SACb;QACD,WAAW,EAAE,CAAC,8BAAa,CAAC;QAC5B,SAAS,EAAE,CAAC,wBAAU,CAAC;KACxB,CAAC;GACW,SAAS,CAAG"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { BaseEntity } from '../core-entities/base.entity';
|
|
2
|
+
import { SystemPrompt } from '../core-entities/system-prompt.entity';
|
|
3
|
+
import { ContextTemplate } from '../core-entities/context-template.entity';
|
|
4
|
+
import { ReasoningEffort } from '../core-entities/enums';
|
|
5
|
+
export declare class Agent extends BaseEntity {
|
|
6
|
+
name: string;
|
|
7
|
+
description: string | null;
|
|
8
|
+
system_prompt_id: string | null;
|
|
9
|
+
systemPrompt: SystemPrompt;
|
|
10
|
+
context_template_id: string | null;
|
|
11
|
+
contextTemplate: ContextTemplate;
|
|
12
|
+
followup_context_template_id: string | null;
|
|
13
|
+
followupContextTemplate: ContextTemplate;
|
|
14
|
+
model_id: string | null;
|
|
15
|
+
reasoning_effort: ReasoningEffort | null;
|
|
16
|
+
is_default: boolean;
|
|
17
|
+
is_active: boolean;
|
|
18
|
+
is_builtin: boolean;
|
|
19
|
+
builtin_key: string | null;
|
|
20
|
+
}
|
|
@@ -0,0 +1,153 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.Agent = void 0;
|
|
13
|
+
const typeorm_1 = require("typeorm");
|
|
14
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
15
|
+
const base_entity_1 = require("../core-entities/base.entity");
|
|
16
|
+
const system_prompt_entity_1 = require("../core-entities/system-prompt.entity");
|
|
17
|
+
const context_template_entity_1 = require("../core-entities/context-template.entity");
|
|
18
|
+
const enums_1 = require("../core-entities/enums");
|
|
19
|
+
let Agent = class Agent extends base_entity_1.BaseEntity {
|
|
20
|
+
};
|
|
21
|
+
exports.Agent = Agent;
|
|
22
|
+
__decorate([
|
|
23
|
+
(0, swagger_1.ApiProperty)({
|
|
24
|
+
description: 'Name of this agent',
|
|
25
|
+
example: 'Code Reviewer',
|
|
26
|
+
}),
|
|
27
|
+
(0, typeorm_1.Column)({ type: 'text' }),
|
|
28
|
+
__metadata("design:type", String)
|
|
29
|
+
], Agent.prototype, "name", void 0);
|
|
30
|
+
__decorate([
|
|
31
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
32
|
+
description: 'Description of what this agent does',
|
|
33
|
+
example: 'Specialized in reviewing code for quality and best practices',
|
|
34
|
+
}),
|
|
35
|
+
(0, typeorm_1.Column)({ type: 'text', nullable: true }),
|
|
36
|
+
__metadata("design:type", String)
|
|
37
|
+
], Agent.prototype, "description", void 0);
|
|
38
|
+
__decorate([
|
|
39
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
40
|
+
description: 'UUID of the system prompt for this agent',
|
|
41
|
+
format: 'uuid',
|
|
42
|
+
}),
|
|
43
|
+
(0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
|
|
44
|
+
__metadata("design:type", String)
|
|
45
|
+
], Agent.prototype, "system_prompt_id", void 0);
|
|
46
|
+
__decorate([
|
|
47
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
48
|
+
description: 'The system prompt entity for this agent',
|
|
49
|
+
type: () => system_prompt_entity_1.SystemPrompt,
|
|
50
|
+
}),
|
|
51
|
+
(0, typeorm_1.ManyToOne)(() => system_prompt_entity_1.SystemPrompt, {
|
|
52
|
+
nullable: true,
|
|
53
|
+
onDelete: 'SET NULL',
|
|
54
|
+
}),
|
|
55
|
+
(0, typeorm_1.JoinColumn)({ name: 'system_prompt_id' }),
|
|
56
|
+
__metadata("design:type", system_prompt_entity_1.SystemPrompt)
|
|
57
|
+
], Agent.prototype, "systemPrompt", void 0);
|
|
58
|
+
__decorate([
|
|
59
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
60
|
+
description: 'UUID of context template for initial prompts',
|
|
61
|
+
format: 'uuid',
|
|
62
|
+
}),
|
|
63
|
+
(0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
|
|
64
|
+
__metadata("design:type", String)
|
|
65
|
+
], Agent.prototype, "context_template_id", void 0);
|
|
66
|
+
__decorate([
|
|
67
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
68
|
+
description: 'The context template entity for initial prompts',
|
|
69
|
+
type: () => context_template_entity_1.ContextTemplate,
|
|
70
|
+
}),
|
|
71
|
+
(0, typeorm_1.ManyToOne)(() => context_template_entity_1.ContextTemplate, {
|
|
72
|
+
nullable: true,
|
|
73
|
+
onDelete: 'SET NULL',
|
|
74
|
+
}),
|
|
75
|
+
(0, typeorm_1.JoinColumn)({ name: 'context_template_id' }),
|
|
76
|
+
__metadata("design:type", context_template_entity_1.ContextTemplate)
|
|
77
|
+
], Agent.prototype, "contextTemplate", void 0);
|
|
78
|
+
__decorate([
|
|
79
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
80
|
+
description: 'UUID of context template for follow-up prompts',
|
|
81
|
+
format: 'uuid',
|
|
82
|
+
}),
|
|
83
|
+
(0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
|
|
84
|
+
__metadata("design:type", String)
|
|
85
|
+
], Agent.prototype, "followup_context_template_id", void 0);
|
|
86
|
+
__decorate([
|
|
87
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
88
|
+
description: 'The context template entity for follow-up prompts',
|
|
89
|
+
type: () => context_template_entity_1.ContextTemplate,
|
|
90
|
+
}),
|
|
91
|
+
(0, typeorm_1.ManyToOne)(() => context_template_entity_1.ContextTemplate, {
|
|
92
|
+
nullable: true,
|
|
93
|
+
onDelete: 'SET NULL',
|
|
94
|
+
}),
|
|
95
|
+
(0, typeorm_1.JoinColumn)({ name: 'followup_context_template_id' }),
|
|
96
|
+
__metadata("design:type", context_template_entity_1.ContextTemplate)
|
|
97
|
+
], Agent.prototype, "followupContextTemplate", void 0);
|
|
98
|
+
__decorate([
|
|
99
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
100
|
+
description: 'Model ID to use for this agent',
|
|
101
|
+
example: 'ollama/glm-5.1:cloud',
|
|
102
|
+
}),
|
|
103
|
+
(0, typeorm_1.Column)({ type: 'text', nullable: true }),
|
|
104
|
+
__metadata("design:type", String)
|
|
105
|
+
], Agent.prototype, "model_id", void 0);
|
|
106
|
+
__decorate([
|
|
107
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
108
|
+
description: 'Reasoning effort level for this agent',
|
|
109
|
+
enum: enums_1.ReasoningEffort,
|
|
110
|
+
enumName: 'ReasoningEffort',
|
|
111
|
+
}),
|
|
112
|
+
(0, typeorm_1.Column)({ type: 'text', nullable: true }),
|
|
113
|
+
__metadata("design:type", String)
|
|
114
|
+
], Agent.prototype, "reasoning_effort", void 0);
|
|
115
|
+
__decorate([
|
|
116
|
+
(0, swagger_1.ApiProperty)({
|
|
117
|
+
description: 'Whether this is the default agent for new sessions',
|
|
118
|
+
example: false,
|
|
119
|
+
default: false,
|
|
120
|
+
}),
|
|
121
|
+
(0, typeorm_1.Column)({ type: 'boolean', default: false }),
|
|
122
|
+
__metadata("design:type", Boolean)
|
|
123
|
+
], Agent.prototype, "is_default", void 0);
|
|
124
|
+
__decorate([
|
|
125
|
+
(0, swagger_1.ApiProperty)({
|
|
126
|
+
description: 'Whether this agent is active and available',
|
|
127
|
+
example: true,
|
|
128
|
+
default: true,
|
|
129
|
+
}),
|
|
130
|
+
(0, typeorm_1.Column)({ type: 'boolean', default: true }),
|
|
131
|
+
__metadata("design:type", Boolean)
|
|
132
|
+
], Agent.prototype, "is_active", void 0);
|
|
133
|
+
__decorate([
|
|
134
|
+
(0, swagger_1.ApiProperty)({
|
|
135
|
+
description: 'Whether this is a built-in seed agent (limited editing)',
|
|
136
|
+
example: false,
|
|
137
|
+
default: false,
|
|
138
|
+
}),
|
|
139
|
+
(0, typeorm_1.Column)({ type: 'boolean', default: false }),
|
|
140
|
+
__metadata("design:type", Boolean)
|
|
141
|
+
], Agent.prototype, "is_builtin", void 0);
|
|
142
|
+
__decorate([
|
|
143
|
+
(0, swagger_1.ApiPropertyOptional)({
|
|
144
|
+
description: 'Unique key for built-in agents (used for version updates)',
|
|
145
|
+
example: 'default-agent',
|
|
146
|
+
}),
|
|
147
|
+
(0, typeorm_1.Column)({ type: 'text', nullable: true, unique: true }),
|
|
148
|
+
__metadata("design:type", String)
|
|
149
|
+
], Agent.prototype, "builtin_key", void 0);
|
|
150
|
+
exports.Agent = Agent = __decorate([
|
|
151
|
+
(0, typeorm_1.Entity)('agents')
|
|
152
|
+
], Agent);
|
|
153
|
+
//# sourceMappingURL=agent.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent.entity.js","sourceRoot":"","sources":["../../../src/core-entities/agent.entity.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,4 +31,5 @@ __exportStar(require("./custom-variable.entity"), exports);
|
|
|
31
31
|
__exportStar(require("./tool-hook.entity"), exports);
|
|
32
32
|
__exportStar(require("./llm-call-log.entity"), exports);
|
|
33
33
|
__exportStar(require("./enums"), exports);
|
|
34
|
+
__exportStar(require("./agent.entity"), exports);
|
|
34
35
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core-entities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,mDAAiC;AACjC,mDAAiC;AACjC,4DAA0C;AAC1C,yDAAuC;AACvC,qDAAmC;AACnC,yDAAuC;AACvC,yDAAuC;AACvC,0DAAwC;AACxC,6DAA2C;AAC3C,2DAAyC;AACzC,sDAAoC;AACpC,oDAAkC;AAClC,2DAAyC;AACzC,qDAAmC;AACnC,wDAAsC;AACtC,0CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core-entities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,mDAAiC;AACjC,mDAAiC;AACjC,4DAA0C;AAC1C,yDAAuC;AACvC,qDAAmC;AACnC,yDAAuC;AACvC,yDAAuC;AACvC,0DAAwC;AACxC,6DAA2C;AAC3C,2DAAyC;AACzC,sDAAoC;AACpC,oDAAkC;AAClC,2DAAyC;AACzC,qDAAmC;AACnC,wDAAsC;AACtC,0CAAwB;AACxB,iDAA+B"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ActionHandler } from './action-handler.interface';
|
|
2
|
+
import { ActionExecutionResult, PlanExecutionContext, ToolMetadata } from '../llm-orchestration.interfaces';
|
|
3
|
+
import { AgentsService } from '../../agents/agents.service';
|
|
4
|
+
export type AgentAction = 'list' | 'get' | 'create' | 'update' | 'delete' | 'duplicate' | 'set_default';
|
|
5
|
+
export declare class ManageAgentsHandler implements ActionHandler {
|
|
6
|
+
private readonly agentsService;
|
|
7
|
+
readonly toolName = "manage_agents";
|
|
8
|
+
private readonly logger;
|
|
9
|
+
constructor(agentsService: AgentsService);
|
|
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
|
+
private handleSetDefault;
|
|
20
|
+
}
|
|
@@ -0,0 +1,321 @@
|
|
|
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 ManageAgentsHandler_1;
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.ManageAgentsHandler = void 0;
|
|
14
|
+
const common_1 = require("@nestjs/common");
|
|
15
|
+
const agents_service_1 = require("../../agents/agents.service");
|
|
16
|
+
let ManageAgentsHandler = ManageAgentsHandler_1 = class ManageAgentsHandler {
|
|
17
|
+
constructor(agentsService) {
|
|
18
|
+
this.agentsService = agentsService;
|
|
19
|
+
this.toolName = 'manage_agents';
|
|
20
|
+
this.logger = new common_1.Logger(ManageAgentsHandler_1.name);
|
|
21
|
+
}
|
|
22
|
+
getMetadata() {
|
|
23
|
+
return {
|
|
24
|
+
name: this.toolName,
|
|
25
|
+
description: 'Manage RepoBurg agents — presets that group system prompt, context templates, model, and reasoning effort together.',
|
|
26
|
+
arguments: [
|
|
27
|
+
{
|
|
28
|
+
name: 'action',
|
|
29
|
+
type: 'string',
|
|
30
|
+
description: 'Operation: list|get|create|update|delete|duplicate|set_default',
|
|
31
|
+
required: true,
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: 'id',
|
|
35
|
+
type: 'string',
|
|
36
|
+
description: 'UUID of the agent (required for get/update/delete/duplicate/set_default)',
|
|
37
|
+
required: false,
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
name: 'data',
|
|
41
|
+
type: 'object',
|
|
42
|
+
description: 'Fields for create/update. Keys: name (required for create), description, system_prompt_id, context_template_id, followup_context_template_id, model_id, reasoning_effort ("low"|"medium"|"high"), is_default, is_active.',
|
|
43
|
+
required: false,
|
|
44
|
+
},
|
|
45
|
+
],
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
getDefinition() {
|
|
49
|
+
return `## manage_agents
|
|
50
|
+
|
|
51
|
+
Manage RepoBurg agents — presets that group system prompt, context templates, model, and reasoning effort together. Selecting an agent applies all its settings to a session at once.
|
|
52
|
+
|
|
53
|
+
### Actions:
|
|
54
|
+
|
|
55
|
+
- **list** — List all agents (returns id, name, description, is_default, is_active, is_builtin, model_id, reasoning_effort, system_prompt_id, context_template_id, followup_context_template_id)
|
|
56
|
+
- **get** — Get full details of an agent by ID
|
|
57
|
+
- **create** — Create a new agent. Provide \`data\` with: name (required), description, system_prompt_id, context_template_id, followup_context_template_id, model_id, reasoning_effort, is_default (default false), is_active (default true)
|
|
58
|
+
- **update** — Update an agent. Provide \`id\` and \`data\` with fields to change. Built-in agents can only change is_active, model_id, and reasoning_effort.
|
|
59
|
+
- **delete** — Delete an agent by ID (cannot delete built-in agents)
|
|
60
|
+
- **duplicate** — Duplicate an agent by ID (works for built-in too). Returns the new copy.
|
|
61
|
+
- **set_default** — Set an agent as the default for new sessions. Provide \`id\`.
|
|
62
|
+
|
|
63
|
+
### Parameters:
|
|
64
|
+
- **action** (required): Operation to perform
|
|
65
|
+
- **id** (optional): UUID of the agent
|
|
66
|
+
- **data** (optional): Object with agent fields
|
|
67
|
+
|
|
68
|
+
### Examples:
|
|
69
|
+
|
|
70
|
+
List all agents:
|
|
71
|
+
\`\`\`typescript
|
|
72
|
+
tool: manage_agents
|
|
73
|
+
args: { action: "list" }
|
|
74
|
+
\`\`\`
|
|
75
|
+
|
|
76
|
+
Create an agent:
|
|
77
|
+
\`\`\`typescript
|
|
78
|
+
tool: manage_agents
|
|
79
|
+
args: { action: "create", data: { name: "Code Reviewer", description: "Specialized in reviewing code", model_id: "ollama/glm-5.1:cloud", reasoning_effort: "high" } }
|
|
80
|
+
\`\`\`
|
|
81
|
+
|
|
82
|
+
Set an agent as default:
|
|
83
|
+
\`\`\`typescript
|
|
84
|
+
tool: manage_agents
|
|
85
|
+
args: { action: "set_default", id: "uuid-here" }
|
|
86
|
+
\`\`\``;
|
|
87
|
+
}
|
|
88
|
+
async execute(args, _context) {
|
|
89
|
+
const { action } = args;
|
|
90
|
+
try {
|
|
91
|
+
switch (action) {
|
|
92
|
+
case 'list':
|
|
93
|
+
return await this.handleList();
|
|
94
|
+
case 'get':
|
|
95
|
+
return await this.handleGet(args.id);
|
|
96
|
+
case 'create':
|
|
97
|
+
return await this.handleCreate(args.data);
|
|
98
|
+
case 'update':
|
|
99
|
+
return await this.handleUpdate(args.id, args.data);
|
|
100
|
+
case 'delete':
|
|
101
|
+
return await this.handleDelete(args.id);
|
|
102
|
+
case 'duplicate':
|
|
103
|
+
return await this.handleDuplicate(args.id);
|
|
104
|
+
case 'set_default':
|
|
105
|
+
return await this.handleSetDefault(args.id);
|
|
106
|
+
default:
|
|
107
|
+
return {
|
|
108
|
+
status: 'FAILURE',
|
|
109
|
+
summary: `Unknown action "${action}". Valid actions: list, get, create, update, delete, duplicate, set_default`,
|
|
110
|
+
error_message: `Unknown action: ${action}`,
|
|
111
|
+
execution_log: {
|
|
112
|
+
output: '',
|
|
113
|
+
error_message: `Unknown action: ${action}`,
|
|
114
|
+
},
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
this.logger.error(`manage_agents error: ${error.message}`, error.stack);
|
|
120
|
+
return {
|
|
121
|
+
status: 'FAILURE',
|
|
122
|
+
summary: `Failed to ${action} agent: ${error.message}`,
|
|
123
|
+
error_message: error.message,
|
|
124
|
+
execution_log: { output: '', error_message: error.message },
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
async handleList() {
|
|
129
|
+
const agents = await this.agentsService.findAll();
|
|
130
|
+
const summary = agents.map((a) => ({
|
|
131
|
+
id: a.id,
|
|
132
|
+
name: a.name,
|
|
133
|
+
description: a.description,
|
|
134
|
+
is_default: a.is_default,
|
|
135
|
+
is_active: a.is_active,
|
|
136
|
+
is_builtin: a.is_builtin,
|
|
137
|
+
model_id: a.model_id,
|
|
138
|
+
reasoning_effort: a.reasoning_effort,
|
|
139
|
+
system_prompt_id: a.system_prompt_id,
|
|
140
|
+
context_template_id: a.context_template_id,
|
|
141
|
+
followup_context_template_id: a.followup_context_template_id,
|
|
142
|
+
}));
|
|
143
|
+
return {
|
|
144
|
+
status: 'SUCCESS',
|
|
145
|
+
summary: `Found ${agents.length} agent(s).`,
|
|
146
|
+
execution_log: {
|
|
147
|
+
output: JSON.stringify(summary, null, 2),
|
|
148
|
+
error_message: '',
|
|
149
|
+
},
|
|
150
|
+
persisted_args: {},
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
async handleGet(id) {
|
|
154
|
+
if (!id) {
|
|
155
|
+
return {
|
|
156
|
+
status: 'FAILURE',
|
|
157
|
+
summary: 'id is required for get action',
|
|
158
|
+
error_message: 'Missing id',
|
|
159
|
+
execution_log: { output: '', error_message: 'Missing id' },
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
const agent = await this.agentsService.findOne(id);
|
|
163
|
+
return {
|
|
164
|
+
status: 'SUCCESS',
|
|
165
|
+
summary: `Agent "${agent.name}"`,
|
|
166
|
+
execution_log: {
|
|
167
|
+
output: JSON.stringify(agent, null, 2),
|
|
168
|
+
error_message: '',
|
|
169
|
+
},
|
|
170
|
+
persisted_args: {},
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
async handleCreate(data) {
|
|
174
|
+
if (!data || !data.name) {
|
|
175
|
+
return {
|
|
176
|
+
status: 'FAILURE',
|
|
177
|
+
summary: 'data.name is required for create',
|
|
178
|
+
error_message: 'Missing required field: name',
|
|
179
|
+
execution_log: {
|
|
180
|
+
output: '',
|
|
181
|
+
error_message: 'Missing required field: name',
|
|
182
|
+
},
|
|
183
|
+
};
|
|
184
|
+
}
|
|
185
|
+
const createDto = {
|
|
186
|
+
name: data.name,
|
|
187
|
+
description: data.description ?? null,
|
|
188
|
+
system_prompt_id: data.system_prompt_id ?? null,
|
|
189
|
+
context_template_id: data.context_template_id ?? null,
|
|
190
|
+
followup_context_template_id: data.followup_context_template_id ?? null,
|
|
191
|
+
model_id: data.model_id ?? null,
|
|
192
|
+
reasoning_effort: data.reasoning_effort ?? null,
|
|
193
|
+
is_default: data.is_default ?? false,
|
|
194
|
+
is_active: data.is_active ?? true,
|
|
195
|
+
};
|
|
196
|
+
const agent = await this.agentsService.create(createDto);
|
|
197
|
+
const result = {
|
|
198
|
+
id: agent.id,
|
|
199
|
+
name: agent.name,
|
|
200
|
+
is_default: agent.is_default,
|
|
201
|
+
is_active: agent.is_active,
|
|
202
|
+
};
|
|
203
|
+
return {
|
|
204
|
+
status: 'SUCCESS',
|
|
205
|
+
summary: `Agent "${agent.name}" created with ID ${agent.id}`,
|
|
206
|
+
execution_log: {
|
|
207
|
+
output: JSON.stringify(result, null, 2),
|
|
208
|
+
error_message: '',
|
|
209
|
+
},
|
|
210
|
+
persisted_args: {},
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
async handleUpdate(id, data) {
|
|
214
|
+
if (!id || !data) {
|
|
215
|
+
return {
|
|
216
|
+
status: 'FAILURE',
|
|
217
|
+
summary: 'id and data are required for update action',
|
|
218
|
+
error_message: 'Missing parameters',
|
|
219
|
+
execution_log: { output: '', error_message: 'Missing parameters' },
|
|
220
|
+
};
|
|
221
|
+
}
|
|
222
|
+
const updateDto = {};
|
|
223
|
+
const allowedFields = [
|
|
224
|
+
'name',
|
|
225
|
+
'description',
|
|
226
|
+
'system_prompt_id',
|
|
227
|
+
'context_template_id',
|
|
228
|
+
'followup_context_template_id',
|
|
229
|
+
'model_id',
|
|
230
|
+
'reasoning_effort',
|
|
231
|
+
'is_default',
|
|
232
|
+
'is_active',
|
|
233
|
+
];
|
|
234
|
+
for (const key of allowedFields) {
|
|
235
|
+
if (data[key] !== undefined) {
|
|
236
|
+
updateDto[key] = data[key];
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
const agent = await this.agentsService.update(id, updateDto);
|
|
240
|
+
return {
|
|
241
|
+
status: 'SUCCESS',
|
|
242
|
+
summary: `Agent "${agent.name}" updated`,
|
|
243
|
+
execution_log: {
|
|
244
|
+
output: JSON.stringify({
|
|
245
|
+
id: agent.id,
|
|
246
|
+
name: agent.name,
|
|
247
|
+
is_active: agent.is_active,
|
|
248
|
+
is_default: agent.is_default,
|
|
249
|
+
}, null, 2),
|
|
250
|
+
error_message: '',
|
|
251
|
+
},
|
|
252
|
+
persisted_args: {},
|
|
253
|
+
};
|
|
254
|
+
}
|
|
255
|
+
async handleDelete(id) {
|
|
256
|
+
if (!id) {
|
|
257
|
+
return {
|
|
258
|
+
status: 'FAILURE',
|
|
259
|
+
summary: 'id is required for delete action',
|
|
260
|
+
error_message: 'Missing id',
|
|
261
|
+
execution_log: { output: '', error_message: 'Missing id' },
|
|
262
|
+
};
|
|
263
|
+
}
|
|
264
|
+
await this.agentsService.remove(id);
|
|
265
|
+
return {
|
|
266
|
+
status: 'SUCCESS',
|
|
267
|
+
summary: `Agent ${id} deleted`,
|
|
268
|
+
execution_log: {
|
|
269
|
+
output: JSON.stringify({ deleted: true, id }),
|
|
270
|
+
error_message: '',
|
|
271
|
+
},
|
|
272
|
+
persisted_args: {},
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
async handleDuplicate(id) {
|
|
276
|
+
if (!id) {
|
|
277
|
+
return {
|
|
278
|
+
status: 'FAILURE',
|
|
279
|
+
summary: 'id is required for duplicate action',
|
|
280
|
+
error_message: 'Missing id',
|
|
281
|
+
execution_log: { output: '', error_message: 'Missing id' },
|
|
282
|
+
};
|
|
283
|
+
}
|
|
284
|
+
const agent = await this.agentsService.duplicate(id);
|
|
285
|
+
return {
|
|
286
|
+
status: 'SUCCESS',
|
|
287
|
+
summary: `Agent duplicated as "${agent.name}"`,
|
|
288
|
+
execution_log: {
|
|
289
|
+
output: JSON.stringify({ id: agent.id, name: agent.name }, null, 2),
|
|
290
|
+
error_message: '',
|
|
291
|
+
},
|
|
292
|
+
persisted_args: {},
|
|
293
|
+
};
|
|
294
|
+
}
|
|
295
|
+
async handleSetDefault(id) {
|
|
296
|
+
if (!id) {
|
|
297
|
+
return {
|
|
298
|
+
status: 'FAILURE',
|
|
299
|
+
summary: 'id is required for set_default action',
|
|
300
|
+
error_message: 'Missing id',
|
|
301
|
+
execution_log: { output: '', error_message: 'Missing id' },
|
|
302
|
+
};
|
|
303
|
+
}
|
|
304
|
+
const agent = await this.agentsService.setDefault(id);
|
|
305
|
+
return {
|
|
306
|
+
status: 'SUCCESS',
|
|
307
|
+
summary: `Agent "${agent.name}" set as default`,
|
|
308
|
+
execution_log: {
|
|
309
|
+
output: JSON.stringify({ id: agent.id, name: agent.name, is_default: true }, null, 2),
|
|
310
|
+
error_message: '',
|
|
311
|
+
},
|
|
312
|
+
persisted_args: {},
|
|
313
|
+
};
|
|
314
|
+
}
|
|
315
|
+
};
|
|
316
|
+
exports.ManageAgentsHandler = ManageAgentsHandler;
|
|
317
|
+
exports.ManageAgentsHandler = ManageAgentsHandler = ManageAgentsHandler_1 = __decorate([
|
|
318
|
+
(0, common_1.Injectable)(),
|
|
319
|
+
__metadata("design:paramtypes", [agents_service_1.AgentsService])
|
|
320
|
+
], ManageAgentsHandler);
|
|
321
|
+
//# sourceMappingURL=manage-agents.handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manage-agents.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/manage-agents.handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,6 +33,7 @@ const context_templates_module_1 = require("../context-templates/context-templat
|
|
|
33
33
|
const context_snippets_module_1 = require("../context-snippets/context-snippets.module");
|
|
34
34
|
const custom_snippets_module_1 = require("../custom-snippets/custom-snippets.module");
|
|
35
35
|
const custom_variables_module_1 = require("../custom-variables/custom-variables.module");
|
|
36
|
+
const agents_module_1 = require("../agents/agents.module");
|
|
36
37
|
const create_file_handler_1 = require("./action-handlers/create-file.handler");
|
|
37
38
|
const delete_file_handler_1 = require("./action-handlers/delete-file.handler");
|
|
38
39
|
const overwrite_file_handler_1 = require("./action-handlers/overwrite-file.handler");
|
|
@@ -59,6 +60,7 @@ const manage_context_snippets_handler_1 = require("./action-handlers/manage-cont
|
|
|
59
60
|
const manage_custom_snippets_handler_1 = require("./action-handlers/manage-custom-snippets.handler");
|
|
60
61
|
const manage_custom_variables_handler_1 = require("./action-handlers/manage-custom-variables.handler");
|
|
61
62
|
const manage_sub_agents_handler_1 = require("./action-handlers/manage-sub-agents.handler");
|
|
63
|
+
const manage_agents_handler_1 = require("./action-handlers/manage-agents.handler");
|
|
62
64
|
const manage_mcp_servers_handler_1 = require("./action-handlers/manage-mcp-servers.handler");
|
|
63
65
|
const manage_tool_hooks_handler_1 = require("./action-handlers/manage-tool-hooks.handler");
|
|
64
66
|
const invalid_tool_feedback_hook_1 = require("./hooks/invalid-tool-feedback.hook");
|
|
@@ -91,6 +93,7 @@ exports.LlmOrchestrationModule = LlmOrchestrationModule = __decorate([
|
|
|
91
93
|
context_snippets_module_1.ContextSnippetsModule,
|
|
92
94
|
custom_snippets_module_1.CustomSnippetsModule,
|
|
93
95
|
custom_variables_module_1.CustomVariablesModule,
|
|
96
|
+
agents_module_1.AgentsModule,
|
|
94
97
|
],
|
|
95
98
|
providers: [
|
|
96
99
|
llm_output_parser_service_1.LlmOutputParserService,
|
|
@@ -123,6 +126,7 @@ exports.LlmOrchestrationModule = LlmOrchestrationModule = __decorate([
|
|
|
123
126
|
manage_custom_snippets_handler_1.ManageCustomSnippetsHandler,
|
|
124
127
|
manage_custom_variables_handler_1.ManageCustomVariablesHandler,
|
|
125
128
|
manage_sub_agents_handler_1.ManageSubAgentsHandler,
|
|
129
|
+
manage_agents_handler_1.ManageAgentsHandler,
|
|
126
130
|
manage_mcp_servers_handler_1.ManageMcpServersHandler,
|
|
127
131
|
manage_tool_hooks_handler_1.ManageToolHooksHandler,
|
|
128
132
|
invalid_tool_feedback_hook_1.InvalidToolFeedbackHook,
|
|
@@ -131,7 +135,7 @@ exports.LlmOrchestrationModule = LlmOrchestrationModule = __decorate([
|
|
|
131
135
|
yolo_mode_post_execution_hook_1.YoloModePostExecutionHook,
|
|
132
136
|
{
|
|
133
137
|
provide: 'ACTION_HANDLER_REGISTRY',
|
|
134
|
-
useFactory: (createFile, deleteFile, overwriteFile, runCommand, requestContext, final, quickEdit, applyDiff, patch, newSession, writeTodo, executeCode, invokeSubAgent, listSubAgents, getSessionHistory, generateTitle, askUser, getMessages, discardMessages, htmlFinal, manageSystemPrompts, manageContextTemplates, manageContextSnippets, manageCustomSnippets, manageCustomVariables, manageSubAgents, manageMcpServers, manageToolHooks) => {
|
|
138
|
+
useFactory: (createFile, deleteFile, overwriteFile, runCommand, requestContext, final, quickEdit, applyDiff, patch, newSession, writeTodo, executeCode, invokeSubAgent, listSubAgents, getSessionHistory, generateTitle, askUser, getMessages, discardMessages, htmlFinal, manageSystemPrompts, manageContextTemplates, manageContextSnippets, manageCustomSnippets, manageCustomVariables, manageSubAgents, manageAgents, manageMcpServers, manageToolHooks) => {
|
|
135
139
|
const registry = new Map();
|
|
136
140
|
registry.set(createFile.toolName, createFile);
|
|
137
141
|
registry.set(deleteFile.toolName, deleteFile);
|
|
@@ -159,6 +163,7 @@ exports.LlmOrchestrationModule = LlmOrchestrationModule = __decorate([
|
|
|
159
163
|
registry.set(manageCustomSnippets.toolName, manageCustomSnippets);
|
|
160
164
|
registry.set(manageCustomVariables.toolName, manageCustomVariables);
|
|
161
165
|
registry.set(manageSubAgents.toolName, manageSubAgents);
|
|
166
|
+
registry.set(manageAgents.toolName, manageAgents);
|
|
162
167
|
registry.set(manageMcpServers.toolName, manageMcpServers);
|
|
163
168
|
registry.set(manageToolHooks.toolName, manageToolHooks);
|
|
164
169
|
return registry;
|
|
@@ -190,6 +195,7 @@ exports.LlmOrchestrationModule = LlmOrchestrationModule = __decorate([
|
|
|
190
195
|
manage_custom_snippets_handler_1.ManageCustomSnippetsHandler,
|
|
191
196
|
manage_custom_variables_handler_1.ManageCustomVariablesHandler,
|
|
192
197
|
manage_sub_agents_handler_1.ManageSubAgentsHandler,
|
|
198
|
+
manage_agents_handler_1.ManageAgentsHandler,
|
|
193
199
|
manage_mcp_servers_handler_1.ManageMcpServersHandler,
|
|
194
200
|
manage_tool_hooks_handler_1.ManageToolHooksHandler,
|
|
195
201
|
],
|