@autobe/agent 0.0.0 → 0.3.9

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 (166) hide show
  1. package/LICENSE +21 -21
  2. package/lib/AutoBeAgent.d.ts +9 -7
  3. package/lib/AutoBeAgent.js +106 -14
  4. package/lib/AutoBeAgent.js.map +1 -1
  5. package/lib/analyze/AnalyzeAgent.d.ts +24 -0
  6. package/lib/analyze/AnalyzeAgent.js +817 -0
  7. package/lib/analyze/AnalyzeAgent.js.map +1 -0
  8. package/lib/analyze/CreateReviewerAgent.d.ts +16 -0
  9. package/lib/analyze/CreateReviewerAgent.js +97 -0
  10. package/lib/analyze/CreateReviewerAgent.js.map +1 -0
  11. package/lib/analyze/Planning.d.ts +63 -0
  12. package/lib/{orchestrate/orchestratePrisma.js → analyze/Planning.js} +28 -11
  13. package/lib/analyze/Planning.js.map +1 -0
  14. package/lib/constants/AutoBeSystemPromptConstant.d.ts +14 -0
  15. package/lib/constants/AutoBeSystemPromptConstant.js +4 -0
  16. package/lib/constants/AutoBeSystemPromptConstant.js.map +1 -0
  17. package/lib/context/AutoBeContext.d.ts +7 -3
  18. package/lib/context/IAutoBeApplication.d.ts +72 -32
  19. package/lib/context/IAutoBeApplicationProps.d.ts +22 -2
  20. package/lib/context/IAutoBeApplicationResult.d.ts +0 -1
  21. package/lib/context/assertSchemaModel.d.ts +2 -0
  22. package/lib/context/assertSchemaModel.js +15 -0
  23. package/lib/context/assertSchemaModel.js.map +1 -0
  24. package/lib/{internal/transformAgenticaHistory.d.ts → factory/createAgenticaHistory.d.ts} +1 -1
  25. package/lib/{internal/transformAgenticaHistory.js → factory/createAgenticaHistory.js} +3 -4
  26. package/lib/factory/createAgenticaHistory.js.map +1 -0
  27. package/lib/factory/createAutoBeApplication.js +1195 -0
  28. package/lib/factory/createAutoBeApplication.js.map +1 -0
  29. package/lib/factory/createAutoBeState.js.map +1 -0
  30. package/lib/factory/index.d.ts +2 -0
  31. package/lib/factory/index.js +19 -0
  32. package/lib/factory/index.js.map +1 -0
  33. package/lib/factory/invertOpenApiDocument.d.ts +3 -0
  34. package/lib/factory/invertOpenApiDocument.js +51 -0
  35. package/lib/factory/invertOpenApiDocument.js.map +1 -0
  36. package/lib/index.d.ts +3 -3
  37. package/lib/index.js +4 -4
  38. package/lib/index.js.map +1 -1
  39. package/lib/index.mjs +5455 -547
  40. package/lib/index.mjs.map +1 -1
  41. package/lib/orchestrate/facade/transformFacadeStateMessage.d.ts +2 -0
  42. package/lib/orchestrate/facade/transformFacadeStateMessage.js +46 -0
  43. package/lib/orchestrate/facade/transformFacadeStateMessage.js.map +1 -0
  44. package/lib/orchestrate/index.d.ts +2 -2
  45. package/lib/orchestrate/index.js +2 -2
  46. package/lib/orchestrate/index.js.map +1 -1
  47. package/lib/orchestrate/interface/OpenApiEndpointComparator.d.ts +5 -0
  48. package/lib/orchestrate/interface/OpenApiEndpointComparator.js +16 -0
  49. package/lib/orchestrate/interface/OpenApiEndpointComparator.js.map +1 -0
  50. package/lib/orchestrate/interface/orchestrateInterface.d.ts +5 -0
  51. package/lib/orchestrate/interface/orchestrateInterface.js +61 -0
  52. package/lib/orchestrate/interface/orchestrateInterface.js.map +1 -0
  53. package/lib/orchestrate/interface/orchestrateInterfaceComponents.d.ts +4 -0
  54. package/lib/orchestrate/interface/orchestrateInterfaceComponents.js +702 -0
  55. package/lib/orchestrate/interface/orchestrateInterfaceComponents.js.map +1 -0
  56. package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.d.ts +4 -0
  57. package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js +452 -0
  58. package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js.map +1 -0
  59. package/lib/orchestrate/interface/orchestrateInterfaceOperations.d.ts +4 -0
  60. package/lib/orchestrate/interface/orchestrateInterfaceOperations.js +2065 -0
  61. package/lib/orchestrate/interface/orchestrateInterfaceOperations.js.map +1 -0
  62. package/lib/orchestrate/interface/transformInterfaceHistories.d.ts +3 -0
  63. package/lib/orchestrate/interface/transformInterfaceHistories.js +94 -0
  64. package/lib/orchestrate/interface/transformInterfaceHistories.js.map +1 -0
  65. package/lib/orchestrate/orchestrateAnalyze.d.ts +1 -3
  66. package/lib/orchestrate/orchestrateAnalyze.js +60 -6
  67. package/lib/orchestrate/orchestrateAnalyze.js.map +1 -1
  68. package/lib/orchestrate/{orchestratePrisma.d.ts → prisma/orchestratePrisma.d.ts} +3 -6
  69. package/lib/orchestrate/prisma/orchestratePrisma.js +103 -0
  70. package/lib/orchestrate/prisma/orchestratePrisma.js.map +1 -0
  71. package/lib/orchestrate/prisma/orchestratePrismaCompiler.d.ts +6 -0
  72. package/lib/orchestrate/prisma/orchestratePrismaCompiler.js +436 -0
  73. package/lib/orchestrate/prisma/orchestratePrismaCompiler.js.map +1 -0
  74. package/lib/orchestrate/prisma/orchestratePrismaComponent.d.ts +5 -0
  75. package/lib/orchestrate/prisma/orchestratePrismaComponent.js +437 -0
  76. package/lib/orchestrate/prisma/orchestratePrismaComponent.js.map +1 -0
  77. package/lib/orchestrate/prisma/orchestratePrismaSchema.d.ts +7 -0
  78. package/lib/orchestrate/prisma/orchestratePrismaSchema.js +369 -0
  79. package/lib/orchestrate/prisma/orchestratePrismaSchema.js.map +1 -0
  80. package/lib/orchestrate/prisma/transformPrismaCompilerHistories.d.ts +3 -0
  81. package/lib/orchestrate/prisma/transformPrismaCompilerHistories.js +44 -0
  82. package/lib/orchestrate/prisma/transformPrismaCompilerHistories.js.map +1 -0
  83. package/lib/orchestrate/prisma/transformPrismaComponentsHistories.d.ts +3 -0
  84. package/lib/orchestrate/prisma/transformPrismaComponentsHistories.js +42 -0
  85. package/lib/orchestrate/prisma/transformPrismaComponentsHistories.js.map +1 -0
  86. package/lib/orchestrate/prisma/transformPrismaHistories.d.ts +3 -0
  87. package/lib/orchestrate/prisma/transformPrismaHistories.js +46 -0
  88. package/lib/orchestrate/prisma/transformPrismaHistories.js.map +1 -0
  89. package/lib/orchestrate/prisma/transformPrismaSchemaHistories.d.ts +3 -0
  90. package/lib/orchestrate/prisma/transformPrismaSchemaHistories.js +46 -0
  91. package/lib/orchestrate/prisma/transformPrismaSchemaHistories.js.map +1 -0
  92. package/lib/structures/IAutoBeConfig.d.ts +4 -4
  93. package/lib/utils/StringUtil.d.ts +4 -0
  94. package/lib/utils/StringUtil.js +43 -0
  95. package/lib/utils/StringUtil.js.map +1 -0
  96. package/lib/utils/divideArray.d.ts +4 -0
  97. package/lib/utils/divideArray.js +19 -0
  98. package/lib/utils/divideArray.js.map +1 -0
  99. package/lib/utils/emplaceMap.d.ts +1 -0
  100. package/lib/utils/emplaceMap.js +13 -0
  101. package/lib/utils/emplaceMap.js.map +1 -0
  102. package/package.json +29 -8
  103. package/src/AutoBeAgent.ts +227 -101
  104. package/src/analyze/AnalyzeAgent.ts +167 -0
  105. package/src/analyze/CreateReviewerAgent.ts +126 -0
  106. package/src/analyze/Planning.ts +75 -0
  107. package/src/constants/AutoBeSystemPromptConstant.ts +15 -0
  108. package/src/context/AutoBeContext.ts +19 -15
  109. package/src/context/AutoBeState.ts +15 -15
  110. package/src/context/AutoBeTokenUsage.ts +3 -3
  111. package/src/context/IAutoBeApplication.ts +112 -72
  112. package/src/context/IAutoBeApplicationProps.ts +27 -6
  113. package/src/context/IAutoBeApplicationResult.ts +3 -4
  114. package/src/context/assertSchemaModel.ts +17 -0
  115. package/src/{internal/transformAgenticaHistory.ts → factory/createAgenticaHistory.ts} +51 -54
  116. package/src/{internal → factory}/createAutoBeApplication.ts +52 -47
  117. package/src/{internal → factory}/createAutoBeState.ts +14 -14
  118. package/src/factory/index.ts +2 -0
  119. package/src/factory/invertOpenApiDocument.ts +63 -0
  120. package/src/index.ts +13 -12
  121. package/src/orchestrate/facade/transformFacadeStateMessage.ts +58 -0
  122. package/src/orchestrate/index.ts +5 -5
  123. package/src/orchestrate/interface/OpenApiEndpointComparator.ts +15 -0
  124. package/src/orchestrate/interface/orchestrateInterface.ts +66 -0
  125. package/src/orchestrate/interface/orchestrateInterfaceComponents.ts +324 -0
  126. package/src/orchestrate/interface/orchestrateInterfaceEndpoints.ts +140 -0
  127. package/src/orchestrate/interface/orchestrateInterfaceOperations.ts +247 -0
  128. package/src/orchestrate/interface/transformInterfaceHistories.ts +98 -0
  129. package/src/orchestrate/orchestrateAnalyze.ts +86 -21
  130. package/src/orchestrate/orchestrateRealize.ts +18 -18
  131. package/src/orchestrate/orchestrateTest.ts +18 -18
  132. package/src/orchestrate/prisma/orchestratePrisma.ts +117 -0
  133. package/src/orchestrate/prisma/orchestratePrismaCompiler.ts +194 -0
  134. package/src/orchestrate/prisma/orchestratePrismaComponent.ts +176 -0
  135. package/src/orchestrate/prisma/orchestratePrismaSchema.ts +181 -0
  136. package/src/orchestrate/prisma/transformPrismaCompilerHistories.ts +49 -0
  137. package/src/orchestrate/prisma/transformPrismaComponentsHistories.ts +46 -0
  138. package/src/orchestrate/prisma/transformPrismaHistories.ts +50 -0
  139. package/src/orchestrate/prisma/transformPrismaSchemaHistories.ts +50 -0
  140. package/src/structures/IAutoBeConfig.ts +25 -25
  141. package/src/structures/IAutoBeProps.ts +13 -13
  142. package/src/structures/IAutoBeVendor.ts +3 -3
  143. package/src/utils/StringUtil.ts +45 -0
  144. package/src/utils/divideArray.ts +16 -0
  145. package/src/utils/emplaceMap.ts +14 -0
  146. package/lib/factory/transformRouteDocument.d.ts +0 -3
  147. package/lib/factory/transformRouteDocument.js +0 -50
  148. package/lib/factory/transformRouteDocument.js.map +0 -1
  149. package/lib/internal/createAutoBeApplication.js +0 -1452
  150. package/lib/internal/createAutoBeApplication.js.map +0 -1
  151. package/lib/internal/createAutoBeState.js.map +0 -1
  152. package/lib/internal/transformAgenticaHistory.js.map +0 -1
  153. package/lib/orchestrate/interface/AutoBeInterfaceAgent.d.ts +0 -0
  154. package/lib/orchestrate/interface/AutoBeInterfaceAgent.js +0 -2
  155. package/lib/orchestrate/interface/AutoBeInterfaceAgent.js.map +0 -1
  156. package/lib/orchestrate/orchestrateInterface.d.ts +0 -8
  157. package/lib/orchestrate/orchestrateInterface.js +0 -22
  158. package/lib/orchestrate/orchestrateInterface.js.map +0 -1
  159. package/lib/orchestrate/orchestratePrisma.js.map +0 -1
  160. package/src/factory/transformRouteDocument.ts +0 -49
  161. package/src/orchestrate/interface/AutoBeInterfaceAgent.ts +0 -0
  162. package/src/orchestrate/orchestrateInterface.ts +0 -21
  163. package/src/orchestrate/orchestratePrisma.ts +0 -21
  164. /package/lib/{internal → factory}/createAutoBeApplication.d.ts +0 -0
  165. /package/lib/{internal → factory}/createAutoBeState.d.ts +0 -0
  166. /package/lib/{internal → factory}/createAutoBeState.js +0 -0
@@ -1,1452 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.createAutoBeController = void 0;
40
- const __typia_transform__validateReport = __importStar(require("typia/lib/internal/_validateReport.js"));
41
- const typia_1 = __importDefault(require("typia"));
42
- const orchestrateAnalyze_1 = require("../orchestrate/orchestrateAnalyze");
43
- const orchestrateInterface_1 = require("../orchestrate/orchestrateInterface");
44
- const orchestratePrisma_1 = require("../orchestrate/orchestratePrisma");
45
- const orchestrateRealize_1 = require("../orchestrate/orchestrateRealize");
46
- const orchestrateTest_1 = require("../orchestrate/orchestrateTest");
47
- const createAutoBeController = (props) => {
48
- const application = collection[props.model];
49
- return {
50
- protocol: "class",
51
- name: "autobe",
52
- application,
53
- execute: {
54
- analyze: (0, orchestrateAnalyze_1.orchestrateAnalyze)(props.context),
55
- prisma: (0, orchestratePrisma_1.orchestratePrisma)(props.context),
56
- interface: (0, orchestrateInterface_1.orchestrateInterface)(props.context),
57
- test: (0, orchestrateTest_1.orchestrateTest)(props.context),
58
- realize: (0, orchestrateRealize_1.orchestrateRealize)(props.context),
59
- },
60
- };
61
- };
62
- exports.createAutoBeController = createAutoBeController;
63
- const claude = {
64
- model: "claude",
65
- options: {
66
- reference: false,
67
- separate: null
68
- },
69
- functions: [
70
- {
71
- name: "analyze",
72
- parameters: {
73
- description: "Current Type: {@link IAutoBeApplicationProps}",
74
- type: "object",
75
- properties: {
76
- reason: {
77
- title: "The reason of the function call",
78
- description: "The reason of the function call.",
79
- type: "string"
80
- }
81
- },
82
- required: [
83
- "reason"
84
- ],
85
- additionalProperties: false,
86
- $defs: {}
87
- },
88
- output: {
89
- description: "Current Type: {@link IAutoBeApplicationResult}",
90
- type: "object",
91
- properties: {
92
- success: {
93
- type: "boolean"
94
- },
95
- description: {
96
- type: "string"
97
- }
98
- },
99
- required: [
100
- "success",
101
- "description"
102
- ]
103
- },
104
- description: "Run Analyze Agent.\n\nAnalyze agent analyzes requirements and creates specification\ndocuments.\n\nThe Analyze agent serves as the foundation of the entire development\nprocess. It not only captures initial requirements but also\ncontinuously refines understanding through iterative conversation\nwith users. When requirements are ambiguous or incomplete, it\nproactively formulates targeted questions to elicit necessary\ninformation before proceeding with development.\n\nAdditionally, once other agents have generated code, the Analyze\nagent can interpret change requests in the context of existing\nimplementations, assessing the impact and feasibility of modifications\nwhile maintaining system integrity. This comprehensive approach\nensures that all subsequent development stages work from a clear,\ncomplete, and consistent specification.",
105
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
106
- path: _path + ".reason",
107
- expected: "string",
108
- value: input.reason
109
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
110
- if (false === __is(input)) {
111
- errors = [];
112
- _report = __typia_transform__validateReport._validateReport(errors);
113
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
114
- path: _path + "",
115
- expected: "IAutoBeApplicationProps",
116
- value: input
117
- })) && _vo0(input, _path + "", true) || _report(true, {
118
- path: _path + "",
119
- expected: "IAutoBeApplicationProps",
120
- value: input
121
- }))(input, "$input", true);
122
- const success = 0 === errors.length;
123
- return success ? {
124
- success,
125
- data: input
126
- } : {
127
- success,
128
- errors,
129
- data: input
130
- };
131
- }
132
- return {
133
- success: true,
134
- data: input
135
- };
136
- }; })()
137
- },
138
- {
139
- name: "prisma",
140
- parameters: {
141
- description: "Current Type: {@link IAutoBeApplicationProps}",
142
- type: "object",
143
- properties: {
144
- reason: {
145
- title: "The reason of the function call",
146
- description: "The reason of the function call.",
147
- type: "string"
148
- }
149
- },
150
- required: [
151
- "reason"
152
- ],
153
- additionalProperties: false,
154
- $defs: {}
155
- },
156
- output: {
157
- description: "Current Type: {@link IAutoBeApplicationResult}",
158
- type: "object",
159
- properties: {
160
- success: {
161
- type: "boolean"
162
- },
163
- description: {
164
- type: "string"
165
- }
166
- },
167
- required: [
168
- "success",
169
- "description"
170
- ]
171
- },
172
- description: "Run prisma agent.\n\nPrisma agent analyzes requirements specifications to generate\ndatabase schemas in Prisma format.\n\nThe Prisma agent references the requirements specification document\ncreated by the {@link analyze} function to craft the `prisma.schema`\nfile. For each entity and attribute in the database schema, it\nprovides comprehensive documentation including the rationale behind\nits creation, its purpose, and conceptual explanations. The agent\nemploys normalization techniques to ensure high-quality database\ndesign.\n\nOnce the DB schema file is written, the Prisma agent compiles it using\nthe built-in Prisma compiler. If compilation errors occur, these are\nfed back to the AI agent, enabling a self-correction process through\ncompiler feedback. After successful compilation, this schema file is\nthen subjected to a quality assurance process through an internal\nreview agent that verifies and refines the schema.\n\nNote that, never use this function without calling the\n{@link analyze} function at least once.",
173
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
174
- path: _path + ".reason",
175
- expected: "string",
176
- value: input.reason
177
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
178
- if (false === __is(input)) {
179
- errors = [];
180
- _report = __typia_transform__validateReport._validateReport(errors);
181
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
182
- path: _path + "",
183
- expected: "IAutoBeApplicationProps",
184
- value: input
185
- })) && _vo0(input, _path + "", true) || _report(true, {
186
- path: _path + "",
187
- expected: "IAutoBeApplicationProps",
188
- value: input
189
- }))(input, "$input", true);
190
- const success = 0 === errors.length;
191
- return success ? {
192
- success,
193
- data: input
194
- } : {
195
- success,
196
- errors,
197
- data: input
198
- };
199
- }
200
- return {
201
- success: true,
202
- data: input
203
- };
204
- }; })()
205
- },
206
- {
207
- name: "interface",
208
- parameters: {
209
- description: "Current Type: {@link IAutoBeApplicationProps}",
210
- type: "object",
211
- properties: {
212
- reason: {
213
- title: "The reason of the function call",
214
- description: "The reason of the function call.",
215
- type: "string"
216
- }
217
- },
218
- required: [
219
- "reason"
220
- ],
221
- additionalProperties: false,
222
- $defs: {}
223
- },
224
- output: {
225
- description: "Current Type: {@link IAutoBeApplicationResult}",
226
- type: "object",
227
- properties: {
228
- success: {
229
- type: "boolean"
230
- },
231
- description: {
232
- type: "string"
233
- }
234
- },
235
- required: [
236
- "success",
237
- "description"
238
- ]
239
- },
240
- description: "Run interface agent.",
241
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
242
- path: _path + ".reason",
243
- expected: "string",
244
- value: input.reason
245
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
246
- if (false === __is(input)) {
247
- errors = [];
248
- _report = __typia_transform__validateReport._validateReport(errors);
249
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
250
- path: _path + "",
251
- expected: "IAutoBeApplicationProps",
252
- value: input
253
- })) && _vo0(input, _path + "", true) || _report(true, {
254
- path: _path + "",
255
- expected: "IAutoBeApplicationProps",
256
- value: input
257
- }))(input, "$input", true);
258
- const success = 0 === errors.length;
259
- return success ? {
260
- success,
261
- data: input
262
- } : {
263
- success,
264
- errors,
265
- data: input
266
- };
267
- }
268
- return {
269
- success: true,
270
- data: input
271
- };
272
- }; })()
273
- },
274
- {
275
- name: "test",
276
- parameters: {
277
- description: "Current Type: {@link IAutoBeApplicationProps}",
278
- type: "object",
279
- properties: {
280
- reason: {
281
- title: "The reason of the function call",
282
- description: "The reason of the function call.",
283
- type: "string"
284
- }
285
- },
286
- required: [
287
- "reason"
288
- ],
289
- additionalProperties: false,
290
- $defs: {}
291
- },
292
- output: {
293
- description: "Current Type: {@link IAutoBeApplicationResult}",
294
- type: "object",
295
- properties: {
296
- success: {
297
- type: "boolean"
298
- },
299
- description: {
300
- type: "string"
301
- }
302
- },
303
- required: [
304
- "success",
305
- "description"
306
- ]
307
- },
308
- description: "Run test program agent.",
309
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
310
- path: _path + ".reason",
311
- expected: "string",
312
- value: input.reason
313
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
314
- if (false === __is(input)) {
315
- errors = [];
316
- _report = __typia_transform__validateReport._validateReport(errors);
317
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
318
- path: _path + "",
319
- expected: "IAutoBeApplicationProps",
320
- value: input
321
- })) && _vo0(input, _path + "", true) || _report(true, {
322
- path: _path + "",
323
- expected: "IAutoBeApplicationProps",
324
- value: input
325
- }))(input, "$input", true);
326
- const success = 0 === errors.length;
327
- return success ? {
328
- success,
329
- data: input
330
- } : {
331
- success,
332
- errors,
333
- data: input
334
- };
335
- }
336
- return {
337
- success: true,
338
- data: input
339
- };
340
- }; })()
341
- },
342
- {
343
- name: "realize",
344
- parameters: {
345
- description: "Current Type: {@link IAutoBeApplicationProps}",
346
- type: "object",
347
- properties: {
348
- reason: {
349
- title: "The reason of the function call",
350
- description: "The reason of the function call.",
351
- type: "string"
352
- }
353
- },
354
- required: [
355
- "reason"
356
- ],
357
- additionalProperties: false,
358
- $defs: {}
359
- },
360
- output: {
361
- description: "Current Type: {@link IAutoBeApplicationResult}",
362
- type: "object",
363
- properties: {
364
- success: {
365
- type: "boolean"
366
- },
367
- description: {
368
- type: "string"
369
- }
370
- },
371
- required: [
372
- "success",
373
- "description"
374
- ]
375
- },
376
- description: "Run realize agent.",
377
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
378
- path: _path + ".reason",
379
- expected: "string",
380
- value: input.reason
381
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
382
- if (false === __is(input)) {
383
- errors = [];
384
- _report = __typia_transform__validateReport._validateReport(errors);
385
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
386
- path: _path + "",
387
- expected: "IAutoBeApplicationProps",
388
- value: input
389
- })) && _vo0(input, _path + "", true) || _report(true, {
390
- path: _path + "",
391
- expected: "IAutoBeApplicationProps",
392
- value: input
393
- }))(input, "$input", true);
394
- const success = 0 === errors.length;
395
- return success ? {
396
- success,
397
- data: input
398
- } : {
399
- success,
400
- errors,
401
- data: input
402
- };
403
- }
404
- return {
405
- success: true,
406
- data: input
407
- };
408
- }; })()
409
- }
410
- ]
411
- };
412
- const collection = {
413
- chatgpt: {
414
- model: "chatgpt",
415
- options: {
416
- reference: true,
417
- strict: false,
418
- separate: null
419
- },
420
- functions: [
421
- {
422
- name: "analyze",
423
- parameters: {
424
- description: "Current Type: {@link IAutoBeApplicationProps}",
425
- type: "object",
426
- properties: {
427
- reason: {
428
- title: "The reason of the function call",
429
- description: "The reason of the function call.",
430
- type: "string"
431
- }
432
- },
433
- required: [
434
- "reason"
435
- ],
436
- additionalProperties: false,
437
- $defs: {}
438
- },
439
- output: {
440
- description: "Current Type: {@link IAutoBeApplicationResult}",
441
- type: "object",
442
- properties: {
443
- success: {
444
- type: "boolean"
445
- },
446
- description: {
447
- type: "string"
448
- }
449
- },
450
- required: [
451
- "success",
452
- "description"
453
- ]
454
- },
455
- description: "Run Analyze Agent.\n\nAnalyze agent analyzes requirements and creates specification\ndocuments.\n\nThe Analyze agent serves as the foundation of the entire development\nprocess. It not only captures initial requirements but also\ncontinuously refines understanding through iterative conversation\nwith users. When requirements are ambiguous or incomplete, it\nproactively formulates targeted questions to elicit necessary\ninformation before proceeding with development.\n\nAdditionally, once other agents have generated code, the Analyze\nagent can interpret change requests in the context of existing\nimplementations, assessing the impact and feasibility of modifications\nwhile maintaining system integrity. This comprehensive approach\nensures that all subsequent development stages work from a clear,\ncomplete, and consistent specification.",
456
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
457
- path: _path + ".reason",
458
- expected: "string",
459
- value: input.reason
460
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
461
- if (false === __is(input)) {
462
- errors = [];
463
- _report = __typia_transform__validateReport._validateReport(errors);
464
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
465
- path: _path + "",
466
- expected: "IAutoBeApplicationProps",
467
- value: input
468
- })) && _vo0(input, _path + "", true) || _report(true, {
469
- path: _path + "",
470
- expected: "IAutoBeApplicationProps",
471
- value: input
472
- }))(input, "$input", true);
473
- const success = 0 === errors.length;
474
- return success ? {
475
- success,
476
- data: input
477
- } : {
478
- success,
479
- errors,
480
- data: input
481
- };
482
- }
483
- return {
484
- success: true,
485
- data: input
486
- };
487
- }; })()
488
- },
489
- {
490
- name: "prisma",
491
- parameters: {
492
- description: "Current Type: {@link IAutoBeApplicationProps}",
493
- type: "object",
494
- properties: {
495
- reason: {
496
- title: "The reason of the function call",
497
- description: "The reason of the function call.",
498
- type: "string"
499
- }
500
- },
501
- required: [
502
- "reason"
503
- ],
504
- additionalProperties: false,
505
- $defs: {}
506
- },
507
- output: {
508
- description: "Current Type: {@link IAutoBeApplicationResult}",
509
- type: "object",
510
- properties: {
511
- success: {
512
- type: "boolean"
513
- },
514
- description: {
515
- type: "string"
516
- }
517
- },
518
- required: [
519
- "success",
520
- "description"
521
- ]
522
- },
523
- description: "Run prisma agent.\n\nPrisma agent analyzes requirements specifications to generate\ndatabase schemas in Prisma format.\n\nThe Prisma agent references the requirements specification document\ncreated by the {@link analyze} function to craft the `prisma.schema`\nfile. For each entity and attribute in the database schema, it\nprovides comprehensive documentation including the rationale behind\nits creation, its purpose, and conceptual explanations. The agent\nemploys normalization techniques to ensure high-quality database\ndesign.\n\nOnce the DB schema file is written, the Prisma agent compiles it using\nthe built-in Prisma compiler. If compilation errors occur, these are\nfed back to the AI agent, enabling a self-correction process through\ncompiler feedback. After successful compilation, this schema file is\nthen subjected to a quality assurance process through an internal\nreview agent that verifies and refines the schema.\n\nNote that, never use this function without calling the\n{@link analyze} function at least once.",
524
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
525
- path: _path + ".reason",
526
- expected: "string",
527
- value: input.reason
528
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
529
- if (false === __is(input)) {
530
- errors = [];
531
- _report = __typia_transform__validateReport._validateReport(errors);
532
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
533
- path: _path + "",
534
- expected: "IAutoBeApplicationProps",
535
- value: input
536
- })) && _vo0(input, _path + "", true) || _report(true, {
537
- path: _path + "",
538
- expected: "IAutoBeApplicationProps",
539
- value: input
540
- }))(input, "$input", true);
541
- const success = 0 === errors.length;
542
- return success ? {
543
- success,
544
- data: input
545
- } : {
546
- success,
547
- errors,
548
- data: input
549
- };
550
- }
551
- return {
552
- success: true,
553
- data: input
554
- };
555
- }; })()
556
- },
557
- {
558
- name: "interface",
559
- parameters: {
560
- description: "Current Type: {@link IAutoBeApplicationProps}",
561
- type: "object",
562
- properties: {
563
- reason: {
564
- title: "The reason of the function call",
565
- description: "The reason of the function call.",
566
- type: "string"
567
- }
568
- },
569
- required: [
570
- "reason"
571
- ],
572
- additionalProperties: false,
573
- $defs: {}
574
- },
575
- output: {
576
- description: "Current Type: {@link IAutoBeApplicationResult}",
577
- type: "object",
578
- properties: {
579
- success: {
580
- type: "boolean"
581
- },
582
- description: {
583
- type: "string"
584
- }
585
- },
586
- required: [
587
- "success",
588
- "description"
589
- ]
590
- },
591
- description: "Run interface agent.",
592
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
593
- path: _path + ".reason",
594
- expected: "string",
595
- value: input.reason
596
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
597
- if (false === __is(input)) {
598
- errors = [];
599
- _report = __typia_transform__validateReport._validateReport(errors);
600
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
601
- path: _path + "",
602
- expected: "IAutoBeApplicationProps",
603
- value: input
604
- })) && _vo0(input, _path + "", true) || _report(true, {
605
- path: _path + "",
606
- expected: "IAutoBeApplicationProps",
607
- value: input
608
- }))(input, "$input", true);
609
- const success = 0 === errors.length;
610
- return success ? {
611
- success,
612
- data: input
613
- } : {
614
- success,
615
- errors,
616
- data: input
617
- };
618
- }
619
- return {
620
- success: true,
621
- data: input
622
- };
623
- }; })()
624
- },
625
- {
626
- name: "test",
627
- parameters: {
628
- description: "Current Type: {@link IAutoBeApplicationProps}",
629
- type: "object",
630
- properties: {
631
- reason: {
632
- title: "The reason of the function call",
633
- description: "The reason of the function call.",
634
- type: "string"
635
- }
636
- },
637
- required: [
638
- "reason"
639
- ],
640
- additionalProperties: false,
641
- $defs: {}
642
- },
643
- output: {
644
- description: "Current Type: {@link IAutoBeApplicationResult}",
645
- type: "object",
646
- properties: {
647
- success: {
648
- type: "boolean"
649
- },
650
- description: {
651
- type: "string"
652
- }
653
- },
654
- required: [
655
- "success",
656
- "description"
657
- ]
658
- },
659
- description: "Run test program agent.",
660
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
661
- path: _path + ".reason",
662
- expected: "string",
663
- value: input.reason
664
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
665
- if (false === __is(input)) {
666
- errors = [];
667
- _report = __typia_transform__validateReport._validateReport(errors);
668
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
669
- path: _path + "",
670
- expected: "IAutoBeApplicationProps",
671
- value: input
672
- })) && _vo0(input, _path + "", true) || _report(true, {
673
- path: _path + "",
674
- expected: "IAutoBeApplicationProps",
675
- value: input
676
- }))(input, "$input", true);
677
- const success = 0 === errors.length;
678
- return success ? {
679
- success,
680
- data: input
681
- } : {
682
- success,
683
- errors,
684
- data: input
685
- };
686
- }
687
- return {
688
- success: true,
689
- data: input
690
- };
691
- }; })()
692
- },
693
- {
694
- name: "realize",
695
- parameters: {
696
- description: "Current Type: {@link IAutoBeApplicationProps}",
697
- type: "object",
698
- properties: {
699
- reason: {
700
- title: "The reason of the function call",
701
- description: "The reason of the function call.",
702
- type: "string"
703
- }
704
- },
705
- required: [
706
- "reason"
707
- ],
708
- additionalProperties: false,
709
- $defs: {}
710
- },
711
- output: {
712
- description: "Current Type: {@link IAutoBeApplicationResult}",
713
- type: "object",
714
- properties: {
715
- success: {
716
- type: "boolean"
717
- },
718
- description: {
719
- type: "string"
720
- }
721
- },
722
- required: [
723
- "success",
724
- "description"
725
- ]
726
- },
727
- description: "Run realize agent.",
728
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
729
- path: _path + ".reason",
730
- expected: "string",
731
- value: input.reason
732
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
733
- if (false === __is(input)) {
734
- errors = [];
735
- _report = __typia_transform__validateReport._validateReport(errors);
736
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
737
- path: _path + "",
738
- expected: "IAutoBeApplicationProps",
739
- value: input
740
- })) && _vo0(input, _path + "", true) || _report(true, {
741
- path: _path + "",
742
- expected: "IAutoBeApplicationProps",
743
- value: input
744
- }))(input, "$input", true);
745
- const success = 0 === errors.length;
746
- return success ? {
747
- success,
748
- data: input
749
- } : {
750
- success,
751
- errors,
752
- data: input
753
- };
754
- }
755
- return {
756
- success: true,
757
- data: input
758
- };
759
- }; })()
760
- }
761
- ]
762
- },
763
- gemini: {
764
- model: "gemini",
765
- options: {
766
- recursive: 3,
767
- separate: null
768
- },
769
- functions: [
770
- {
771
- name: "analyze",
772
- parameters: {
773
- type: "object",
774
- properties: {
775
- reason: {
776
- type: "string",
777
- description: "The reason of the function call."
778
- }
779
- },
780
- required: [
781
- "reason"
782
- ],
783
- description: "Current Type: {@link IAutoBeApplicationProps}"
784
- },
785
- output: {
786
- type: "object",
787
- properties: {
788
- success: {
789
- type: "boolean"
790
- },
791
- description: {
792
- type: "string"
793
- }
794
- },
795
- required: [
796
- "success",
797
- "description"
798
- ],
799
- description: "Current Type: {@link IAutoBeApplicationResult}"
800
- },
801
- description: "Run Analyze Agent.\n\nAnalyze agent analyzes requirements and creates specification\ndocuments.\n\nThe Analyze agent serves as the foundation of the entire development\nprocess. It not only captures initial requirements but also\ncontinuously refines understanding through iterative conversation\nwith users. When requirements are ambiguous or incomplete, it\nproactively formulates targeted questions to elicit necessary\ninformation before proceeding with development.\n\nAdditionally, once other agents have generated code, the Analyze\nagent can interpret change requests in the context of existing\nimplementations, assessing the impact and feasibility of modifications\nwhile maintaining system integrity. This comprehensive approach\nensures that all subsequent development stages work from a clear,\ncomplete, and consistent specification.",
802
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
803
- path: _path + ".reason",
804
- expected: "string",
805
- value: input.reason
806
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
807
- if (false === __is(input)) {
808
- errors = [];
809
- _report = __typia_transform__validateReport._validateReport(errors);
810
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
811
- path: _path + "",
812
- expected: "IAutoBeApplicationProps",
813
- value: input
814
- })) && _vo0(input, _path + "", true) || _report(true, {
815
- path: _path + "",
816
- expected: "IAutoBeApplicationProps",
817
- value: input
818
- }))(input, "$input", true);
819
- const success = 0 === errors.length;
820
- return success ? {
821
- success,
822
- data: input
823
- } : {
824
- success,
825
- errors,
826
- data: input
827
- };
828
- }
829
- return {
830
- success: true,
831
- data: input
832
- };
833
- }; })()
834
- },
835
- {
836
- name: "prisma",
837
- parameters: {
838
- type: "object",
839
- properties: {
840
- reason: {
841
- type: "string",
842
- description: "The reason of the function call."
843
- }
844
- },
845
- required: [
846
- "reason"
847
- ],
848
- description: "Current Type: {@link IAutoBeApplicationProps}"
849
- },
850
- output: {
851
- type: "object",
852
- properties: {
853
- success: {
854
- type: "boolean"
855
- },
856
- description: {
857
- type: "string"
858
- }
859
- },
860
- required: [
861
- "success",
862
- "description"
863
- ],
864
- description: "Current Type: {@link IAutoBeApplicationResult}"
865
- },
866
- description: "Run prisma agent.\n\nPrisma agent analyzes requirements specifications to generate\ndatabase schemas in Prisma format.\n\nThe Prisma agent references the requirements specification document\ncreated by the {@link analyze} function to craft the `prisma.schema`\nfile. For each entity and attribute in the database schema, it\nprovides comprehensive documentation including the rationale behind\nits creation, its purpose, and conceptual explanations. The agent\nemploys normalization techniques to ensure high-quality database\ndesign.\n\nOnce the DB schema file is written, the Prisma agent compiles it using\nthe built-in Prisma compiler. If compilation errors occur, these are\nfed back to the AI agent, enabling a self-correction process through\ncompiler feedback. After successful compilation, this schema file is\nthen subjected to a quality assurance process through an internal\nreview agent that verifies and refines the schema.\n\nNote that, never use this function without calling the\n{@link analyze} function at least once.",
867
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
868
- path: _path + ".reason",
869
- expected: "string",
870
- value: input.reason
871
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
872
- if (false === __is(input)) {
873
- errors = [];
874
- _report = __typia_transform__validateReport._validateReport(errors);
875
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
876
- path: _path + "",
877
- expected: "IAutoBeApplicationProps",
878
- value: input
879
- })) && _vo0(input, _path + "", true) || _report(true, {
880
- path: _path + "",
881
- expected: "IAutoBeApplicationProps",
882
- value: input
883
- }))(input, "$input", true);
884
- const success = 0 === errors.length;
885
- return success ? {
886
- success,
887
- data: input
888
- } : {
889
- success,
890
- errors,
891
- data: input
892
- };
893
- }
894
- return {
895
- success: true,
896
- data: input
897
- };
898
- }; })()
899
- },
900
- {
901
- name: "interface",
902
- parameters: {
903
- type: "object",
904
- properties: {
905
- reason: {
906
- type: "string",
907
- description: "The reason of the function call."
908
- }
909
- },
910
- required: [
911
- "reason"
912
- ],
913
- description: "Current Type: {@link IAutoBeApplicationProps}"
914
- },
915
- output: {
916
- type: "object",
917
- properties: {
918
- success: {
919
- type: "boolean"
920
- },
921
- description: {
922
- type: "string"
923
- }
924
- },
925
- required: [
926
- "success",
927
- "description"
928
- ],
929
- description: "Current Type: {@link IAutoBeApplicationResult}"
930
- },
931
- description: "Run interface agent.",
932
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
933
- path: _path + ".reason",
934
- expected: "string",
935
- value: input.reason
936
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
937
- if (false === __is(input)) {
938
- errors = [];
939
- _report = __typia_transform__validateReport._validateReport(errors);
940
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
941
- path: _path + "",
942
- expected: "IAutoBeApplicationProps",
943
- value: input
944
- })) && _vo0(input, _path + "", true) || _report(true, {
945
- path: _path + "",
946
- expected: "IAutoBeApplicationProps",
947
- value: input
948
- }))(input, "$input", true);
949
- const success = 0 === errors.length;
950
- return success ? {
951
- success,
952
- data: input
953
- } : {
954
- success,
955
- errors,
956
- data: input
957
- };
958
- }
959
- return {
960
- success: true,
961
- data: input
962
- };
963
- }; })()
964
- },
965
- {
966
- name: "test",
967
- parameters: {
968
- type: "object",
969
- properties: {
970
- reason: {
971
- type: "string",
972
- description: "The reason of the function call."
973
- }
974
- },
975
- required: [
976
- "reason"
977
- ],
978
- description: "Current Type: {@link IAutoBeApplicationProps}"
979
- },
980
- output: {
981
- type: "object",
982
- properties: {
983
- success: {
984
- type: "boolean"
985
- },
986
- description: {
987
- type: "string"
988
- }
989
- },
990
- required: [
991
- "success",
992
- "description"
993
- ],
994
- description: "Current Type: {@link IAutoBeApplicationResult}"
995
- },
996
- description: "Run test program agent.",
997
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
998
- path: _path + ".reason",
999
- expected: "string",
1000
- value: input.reason
1001
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1002
- if (false === __is(input)) {
1003
- errors = [];
1004
- _report = __typia_transform__validateReport._validateReport(errors);
1005
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1006
- path: _path + "",
1007
- expected: "IAutoBeApplicationProps",
1008
- value: input
1009
- })) && _vo0(input, _path + "", true) || _report(true, {
1010
- path: _path + "",
1011
- expected: "IAutoBeApplicationProps",
1012
- value: input
1013
- }))(input, "$input", true);
1014
- const success = 0 === errors.length;
1015
- return success ? {
1016
- success,
1017
- data: input
1018
- } : {
1019
- success,
1020
- errors,
1021
- data: input
1022
- };
1023
- }
1024
- return {
1025
- success: true,
1026
- data: input
1027
- };
1028
- }; })()
1029
- },
1030
- {
1031
- name: "realize",
1032
- parameters: {
1033
- type: "object",
1034
- properties: {
1035
- reason: {
1036
- type: "string",
1037
- description: "The reason of the function call."
1038
- }
1039
- },
1040
- required: [
1041
- "reason"
1042
- ],
1043
- description: "Current Type: {@link IAutoBeApplicationProps}"
1044
- },
1045
- output: {
1046
- type: "object",
1047
- properties: {
1048
- success: {
1049
- type: "boolean"
1050
- },
1051
- description: {
1052
- type: "string"
1053
- }
1054
- },
1055
- required: [
1056
- "success",
1057
- "description"
1058
- ],
1059
- description: "Current Type: {@link IAutoBeApplicationResult}"
1060
- },
1061
- description: "Run realize agent.",
1062
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
1063
- path: _path + ".reason",
1064
- expected: "string",
1065
- value: input.reason
1066
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1067
- if (false === __is(input)) {
1068
- errors = [];
1069
- _report = __typia_transform__validateReport._validateReport(errors);
1070
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1071
- path: _path + "",
1072
- expected: "IAutoBeApplicationProps",
1073
- value: input
1074
- })) && _vo0(input, _path + "", true) || _report(true, {
1075
- path: _path + "",
1076
- expected: "IAutoBeApplicationProps",
1077
- value: input
1078
- }))(input, "$input", true);
1079
- const success = 0 === errors.length;
1080
- return success ? {
1081
- success,
1082
- data: input
1083
- } : {
1084
- success,
1085
- errors,
1086
- data: input
1087
- };
1088
- }
1089
- return {
1090
- success: true,
1091
- data: input
1092
- };
1093
- }; })()
1094
- }
1095
- ]
1096
- },
1097
- claude,
1098
- llama: claude,
1099
- deepseek: claude,
1100
- "3.1": claude,
1101
- "3.0": {
1102
- model: "3.0",
1103
- options: {
1104
- constraint: true,
1105
- recursive: 3,
1106
- separate: null
1107
- },
1108
- functions: [
1109
- {
1110
- name: "analyze",
1111
- parameters: {
1112
- type: "object",
1113
- properties: {
1114
- reason: {
1115
- type: "string",
1116
- title: "The reason of the function call",
1117
- description: "The reason of the function call."
1118
- }
1119
- },
1120
- required: [
1121
- "reason"
1122
- ],
1123
- description: "Current Type: {@link IAutoBeApplicationProps}",
1124
- additionalProperties: false
1125
- },
1126
- output: {
1127
- type: "object",
1128
- properties: {
1129
- success: {
1130
- type: "boolean"
1131
- },
1132
- description: {
1133
- type: "string"
1134
- }
1135
- },
1136
- required: [
1137
- "success",
1138
- "description"
1139
- ],
1140
- description: "Current Type: {@link IAutoBeApplicationResult}",
1141
- additionalProperties: false
1142
- },
1143
- description: "Run Analyze Agent.\n\nAnalyze agent analyzes requirements and creates specification\ndocuments.\n\nThe Analyze agent serves as the foundation of the entire development\nprocess. It not only captures initial requirements but also\ncontinuously refines understanding through iterative conversation\nwith users. When requirements are ambiguous or incomplete, it\nproactively formulates targeted questions to elicit necessary\ninformation before proceeding with development.\n\nAdditionally, once other agents have generated code, the Analyze\nagent can interpret change requests in the context of existing\nimplementations, assessing the impact and feasibility of modifications\nwhile maintaining system integrity. This comprehensive approach\nensures that all subsequent development stages work from a clear,\ncomplete, and consistent specification.",
1144
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
1145
- path: _path + ".reason",
1146
- expected: "string",
1147
- value: input.reason
1148
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1149
- if (false === __is(input)) {
1150
- errors = [];
1151
- _report = __typia_transform__validateReport._validateReport(errors);
1152
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1153
- path: _path + "",
1154
- expected: "IAutoBeApplicationProps",
1155
- value: input
1156
- })) && _vo0(input, _path + "", true) || _report(true, {
1157
- path: _path + "",
1158
- expected: "IAutoBeApplicationProps",
1159
- value: input
1160
- }))(input, "$input", true);
1161
- const success = 0 === errors.length;
1162
- return success ? {
1163
- success,
1164
- data: input
1165
- } : {
1166
- success,
1167
- errors,
1168
- data: input
1169
- };
1170
- }
1171
- return {
1172
- success: true,
1173
- data: input
1174
- };
1175
- }; })()
1176
- },
1177
- {
1178
- name: "prisma",
1179
- parameters: {
1180
- type: "object",
1181
- properties: {
1182
- reason: {
1183
- type: "string",
1184
- title: "The reason of the function call",
1185
- description: "The reason of the function call."
1186
- }
1187
- },
1188
- required: [
1189
- "reason"
1190
- ],
1191
- description: "Current Type: {@link IAutoBeApplicationProps}",
1192
- additionalProperties: false
1193
- },
1194
- output: {
1195
- type: "object",
1196
- properties: {
1197
- success: {
1198
- type: "boolean"
1199
- },
1200
- description: {
1201
- type: "string"
1202
- }
1203
- },
1204
- required: [
1205
- "success",
1206
- "description"
1207
- ],
1208
- description: "Current Type: {@link IAutoBeApplicationResult}",
1209
- additionalProperties: false
1210
- },
1211
- description: "Run prisma agent.\n\nPrisma agent analyzes requirements specifications to generate\ndatabase schemas in Prisma format.\n\nThe Prisma agent references the requirements specification document\ncreated by the {@link analyze} function to craft the `prisma.schema`\nfile. For each entity and attribute in the database schema, it\nprovides comprehensive documentation including the rationale behind\nits creation, its purpose, and conceptual explanations. The agent\nemploys normalization techniques to ensure high-quality database\ndesign.\n\nOnce the DB schema file is written, the Prisma agent compiles it using\nthe built-in Prisma compiler. If compilation errors occur, these are\nfed back to the AI agent, enabling a self-correction process through\ncompiler feedback. After successful compilation, this schema file is\nthen subjected to a quality assurance process through an internal\nreview agent that verifies and refines the schema.\n\nNote that, never use this function without calling the\n{@link analyze} function at least once.",
1212
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
1213
- path: _path + ".reason",
1214
- expected: "string",
1215
- value: input.reason
1216
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1217
- if (false === __is(input)) {
1218
- errors = [];
1219
- _report = __typia_transform__validateReport._validateReport(errors);
1220
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1221
- path: _path + "",
1222
- expected: "IAutoBeApplicationProps",
1223
- value: input
1224
- })) && _vo0(input, _path + "", true) || _report(true, {
1225
- path: _path + "",
1226
- expected: "IAutoBeApplicationProps",
1227
- value: input
1228
- }))(input, "$input", true);
1229
- const success = 0 === errors.length;
1230
- return success ? {
1231
- success,
1232
- data: input
1233
- } : {
1234
- success,
1235
- errors,
1236
- data: input
1237
- };
1238
- }
1239
- return {
1240
- success: true,
1241
- data: input
1242
- };
1243
- }; })()
1244
- },
1245
- {
1246
- name: "interface",
1247
- parameters: {
1248
- type: "object",
1249
- properties: {
1250
- reason: {
1251
- type: "string",
1252
- title: "The reason of the function call",
1253
- description: "The reason of the function call."
1254
- }
1255
- },
1256
- required: [
1257
- "reason"
1258
- ],
1259
- description: "Current Type: {@link IAutoBeApplicationProps}",
1260
- additionalProperties: false
1261
- },
1262
- output: {
1263
- type: "object",
1264
- properties: {
1265
- success: {
1266
- type: "boolean"
1267
- },
1268
- description: {
1269
- type: "string"
1270
- }
1271
- },
1272
- required: [
1273
- "success",
1274
- "description"
1275
- ],
1276
- description: "Current Type: {@link IAutoBeApplicationResult}",
1277
- additionalProperties: false
1278
- },
1279
- description: "Run interface agent.",
1280
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
1281
- path: _path + ".reason",
1282
- expected: "string",
1283
- value: input.reason
1284
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1285
- if (false === __is(input)) {
1286
- errors = [];
1287
- _report = __typia_transform__validateReport._validateReport(errors);
1288
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1289
- path: _path + "",
1290
- expected: "IAutoBeApplicationProps",
1291
- value: input
1292
- })) && _vo0(input, _path + "", true) || _report(true, {
1293
- path: _path + "",
1294
- expected: "IAutoBeApplicationProps",
1295
- value: input
1296
- }))(input, "$input", true);
1297
- const success = 0 === errors.length;
1298
- return success ? {
1299
- success,
1300
- data: input
1301
- } : {
1302
- success,
1303
- errors,
1304
- data: input
1305
- };
1306
- }
1307
- return {
1308
- success: true,
1309
- data: input
1310
- };
1311
- }; })()
1312
- },
1313
- {
1314
- name: "test",
1315
- parameters: {
1316
- type: "object",
1317
- properties: {
1318
- reason: {
1319
- type: "string",
1320
- title: "The reason of the function call",
1321
- description: "The reason of the function call."
1322
- }
1323
- },
1324
- required: [
1325
- "reason"
1326
- ],
1327
- description: "Current Type: {@link IAutoBeApplicationProps}",
1328
- additionalProperties: false
1329
- },
1330
- output: {
1331
- type: "object",
1332
- properties: {
1333
- success: {
1334
- type: "boolean"
1335
- },
1336
- description: {
1337
- type: "string"
1338
- }
1339
- },
1340
- required: [
1341
- "success",
1342
- "description"
1343
- ],
1344
- description: "Current Type: {@link IAutoBeApplicationResult}",
1345
- additionalProperties: false
1346
- },
1347
- description: "Run test program agent.",
1348
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
1349
- path: _path + ".reason",
1350
- expected: "string",
1351
- value: input.reason
1352
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1353
- if (false === __is(input)) {
1354
- errors = [];
1355
- _report = __typia_transform__validateReport._validateReport(errors);
1356
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1357
- path: _path + "",
1358
- expected: "IAutoBeApplicationProps",
1359
- value: input
1360
- })) && _vo0(input, _path + "", true) || _report(true, {
1361
- path: _path + "",
1362
- expected: "IAutoBeApplicationProps",
1363
- value: input
1364
- }))(input, "$input", true);
1365
- const success = 0 === errors.length;
1366
- return success ? {
1367
- success,
1368
- data: input
1369
- } : {
1370
- success,
1371
- errors,
1372
- data: input
1373
- };
1374
- }
1375
- return {
1376
- success: true,
1377
- data: input
1378
- };
1379
- }; })()
1380
- },
1381
- {
1382
- name: "realize",
1383
- parameters: {
1384
- type: "object",
1385
- properties: {
1386
- reason: {
1387
- type: "string",
1388
- title: "The reason of the function call",
1389
- description: "The reason of the function call."
1390
- }
1391
- },
1392
- required: [
1393
- "reason"
1394
- ],
1395
- description: "Current Type: {@link IAutoBeApplicationProps}",
1396
- additionalProperties: false
1397
- },
1398
- output: {
1399
- type: "object",
1400
- properties: {
1401
- success: {
1402
- type: "boolean"
1403
- },
1404
- description: {
1405
- type: "string"
1406
- }
1407
- },
1408
- required: [
1409
- "success",
1410
- "description"
1411
- ],
1412
- description: "Current Type: {@link IAutoBeApplicationResult}",
1413
- additionalProperties: false
1414
- },
1415
- description: "Run realize agent.",
1416
- validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
1417
- path: _path + ".reason",
1418
- expected: "string",
1419
- value: input.reason
1420
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1421
- if (false === __is(input)) {
1422
- errors = [];
1423
- _report = __typia_transform__validateReport._validateReport(errors);
1424
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1425
- path: _path + "",
1426
- expected: "IAutoBeApplicationProps",
1427
- value: input
1428
- })) && _vo0(input, _path + "", true) || _report(true, {
1429
- path: _path + "",
1430
- expected: "IAutoBeApplicationProps",
1431
- value: input
1432
- }))(input, "$input", true);
1433
- const success = 0 === errors.length;
1434
- return success ? {
1435
- success,
1436
- data: input
1437
- } : {
1438
- success,
1439
- errors,
1440
- data: input
1441
- };
1442
- }
1443
- return {
1444
- success: true,
1445
- data: input
1446
- };
1447
- }; })()
1448
- }
1449
- ]
1450
- },
1451
- };
1452
- //# sourceMappingURL=createAutoBeApplication.js.map