@bpinhosilva/agent-orchestrator 1.0.0-alpha.1 → 1.0.0-alpha.11

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 (188) hide show
  1. package/CHANGELOG.md +80 -0
  2. package/dist/agents/agents.controller.js +102 -0
  3. package/dist/agents/agents.module.js +26 -0
  4. package/dist/agents/agents.service.js +163 -0
  5. package/dist/agents/dto/agent-request.dto.js +26 -0
  6. package/dist/agents/dto/create-agent.dto.js +51 -0
  7. package/dist/agents/dto/update-agent.dto.js +8 -0
  8. package/dist/agents/entities/agent.entity.js +72 -0
  9. package/dist/agents/implementations/gemini.agent.js +167 -0
  10. package/dist/agents/interfaces/agent.interface.js +2 -0
  11. package/dist/agents/registry/agent.registry.js +22 -0
  12. package/dist/app.controller.js +33 -0
  13. package/dist/app.module.js +50 -0
  14. package/dist/app.service.js +19 -0
  15. package/dist/cli.js +21 -0
  16. package/dist/models/dto/create-model.dto.js +26 -0
  17. package/dist/models/dto/update-model.dto.js +8 -0
  18. package/dist/models/entities/model.entity.js +49 -0
  19. package/dist/models/models.controller.js +89 -0
  20. package/dist/models/models.module.js +25 -0
  21. package/dist/models/models.service.js +76 -0
  22. package/dist/projects/dto/create-project.dto.js +37 -0
  23. package/dist/projects/dto/update-project.dto.js +8 -0
  24. package/dist/projects/entities/project.entity.js +68 -0
  25. package/dist/projects/projects.controller.js +79 -0
  26. package/dist/projects/projects.module.js +25 -0
  27. package/dist/projects/projects.service.js +67 -0
  28. package/dist/providers/dto/create-provider.dto.js +26 -0
  29. package/dist/providers/dto/update-provider.dto.js +8 -0
  30. package/dist/providers/entities/provider.entity.js +44 -0
  31. package/dist/providers/providers.controller.js +89 -0
  32. package/dist/providers/providers.module.js +25 -0
  33. package/dist/providers/providers.service.js +72 -0
  34. package/dist/scripts/generate-postman.d.ts +1 -0
  35. package/dist/scripts/generate-postman.js +67 -0
  36. package/dist/scripts/generate-postman.js.map +1 -0
  37. package/dist/src/agents/agents.controller.d.ts +16 -0
  38. package/dist/src/agents/agents.controller.js +112 -0
  39. package/dist/src/agents/agents.controller.js.map +1 -0
  40. package/dist/src/agents/agents.module.d.ts +2 -0
  41. package/dist/src/agents/agents.module.js +27 -0
  42. package/dist/src/agents/agents.module.js.map +1 -0
  43. package/dist/src/agents/agents.service.d.ts +21 -0
  44. package/dist/src/agents/agents.service.js +164 -0
  45. package/dist/src/agents/agents.service.js.map +1 -0
  46. package/dist/src/agents/dto/agent-request.dto.d.ts +4 -0
  47. package/dist/src/agents/dto/agent-request.dto.js +33 -0
  48. package/dist/src/agents/dto/agent-request.dto.js.map +1 -0
  49. package/dist/src/agents/dto/create-agent.dto.d.ts +9 -0
  50. package/dist/src/agents/dto/create-agent.dto.js +63 -0
  51. package/dist/src/agents/dto/create-agent.dto.js.map +1 -0
  52. package/dist/src/agents/dto/update-agent.dto.d.ts +5 -0
  53. package/dist/src/agents/dto/update-agent.dto.js +13 -0
  54. package/dist/src/agents/dto/update-agent.dto.js.map +1 -0
  55. package/dist/src/agents/entities/agent.entity.d.ts +15 -0
  56. package/dist/src/agents/entities/agent.entity.js +88 -0
  57. package/dist/src/agents/entities/agent.entity.js.map +1 -0
  58. package/dist/src/agents/enums/provider.enum.d.ts +6 -0
  59. package/dist/src/agents/enums/provider.enum.js +11 -0
  60. package/dist/src/agents/enums/provider.enum.js.map +1 -0
  61. package/dist/src/agents/implementations/gemini.agent.d.ts +24 -0
  62. package/dist/src/agents/implementations/gemini.agent.js +173 -0
  63. package/dist/src/agents/implementations/gemini.agent.js.map +1 -0
  64. package/dist/src/agents/interfaces/agent.interface.d.ts +15 -0
  65. package/dist/src/agents/interfaces/agent.interface.js +3 -0
  66. package/dist/src/agents/interfaces/agent.interface.js.map +1 -0
  67. package/dist/src/agents/registry/agent.registry.d.ts +5 -0
  68. package/dist/src/agents/registry/agent.registry.js +15 -0
  69. package/dist/src/agents/registry/agent.registry.js.map +1 -0
  70. package/dist/src/app.controller.d.ts +6 -0
  71. package/dist/src/app.controller.js +37 -0
  72. package/dist/src/app.controller.js.map +1 -0
  73. package/dist/src/app.module.d.ts +2 -0
  74. package/dist/src/app.module.js +51 -0
  75. package/dist/src/app.module.js.map +1 -0
  76. package/dist/src/app.service.d.ts +3 -0
  77. package/dist/src/app.service.js +20 -0
  78. package/dist/src/app.service.js.map +1 -0
  79. package/dist/src/cli.d.ts +2 -0
  80. package/dist/src/cli.js +22 -0
  81. package/dist/src/cli.js.map +1 -0
  82. package/dist/src/main.d.ts +1 -0
  83. package/dist/src/main.js +26 -0
  84. package/dist/src/main.js.map +1 -0
  85. package/dist/src/models/dto/create-model.dto.d.ts +4 -0
  86. package/dist/src/models/dto/create-model.dto.js +33 -0
  87. package/dist/src/models/dto/create-model.dto.js.map +1 -0
  88. package/dist/src/models/dto/update-model.dto.d.ts +5 -0
  89. package/dist/src/models/dto/update-model.dto.js +13 -0
  90. package/dist/src/models/dto/update-model.dto.js.map +1 -0
  91. package/dist/src/models/entities/model.entity.d.ts +10 -0
  92. package/dist/src/models/entities/model.entity.js +60 -0
  93. package/dist/src/models/entities/model.entity.js.map +1 -0
  94. package/dist/src/models/models.controller.d.ts +13 -0
  95. package/dist/src/models/models.controller.js +98 -0
  96. package/dist/src/models/models.controller.js.map +1 -0
  97. package/dist/src/models/models.module.d.ts +2 -0
  98. package/dist/src/models/models.module.js +26 -0
  99. package/dist/src/models/models.module.js.map +1 -0
  100. package/dist/src/models/models.service.d.ts +14 -0
  101. package/dist/src/models/models.service.js +78 -0
  102. package/dist/src/models/models.service.js.map +1 -0
  103. package/dist/src/projects/dto/create-project.dto.d.ts +7 -0
  104. package/dist/src/projects/dto/create-project.dto.js +46 -0
  105. package/dist/src/projects/dto/create-project.dto.js.map +1 -0
  106. package/dist/src/projects/dto/update-project.dto.d.ts +5 -0
  107. package/dist/src/projects/dto/update-project.dto.js +13 -0
  108. package/dist/src/projects/dto/update-project.dto.js.map +1 -0
  109. package/dist/src/projects/entities/project.entity.d.ts +18 -0
  110. package/dist/src/projects/entities/project.entity.js +81 -0
  111. package/dist/src/projects/entities/project.entity.js.map +1 -0
  112. package/dist/src/projects/projects.controller.d.ts +12 -0
  113. package/dist/src/projects/projects.controller.js +87 -0
  114. package/dist/src/projects/projects.controller.js.map +1 -0
  115. package/dist/src/projects/projects.module.d.ts +2 -0
  116. package/dist/src/projects/projects.module.js +26 -0
  117. package/dist/src/projects/projects.module.js.map +1 -0
  118. package/dist/src/projects/projects.service.d.ts +13 -0
  119. package/dist/src/projects/projects.service.js +69 -0
  120. package/dist/src/projects/projects.service.js.map +1 -0
  121. package/dist/src/providers/dto/create-provider.dto.d.ts +4 -0
  122. package/dist/src/providers/dto/create-provider.dto.js +33 -0
  123. package/dist/src/providers/dto/create-provider.dto.js.map +1 -0
  124. package/dist/src/providers/dto/update-provider.dto.d.ts +5 -0
  125. package/dist/src/providers/dto/update-provider.dto.js +13 -0
  126. package/dist/src/providers/dto/update-provider.dto.js.map +1 -0
  127. package/dist/src/providers/entities/provider.entity.d.ts +9 -0
  128. package/dist/src/providers/entities/provider.entity.js +55 -0
  129. package/dist/src/providers/entities/provider.entity.js.map +1 -0
  130. package/dist/src/providers/providers.controller.d.ts +13 -0
  131. package/dist/src/providers/providers.controller.js +98 -0
  132. package/dist/src/providers/providers.controller.js.map +1 -0
  133. package/dist/src/providers/providers.module.d.ts +2 -0
  134. package/dist/src/providers/providers.module.js +26 -0
  135. package/dist/src/providers/providers.module.js.map +1 -0
  136. package/dist/src/providers/providers.service.d.ts +14 -0
  137. package/dist/src/providers/providers.service.js +73 -0
  138. package/dist/src/providers/providers.service.js.map +1 -0
  139. package/dist/src/tasks/dto/create-task.dto.d.ts +10 -0
  140. package/dist/src/tasks/dto/create-task.dto.js +64 -0
  141. package/dist/src/tasks/dto/create-task.dto.js.map +1 -0
  142. package/dist/src/tasks/dto/update-task.dto.d.ts +5 -0
  143. package/dist/src/tasks/dto/update-task.dto.js +13 -0
  144. package/dist/src/tasks/dto/update-task.dto.js.map +1 -0
  145. package/dist/src/tasks/entities/task.entity.d.ts +26 -0
  146. package/dist/src/tasks/entities/task.entity.js +106 -0
  147. package/dist/src/tasks/entities/task.entity.js.map +1 -0
  148. package/dist/src/tasks/tasks.controller.d.ts +12 -0
  149. package/dist/src/tasks/tasks.controller.js +87 -0
  150. package/dist/src/tasks/tasks.controller.js.map +1 -0
  151. package/dist/src/tasks/tasks.module.d.ts +2 -0
  152. package/dist/src/tasks/tasks.module.js +26 -0
  153. package/dist/src/tasks/tasks.module.js.map +1 -0
  154. package/dist/src/tasks/tasks.service.d.ts +15 -0
  155. package/dist/src/tasks/tasks.service.js +80 -0
  156. package/dist/src/tasks/tasks.service.js.map +1 -0
  157. package/dist/src/users/dto/create-user.dto.d.ts +3 -0
  158. package/dist/src/users/dto/create-user.dto.js +27 -0
  159. package/dist/src/users/dto/create-user.dto.js.map +1 -0
  160. package/dist/src/users/dto/update-user.dto.d.ts +5 -0
  161. package/dist/src/users/dto/update-user.dto.js +13 -0
  162. package/dist/src/users/dto/update-user.dto.js.map +1 -0
  163. package/dist/src/users/entities/user.entity.d.ts +6 -0
  164. package/dist/src/users/entities/user.entity.js +44 -0
  165. package/dist/src/users/entities/user.entity.js.map +1 -0
  166. package/dist/src/users/users.controller.d.ts +12 -0
  167. package/dist/src/users/users.controller.js +89 -0
  168. package/dist/src/users/users.controller.js.map +1 -0
  169. package/dist/src/users/users.module.d.ts +2 -0
  170. package/dist/src/users/users.module.js +26 -0
  171. package/dist/src/users/users.module.js.map +1 -0
  172. package/dist/src/users/users.service.d.ts +13 -0
  173. package/dist/src/users/users.service.js +58 -0
  174. package/dist/src/users/users.service.js.map +1 -0
  175. package/dist/tasks/dto/create-task.dto.js +52 -0
  176. package/dist/tasks/dto/update-task.dto.js +8 -0
  177. package/dist/tasks/entities/task.entity.js +91 -0
  178. package/dist/tasks/tasks.controller.js +79 -0
  179. package/dist/tasks/tasks.module.js +25 -0
  180. package/dist/tasks/tasks.service.js +77 -0
  181. package/dist/tsconfig.build.tsbuildinfo +1 -0
  182. package/dist/users/dto/create-user.dto.js +21 -0
  183. package/dist/users/dto/update-user.dto.js +8 -0
  184. package/dist/users/entities/user.entity.js +35 -0
  185. package/dist/users/users.controller.js +81 -0
  186. package/dist/users/users.module.js +25 -0
  187. package/dist/users/users.service.js +56 -0
  188. package/package.json +33 -6
package/CHANGELOG.md CHANGED
@@ -1,3 +1,83 @@
1
+ # [1.0.0-alpha.11](https://github.com/bpinhosilva/agent-orchestrator/compare/v1.0.0-alpha.10...v1.0.0-alpha.11) (2026-03-24)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * downgrade class-validator from ^0.15.1 to ^0.14.1 ([6d9bb29](https://github.com/bpinhosilva/agent-orchestrator/commit/6d9bb291145cdfad7d8c5f4fc8a7ac6ee48ee776))
7
+
8
+
9
+ ### Features
10
+
11
+ * introduce task management UI with draggable cards and refactor provider ([1002dd1](https://github.com/bpinhosilva/agent-orchestrator/commit/1002dd1ac373fe4f6c3acb2eb6e9345b3ec35aba))
12
+
13
+ # [1.0.0-alpha.10](https://github.com/bpinhosilva/agent-orchestrator/compare/v1.0.0-alpha.9...v1.0.0-alpha.10) (2026-03-22)
14
+
15
+
16
+ ### Features
17
+
18
+ * add agent probing functionality with a new API endpoint, service logic ([f71abb6](https://github.com/bpinhosilva/agent-orchestrator/commit/f71abb601745b7f2ae5c1f8be53143429302c1d2))
19
+
20
+ # [1.0.0-alpha.9](https://github.com/bpinhosilva/agent-orchestrator/compare/v1.0.0-alpha.8...v1.0.0-alpha.9) (2026-03-22)
21
+
22
+
23
+ ### Features
24
+
25
+ * implement provider and model management UI and API, and enhance agent configuration ([01dbe34](https://github.com/bpinhosilva/agent-orchestrator/commit/01dbe345b8763da433682d7bc185c017e5b5d5d9))
26
+
27
+ # [1.0.0-alpha.8](https://github.com/bpinhosilva/agent-orchestrator/compare/v1.0.0-alpha.7...v1.0.0-alpha.8) (2026-03-22)
28
+
29
+
30
+ ### Features
31
+
32
+ * add initial user interface for agent management and orchestration ([7a27019](https://github.com/bpinhosilva/agent-orchestrator/commit/7a270197691453384e5827987574f94e93cad7fb))
33
+
34
+ # [1.0.0-alpha.7](https://github.com/bpinhosilva/agent-orchestrator/compare/v1.0.0-alpha.6...v1.0.0-alpha.7) (2026-03-21)
35
+
36
+
37
+ ### Features
38
+
39
+ * add user management module, introduce task output field, and include a design document ([7d0717d](https://github.com/bpinhosilva/agent-orchestrator/commit/7d0717d5a566435641e46b2f4b40101df0f62ed6))
40
+
41
+ # [1.0.0-alpha.6](https://github.com/bpinhosilva/agent-orchestrator/compare/v1.0.0-alpha.5...v1.0.0-alpha.6) (2026-03-21)
42
+
43
+
44
+ ### Features
45
+
46
+ * implement project and task management modules, including entities, DTOs, services, controllers ([3df2c2a](https://github.com/bpinhosilva/agent-orchestrator/commit/3df2c2a6d0bdf4e3e4edbf12f544a8e12970e2dd))
47
+
48
+ # [1.0.0-alpha.5](https://github.com/bpinhosilva/agent-orchestrator/compare/v1.0.0-alpha.4...v1.0.0-alpha.5) (2026-03-21)
49
+
50
+
51
+ ### Bug Fixes
52
+
53
+ * **ci:** use legacy-peer-deps to resolve peer dependency conflicts ([b450b45](https://github.com/bpinhosilva/agent-orchestrator/commit/b450b4500ff02addb1bca6cc7f6a40c93e442e7f))
54
+
55
+
56
+ ### Features
57
+
58
+ * implement models and providers modules add swagger documentation, and update agents ([b6e8245](https://github.com/bpinhosilva/agent-orchestrator/commit/b6e824547f4f603cecf0352b383d20a078fe6662))
59
+
60
+ # [1.0.0-alpha.4](https://github.com/bpinhosilva/agent-orchestrator/compare/v1.0.0-alpha.3...v1.0.0-alpha.4) (2026-03-20)
61
+
62
+
63
+ ### Features
64
+
65
+ * update Google Gemini API client library, adapt agent implementation and tests ([46a52dd](https://github.com/bpinhosilva/agent-orchestrator/commit/46a52dd518f27cded3213248e9646300b6bc2fb8))
66
+
67
+ # [1.0.0-alpha.3](https://github.com/bpinhosilva/agent-orchestrator/compare/v1.0.0-alpha.2...v1.0.0-alpha.3) (2026-03-17)
68
+
69
+
70
+ ### Bug Fixes
71
+
72
+ * compatibility with path-to-regexp for serve-static excluding ([3675042](https://github.com/bpinhosilva/agent-orchestrator/commit/3675042ed0b2b7588c236b6d774aa2136e4835b8))
73
+
74
+ # [1.0.0-alpha.2](https://github.com/bpinhosilva/agent-orchestrator/compare/v1.0.0-alpha.1...v1.0.0-alpha.2) (2026-03-17)
75
+
76
+
77
+ ### Bug Fixes
78
+
79
+ * trigger release with updated build steps ([1ad13b0](https://github.com/bpinhosilva/agent-orchestrator/commit/1ad13b0eb64adb603762edecb82b27f6672fb847))
80
+
1
81
  # 1.0.0-alpha.1 (2026-03-17)
2
82
 
3
83
 
@@ -0,0 +1,102 @@
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 __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.AgentsController = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const agents_service_1 = require("./agents.service");
18
+ const agent_request_dto_1 = require("./dto/agent-request.dto");
19
+ const create_agent_dto_1 = require("./dto/create-agent.dto");
20
+ const update_agent_dto_1 = require("./dto/update-agent.dto");
21
+ let AgentsController = class AgentsController {
22
+ constructor(agentsService) {
23
+ this.agentsService = agentsService;
24
+ }
25
+ create(createAgentDto) {
26
+ return this.agentsService.create(createAgentDto);
27
+ }
28
+ findAll() {
29
+ return this.agentsService.findAll();
30
+ }
31
+ findOne(id) {
32
+ return this.agentsService.findOne(id);
33
+ }
34
+ update(id, updateAgentDto) {
35
+ return this.agentsService.update(id, updateAgentDto);
36
+ }
37
+ remove(id) {
38
+ return this.agentsService.remove(id);
39
+ }
40
+ async processText(requestDto) {
41
+ return this.agentsService.processRequest(requestDto.agentId, requestDto.input);
42
+ }
43
+ async probe(requestDto) {
44
+ return this.agentsService.probe(requestDto.agentId, requestDto.input);
45
+ }
46
+ };
47
+ exports.AgentsController = AgentsController;
48
+ __decorate([
49
+ (0, common_1.Post)(),
50
+ __param(0, (0, common_1.Body)()),
51
+ __metadata("design:type", Function),
52
+ __metadata("design:paramtypes", [create_agent_dto_1.CreateAgentDto]),
53
+ __metadata("design:returntype", void 0)
54
+ ], AgentsController.prototype, "create", null);
55
+ __decorate([
56
+ (0, common_1.Get)(),
57
+ __metadata("design:type", Function),
58
+ __metadata("design:paramtypes", []),
59
+ __metadata("design:returntype", void 0)
60
+ ], AgentsController.prototype, "findAll", null);
61
+ __decorate([
62
+ (0, common_1.Get)(':id'),
63
+ __param(0, (0, common_1.Param)('id')),
64
+ __metadata("design:type", Function),
65
+ __metadata("design:paramtypes", [String]),
66
+ __metadata("design:returntype", void 0)
67
+ ], AgentsController.prototype, "findOne", null);
68
+ __decorate([
69
+ (0, common_1.Patch)(':id'),
70
+ __param(0, (0, common_1.Param)('id')),
71
+ __param(1, (0, common_1.Body)()),
72
+ __metadata("design:type", Function),
73
+ __metadata("design:paramtypes", [String, update_agent_dto_1.UpdateAgentDto]),
74
+ __metadata("design:returntype", void 0)
75
+ ], AgentsController.prototype, "update", null);
76
+ __decorate([
77
+ (0, common_1.Delete)(':id'),
78
+ __param(0, (0, common_1.Param)('id')),
79
+ __metadata("design:type", Function),
80
+ __metadata("design:paramtypes", [String]),
81
+ __metadata("design:returntype", void 0)
82
+ ], AgentsController.prototype, "remove", null);
83
+ __decorate([
84
+ (0, common_1.Post)('process'),
85
+ (0, common_1.HttpCode)(common_1.HttpStatus.OK),
86
+ __param(0, (0, common_1.Body)()),
87
+ __metadata("design:type", Function),
88
+ __metadata("design:paramtypes", [agent_request_dto_1.AgentRequestDto]),
89
+ __metadata("design:returntype", Promise)
90
+ ], AgentsController.prototype, "processText", null);
91
+ __decorate([
92
+ (0, common_1.Post)('probe'),
93
+ (0, common_1.HttpCode)(common_1.HttpStatus.OK),
94
+ __param(0, (0, common_1.Body)()),
95
+ __metadata("design:type", Function),
96
+ __metadata("design:paramtypes", [agent_request_dto_1.AgentRequestDto]),
97
+ __metadata("design:returntype", Promise)
98
+ ], AgentsController.prototype, "probe", null);
99
+ exports.AgentsController = AgentsController = __decorate([
100
+ (0, common_1.Controller)('agents'),
101
+ __metadata("design:paramtypes", [agents_service_1.AgentsService])
102
+ ], AgentsController);
@@ -0,0 +1,26 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.AgentsModule = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ const typeorm_1 = require("@nestjs/typeorm");
12
+ const agents_controller_1 = require("./agents.controller");
13
+ const agents_service_1 = require("./agents.service");
14
+ const agent_entity_1 = require("./entities/agent.entity");
15
+ const gemini_agent_1 = require("./implementations/gemini.agent");
16
+ let AgentsModule = class AgentsModule {
17
+ };
18
+ exports.AgentsModule = AgentsModule;
19
+ exports.AgentsModule = AgentsModule = __decorate([
20
+ (0, common_1.Module)({
21
+ imports: [typeorm_1.TypeOrmModule.forFeature([agent_entity_1.AgentEntity])],
22
+ controllers: [agents_controller_1.AgentsController],
23
+ providers: [agents_service_1.AgentsService, gemini_agent_1.GeminiAgent],
24
+ exports: [agents_service_1.AgentsService],
25
+ })
26
+ ], AgentsModule);
@@ -0,0 +1,163 @@
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 __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var AgentsService_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.AgentsService = void 0;
17
+ const common_1 = require("@nestjs/common");
18
+ const typeorm_1 = require("@nestjs/typeorm");
19
+ const typeorm_2 = require("typeorm");
20
+ const agent_entity_1 = require("./entities/agent.entity");
21
+ const agent_registry_1 = require("./registry/agent.registry");
22
+ let AgentsService = AgentsService_1 = class AgentsService {
23
+ constructor(agentRepository) {
24
+ this.agentRepository = agentRepository;
25
+ this.logger = new common_1.Logger(AgentsService_1.name);
26
+ this.agentInstances = new Map();
27
+ }
28
+ async onModuleInit() {
29
+ this.logger.log('Initializing Agent instances from database...');
30
+ const agents = await this.agentRepository.find({ relations: ['model'] });
31
+ for (const agentEntity of agents) {
32
+ if (agentEntity.status !== 'inactive') {
33
+ try {
34
+ this.syncAgentInstance(agentEntity);
35
+ }
36
+ catch (error) {
37
+ const errorMessage = error instanceof Error ? error.message : String(error);
38
+ this.logger.error(`Failed to initialize agent #${agentEntity.id}: ${errorMessage}`);
39
+ }
40
+ }
41
+ }
42
+ this.logger.log(`Initialized ${this.agentInstances.size} agent instances.`);
43
+ }
44
+ syncAgentInstance(agentEntity) {
45
+ if (agentEntity.status === 'inactive') {
46
+ this.agentInstances.delete(agentEntity.id);
47
+ return;
48
+ }
49
+ const provider = agentEntity.provider;
50
+ if (!provider) {
51
+ this.logger.warn(`No provider found for agent #${agentEntity.id}. Skipping instance creation.`);
52
+ return;
53
+ }
54
+ const AgentClass = (0, agent_registry_1.getAgentImplementation)(provider);
55
+ if (!AgentClass) {
56
+ this.logger.warn(`No implementation found for provider: ${provider}. Skipping instance creation.`);
57
+ return;
58
+ }
59
+ try {
60
+ const instance = new AgentClass(agentEntity.model?.name);
61
+ instance.updateConfig?.({
62
+ name: agentEntity.name,
63
+ description: agentEntity.description,
64
+ systemInstructions: agentEntity.systemInstructions,
65
+ role: agentEntity.role,
66
+ provider: agentEntity.provider,
67
+ });
68
+ this.agentInstances.set(agentEntity.id, instance);
69
+ this.logger.debug(`Synchronized agent instance #${agentEntity.id}`);
70
+ }
71
+ catch (error) {
72
+ const errorMessage = error instanceof Error ? error.message : String(error);
73
+ this.logger.error(`Error synchronizing agent #${agentEntity.id}: ${errorMessage}`);
74
+ throw error;
75
+ }
76
+ }
77
+ async create(createAgentDto) {
78
+ const agent = this.agentRepository.create(createAgentDto);
79
+ const savedAgent = await this.agentRepository.save(agent);
80
+ // Reload with relations for proper synchronization
81
+ const fullyLoadedAgent = await this.findOne(savedAgent.id);
82
+ this.syncAgentInstance(fullyLoadedAgent);
83
+ return fullyLoadedAgent;
84
+ }
85
+ async findAll() {
86
+ return this.agentRepository.find({ relations: ['model'] });
87
+ }
88
+ async findOne(id) {
89
+ const agent = await this.agentRepository.findOne({
90
+ where: { id },
91
+ relations: ['model'],
92
+ });
93
+ if (!agent) {
94
+ throw new common_1.NotFoundException(`Agent #${id} not found`);
95
+ }
96
+ return agent;
97
+ }
98
+ async update(id, updateAgentDto) {
99
+ const { modelId, ...rest } = updateAgentDto;
100
+ const updateData = { ...rest };
101
+ if (modelId) {
102
+ updateData.model = { id: modelId };
103
+ }
104
+ await this.agentRepository.update(id, updateData);
105
+ const updatedAgent = await this.agentRepository.findOne({
106
+ where: { id },
107
+ relations: ['model'],
108
+ });
109
+ if (!updatedAgent) {
110
+ throw new common_1.NotFoundException(`Agent #${id} not found`);
111
+ }
112
+ this.syncAgentInstance(updatedAgent);
113
+ return updatedAgent;
114
+ }
115
+ async remove(id) {
116
+ const agent = await this.findOne(id);
117
+ agent.status = 'inactive';
118
+ await this.agentRepository.save(agent);
119
+ this.agentInstances.delete(id);
120
+ }
121
+ async processRequest(agentId, input) {
122
+ const agent = this.agentInstances.get(agentId);
123
+ if (!agent) {
124
+ const agentEntity = await this.agentRepository.findOne({
125
+ where: { id: agentId },
126
+ });
127
+ if (agentEntity?.status === 'inactive') {
128
+ throw new common_1.NotFoundException(`Agent #${agentId} is currently inactive and cannot process requests.`);
129
+ }
130
+ throw new common_1.NotFoundException(`Active instance for Agent #${agentId} not found`);
131
+ }
132
+ this.logger.debug(`Processing input using agent instance: ${agent.getName()}`);
133
+ return agent.processText(input);
134
+ }
135
+ async probe(agentId, input) {
136
+ let agent = this.agentInstances.get(agentId);
137
+ if (!agent) {
138
+ this.logger.debug(`Agent instance #${agentId} not found in memory. Checking database...`);
139
+ const agentEntity = await this.agentRepository.findOne({
140
+ where: { id: agentId },
141
+ relations: ['model'],
142
+ });
143
+ if (!agentEntity) {
144
+ throw new common_1.NotFoundException(`Agent #${agentId} not found`);
145
+ }
146
+ if (agentEntity.status === 'inactive') {
147
+ throw new common_1.NotFoundException(`Agent #${agentId} is currently inactive and cannot be probed.`);
148
+ }
149
+ this.syncAgentInstance(agentEntity);
150
+ agent = this.agentInstances.get(agentId);
151
+ if (!agent) {
152
+ throw new common_1.NotFoundException(`Failed to initialize agent #${agentId} after database fetch`);
153
+ }
154
+ }
155
+ return agent.processText(input);
156
+ }
157
+ };
158
+ exports.AgentsService = AgentsService;
159
+ exports.AgentsService = AgentsService = AgentsService_1 = __decorate([
160
+ (0, common_1.Injectable)(),
161
+ __param(0, (0, typeorm_1.InjectRepository)(agent_entity_1.AgentEntity)),
162
+ __metadata("design:paramtypes", [typeorm_2.Repository])
163
+ ], AgentsService);
@@ -0,0 +1,26 @@
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.AgentRequestDto = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ class AgentRequestDto {
15
+ }
16
+ exports.AgentRequestDto = AgentRequestDto;
17
+ __decorate([
18
+ (0, class_validator_1.IsString)(),
19
+ (0, class_validator_1.IsNotEmpty)(),
20
+ __metadata("design:type", String)
21
+ ], AgentRequestDto.prototype, "agentId", void 0);
22
+ __decorate([
23
+ (0, class_validator_1.IsString)(),
24
+ (0, class_validator_1.IsNotEmpty)(),
25
+ __metadata("design:type", String)
26
+ ], AgentRequestDto.prototype, "input", void 0);
@@ -0,0 +1,51 @@
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.CreateAgentDto = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ class CreateAgentDto {
15
+ }
16
+ exports.CreateAgentDto = CreateAgentDto;
17
+ __decorate([
18
+ (0, class_validator_1.IsString)(),
19
+ (0, class_validator_1.IsNotEmpty)(),
20
+ __metadata("design:type", String)
21
+ ], CreateAgentDto.prototype, "name", void 0);
22
+ __decorate([
23
+ (0, class_validator_1.IsString)(),
24
+ (0, class_validator_1.IsOptional)(),
25
+ __metadata("design:type", String)
26
+ ], CreateAgentDto.prototype, "description", void 0);
27
+ __decorate([
28
+ (0, class_validator_1.IsString)(),
29
+ (0, class_validator_1.IsOptional)(),
30
+ __metadata("design:type", String)
31
+ ], CreateAgentDto.prototype, "role", void 0);
32
+ __decorate([
33
+ (0, class_validator_1.IsString)(),
34
+ (0, class_validator_1.IsOptional)(),
35
+ __metadata("design:type", String)
36
+ ], CreateAgentDto.prototype, "systemInstructions", void 0);
37
+ __decorate([
38
+ (0, class_validator_1.IsString)(),
39
+ (0, class_validator_1.IsNotEmpty)(),
40
+ __metadata("design:type", String)
41
+ ], CreateAgentDto.prototype, "modelId", void 0);
42
+ __decorate([
43
+ (0, class_validator_1.IsString)(),
44
+ (0, class_validator_1.IsOptional)(),
45
+ __metadata("design:type", String)
46
+ ], CreateAgentDto.prototype, "status", void 0);
47
+ __decorate([
48
+ (0, class_validator_1.IsString)(),
49
+ (0, class_validator_1.IsOptional)(),
50
+ __metadata("design:type", String)
51
+ ], CreateAgentDto.prototype, "provider", void 0);
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UpdateAgentDto = void 0;
4
+ const mapped_types_1 = require("@nestjs/mapped-types");
5
+ const create_agent_dto_1 = require("./create-agent.dto");
6
+ class UpdateAgentDto extends (0, mapped_types_1.PartialType)(create_agent_dto_1.CreateAgentDto) {
7
+ }
8
+ exports.UpdateAgentDto = UpdateAgentDto;
@@ -0,0 +1,72 @@
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.AgentEntity = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const model_entity_1 = require("../../models/entities/model.entity");
15
+ const project_entity_1 = require("../../projects/entities/project.entity");
16
+ let AgentEntity = class AgentEntity {
17
+ };
18
+ exports.AgentEntity = AgentEntity;
19
+ __decorate([
20
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
21
+ __metadata("design:type", String)
22
+ ], AgentEntity.prototype, "id", void 0);
23
+ __decorate([
24
+ (0, typeorm_1.Column)({ unique: true }),
25
+ __metadata("design:type", String)
26
+ ], AgentEntity.prototype, "name", void 0);
27
+ __decorate([
28
+ (0, typeorm_1.Column)('text', { nullable: true }),
29
+ __metadata("design:type", String)
30
+ ], AgentEntity.prototype, "description", void 0);
31
+ __decorate([
32
+ (0, typeorm_1.Column)('text', { nullable: true }),
33
+ __metadata("design:type", String)
34
+ ], AgentEntity.prototype, "systemInstructions", void 0);
35
+ __decorate([
36
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
37
+ __metadata("design:type", String)
38
+ ], AgentEntity.prototype, "role", void 0);
39
+ __decorate([
40
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
41
+ __metadata("design:type", String)
42
+ ], AgentEntity.prototype, "status", void 0);
43
+ __decorate([
44
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
45
+ __metadata("design:type", String)
46
+ ], AgentEntity.prototype, "provider", void 0);
47
+ __decorate([
48
+ (0, typeorm_1.ManyToOne)(() => model_entity_1.Model, (model) => model.agents, {
49
+ nullable: true,
50
+ eager: true,
51
+ onDelete: 'SET NULL',
52
+ }),
53
+ __metadata("design:type", model_entity_1.Model)
54
+ ], AgentEntity.prototype, "model", void 0);
55
+ __decorate([
56
+ (0, typeorm_1.ManyToOne)(() => project_entity_1.Project, (project) => project.agents, {
57
+ nullable: true,
58
+ onDelete: 'SET NULL',
59
+ }),
60
+ __metadata("design:type", project_entity_1.Project)
61
+ ], AgentEntity.prototype, "project", void 0);
62
+ __decorate([
63
+ (0, typeorm_1.CreateDateColumn)(),
64
+ __metadata("design:type", Date)
65
+ ], AgentEntity.prototype, "createdAt", void 0);
66
+ __decorate([
67
+ (0, typeorm_1.UpdateDateColumn)(),
68
+ __metadata("design:type", Date)
69
+ ], AgentEntity.prototype, "updatedAt", void 0);
70
+ exports.AgentEntity = AgentEntity = __decorate([
71
+ (0, typeorm_1.Entity)('agents')
72
+ ], AgentEntity);