@autobe/agent 0.9.1 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/lib/AutoBeAgent.js +16 -5
  2. package/lib/AutoBeAgent.js.map +1 -1
  3. package/lib/constants/AutoBeSystemPromptConstant.d.ts +6 -4
  4. package/lib/constants/AutoBeSystemPromptConstant.js.map +1 -1
  5. package/lib/context/AutoBeTokenUsage.d.ts +15 -1
  6. package/lib/context/AutoBeTokenUsage.js +56 -1
  7. package/lib/context/AutoBeTokenUsage.js.map +1 -1
  8. package/lib/context/IAutoBeApplicationProps.d.ts +0 -61
  9. package/lib/factory/createAutoBeApplication.js +298 -773
  10. package/lib/factory/createAutoBeApplication.js.map +1 -1
  11. package/lib/index.mjs +5116 -7271
  12. package/lib/index.mjs.map +1 -1
  13. package/lib/orchestrate/analyze/AutoBeAnalyzeAgent.js +82 -319
  14. package/lib/orchestrate/analyze/AutoBeAnalyzeAgent.js.map +1 -1
  15. package/lib/orchestrate/analyze/AutoBeAnalyzeReviewer.js +0 -1
  16. package/lib/orchestrate/analyze/AutoBeAnalyzeReviewer.js.map +1 -1
  17. package/lib/orchestrate/analyze/orchestrateAnalyze.js +97 -294
  18. package/lib/orchestrate/analyze/orchestrateAnalyze.js.map +1 -1
  19. package/lib/orchestrate/facade/transformFacadeStateMessage.js +2 -2
  20. package/lib/orchestrate/facade/transformFacadeStateMessage.js.map +1 -1
  21. package/lib/orchestrate/index.d.ts +2 -2
  22. package/lib/orchestrate/index.js +4 -4
  23. package/lib/orchestrate/index.js.map +1 -1
  24. package/lib/orchestrate/interface/orchestrateInterface.js +9 -3
  25. package/lib/orchestrate/interface/orchestrateInterface.js.map +1 -1
  26. package/lib/orchestrate/interface/orchestrateInterfaceComplement.js +56 -142
  27. package/lib/orchestrate/interface/orchestrateInterfaceComplement.js.map +1 -1
  28. package/lib/orchestrate/interface/orchestrateInterfaceComponents.js +195 -199
  29. package/lib/orchestrate/interface/orchestrateInterfaceComponents.js.map +1 -1
  30. package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js +75 -172
  31. package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js.map +1 -1
  32. package/lib/orchestrate/interface/orchestrateInterfaceOperations.js +772 -1097
  33. package/lib/orchestrate/interface/orchestrateInterfaceOperations.js.map +1 -1
  34. package/lib/orchestrate/interface/transformInterfaceHistories.js +2 -0
  35. package/lib/orchestrate/interface/transformInterfaceHistories.js.map +1 -1
  36. package/lib/orchestrate/prisma/orchestratePrismaComponent.js +64 -175
  37. package/lib/orchestrate/prisma/orchestratePrismaComponent.js.map +1 -1
  38. package/lib/orchestrate/prisma/orchestratePrismaCorrect.js +552 -1073
  39. package/lib/orchestrate/prisma/orchestratePrismaCorrect.js.map +1 -1
  40. package/lib/orchestrate/prisma/orchestratePrismaSchema.js +571 -1119
  41. package/lib/orchestrate/prisma/orchestratePrismaSchema.js.map +1 -1
  42. package/lib/orchestrate/prisma/transformPrismaComponentsHistories.js +9 -0
  43. package/lib/orchestrate/prisma/transformPrismaComponentsHistories.js.map +1 -1
  44. package/lib/orchestrate/prisma/transformPrismaSchemaHistories.js +8 -0
  45. package/lib/orchestrate/prisma/transformPrismaSchemaHistories.js.map +1 -1
  46. package/lib/orchestrate/realize/orchestrateRealize.d.ts +11 -0
  47. package/lib/orchestrate/realize/orchestrateRealize.js +109 -0
  48. package/lib/orchestrate/realize/orchestrateRealize.js.map +1 -0
  49. package/lib/orchestrate/realize/orchestrateRealizeCoder.d.ts +25 -0
  50. package/lib/orchestrate/realize/orchestrateRealizeCoder.js +337 -0
  51. package/lib/orchestrate/realize/orchestrateRealizeCoder.js.map +1 -0
  52. package/lib/orchestrate/realize/orchestrateRealizeIntegrator.d.ts +52 -0
  53. package/lib/orchestrate/realize/orchestrateRealizeIntegrator.js +57 -0
  54. package/lib/orchestrate/realize/orchestrateRealizeIntegrator.js.map +1 -0
  55. package/lib/orchestrate/realize/orchestrateRealizePlanner.d.ts +80 -0
  56. package/lib/orchestrate/realize/orchestrateRealizePlanner.js +53 -0
  57. package/lib/orchestrate/realize/orchestrateRealizePlanner.js.map +1 -0
  58. package/lib/orchestrate/realize/orchestrateRealizeValidator.d.ts +46 -0
  59. package/lib/orchestrate/realize/orchestrateRealizeValidator.js +37 -0
  60. package/lib/orchestrate/realize/orchestrateRealizeValidator.js.map +1 -0
  61. package/lib/orchestrate/realize/structures/IAutoBeRealizeCoderApplication.d.ts +33 -0
  62. package/lib/orchestrate/realize/structures/IAutoBeRealizeCoderApplication.js +3 -0
  63. package/lib/orchestrate/realize/structures/IAutoBeRealizeCoderApplication.js.map +1 -0
  64. package/lib/orchestrate/realize/transformRealizeCoderHistories.d.ts +5 -0
  65. package/lib/orchestrate/realize/transformRealizeCoderHistories.js +127 -0
  66. package/lib/orchestrate/realize/transformRealizeCoderHistories.js.map +1 -0
  67. package/lib/orchestrate/test/compile/completeTestCode.d.ts +2 -0
  68. package/lib/orchestrate/test/compile/completeTestCode.js +21 -0
  69. package/lib/orchestrate/test/compile/completeTestCode.js.map +1 -0
  70. package/lib/orchestrate/test/{filterTestFileName.js → compile/filterTestFileName.js} +1 -1
  71. package/lib/orchestrate/test/compile/filterTestFileName.js.map +1 -0
  72. package/lib/orchestrate/test/compile/getTestExternalDeclarations.d.ts +3 -0
  73. package/lib/orchestrate/test/compile/getTestExternalDeclarations.js +27 -0
  74. package/lib/orchestrate/test/compile/getTestExternalDeclarations.js.map +1 -0
  75. package/lib/orchestrate/test/compile/getTestScenarioArtifacts.d.ts +5 -0
  76. package/lib/orchestrate/test/{compileTestScenario.js → compile/getTestScenarioArtifacts.js} +11 -5
  77. package/lib/orchestrate/test/compile/getTestScenarioArtifacts.js.map +1 -0
  78. package/lib/orchestrate/test/orchestrateTest.js +14 -9
  79. package/lib/orchestrate/test/orchestrateTest.js.map +1 -1
  80. package/lib/orchestrate/test/orchestrateTestCorrect.d.ts +3 -2
  81. package/lib/orchestrate/test/orchestrateTestCorrect.js +150 -349
  82. package/lib/orchestrate/test/orchestrateTestCorrect.js.map +1 -1
  83. package/lib/orchestrate/test/orchestrateTestScenario.js +323 -566
  84. package/lib/orchestrate/test/orchestrateTestScenario.js.map +1 -1
  85. package/lib/orchestrate/test/orchestrateTestWrite.d.ts +3 -2
  86. package/lib/orchestrate/test/orchestrateTestWrite.js +139 -76
  87. package/lib/orchestrate/test/orchestrateTestWrite.js.map +1 -1
  88. package/lib/orchestrate/test/structures/IAutoBeTestCorrectApplication.d.ts +121 -0
  89. package/lib/orchestrate/test/structures/IAutoBeTestCorrectApplication.js +3 -0
  90. package/lib/orchestrate/test/structures/IAutoBeTestCorrectApplication.js.map +1 -0
  91. package/lib/orchestrate/test/structures/IAutoBeTestFunction.d.ts +8 -0
  92. package/lib/{utils/types/BackoffOptions.js → orchestrate/test/structures/IAutoBeTestFunction.js} +1 -1
  93. package/lib/orchestrate/test/structures/IAutoBeTestFunction.js.map +1 -0
  94. package/lib/orchestrate/test/structures/IAutoBeTestScenarioApplication.d.ts +32 -22
  95. package/lib/orchestrate/test/structures/IAutoBeTestScenarioArtifacts.d.ts +2 -0
  96. package/lib/orchestrate/test/structures/IAutoBeTestWriteApplication.d.ts +112 -0
  97. package/lib/orchestrate/test/structures/IAutoBeTestWriteApplication.js +3 -0
  98. package/lib/orchestrate/test/structures/IAutoBeTestWriteApplication.js.map +1 -0
  99. package/lib/orchestrate/test/structures/IAutoBeTestWriteResult.d.ts +7 -0
  100. package/lib/orchestrate/test/structures/IAutoBeTestWriteResult.js +3 -0
  101. package/lib/orchestrate/test/structures/IAutoBeTestWriteResult.js.map +1 -0
  102. package/lib/orchestrate/test/transformTestCorrectHistories.d.ts +3 -2
  103. package/lib/orchestrate/test/transformTestCorrectHistories.js +28 -41
  104. package/lib/orchestrate/test/transformTestCorrectHistories.js.map +1 -1
  105. package/lib/orchestrate/test/transformTestWriteHistories.d.ts +5 -4
  106. package/lib/orchestrate/test/transformTestWriteHistories.js +169 -32
  107. package/lib/orchestrate/test/transformTestWriteHistories.js.map +1 -1
  108. package/lib/structures/IAutoBeConfig.d.ts +11 -0
  109. package/lib/structures/IAutoBeProps.d.ts +12 -1
  110. package/lib/utils/backoffRetry.d.ts +4 -7
  111. package/lib/utils/backoffRetry.js +19 -37
  112. package/lib/utils/backoffRetry.js.map +1 -1
  113. package/lib/utils/forceRetry.d.ts +1 -0
  114. package/lib/{orchestrate/orchestrateRealize.js → utils/forceRetry.js} +15 -8
  115. package/lib/utils/forceRetry.js.map +1 -0
  116. package/package.json +8 -8
  117. package/src/AutoBeAgent.ts +26 -4
  118. package/src/constants/AutoBeSystemPromptConstant.ts +6 -4
  119. package/src/context/AutoBeTokenUsage.ts +85 -1
  120. package/src/context/IAutoBeApplicationProps.ts +0 -62
  121. package/src/factory/createAutoBeApplication.ts +2 -3
  122. package/src/orchestrate/analyze/AutoBeAnalyzeAgent.ts +8 -3
  123. package/src/orchestrate/analyze/AutoBeAnalyzeReviewer.ts +0 -1
  124. package/src/orchestrate/analyze/orchestrateAnalyze.ts +8 -37
  125. package/src/orchestrate/facade/transformFacadeStateMessage.ts +2 -1
  126. package/src/orchestrate/index.ts +2 -2
  127. package/src/orchestrate/interface/orchestrateInterface.ts +7 -0
  128. package/src/orchestrate/interface/orchestrateInterfaceComplement.ts +4 -3
  129. package/src/orchestrate/interface/orchestrateInterfaceComponents.ts +26 -23
  130. package/src/orchestrate/interface/orchestrateInterfaceEndpoints.ts +6 -4
  131. package/src/orchestrate/interface/orchestrateInterfaceOperations.ts +14 -11
  132. package/src/orchestrate/interface/transformInterfaceHistories.ts +2 -0
  133. package/src/orchestrate/prisma/orchestratePrismaComponent.ts +10 -5
  134. package/src/orchestrate/prisma/orchestratePrismaCorrect.ts +11 -5
  135. package/src/orchestrate/prisma/orchestratePrismaSchema.ts +16 -8
  136. package/src/orchestrate/prisma/transformPrismaComponentsHistories.ts +9 -0
  137. package/src/orchestrate/prisma/transformPrismaSchemaHistories.ts +8 -0
  138. package/src/orchestrate/realize/orchestrateRealize.ts +169 -0
  139. package/src/orchestrate/realize/orchestrateRealizeCoder.ts +156 -0
  140. package/src/orchestrate/realize/orchestrateRealizeIntegrator.ts +75 -0
  141. package/src/orchestrate/realize/orchestrateRealizePlanner.ts +115 -0
  142. package/src/orchestrate/realize/orchestrateRealizeValidator.ts +64 -0
  143. package/src/orchestrate/realize/structures/IAutoBeRealizeCoderApplication.ts +36 -0
  144. package/src/orchestrate/realize/transformRealizeCoderHistories.ts +136 -0
  145. package/src/orchestrate/test/compile/completeTestCode.ts +35 -0
  146. package/src/orchestrate/test/{filterTestFileName.ts → compile/filterTestFileName.ts} +1 -1
  147. package/src/orchestrate/test/compile/getTestExternalDeclarations.ts +24 -0
  148. package/src/orchestrate/test/{compileTestScenario.ts → compile/getTestScenarioArtifacts.ts} +17 -8
  149. package/src/orchestrate/test/experimental/orchestrateTestCorrect.ast +240 -0
  150. package/src/orchestrate/test/experimental/orchestrateTestWrite.ast +316 -0
  151. package/src/orchestrate/test/experimental/transformTestCorrectHistories.ast +52 -0
  152. package/src/orchestrate/test/orchestrateTest.ts +38 -16
  153. package/src/orchestrate/test/orchestrateTestCorrect.ts +111 -338
  154. package/src/orchestrate/test/orchestrateTestScenario.ts +114 -69
  155. package/src/orchestrate/test/orchestrateTestWrite.ts +55 -153
  156. package/src/orchestrate/test/structures/IAutoBeTestCorrectApplication.ts +126 -0
  157. package/src/orchestrate/test/structures/IAutoBeTestFunction.ts +10 -0
  158. package/src/orchestrate/test/structures/IAutoBeTestScenarioApplication.ts +32 -22
  159. package/src/orchestrate/test/structures/IAutoBeTestScenarioArtifacts.ts +3 -0
  160. package/src/orchestrate/test/structures/IAutoBeTestWriteApplication.ts +117 -0
  161. package/src/orchestrate/test/structures/IAutoBeTestWriteResult.ts +9 -0
  162. package/src/orchestrate/test/transformTestCorrectHistories.ts +38 -43
  163. package/src/orchestrate/test/transformTestWriteHistories.ts +89 -35
  164. package/src/structures/IAutoBeConfig.ts +9 -0
  165. package/src/structures/IAutoBeProps.ts +17 -1
  166. package/src/utils/backoffRetry.ts +25 -36
  167. package/src/utils/forceRetry.ts +13 -0
  168. package/lib/factory/invertOpenApiDocument.d.ts +0 -3
  169. package/lib/factory/invertOpenApiDocument.js +0 -51
  170. package/lib/factory/invertOpenApiDocument.js.map +0 -1
  171. package/lib/orchestrate/orchestrateRealize.d.ts +0 -5
  172. package/lib/orchestrate/orchestrateRealize.js.map +0 -1
  173. package/lib/orchestrate/test/compileTestScenario.d.ts +0 -5
  174. package/lib/orchestrate/test/compileTestScenario.js.map +0 -1
  175. package/lib/orchestrate/test/filterTestFileName.js.map +0 -1
  176. package/lib/utils/StringUtil.d.ts +0 -4
  177. package/lib/utils/StringUtil.js +0 -43
  178. package/lib/utils/StringUtil.js.map +0 -1
  179. package/lib/utils/types/BackoffOptions.d.ts +0 -12
  180. package/lib/utils/types/BackoffOptions.js.map +0 -1
  181. package/src/factory/invertOpenApiDocument.ts +0 -63
  182. package/src/orchestrate/orchestrateRealize.ts +0 -18
  183. package/src/utils/StringUtil.ts +0 -45
  184. package/src/utils/types/BackoffOptions.ts +0 -15
  185. /package/lib/orchestrate/test/{filterTestFileName.d.ts → compile/filterTestFileName.d.ts} +0 -0
@@ -47,14 +47,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
47
47
  Object.defineProperty(exports, "__esModule", { value: true });
48
48
  exports.createAutoBeController = void 0;
49
49
  const __typia_transform__validateReport = __importStar(require("typia/lib/internal/_validateReport.js"));
50
+ const utils_1 = require("@autobe/utils");
50
51
  const typia_1 = __importDefault(require("typia"));
51
52
  const assertSchemaModel_1 = require("../context/assertSchemaModel");
52
53
  const orchestrateAnalyze_1 = require("../orchestrate/analyze/orchestrateAnalyze");
53
54
  const orchestrateInterface_1 = require("../orchestrate/interface/orchestrateInterface");
54
- const orchestrateRealize_1 = require("../orchestrate/orchestrateRealize");
55
55
  const orchestratePrisma_1 = require("../orchestrate/prisma/orchestratePrisma");
56
+ const orchestrateRealize_1 = require("../orchestrate/realize/orchestrateRealize");
56
57
  const orchestrateTest_1 = require("../orchestrate/test/orchestrateTest");
57
- const StringUtil_1 = require("../utils/StringUtil");
58
58
  const createAutoBeController = (props) => {
59
59
  (0, assertSchemaModel_1.assertSchemaModel)(props.model);
60
60
  const application = collection[props.model];
@@ -73,7 +73,7 @@ const createAutoBeController = (props) => {
73
73
  else
74
74
  return {
75
75
  type: "in-progress",
76
- description: StringUtil_1.StringUtil.trim `
76
+ description: utils_1.StringUtil.trim `
77
77
  Requirements are not yet fully elicited,
78
78
  therefore additional questions will be made to the user.
79
79
  `,
@@ -164,59 +164,54 @@ const claude = {
164
164
  title: "The reason of the function call",
165
165
  description: "The reason of the function call.",
166
166
  type: "string"
167
- },
168
- userPlanningRequirements: {
169
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages.",
170
- type: "string"
171
167
  }
172
168
  },
173
169
  required: [
174
170
  "reason"
175
171
  ],
176
172
  additionalProperties: false,
177
- $defs: {}
178
- },
179
- output: {
180
- description: "Current Type: {@link IAutoBeApplicationResult}",
181
- type: "object",
182
- properties: {
183
- type: {
184
- oneOf: [
185
- {
186
- "const": "success"
187
- },
188
- {
189
- "const": "failure"
190
- },
191
- {
192
- "const": "exception"
173
+ $defs: {
174
+ IAutoBeApplicationResult: {
175
+ type: "object",
176
+ properties: {
177
+ type: {
178
+ oneOf: [
179
+ {
180
+ "const": "success"
181
+ },
182
+ {
183
+ "const": "failure"
184
+ },
185
+ {
186
+ "const": "exception"
187
+ },
188
+ {
189
+ "const": "in-progress"
190
+ },
191
+ {
192
+ "const": "prerequisites-not-satisfied"
193
+ }
194
+ ]
193
195
  },
194
- {
195
- "const": "in-progress"
196
- },
197
- {
198
- "const": "prerequisites-not-satisfied"
196
+ description: {
197
+ type: "string"
199
198
  }
199
+ },
200
+ required: [
201
+ "type",
202
+ "description"
200
203
  ]
201
- },
202
- description: {
203
- type: "string"
204
204
  }
205
- },
206
- required: [
207
- "type",
208
- "description"
209
- ]
205
+ }
206
+ },
207
+ output: {
208
+ $ref: "#/$defs/IAutoBeApplicationResult"
210
209
  },
211
210
  description: "Run Analyze Agent.\n\nExecutes the Analyze agent to process user requirements and generate a\nstructured specification document. This agent analyzes all conversation\nhistory between users and AI, separates business logic from technical\nrequirements, and establishes development priorities and scope.\n\n**IMPORTANT**: Only call this function when sufficient requirements have\nbeen discussed to generate a comprehensive specification. The context must\ncontain enough detail about the system's purpose, core features, data\nmodels, and business rules. If requirements are unclear or incomplete,\ncontinue gathering information through conversation instead.\n\nThe agent will automatically generate follow-up questions for any ambiguous\nrequirements and continuously refine its understanding through iterative\nconversation. When executed after other agents have generated code, it can\nalso interpret change requests in the context of existing implementations.",
212
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
211
+ validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
213
212
  path: _path + ".reason",
214
213
  expected: "string",
215
214
  value: input.reason
216
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
217
- path: _path + ".userPlanningRequirements",
218
- expected: "(string | undefined)",
219
- value: input.userPlanningRequirements
220
215
  })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
221
216
  if (false === __is(input)) {
222
217
  errors = [];
@@ -256,59 +251,54 @@ const claude = {
256
251
  title: "The reason of the function call",
257
252
  description: "The reason of the function call.",
258
253
  type: "string"
259
- },
260
- userPlanningRequirements: {
261
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages.",
262
- type: "string"
263
254
  }
264
255
  },
265
256
  required: [
266
257
  "reason"
267
258
  ],
268
259
  additionalProperties: false,
269
- $defs: {}
270
- },
271
- output: {
272
- description: "Current Type: {@link IAutoBeApplicationResult}",
273
- type: "object",
274
- properties: {
275
- type: {
276
- oneOf: [
277
- {
278
- "const": "success"
279
- },
280
- {
281
- "const": "failure"
282
- },
283
- {
284
- "const": "exception"
285
- },
286
- {
287
- "const": "in-progress"
260
+ $defs: {
261
+ IAutoBeApplicationResult: {
262
+ type: "object",
263
+ properties: {
264
+ type: {
265
+ oneOf: [
266
+ {
267
+ "const": "success"
268
+ },
269
+ {
270
+ "const": "failure"
271
+ },
272
+ {
273
+ "const": "exception"
274
+ },
275
+ {
276
+ "const": "in-progress"
277
+ },
278
+ {
279
+ "const": "prerequisites-not-satisfied"
280
+ }
281
+ ]
288
282
  },
289
- {
290
- "const": "prerequisites-not-satisfied"
283
+ description: {
284
+ type: "string"
291
285
  }
286
+ },
287
+ required: [
288
+ "type",
289
+ "description"
292
290
  ]
293
- },
294
- description: {
295
- type: "string"
296
291
  }
297
- },
298
- required: [
299
- "type",
300
- "description"
301
- ]
292
+ }
293
+ },
294
+ output: {
295
+ $ref: "#/$defs/IAutoBeApplicationResult"
302
296
  },
303
297
  description: "Run prisma agent.\n\nExecutes the Prisma agent to generate database schema files and ERD\ndocumentation. This agent reads the requirements specification created by\nthe {@link analyze Analyze agent} and produces a complete Prisma schema with\ncomprehensive documentation for each entity and attribute.\n\n**PREREQUISITE**: Only call this function after the {@link analyze} function\nhas been successfully executed and a requirements specification document\nhas been generated. The Prisma agent depends on the structured requirements\nanalysis to design the database schema properly. Without a completed\nrequirements specification, this function should NOT be called.\n\nThe agent will automatically validate the generated schema using the Prisma\ncompiler, self-correct any compilation errors through feedback loops, and\ngenerate ERD documentation using prisma-markdown. An internal review\nprocess ensures schema quality and optimization.",
304
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
298
+ validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
305
299
  path: _path + ".reason",
306
300
  expected: "string",
307
301
  value: input.reason
308
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
309
- path: _path + ".userPlanningRequirements",
310
- expected: "(string | undefined)",
311
- value: input.userPlanningRequirements
312
302
  })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
313
303
  if (false === __is(input)) {
314
304
  errors = [];
@@ -348,59 +338,54 @@ const claude = {
348
338
  title: "The reason of the function call",
349
339
  description: "The reason of the function call.",
350
340
  type: "string"
351
- },
352
- userPlanningRequirements: {
353
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages.",
354
- type: "string"
355
341
  }
356
342
  },
357
343
  required: [
358
344
  "reason"
359
345
  ],
360
346
  additionalProperties: false,
361
- $defs: {}
362
- },
363
- output: {
364
- description: "Current Type: {@link IAutoBeApplicationResult}",
365
- type: "object",
366
- properties: {
367
- type: {
368
- oneOf: [
369
- {
370
- "const": "success"
371
- },
372
- {
373
- "const": "failure"
374
- },
375
- {
376
- "const": "exception"
377
- },
378
- {
379
- "const": "in-progress"
347
+ $defs: {
348
+ IAutoBeApplicationResult: {
349
+ type: "object",
350
+ properties: {
351
+ type: {
352
+ oneOf: [
353
+ {
354
+ "const": "success"
355
+ },
356
+ {
357
+ "const": "failure"
358
+ },
359
+ {
360
+ "const": "exception"
361
+ },
362
+ {
363
+ "const": "in-progress"
364
+ },
365
+ {
366
+ "const": "prerequisites-not-satisfied"
367
+ }
368
+ ]
380
369
  },
381
- {
382
- "const": "prerequisites-not-satisfied"
370
+ description: {
371
+ type: "string"
383
372
  }
373
+ },
374
+ required: [
375
+ "type",
376
+ "description"
384
377
  ]
385
- },
386
- description: {
387
- type: "string"
388
378
  }
389
- },
390
- required: [
391
- "type",
392
- "description"
393
- ]
379
+ }
380
+ },
381
+ output: {
382
+ $ref: "#/$defs/IAutoBeApplicationResult"
394
383
  },
395
384
  description: "Run interface agent.\n\nExecutes the Interface agent to design and generate API interfaces. This\nagent creates OpenAPI schemas and TypeScript/NestJS code based on the\nrequirements specification and ERD documentation from previous agents.\n\nThe agent follows a sophisticated pipeline: first constructing formal\nOpenAPI Operation Schemas and JSON Schemas, then validating these schemas,\nand finally transforming them into NestJS controllers and DTOs. Each\ngenerated interface includes comprehensive JSDoc comments and undergoes\ninternal review for consistency.",
396
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
385
+ validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
397
386
  path: _path + ".reason",
398
387
  expected: "string",
399
388
  value: input.reason
400
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
401
- path: _path + ".userPlanningRequirements",
402
- expected: "(string | undefined)",
403
- value: input.userPlanningRequirements
404
389
  })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
405
390
  if (false === __is(input)) {
406
391
  errors = [];
@@ -440,59 +425,54 @@ const claude = {
440
425
  title: "The reason of the function call",
441
426
  description: "The reason of the function call.",
442
427
  type: "string"
443
- },
444
- userPlanningRequirements: {
445
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages.",
446
- type: "string"
447
428
  }
448
429
  },
449
430
  required: [
450
431
  "reason"
451
432
  ],
452
433
  additionalProperties: false,
453
- $defs: {}
454
- },
455
- output: {
456
- description: "Current Type: {@link IAutoBeApplicationResult}",
457
- type: "object",
458
- properties: {
459
- type: {
460
- oneOf: [
461
- {
462
- "const": "success"
434
+ $defs: {
435
+ IAutoBeApplicationResult: {
436
+ type: "object",
437
+ properties: {
438
+ type: {
439
+ oneOf: [
440
+ {
441
+ "const": "success"
442
+ },
443
+ {
444
+ "const": "failure"
445
+ },
446
+ {
447
+ "const": "exception"
448
+ },
449
+ {
450
+ "const": "in-progress"
451
+ },
452
+ {
453
+ "const": "prerequisites-not-satisfied"
454
+ }
455
+ ]
463
456
  },
464
- {
465
- "const": "failure"
466
- },
467
- {
468
- "const": "exception"
469
- },
470
- {
471
- "const": "in-progress"
472
- },
473
- {
474
- "const": "prerequisites-not-satisfied"
457
+ description: {
458
+ type: "string"
475
459
  }
460
+ },
461
+ required: [
462
+ "type",
463
+ "description"
476
464
  ]
477
- },
478
- description: {
479
- type: "string"
480
465
  }
481
- },
482
- required: [
483
- "type",
484
- "description"
485
- ]
466
+ }
467
+ },
468
+ output: {
469
+ $ref: "#/$defs/IAutoBeApplicationResult"
486
470
  },
487
471
  description: "Run test program agent.\n\nExecutes the Test agent to generate comprehensive E2E test suites for all\n{@link interface API interfaces}. This agent synthesizes outputs from\nprevious agents to create tests that validate both individual endpoints and\ntheir interactions.\n\n**PREREQUISITE**: Only call this function after the {@link interface}\nfunction has been successfully executed and API interfaces have been\ngenerated. The Test agent requires the completed API interface definitions,\nOpenAPI schemas, and TypeScript code to generate appropriate test\nscenarios. Without completed interface design, this function should NOT be\ncalled.\n\nThe agent will analyze dependency relationships between API functions,\nstructure integrated test scenarios with correct execution sequences, and\nenhance pre-generated test scaffolds with business logic validation.\nTypeScript compiler validation and internal review ensure test quality and\noptimal coverage.",
488
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
472
+ validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
489
473
  path: _path + ".reason",
490
474
  expected: "string",
491
475
  value: input.reason
492
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
493
- path: _path + ".userPlanningRequirements",
494
- expected: "(string | undefined)",
495
- value: input.userPlanningRequirements
496
476
  })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
497
477
  if (false === __is(input)) {
498
478
  errors = [];
@@ -532,59 +512,54 @@ const claude = {
532
512
  title: "The reason of the function call",
533
513
  description: "The reason of the function call.",
534
514
  type: "string"
535
- },
536
- userPlanningRequirements: {
537
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages.",
538
- type: "string"
539
515
  }
540
516
  },
541
517
  required: [
542
518
  "reason"
543
519
  ],
544
520
  additionalProperties: false,
545
- $defs: {}
546
- },
547
- output: {
548
- description: "Current Type: {@link IAutoBeApplicationResult}",
549
- type: "object",
550
- properties: {
551
- type: {
552
- oneOf: [
553
- {
554
- "const": "success"
555
- },
556
- {
557
- "const": "failure"
558
- },
559
- {
560
- "const": "exception"
521
+ $defs: {
522
+ IAutoBeApplicationResult: {
523
+ type: "object",
524
+ properties: {
525
+ type: {
526
+ oneOf: [
527
+ {
528
+ "const": "success"
529
+ },
530
+ {
531
+ "const": "failure"
532
+ },
533
+ {
534
+ "const": "exception"
535
+ },
536
+ {
537
+ "const": "in-progress"
538
+ },
539
+ {
540
+ "const": "prerequisites-not-satisfied"
541
+ }
542
+ ]
561
543
  },
562
- {
563
- "const": "in-progress"
564
- },
565
- {
566
- "const": "prerequisites-not-satisfied"
544
+ description: {
545
+ type: "string"
567
546
  }
547
+ },
548
+ required: [
549
+ "type",
550
+ "description"
568
551
  ]
569
- },
570
- description: {
571
- type: "string"
572
552
  }
573
- },
574
- required: [
575
- "type",
576
- "description"
577
- ]
553
+ }
554
+ },
555
+ output: {
556
+ $ref: "#/$defs/IAutoBeApplicationResult"
578
557
  },
579
558
  description: "Run realize agent.\n\nExecutes the Realize agent to implement the actual business logic for each\nAPI endpoint. This agent synthesizes all outputs from previous agents to\ngenerate fully functional service provider code.\n\n**PREREQUISITE**: Only call this function after the {@link interface}\nfunction has been successfully executed and API interfaces have been\ngenerated. The Realize agent requires the completed API interface\ndefinitions to implement the corresponding service logic. It also benefits\nfrom having test code available for validation. Without completed interface\ndesign, this function should NOT be called.\n\nThe agent will create service implementations with multiple validation\nlayers: TypeScript compiler feedback, runtime validation through test\nexecution, and quality optimization through internal review. The generated\ncode handles database interactions through Prisma, implements security and\nvalidation checks, and processes business rules according to\nspecifications.",
580
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
559
+ validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
581
560
  path: _path + ".reason",
582
561
  expected: "string",
583
562
  value: input.reason
584
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
585
- path: _path + ".userPlanningRequirements",
586
- expected: "(string | undefined)",
587
- value: input.userPlanningRequirements
588
563
  })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
589
564
  if (false === __is(input)) {
590
565
  errors = [];
@@ -635,50 +610,45 @@ const collection = {
635
610
  title: "The reason of the function call",
636
611
  description: "The reason of the function call.",
637
612
  type: "string"
638
- },
639
- userPlanningRequirements: {
640
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages.",
641
- type: "string"
642
613
  }
643
614
  },
644
615
  required: [
645
616
  "reason"
646
617
  ],
647
618
  additionalProperties: false,
648
- $defs: {}
649
- },
650
- output: {
651
- description: "Current Type: {@link IAutoBeApplicationResult}",
652
- type: "object",
653
- properties: {
654
- type: {
655
- type: "string",
656
- "enum": [
657
- "success",
658
- "failure",
659
- "exception",
660
- "in-progress",
661
- "prerequisites-not-satisfied"
619
+ $defs: {
620
+ IAutoBeApplicationResult: {
621
+ type: "object",
622
+ properties: {
623
+ type: {
624
+ type: "string",
625
+ "enum": [
626
+ "success",
627
+ "failure",
628
+ "exception",
629
+ "in-progress",
630
+ "prerequisites-not-satisfied"
631
+ ]
632
+ },
633
+ description: {
634
+ type: "string"
635
+ }
636
+ },
637
+ required: [
638
+ "type",
639
+ "description"
662
640
  ]
663
- },
664
- description: {
665
- type: "string"
666
641
  }
667
- },
668
- required: [
669
- "type",
670
- "description"
671
- ]
642
+ }
643
+ },
644
+ output: {
645
+ $ref: "#/$defs/IAutoBeApplicationResult"
672
646
  },
673
647
  description: "Run Analyze Agent.\n\nExecutes the Analyze agent to process user requirements and generate a\nstructured specification document. This agent analyzes all conversation\nhistory between users and AI, separates business logic from technical\nrequirements, and establishes development priorities and scope.\n\n**IMPORTANT**: Only call this function when sufficient requirements have\nbeen discussed to generate a comprehensive specification. The context must\ncontain enough detail about the system's purpose, core features, data\nmodels, and business rules. If requirements are unclear or incomplete,\ncontinue gathering information through conversation instead.\n\nThe agent will automatically generate follow-up questions for any ambiguous\nrequirements and continuously refine its understanding through iterative\nconversation. When executed after other agents have generated code, it can\nalso interpret change requests in the context of existing implementations.",
674
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
648
+ validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
675
649
  path: _path + ".reason",
676
650
  expected: "string",
677
651
  value: input.reason
678
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
679
- path: _path + ".userPlanningRequirements",
680
- expected: "(string | undefined)",
681
- value: input.userPlanningRequirements
682
652
  })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
683
653
  if (false === __is(input)) {
684
654
  errors = [];
@@ -718,50 +688,45 @@ const collection = {
718
688
  title: "The reason of the function call",
719
689
  description: "The reason of the function call.",
720
690
  type: "string"
721
- },
722
- userPlanningRequirements: {
723
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages.",
724
- type: "string"
725
691
  }
726
692
  },
727
693
  required: [
728
694
  "reason"
729
695
  ],
730
696
  additionalProperties: false,
731
- $defs: {}
732
- },
733
- output: {
734
- description: "Current Type: {@link IAutoBeApplicationResult}",
735
- type: "object",
736
- properties: {
737
- type: {
738
- type: "string",
739
- "enum": [
740
- "success",
741
- "failure",
742
- "exception",
743
- "in-progress",
744
- "prerequisites-not-satisfied"
697
+ $defs: {
698
+ IAutoBeApplicationResult: {
699
+ type: "object",
700
+ properties: {
701
+ type: {
702
+ type: "string",
703
+ "enum": [
704
+ "success",
705
+ "failure",
706
+ "exception",
707
+ "in-progress",
708
+ "prerequisites-not-satisfied"
709
+ ]
710
+ },
711
+ description: {
712
+ type: "string"
713
+ }
714
+ },
715
+ required: [
716
+ "type",
717
+ "description"
745
718
  ]
746
- },
747
- description: {
748
- type: "string"
749
719
  }
750
- },
751
- required: [
752
- "type",
753
- "description"
754
- ]
720
+ }
721
+ },
722
+ output: {
723
+ $ref: "#/$defs/IAutoBeApplicationResult"
755
724
  },
756
725
  description: "Run prisma agent.\n\nExecutes the Prisma agent to generate database schema files and ERD\ndocumentation. This agent reads the requirements specification created by\nthe {@link analyze Analyze agent} and produces a complete Prisma schema with\ncomprehensive documentation for each entity and attribute.\n\n**PREREQUISITE**: Only call this function after the {@link analyze} function\nhas been successfully executed and a requirements specification document\nhas been generated. The Prisma agent depends on the structured requirements\nanalysis to design the database schema properly. Without a completed\nrequirements specification, this function should NOT be called.\n\nThe agent will automatically validate the generated schema using the Prisma\ncompiler, self-correct any compilation errors through feedback loops, and\ngenerate ERD documentation using prisma-markdown. An internal review\nprocess ensures schema quality and optimization.",
757
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
726
+ validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
758
727
  path: _path + ".reason",
759
728
  expected: "string",
760
729
  value: input.reason
761
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
762
- path: _path + ".userPlanningRequirements",
763
- expected: "(string | undefined)",
764
- value: input.userPlanningRequirements
765
730
  })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
766
731
  if (false === __is(input)) {
767
732
  errors = [];
@@ -801,50 +766,45 @@ const collection = {
801
766
  title: "The reason of the function call",
802
767
  description: "The reason of the function call.",
803
768
  type: "string"
804
- },
805
- userPlanningRequirements: {
806
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages.",
807
- type: "string"
808
769
  }
809
770
  },
810
771
  required: [
811
772
  "reason"
812
773
  ],
813
774
  additionalProperties: false,
814
- $defs: {}
815
- },
816
- output: {
817
- description: "Current Type: {@link IAutoBeApplicationResult}",
818
- type: "object",
819
- properties: {
820
- type: {
821
- type: "string",
822
- "enum": [
823
- "success",
824
- "failure",
825
- "exception",
826
- "in-progress",
827
- "prerequisites-not-satisfied"
775
+ $defs: {
776
+ IAutoBeApplicationResult: {
777
+ type: "object",
778
+ properties: {
779
+ type: {
780
+ type: "string",
781
+ "enum": [
782
+ "success",
783
+ "failure",
784
+ "exception",
785
+ "in-progress",
786
+ "prerequisites-not-satisfied"
787
+ ]
788
+ },
789
+ description: {
790
+ type: "string"
791
+ }
792
+ },
793
+ required: [
794
+ "type",
795
+ "description"
828
796
  ]
829
- },
830
- description: {
831
- type: "string"
832
797
  }
833
- },
834
- required: [
835
- "type",
836
- "description"
837
- ]
798
+ }
799
+ },
800
+ output: {
801
+ $ref: "#/$defs/IAutoBeApplicationResult"
838
802
  },
839
803
  description: "Run interface agent.\n\nExecutes the Interface agent to design and generate API interfaces. This\nagent creates OpenAPI schemas and TypeScript/NestJS code based on the\nrequirements specification and ERD documentation from previous agents.\n\nThe agent follows a sophisticated pipeline: first constructing formal\nOpenAPI Operation Schemas and JSON Schemas, then validating these schemas,\nand finally transforming them into NestJS controllers and DTOs. Each\ngenerated interface includes comprehensive JSDoc comments and undergoes\ninternal review for consistency.",
840
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
804
+ validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
841
805
  path: _path + ".reason",
842
806
  expected: "string",
843
807
  value: input.reason
844
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
845
- path: _path + ".userPlanningRequirements",
846
- expected: "(string | undefined)",
847
- value: input.userPlanningRequirements
848
808
  })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
849
809
  if (false === __is(input)) {
850
810
  errors = [];
@@ -884,50 +844,45 @@ const collection = {
884
844
  title: "The reason of the function call",
885
845
  description: "The reason of the function call.",
886
846
  type: "string"
887
- },
888
- userPlanningRequirements: {
889
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages.",
890
- type: "string"
891
847
  }
892
848
  },
893
849
  required: [
894
850
  "reason"
895
851
  ],
896
852
  additionalProperties: false,
897
- $defs: {}
898
- },
899
- output: {
900
- description: "Current Type: {@link IAutoBeApplicationResult}",
901
- type: "object",
902
- properties: {
903
- type: {
904
- type: "string",
905
- "enum": [
906
- "success",
907
- "failure",
908
- "exception",
909
- "in-progress",
910
- "prerequisites-not-satisfied"
853
+ $defs: {
854
+ IAutoBeApplicationResult: {
855
+ type: "object",
856
+ properties: {
857
+ type: {
858
+ type: "string",
859
+ "enum": [
860
+ "success",
861
+ "failure",
862
+ "exception",
863
+ "in-progress",
864
+ "prerequisites-not-satisfied"
865
+ ]
866
+ },
867
+ description: {
868
+ type: "string"
869
+ }
870
+ },
871
+ required: [
872
+ "type",
873
+ "description"
911
874
  ]
912
- },
913
- description: {
914
- type: "string"
915
875
  }
916
- },
917
- required: [
918
- "type",
919
- "description"
920
- ]
876
+ }
877
+ },
878
+ output: {
879
+ $ref: "#/$defs/IAutoBeApplicationResult"
921
880
  },
922
881
  description: "Run test program agent.\n\nExecutes the Test agent to generate comprehensive E2E test suites for all\n{@link interface API interfaces}. This agent synthesizes outputs from\nprevious agents to create tests that validate both individual endpoints and\ntheir interactions.\n\n**PREREQUISITE**: Only call this function after the {@link interface}\nfunction has been successfully executed and API interfaces have been\ngenerated. The Test agent requires the completed API interface definitions,\nOpenAPI schemas, and TypeScript code to generate appropriate test\nscenarios. Without completed interface design, this function should NOT be\ncalled.\n\nThe agent will analyze dependency relationships between API functions,\nstructure integrated test scenarios with correct execution sequences, and\nenhance pre-generated test scaffolds with business logic validation.\nTypeScript compiler validation and internal review ensure test quality and\noptimal coverage.",
923
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
882
+ validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
924
883
  path: _path + ".reason",
925
884
  expected: "string",
926
885
  value: input.reason
927
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
928
- path: _path + ".userPlanningRequirements",
929
- expected: "(string | undefined)",
930
- value: input.userPlanningRequirements
931
886
  })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
932
887
  if (false === __is(input)) {
933
888
  errors = [];
@@ -967,50 +922,45 @@ const collection = {
967
922
  title: "The reason of the function call",
968
923
  description: "The reason of the function call.",
969
924
  type: "string"
970
- },
971
- userPlanningRequirements: {
972
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages.",
973
- type: "string"
974
925
  }
975
926
  },
976
927
  required: [
977
928
  "reason"
978
929
  ],
979
930
  additionalProperties: false,
980
- $defs: {}
981
- },
982
- output: {
983
- description: "Current Type: {@link IAutoBeApplicationResult}",
984
- type: "object",
985
- properties: {
986
- type: {
987
- type: "string",
988
- "enum": [
989
- "success",
990
- "failure",
991
- "exception",
992
- "in-progress",
993
- "prerequisites-not-satisfied"
931
+ $defs: {
932
+ IAutoBeApplicationResult: {
933
+ type: "object",
934
+ properties: {
935
+ type: {
936
+ type: "string",
937
+ "enum": [
938
+ "success",
939
+ "failure",
940
+ "exception",
941
+ "in-progress",
942
+ "prerequisites-not-satisfied"
943
+ ]
944
+ },
945
+ description: {
946
+ type: "string"
947
+ }
948
+ },
949
+ required: [
950
+ "type",
951
+ "description"
994
952
  ]
995
- },
996
- description: {
997
- type: "string"
998
953
  }
999
- },
1000
- required: [
1001
- "type",
1002
- "description"
1003
- ]
954
+ }
955
+ },
956
+ output: {
957
+ $ref: "#/$defs/IAutoBeApplicationResult"
1004
958
  },
1005
959
  description: "Run realize agent.\n\nExecutes the Realize agent to implement the actual business logic for each\nAPI endpoint. This agent synthesizes all outputs from previous agents to\ngenerate fully functional service provider code.\n\n**PREREQUISITE**: Only call this function after the {@link interface}\nfunction has been successfully executed and API interfaces have been\ngenerated. The Realize agent requires the completed API interface\ndefinitions to implement the corresponding service logic. It also benefits\nfrom having test code available for validation. Without completed interface\ndesign, this function should NOT be called.\n\nThe agent will create service implementations with multiple validation\nlayers: TypeScript compiler feedback, runtime validation through test\nexecution, and quality optimization through internal review. The generated\ncode handles database interactions through Prisma, implements security and\nvalidation checks, and processes business rules according to\nspecifications.",
1006
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
960
+ validate: (() => { const _io0 = input => "string" === typeof input.reason; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
1007
961
  path: _path + ".reason",
1008
962
  expected: "string",
1009
963
  value: input.reason
1010
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
1011
- path: _path + ".userPlanningRequirements",
1012
- expected: "(string | undefined)",
1013
- value: input.userPlanningRequirements
1014
964
  })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1015
965
  if (false === __is(input)) {
1016
966
  errors = [];
@@ -1046,430 +996,5 @@ const collection = {
1046
996
  llama: claude,
1047
997
  deepseek: claude,
1048
998
  "3.1": claude,
1049
- "3.0": {
1050
- model: "3.0",
1051
- options: {
1052
- constraint: true,
1053
- recursive: 3,
1054
- separate: null
1055
- },
1056
- functions: [
1057
- {
1058
- name: "analyze",
1059
- parameters: {
1060
- type: "object",
1061
- properties: {
1062
- reason: {
1063
- type: "string",
1064
- title: "The reason of the function call",
1065
- description: "The reason of the function call."
1066
- },
1067
- userPlanningRequirements: {
1068
- type: "string",
1069
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages."
1070
- }
1071
- },
1072
- required: [
1073
- "reason"
1074
- ],
1075
- description: "Current Type: {@link IAutoBeApplicationProps}",
1076
- additionalProperties: false
1077
- },
1078
- output: {
1079
- type: "object",
1080
- properties: {
1081
- type: {
1082
- type: "string",
1083
- "enum": [
1084
- "success",
1085
- "failure",
1086
- "exception",
1087
- "in-progress",
1088
- "prerequisites-not-satisfied"
1089
- ]
1090
- },
1091
- description: {
1092
- type: "string"
1093
- }
1094
- },
1095
- required: [
1096
- "type",
1097
- "description"
1098
- ],
1099
- description: "Current Type: {@link IAutoBeApplicationResult}",
1100
- additionalProperties: false
1101
- },
1102
- description: "Run Analyze Agent.\n\nExecutes the Analyze agent to process user requirements and generate a\nstructured specification document. This agent analyzes all conversation\nhistory between users and AI, separates business logic from technical\nrequirements, and establishes development priorities and scope.\n\n**IMPORTANT**: Only call this function when sufficient requirements have\nbeen discussed to generate a comprehensive specification. The context must\ncontain enough detail about the system's purpose, core features, data\nmodels, and business rules. If requirements are unclear or incomplete,\ncontinue gathering information through conversation instead.\n\nThe agent will automatically generate follow-up questions for any ambiguous\nrequirements and continuously refine its understanding through iterative\nconversation. When executed after other agents have generated code, it can\nalso interpret change requests in the context of existing implementations.",
1103
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
1104
- path: _path + ".reason",
1105
- expected: "string",
1106
- value: input.reason
1107
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
1108
- path: _path + ".userPlanningRequirements",
1109
- expected: "(string | undefined)",
1110
- value: input.userPlanningRequirements
1111
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1112
- if (false === __is(input)) {
1113
- errors = [];
1114
- _report = __typia_transform__validateReport._validateReport(errors);
1115
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1116
- path: _path + "",
1117
- expected: "IAutoBeApplicationProps",
1118
- value: input
1119
- })) && _vo0(input, _path + "", true) || _report(true, {
1120
- path: _path + "",
1121
- expected: "IAutoBeApplicationProps",
1122
- value: input
1123
- }))(input, "$input", true);
1124
- const success = 0 === errors.length;
1125
- return success ? {
1126
- success,
1127
- data: input
1128
- } : {
1129
- success,
1130
- errors,
1131
- data: input
1132
- };
1133
- }
1134
- return {
1135
- success: true,
1136
- data: input
1137
- };
1138
- }; })()
1139
- },
1140
- {
1141
- name: "prisma",
1142
- parameters: {
1143
- type: "object",
1144
- properties: {
1145
- reason: {
1146
- type: "string",
1147
- title: "The reason of the function call",
1148
- description: "The reason of the function call."
1149
- },
1150
- userPlanningRequirements: {
1151
- type: "string",
1152
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages."
1153
- }
1154
- },
1155
- required: [
1156
- "reason"
1157
- ],
1158
- description: "Current Type: {@link IAutoBeApplicationProps}",
1159
- additionalProperties: false
1160
- },
1161
- output: {
1162
- type: "object",
1163
- properties: {
1164
- type: {
1165
- type: "string",
1166
- "enum": [
1167
- "success",
1168
- "failure",
1169
- "exception",
1170
- "in-progress",
1171
- "prerequisites-not-satisfied"
1172
- ]
1173
- },
1174
- description: {
1175
- type: "string"
1176
- }
1177
- },
1178
- required: [
1179
- "type",
1180
- "description"
1181
- ],
1182
- description: "Current Type: {@link IAutoBeApplicationResult}",
1183
- additionalProperties: false
1184
- },
1185
- description: "Run prisma agent.\n\nExecutes the Prisma agent to generate database schema files and ERD\ndocumentation. This agent reads the requirements specification created by\nthe {@link analyze Analyze agent} and produces a complete Prisma schema with\ncomprehensive documentation for each entity and attribute.\n\n**PREREQUISITE**: Only call this function after the {@link analyze} function\nhas been successfully executed and a requirements specification document\nhas been generated. The Prisma agent depends on the structured requirements\nanalysis to design the database schema properly. Without a completed\nrequirements specification, this function should NOT be called.\n\nThe agent will automatically validate the generated schema using the Prisma\ncompiler, self-correct any compilation errors through feedback loops, and\ngenerate ERD documentation using prisma-markdown. An internal review\nprocess ensures schema quality and optimization.",
1186
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
1187
- path: _path + ".reason",
1188
- expected: "string",
1189
- value: input.reason
1190
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
1191
- path: _path + ".userPlanningRequirements",
1192
- expected: "(string | undefined)",
1193
- value: input.userPlanningRequirements
1194
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1195
- if (false === __is(input)) {
1196
- errors = [];
1197
- _report = __typia_transform__validateReport._validateReport(errors);
1198
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1199
- path: _path + "",
1200
- expected: "IAutoBeApplicationProps",
1201
- value: input
1202
- })) && _vo0(input, _path + "", true) || _report(true, {
1203
- path: _path + "",
1204
- expected: "IAutoBeApplicationProps",
1205
- value: input
1206
- }))(input, "$input", true);
1207
- const success = 0 === errors.length;
1208
- return success ? {
1209
- success,
1210
- data: input
1211
- } : {
1212
- success,
1213
- errors,
1214
- data: input
1215
- };
1216
- }
1217
- return {
1218
- success: true,
1219
- data: input
1220
- };
1221
- }; })()
1222
- },
1223
- {
1224
- name: "interface",
1225
- parameters: {
1226
- type: "object",
1227
- properties: {
1228
- reason: {
1229
- type: "string",
1230
- title: "The reason of the function call",
1231
- description: "The reason of the function call."
1232
- },
1233
- userPlanningRequirements: {
1234
- type: "string",
1235
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages."
1236
- }
1237
- },
1238
- required: [
1239
- "reason"
1240
- ],
1241
- description: "Current Type: {@link IAutoBeApplicationProps}",
1242
- additionalProperties: false
1243
- },
1244
- output: {
1245
- type: "object",
1246
- properties: {
1247
- type: {
1248
- type: "string",
1249
- "enum": [
1250
- "success",
1251
- "failure",
1252
- "exception",
1253
- "in-progress",
1254
- "prerequisites-not-satisfied"
1255
- ]
1256
- },
1257
- description: {
1258
- type: "string"
1259
- }
1260
- },
1261
- required: [
1262
- "type",
1263
- "description"
1264
- ],
1265
- description: "Current Type: {@link IAutoBeApplicationResult}",
1266
- additionalProperties: false
1267
- },
1268
- description: "Run interface agent.\n\nExecutes the Interface agent to design and generate API interfaces. This\nagent creates OpenAPI schemas and TypeScript/NestJS code based on the\nrequirements specification and ERD documentation from previous agents.\n\nThe agent follows a sophisticated pipeline: first constructing formal\nOpenAPI Operation Schemas and JSON Schemas, then validating these schemas,\nand finally transforming them into NestJS controllers and DTOs. Each\ngenerated interface includes comprehensive JSDoc comments and undergoes\ninternal review for consistency.",
1269
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
1270
- path: _path + ".reason",
1271
- expected: "string",
1272
- value: input.reason
1273
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
1274
- path: _path + ".userPlanningRequirements",
1275
- expected: "(string | undefined)",
1276
- value: input.userPlanningRequirements
1277
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1278
- if (false === __is(input)) {
1279
- errors = [];
1280
- _report = __typia_transform__validateReport._validateReport(errors);
1281
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1282
- path: _path + "",
1283
- expected: "IAutoBeApplicationProps",
1284
- value: input
1285
- })) && _vo0(input, _path + "", true) || _report(true, {
1286
- path: _path + "",
1287
- expected: "IAutoBeApplicationProps",
1288
- value: input
1289
- }))(input, "$input", true);
1290
- const success = 0 === errors.length;
1291
- return success ? {
1292
- success,
1293
- data: input
1294
- } : {
1295
- success,
1296
- errors,
1297
- data: input
1298
- };
1299
- }
1300
- return {
1301
- success: true,
1302
- data: input
1303
- };
1304
- }; })()
1305
- },
1306
- {
1307
- name: "test",
1308
- parameters: {
1309
- type: "object",
1310
- properties: {
1311
- reason: {
1312
- type: "string",
1313
- title: "The reason of the function call",
1314
- description: "The reason of the function call."
1315
- },
1316
- userPlanningRequirements: {
1317
- type: "string",
1318
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages."
1319
- }
1320
- },
1321
- required: [
1322
- "reason"
1323
- ],
1324
- description: "Current Type: {@link IAutoBeApplicationProps}",
1325
- additionalProperties: false
1326
- },
1327
- output: {
1328
- type: "object",
1329
- properties: {
1330
- type: {
1331
- type: "string",
1332
- "enum": [
1333
- "success",
1334
- "failure",
1335
- "exception",
1336
- "in-progress",
1337
- "prerequisites-not-satisfied"
1338
- ]
1339
- },
1340
- description: {
1341
- type: "string"
1342
- }
1343
- },
1344
- required: [
1345
- "type",
1346
- "description"
1347
- ],
1348
- description: "Current Type: {@link IAutoBeApplicationResult}",
1349
- additionalProperties: false
1350
- },
1351
- description: "Run test program agent.\n\nExecutes the Test agent to generate comprehensive E2E test suites for all\n{@link interface API interfaces}. This agent synthesizes outputs from\nprevious agents to create tests that validate both individual endpoints and\ntheir interactions.\n\n**PREREQUISITE**: Only call this function after the {@link interface}\nfunction has been successfully executed and API interfaces have been\ngenerated. The Test agent requires the completed API interface definitions,\nOpenAPI schemas, and TypeScript code to generate appropriate test\nscenarios. Without completed interface design, this function should NOT be\ncalled.\n\nThe agent will analyze dependency relationships between API functions,\nstructure integrated test scenarios with correct execution sequences, and\nenhance pre-generated test scaffolds with business logic validation.\nTypeScript compiler validation and internal review ensure test quality and\noptimal coverage.",
1352
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
1353
- path: _path + ".reason",
1354
- expected: "string",
1355
- value: input.reason
1356
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
1357
- path: _path + ".userPlanningRequirements",
1358
- expected: "(string | undefined)",
1359
- value: input.userPlanningRequirements
1360
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1361
- if (false === __is(input)) {
1362
- errors = [];
1363
- _report = __typia_transform__validateReport._validateReport(errors);
1364
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1365
- path: _path + "",
1366
- expected: "IAutoBeApplicationProps",
1367
- value: input
1368
- })) && _vo0(input, _path + "", true) || _report(true, {
1369
- path: _path + "",
1370
- expected: "IAutoBeApplicationProps",
1371
- value: input
1372
- }))(input, "$input", true);
1373
- const success = 0 === errors.length;
1374
- return success ? {
1375
- success,
1376
- data: input
1377
- } : {
1378
- success,
1379
- errors,
1380
- data: input
1381
- };
1382
- }
1383
- return {
1384
- success: true,
1385
- data: input
1386
- };
1387
- }; })()
1388
- },
1389
- {
1390
- name: "realize",
1391
- parameters: {
1392
- type: "object",
1393
- properties: {
1394
- reason: {
1395
- type: "string",
1396
- title: "The reason of the function call",
1397
- description: "The reason of the function call."
1398
- },
1399
- userPlanningRequirements: {
1400
- type: "string",
1401
- description: "# Define prompts to translate user planning requirements into messages for internal agents\n\nThis prompt defines how to convert a user's planning-oriented requirements\ninto a structured message for an internal agent.\n\nAll content the user provides must be included in the message. However, if\nsome parts of the user's input are inappropriate or insufficient from a\nplanning standpoint, you are allowed to add **supplementary remarks**\u2014but\nonly under strict rules.\n\n# Supplementary Remark Rules\n\n1. **Definition** A supplementary remark is additional information that may\n differ from the user's original intent. Because of this, **you must\n clearly indicate that it is _not_ part of the user\u2019s thinking**.\n2. **When to Supplement**\n\n- If the user's input reveals a lack of technical understanding (e.g.,\n suggesting \"put all data into one table\"), and the plan is not an MVP or\n PoC, it's encouraged to make reasonable additions for a more scalable or\n robust structure.\n- If there are clear gaps in the user's planning logic, you may supplement\n the content to ensure completeness.\n\n3. **When Not to Supplement**\n\n- If the user's input is vague or ambiguous, **do not assume or add extra\n details**. Instead, it\u2019s better to ask the user follow-up questions to\n clarify their intent.\n- If the user has made no comment on design, **do not impose design-related\n decisions** (e.g., colors, fonts, tone). However, you may state\n explicitly that no design requirements were provided.\n- Generic advice like \"UX should be good\" can be omitted unless it adds\n value, as such goals are assumed in all services.\n\n# Style Guidelines\n\nThis prompt is delivered to the sub-agent, and several are created for\nparallel processing of the sub-agent. Additionally, there should be a guide\nto style, since sub-agents cannot create different styles of documents due\nto the disconnection of their conversations with each other.\n\nFor example, there should be a hyperlink to the previous document, the next\ndocument, before or after the document, or there should be no more than N\nheadings. The entire content of the document will have requirements, such\nas maintaining informal or formal language.\n\nThe style guide should include conventions for Markdown formatting elements\nsuch as headings, lists, and tables. Additionally, it should define\nexpectations regarding document length and overall composition. When\ndescribing structural guidelines, include a template to illustrate the\nrecommended format.\n\n# Limiting the volume of a document\n\nHowever, do not go beyond the volume guide; each agent only needs to create\none page because the agent receiving this document will be created as many\nas the number of pages."
1402
- }
1403
- },
1404
- required: [
1405
- "reason"
1406
- ],
1407
- description: "Current Type: {@link IAutoBeApplicationProps}",
1408
- additionalProperties: false
1409
- },
1410
- output: {
1411
- type: "object",
1412
- properties: {
1413
- type: {
1414
- type: "string",
1415
- "enum": [
1416
- "success",
1417
- "failure",
1418
- "exception",
1419
- "in-progress",
1420
- "prerequisites-not-satisfied"
1421
- ]
1422
- },
1423
- description: {
1424
- type: "string"
1425
- }
1426
- },
1427
- required: [
1428
- "type",
1429
- "description"
1430
- ],
1431
- description: "Current Type: {@link IAutoBeApplicationResult}",
1432
- additionalProperties: false
1433
- },
1434
- description: "Run realize agent.\n\nExecutes the Realize agent to implement the actual business logic for each\nAPI endpoint. This agent synthesizes all outputs from previous agents to\ngenerate fully functional service provider code.\n\n**PREREQUISITE**: Only call this function after the {@link interface}\nfunction has been successfully executed and API interfaces have been\ngenerated. The Realize agent requires the completed API interface\ndefinitions to implement the corresponding service logic. It also benefits\nfrom having test code available for validation. Without completed interface\ndesign, this function should NOT be called.\n\nThe agent will create service implementations with multiple validation\nlayers: TypeScript compiler feedback, runtime validation through test\nexecution, and quality optimization through internal review. The generated\ncode handles database interactions through Prisma, implements security and\nvalidation checks, and processes business rules according to\nspecifications.",
1435
- validate: (() => { const _io0 = input => "string" === typeof input.reason && (undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.reason || _report(_exceptionable, {
1436
- path: _path + ".reason",
1437
- expected: "string",
1438
- value: input.reason
1439
- }), undefined === input.userPlanningRequirements || "string" === typeof input.userPlanningRequirements || _report(_exceptionable, {
1440
- path: _path + ".userPlanningRequirements",
1441
- expected: "(string | undefined)",
1442
- value: input.userPlanningRequirements
1443
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1444
- if (false === __is(input)) {
1445
- errors = [];
1446
- _report = __typia_transform__validateReport._validateReport(errors);
1447
- ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1448
- path: _path + "",
1449
- expected: "IAutoBeApplicationProps",
1450
- value: input
1451
- })) && _vo0(input, _path + "", true) || _report(true, {
1452
- path: _path + "",
1453
- expected: "IAutoBeApplicationProps",
1454
- value: input
1455
- }))(input, "$input", true);
1456
- const success = 0 === errors.length;
1457
- return success ? {
1458
- success,
1459
- data: input
1460
- } : {
1461
- success,
1462
- errors,
1463
- data: input
1464
- };
1465
- }
1466
- return {
1467
- success: true,
1468
- data: input
1469
- };
1470
- }; })()
1471
- }
1472
- ]
1473
- },
1474
999
  };
1475
1000
  //# sourceMappingURL=createAutoBeApplication.js.map