concevent-ai-agent-sdk 3.5.1 → 3.6.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 (225) hide show
  1. package/README.md +6 -0
  2. package/dist/core/agent.d.ts.map +1 -1
  3. package/dist/core/agent.js +58 -38
  4. package/dist/core/agent.js.map +1 -1
  5. package/dist/src/core/agent.d.ts +35 -0
  6. package/dist/src/core/agent.d.ts.map +1 -0
  7. package/dist/src/core/agent.js +858 -0
  8. package/dist/src/core/agent.js.map +1 -0
  9. package/dist/src/core/diagram-builder.d.ts +110 -0
  10. package/dist/src/core/diagram-builder.d.ts.map +1 -0
  11. package/dist/src/core/diagram-builder.js +240 -0
  12. package/dist/src/core/diagram-builder.js.map +1 -0
  13. package/dist/src/core/embedding.d.ts +37 -0
  14. package/dist/src/core/embedding.d.ts.map +1 -0
  15. package/dist/src/core/embedding.js +97 -0
  16. package/dist/src/core/embedding.js.map +1 -0
  17. package/dist/src/core/errors.d.ts +48 -0
  18. package/dist/src/core/errors.d.ts.map +1 -0
  19. package/dist/src/core/errors.js +90 -0
  20. package/dist/src/core/errors.js.map +1 -0
  21. package/dist/src/core/index.d.ts +20 -0
  22. package/dist/src/core/index.d.ts.map +1 -0
  23. package/dist/src/core/index.js +12 -0
  24. package/dist/src/core/index.js.map +1 -0
  25. package/dist/src/core/logger.d.ts +27 -0
  26. package/dist/src/core/logger.d.ts.map +1 -0
  27. package/dist/src/core/logger.js +106 -0
  28. package/dist/src/core/logger.js.map +1 -0
  29. package/dist/src/core/middleware.d.ts +57 -0
  30. package/dist/src/core/middleware.d.ts.map +1 -0
  31. package/dist/src/core/middleware.js +127 -0
  32. package/dist/src/core/middleware.js.map +1 -0
  33. package/dist/src/core/openrouter-client.d.ts +13 -0
  34. package/dist/src/core/openrouter-client.d.ts.map +1 -0
  35. package/dist/src/core/openrouter-client.js +17 -0
  36. package/dist/src/core/openrouter-client.js.map +1 -0
  37. package/dist/src/core/openrouter-utils.d.ts +28 -0
  38. package/dist/src/core/openrouter-utils.d.ts.map +1 -0
  39. package/dist/src/core/openrouter-utils.js +227 -0
  40. package/dist/src/core/openrouter-utils.js.map +1 -0
  41. package/dist/src/core/orchestrator.d.ts +39 -0
  42. package/dist/src/core/orchestrator.d.ts.map +1 -0
  43. package/dist/src/core/orchestrator.js +258 -0
  44. package/dist/src/core/orchestrator.js.map +1 -0
  45. package/dist/src/core/response-format.d.ts +45 -0
  46. package/dist/src/core/response-format.d.ts.map +1 -0
  47. package/dist/src/core/response-format.js +111 -0
  48. package/dist/src/core/response-format.js.map +1 -0
  49. package/dist/src/core/result-storage.d.ts +130 -0
  50. package/dist/src/core/result-storage.d.ts.map +1 -0
  51. package/dist/src/core/result-storage.js +238 -0
  52. package/dist/src/core/result-storage.js.map +1 -0
  53. package/dist/src/core/retry.d.ts +76 -0
  54. package/dist/src/core/retry.d.ts.map +1 -0
  55. package/dist/src/core/retry.js +164 -0
  56. package/dist/src/core/retry.js.map +1 -0
  57. package/dist/src/core/session.d.ts +19 -0
  58. package/dist/src/core/session.d.ts.map +1 -0
  59. package/dist/src/core/session.js +47 -0
  60. package/dist/src/core/session.js.map +1 -0
  61. package/dist/src/core/string-similarity.d.ts +58 -0
  62. package/dist/src/core/string-similarity.d.ts.map +1 -0
  63. package/dist/src/core/string-similarity.js +103 -0
  64. package/dist/src/core/string-similarity.js.map +1 -0
  65. package/dist/src/core/summarization.d.ts +25 -0
  66. package/dist/src/core/summarization.d.ts.map +1 -0
  67. package/dist/src/core/summarization.js +101 -0
  68. package/dist/src/core/summarization.js.map +1 -0
  69. package/dist/src/core/tool-executor.d.ts +52 -0
  70. package/dist/src/core/tool-executor.d.ts.map +1 -0
  71. package/dist/src/core/tool-executor.js +388 -0
  72. package/dist/src/core/tool-executor.js.map +1 -0
  73. package/dist/src/core/tool-validation.d.ts +17 -0
  74. package/dist/src/core/tool-validation.d.ts.map +1 -0
  75. package/dist/src/core/tool-validation.js +134 -0
  76. package/dist/src/core/tool-validation.js.map +1 -0
  77. package/dist/src/index.d.ts +20 -0
  78. package/dist/src/index.d.ts.map +1 -0
  79. package/dist/src/index.js +27 -0
  80. package/dist/src/index.js.map +1 -0
  81. package/dist/src/tools/bash-output.d.ts +19 -0
  82. package/dist/src/tools/bash-output.d.ts.map +1 -0
  83. package/dist/src/tools/bash-output.js +50 -0
  84. package/dist/src/tools/bash-output.js.map +1 -0
  85. package/dist/src/tools/bash.d.ts +25 -0
  86. package/dist/src/tools/bash.d.ts.map +1 -0
  87. package/dist/src/tools/bash.js +82 -0
  88. package/dist/src/tools/bash.js.map +1 -0
  89. package/dist/src/tools/edit.d.ts +28 -0
  90. package/dist/src/tools/edit.d.ts.map +1 -0
  91. package/dist/src/tools/edit.js +97 -0
  92. package/dist/src/tools/edit.js.map +1 -0
  93. package/dist/src/tools/glob.d.ts +25 -0
  94. package/dist/src/tools/glob.d.ts.map +1 -0
  95. package/dist/src/tools/glob.js +88 -0
  96. package/dist/src/tools/glob.js.map +1 -0
  97. package/dist/src/tools/grep.d.ts +43 -0
  98. package/dist/src/tools/grep.d.ts.map +1 -0
  99. package/dist/src/tools/grep.js +290 -0
  100. package/dist/src/tools/grep.js.map +1 -0
  101. package/dist/src/tools/index.d.ts +88 -0
  102. package/dist/src/tools/index.d.ts.map +1 -0
  103. package/dist/src/tools/index.js +144 -0
  104. package/dist/src/tools/index.js.map +1 -0
  105. package/dist/src/tools/kill-bash.d.ts +19 -0
  106. package/dist/src/tools/kill-bash.d.ts.map +1 -0
  107. package/dist/src/tools/kill-bash.js +49 -0
  108. package/dist/src/tools/kill-bash.js.map +1 -0
  109. package/dist/src/tools/read-result.d.ts +31 -0
  110. package/dist/src/tools/read-result.d.ts.map +1 -0
  111. package/dist/src/tools/read-result.js +77 -0
  112. package/dist/src/tools/read-result.js.map +1 -0
  113. package/dist/src/tools/read.d.ts +31 -0
  114. package/dist/src/tools/read.d.ts.map +1 -0
  115. package/dist/src/tools/read.js +164 -0
  116. package/dist/src/tools/read.js.map +1 -0
  117. package/dist/src/tools/task.d.ts +25 -0
  118. package/dist/src/tools/task.d.ts.map +1 -0
  119. package/dist/src/tools/task.js +71 -0
  120. package/dist/src/tools/task.js.map +1 -0
  121. package/dist/src/tools/todo-write.d.ts +89 -0
  122. package/dist/src/tools/todo-write.d.ts.map +1 -0
  123. package/dist/src/tools/todo-write.js +197 -0
  124. package/dist/src/tools/todo-write.js.map +1 -0
  125. package/dist/src/tools/types.d.ts +160 -0
  126. package/dist/src/tools/types.d.ts.map +1 -0
  127. package/dist/src/tools/types.js +25 -0
  128. package/dist/src/tools/types.js.map +1 -0
  129. package/dist/src/tools/utils/index.d.ts +3 -0
  130. package/dist/src/tools/utils/index.d.ts.map +1 -0
  131. package/dist/src/tools/utils/index.js +3 -0
  132. package/dist/src/tools/utils/index.js.map +1 -0
  133. package/dist/src/tools/utils/path.d.ts +40 -0
  134. package/dist/src/tools/utils/path.d.ts.map +1 -0
  135. package/dist/src/tools/utils/path.js +146 -0
  136. package/dist/src/tools/utils/path.js.map +1 -0
  137. package/dist/src/tools/utils/shell.d.ts +49 -0
  138. package/dist/src/tools/utils/shell.d.ts.map +1 -0
  139. package/dist/src/tools/utils/shell.js +232 -0
  140. package/dist/src/tools/utils/shell.js.map +1 -0
  141. package/dist/src/tools/write.d.ts +22 -0
  142. package/dist/src/tools/write.d.ts.map +1 -0
  143. package/dist/src/tools/write.js +70 -0
  144. package/dist/src/tools/write.js.map +1 -0
  145. package/dist/src/types/config.d.ts +463 -0
  146. package/dist/src/types/config.d.ts.map +1 -0
  147. package/dist/src/types/config.js +18 -0
  148. package/dist/src/types/config.js.map +1 -0
  149. package/dist/src/types/embedding.d.ts +65 -0
  150. package/dist/src/types/embedding.d.ts.map +1 -0
  151. package/dist/src/types/embedding.js +5 -0
  152. package/dist/src/types/embedding.js.map +1 -0
  153. package/dist/src/types/events.d.ts +151 -0
  154. package/dist/src/types/events.d.ts.map +1 -0
  155. package/dist/src/types/events.js +8 -0
  156. package/dist/src/types/events.js.map +1 -0
  157. package/dist/src/types/index.d.ts +9 -0
  158. package/dist/src/types/index.d.ts.map +1 -0
  159. package/dist/src/types/index.js +3 -0
  160. package/dist/src/types/index.js.map +1 -0
  161. package/dist/src/types/messages.d.ts +64 -0
  162. package/dist/src/types/messages.d.ts.map +1 -0
  163. package/dist/src/types/messages.js +2 -0
  164. package/dist/src/types/messages.js.map +1 -0
  165. package/dist/src/types/middleware.d.ts +134 -0
  166. package/dist/src/types/middleware.d.ts.map +1 -0
  167. package/dist/src/types/middleware.js +2 -0
  168. package/dist/src/types/middleware.js.map +1 -0
  169. package/dist/src/types/orchestrator.d.ts +123 -0
  170. package/dist/src/types/orchestrator.d.ts.map +1 -0
  171. package/dist/src/types/orchestrator.js +2 -0
  172. package/dist/src/types/orchestrator.js.map +1 -0
  173. package/dist/tests/agent.test.d.ts +2 -0
  174. package/dist/tests/agent.test.d.ts.map +1 -0
  175. package/dist/tests/agent.test.js +3977 -0
  176. package/dist/tests/agent.test.js.map +1 -0
  177. package/dist/tests/builtin-tools.test.d.ts +2 -0
  178. package/dist/tests/builtin-tools.test.d.ts.map +1 -0
  179. package/dist/tests/builtin-tools.test.js +952 -0
  180. package/dist/tests/builtin-tools.test.js.map +1 -0
  181. package/dist/tests/embedding.test.d.ts +2 -0
  182. package/dist/tests/embedding.test.d.ts.map +1 -0
  183. package/dist/tests/embedding.test.js +377 -0
  184. package/dist/tests/embedding.test.js.map +1 -0
  185. package/dist/tests/mocks/tools.d.ts +42 -0
  186. package/dist/tests/mocks/tools.d.ts.map +1 -0
  187. package/dist/tests/mocks/tools.js +227 -0
  188. package/dist/tests/mocks/tools.js.map +1 -0
  189. package/dist/tests/orchestrator.test.d.ts +2 -0
  190. package/dist/tests/orchestrator.test.d.ts.map +1 -0
  191. package/dist/tests/orchestrator.test.js +713 -0
  192. package/dist/tests/orchestrator.test.js.map +1 -0
  193. package/dist/tests/result-storage.test.d.ts +2 -0
  194. package/dist/tests/result-storage.test.d.ts.map +1 -0
  195. package/dist/tests/result-storage.test.js +346 -0
  196. package/dist/tests/result-storage.test.js.map +1 -0
  197. package/dist/tests/retry.test.d.ts +2 -0
  198. package/dist/tests/retry.test.d.ts.map +1 -0
  199. package/dist/tests/retry.test.js +347 -0
  200. package/dist/tests/retry.test.js.map +1 -0
  201. package/dist/tests/shell-utils.test.d.ts +2 -0
  202. package/dist/tests/shell-utils.test.d.ts.map +1 -0
  203. package/dist/tests/shell-utils.test.js +251 -0
  204. package/dist/tests/shell-utils.test.js.map +1 -0
  205. package/dist/tests/string-similarity.test.d.ts +2 -0
  206. package/dist/tests/string-similarity.test.d.ts.map +1 -0
  207. package/dist/tests/string-similarity.test.js +307 -0
  208. package/dist/tests/string-similarity.test.js.map +1 -0
  209. package/dist/tests/task-tools-integration.test.d.ts +2 -0
  210. package/dist/tests/task-tools-integration.test.d.ts.map +1 -0
  211. package/dist/tests/task-tools-integration.test.js +362 -0
  212. package/dist/tests/task-tools-integration.test.js.map +1 -0
  213. package/dist/tests/tool-validation.test.d.ts +2 -0
  214. package/dist/tests/tool-validation.test.d.ts.map +1 -0
  215. package/dist/tests/tool-validation.test.js +561 -0
  216. package/dist/tests/tool-validation.test.js.map +1 -0
  217. package/dist/types/config.d.ts +11 -0
  218. package/dist/types/config.d.ts.map +1 -1
  219. package/dist/types/config.js +2 -0
  220. package/dist/types/config.js.map +1 -1
  221. package/dist/types/index.d.ts +1 -1
  222. package/dist/types/index.d.ts.map +1 -1
  223. package/dist/types/index.js +1 -1
  224. package/dist/types/index.js.map +1 -1
  225. package/package.json +2 -2
package/README.md CHANGED
@@ -167,6 +167,7 @@ const agent = createAgent(config: AgentConfig): Agent;
167
167
  | `maxIterations` | `number` | ❌ | `50` | Maximum tool execution iterations per chat |
168
168
  | `stream` | `boolean` | ❌ | `true` | Enable streaming responses with delta callbacks |
169
169
  | `postVerification` | `boolean` | ❌ | `false` | Enable post-response verification (see below) |
170
+ | `maxVerificationAttempts` | `number` | ❌ | `5` | Max consecutive verification failures before graceful fallback |
170
171
  | `summarization` | `SummarizationConfig` | ❌ | `{ enabled: true }` | Summarization settings |
171
172
  | `parallelToolExecution` | `ParallelExecutionConfig` | ❌ | `{ maxConcurrency: 5 }` | Parallel tool execution settings |
172
173
  | `errorMessages` | `ErrorMessages` | ❌ | Default messages | Custom error messages |
@@ -230,6 +231,9 @@ createAgent({ postVerification: false }); // Or omit entirely
230
231
 
231
232
  // Post-verification enabled - suppresses deltas until verified
232
233
  createAgent({ postVerification: true });
234
+
235
+ // Custom verification attempt limit (default: 5)
236
+ createAgent({ postVerification: true, maxVerificationAttempts: 3 });
233
237
  ```
234
238
 
235
239
  **Behavior comparison:**
@@ -244,6 +248,8 @@ createAgent({ postVerification: true });
244
248
  - An additional API call verifies the response addresses all requirements
245
249
  - Callbacks `onVerificationStart`, `onVerificationPassed`, `onVerificationFailed` are fired
246
250
  - If verification fails, the agent continues iterating to address missing requirements
251
+ - After `maxVerificationAttempts` consecutive failures (without tool calls), the agent returns the last response as a graceful fallback to prevent infinite loops
252
+ - The failure counter resets whenever tool calls are executed (indicating progress)
247
253
 
248
254
  **Breaking change note:** In versions prior to v3.4, verification was always enabled. Starting from v3.4, it is disabled by default for improved performance and simpler streaming behavior.
249
255
 
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,aAAa,EAOb,WAAW,EAGZ,MAAM,mBAAmB,CAAC;AAgK3B;;;;GAIG;AACH,MAAM,WAAW,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC1D;;;;;;;;;;;;;;;;;;OAkBG;IACH,IAAI,CACF,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,mBAAmB,CAAC,WAAW,CAAC,EACzC,SAAS,CAAC,EAAE,cAAc,EAC1B,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,WAAW,CAAC,CAAC;IACxB,KAAK,IAAI,IAAI,CAAC;IACd,UAAU,IAAI,WAAW,EAAE,CAAC;IAC5B,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IACzC,YAAY,IAAI,IAAI,CAAC;IACrB,aAAa,IAAI,aAAa,CAAC;CAChC;AAED,wBAAgB,WAAW,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC,GAC/B,KAAK,CAAC,WAAW,CAAC,CA6/BpB"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,aAAa,EAOb,WAAW,EAGZ,MAAM,mBAAmB,CAAC;AAiK3B;;;;GAIG;AACH,MAAM,WAAW,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC1D;;;;;;;;;;;;;;;;;;OAkBG;IACH,IAAI,CACF,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,mBAAmB,CAAC,WAAW,CAAC,EACzC,SAAS,CAAC,EAAE,cAAc,EAC1B,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,WAAW,CAAC,CAAC;IACxB,KAAK,IAAI,IAAI,CAAC;IACd,UAAU,IAAI,WAAW,EAAE,CAAC;IAC5B,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IACzC,YAAY,IAAI,IAAI,CAAC;IACrB,aAAa,IAAI,aAAa,CAAC;CAChC;AAED,wBAAgB,WAAW,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC,GAC/B,KAAK,CAAC,WAAW,CAAC,CAqhCpB"}
@@ -1,5 +1,5 @@
1
1
  import { z } from 'zod';
2
- import { DEFAULT_MAX_CONCURRENCY, DEFAULT_TOOL_EXECUTION_TIMEOUT_MS, DEFAULT_API_REQUEST_TIMEOUT_MS, } from '../types/index.js';
2
+ import { DEFAULT_MAX_CONCURRENCY, DEFAULT_TOOL_EXECUTION_TIMEOUT_MS, DEFAULT_API_REQUEST_TIMEOUT_MS, DEFAULT_MAX_VERIFICATION_ATTEMPTS, } from '../types/index.js';
3
3
  import { createOpenRouterClient } from './openrouter-client.js';
4
4
  import { convertChatMessagesToOpenAI, convertFunctionDeclarationsToTools, convertOpenAIToolCallsToFunctionCalls, mapOpenAIUsageToMetadata, normalizeReasoning, createSystemMessage, createUserMessage, createAssistantMessage, } from './openrouter-utils.js';
5
5
  import { ToolExecutor } from './tool-executor.js';
@@ -408,6 +408,8 @@ Note: All tasks must be marked as completed or cancelled before finishing.`;
408
408
  // When enabled, text deltas are suppressed until verification passes
409
409
  // When disabled (default), text deltas are streamed immediately
410
410
  const postVerificationEnabled = config.postVerification === true;
411
+ const maxVerificationAttempts = config.maxVerificationAttempts ?? DEFAULT_MAX_VERIFICATION_ATTEMPTS;
412
+ let consecutiveVerificationFailures = 0;
411
413
  // Build the user message with optional multimodal content
412
414
  const userChatMessage = {
413
415
  role: 'user',
@@ -478,6 +480,8 @@ Note: All tasks must be marked as completed or cancelled before finishing.`;
478
480
  callbacks.onThinking?.(thinking, thinkingDetails);
479
481
  }
480
482
  if (toolCalls.length > 0) {
483
+ // Reset verification failure counter - tool calls indicate progress
484
+ consecutiveVerificationFailures = 0;
481
485
  const functionCalls = convertOpenAIToolCallsToFunctionCalls(toolCalls);
482
486
  logger.toolCallStart(functionCalls);
483
487
  callbacks.onToolCallStart?.(functionCalls.map((fc) => ({ id: fc.id, name: fc.name, args: fc.args })));
@@ -576,45 +580,61 @@ Note: All tasks must be marked as completed or cancelled before finishing.`;
576
580
  verificationResult.tasksComplete === false &&
577
581
  verificationResult.incompleteTasks?.length;
578
582
  if (hasIncompleteRequirements || hasIncompleteTasks) {
579
- const missingParts = [];
580
- if (verificationResult?.missing?.length) {
581
- missingParts.push(`Missing requirements: ${verificationResult.missing.join(', ')}`);
583
+ consecutiveVerificationFailures++;
584
+ // Check if we've exceeded the verification attempt limit
585
+ if (consecutiveVerificationFailures >= maxVerificationAttempts) {
586
+ console.log(`[AI-Agent-SDK] ⚠️ Verification limit reached (${consecutiveVerificationFailures}/${maxVerificationAttempts}). ` +
587
+ `Returning response as-is.`);
588
+ // Add note about limit reached to history
589
+ const limitReachedMessage = {
590
+ role: 'system',
591
+ content: `[Verification Limit Reached - ${consecutiveVerificationFailures} consecutive failures without tool calls. Returning last response.]`,
592
+ timestamp: new Date(),
593
+ };
594
+ currentHistory.push(limitReachedMessage);
595
+ // Fall through to return the current response (same as verification passed)
582
596
  }
583
- if (verificationResult?.incompleteTasks?.length) {
584
- missingParts.push(`Incomplete tasks: ${verificationResult.incompleteTasks.join(', ')}`);
597
+ else {
598
+ const missingParts = [];
599
+ if (verificationResult?.missing?.length) {
600
+ missingParts.push(`Missing requirements: ${verificationResult.missing.join(', ')}`);
601
+ }
602
+ if (verificationResult?.incompleteTasks?.length) {
603
+ missingParts.push(`Incomplete tasks: ${verificationResult.incompleteTasks.join(', ')}`);
604
+ }
605
+ const failureReason = missingParts.join('; ');
606
+ console.log(`[AI-Agent-SDK] 🔍 Verification found issues: ${failureReason}`);
607
+ // Signal that verification failed - response will be regenerated
608
+ callbacks.onVerificationFailed?.({ reason: failureReason });
609
+ // Add the assistant response to history (the draft that failed verification)
610
+ const partialAssistantMessage = {
611
+ role: 'assistant',
612
+ content: currentResponseText,
613
+ timestamp: new Date(),
614
+ reasoning: thinking,
615
+ reasoning_details: thinkingDetails,
616
+ reasoningTokenCount: latestUsage.reasoningTokenCount,
617
+ };
618
+ currentHistory.push(partialAssistantMessage);
619
+ // Add verification result as system message
620
+ const verificationSystemMessage = {
621
+ role: 'system',
622
+ content: JSON.stringify(verificationResult),
623
+ timestamp: new Date(),
624
+ };
625
+ currentHistory.push(verificationSystemMessage);
626
+ // Build continuation message
627
+ const continuationParts = [];
628
+ if (verificationResult?.missing?.length) {
629
+ continuationParts.push(`The following requirements are still missing: ${verificationResult.missing.join(', ')}`);
630
+ }
631
+ if (verificationResult?.incompleteTasks?.length) {
632
+ continuationParts.push(`The following tasks are still incomplete (must be completed or cancelled): ${verificationResult.incompleteTasks.join(', ')}`);
633
+ }
634
+ currentMessage = `Continue. ${continuationParts.join('. ')}`;
635
+ iteration++;
636
+ continue;
585
637
  }
586
- const failureReason = missingParts.join('; ');
587
- console.log(`[AI-Agent-SDK] 🔍 Verification found issues: ${failureReason}`);
588
- // Signal that verification failed - response will be regenerated
589
- callbacks.onVerificationFailed?.({ reason: failureReason });
590
- // Add the assistant response to history (the draft that failed verification)
591
- const partialAssistantMessage = {
592
- role: 'assistant',
593
- content: currentResponseText,
594
- timestamp: new Date(),
595
- reasoning: thinking,
596
- reasoning_details: thinkingDetails,
597
- reasoningTokenCount: latestUsage.reasoningTokenCount,
598
- };
599
- currentHistory.push(partialAssistantMessage);
600
- // Add verification result as system message
601
- const verificationSystemMessage = {
602
- role: 'system',
603
- content: JSON.stringify(verificationResult),
604
- timestamp: new Date(),
605
- };
606
- currentHistory.push(verificationSystemMessage);
607
- // Build continuation message
608
- const continuationParts = [];
609
- if (verificationResult?.missing?.length) {
610
- continuationParts.push(`The following requirements are still missing: ${verificationResult.missing.join(', ')}`);
611
- }
612
- if (verificationResult?.incompleteTasks?.length) {
613
- continuationParts.push(`The following tasks are still incomplete (must be completed or cancelled): ${verificationResult.incompleteTasks.join(', ')}`);
614
- }
615
- currentMessage = `Continue. ${continuationParts.join('. ')}`;
616
- iteration++;
617
- continue;
618
638
  }
619
639
  // Verification passed (or null treated as passed)
620
640
  callbacks.onVerificationPassed?.();
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAkBxB,OAAO,EACL,uBAAuB,EACvB,iCAAiC,EACjC,8BAA8B,EAC9B,iCAAiC,GAClC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EACL,2BAA2B,EAC3B,kCAAkC,EAClC,qCAAqC,EACrC,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,SAAS,GACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAYlC;;;;;;;;;;;GAWG;AACH,SAAS,wBAAwB,CAC/B,MAA6D;IAE7D,kFAAkF;IAClF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,sCAAsC;IACtC,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,6CAA6C;IAC7C,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED,4CAA4C;IAC5C,MAAM,UAAU,GAA8B,EAAE,CAAC;IAEjD,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACjC,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IACtC,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IACpC,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACnC,UAAU,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC;IAC3C,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACjC,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IACtC,CAAC;IAED,gFAAgF;IAChF,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;IACrB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACvC,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACrC,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,mBAAmB,GAAG;;;;;;;;;;;0GAW8E,CAAC;AAsD3G,MAAM,UAAU,WAAW,CACzB,MAAgC;IAEhC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACzC,CAAC;IAED,gCAAgC;IAChC,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,EAAE,YAAY,IAAI,8BAA8B,CAAC;IACzF,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,EAAE,eAAe,IAAI,iCAAiC,CAAC;IAElG,MAAM,MAAM,GAAG,sBAAsB,CAAC;QACpC,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,OAAO,EAAE,iBAAiB;KAC3B,CAAC,CAAC;IAEH,uDAAuD;IACvD,MAAM,oBAAoB,GAAG,MAAM,CAAC,aAAa,EAAE,OAAO,KAAK,KAAK,CAAC;IACrE,MAAM,aAAa,GAAG,oBAAoB,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjG,qEAAqE;IACrE,MAAM,kBAAkB,GAAG,wBAAwB,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC/E,MAAM,qBAAqB,GAAG,MAAM,CAAC,SAAS,EAAE,gCAAgC,KAAK,KAAK,CAAC;IAE3F,uEAAuE;IACvE,IAAI,gBAA4C,CAAC;IAEjD,mFAAmF;IACnF,MAAM,SAAS,GAAkC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC5E,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,QAAQ,CACxD,IAAI,CAAC,WAAW,CAAC,IAA8D,CAChF,CAAC;QACF,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CACT,uBAAuB,IAAI,CAAC,WAAW,CAAC,IAAI,uEAAuE,CACpH,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,UAAU,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,sDAAsD;IACtD,IAAI,aAAa,EAAE,CAAC;QAClB,SAAS,CAAC,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAgC,CAAC,CAAC;IACrF,CAAC;IAED,iEAAiE;IACjE,MAAM,iBAAiB,GAAkC;QACvD,mBAAmB,CAAC;YAClB,OAAO,EAAE,kBAAkB,CAAC,UAAU,EAAE;YACxC,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,CAAC,IAAI,CAAC;SACzE,CAAgC;QACjC,kBAAkB,CAAC;YACjB,OAAO,EAAE,kBAAkB,CAAC,UAAU,EAAE;SACzC,CAAgC;KAClC,CAAC;IAEF,gEAAgE;IAChE,MAAM,QAAQ,GAAkC,CAAC,GAAG,SAAS,EAAE,GAAG,iBAAiB,CAAC,CAAC;IAErF,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;IACnC,MAAM,mBAAmB,GAAG,0BAA0B,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAE7E,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,sBAAsB,CAAC;IACrE,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,GAAG,CAAC;IAC9C,wEAAwE;IACxE,MAAM,mBAAmB,GAAG,wBAAwB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACvE,MAAM,kBAAkB,GACtB,MAAM,CAAC,aAAa,EAAE,kBAAkB,IAAI,4BAA4B,CAAC;IAC3E,MAAM,oBAAoB,GAAG,MAAM,CAAC,aAAa,EAAE,OAAO,IAAI,IAAI,CAAC;IACnE,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC;IAC/C,MAAM,cAAc,GAAG,MAAM,CAAC,qBAAqB,EAAE,cAAc,IAAI,uBAAuB,CAAC;IAC/F,MAAM,oBAAoB,GAAG,MAAM,CAAC,cAAc,CAAC;IACnD,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;IACvE,MAAM,WAAW,GAAG,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAErE,mEAAmE;IACnE,MAAM,0BAA0B,GAAG,mBAAmB,CAAC;QACrD,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,kBAAkB;QAC1B,IAAI,EAAE,yBAAyB;KAChC,CAAC,CAAC;IAEH,KAAK,UAAU,qBAAqB,CAClC,QAA8D,EAC9D,KAAmD,EACnD,WAAyB;QAEzB,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YACpD,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,QAAQ;YACR,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAC3C,WAAW;YACX,GAAG,CAAC,mBAAmB,IAAI,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;YAC9D,eAAe,EAAE,oBAAoB;SACtC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,UAAU,qBAAqB,CAClC,QAA8D,EAC9D,KAAmD,EACnD,WAAyB;QASzB,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;QAE3E,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC;QACtC,CAAC;QAED,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;QACrD,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,UAAU,CAAC,qBAAqB,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,IAAI,EAAE,CAAC;QACnD,MAAM,SAAS,GAAG,eAAe,CAAC,UAAU,IAAI,EAAE,CAAC;QACnD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAE7B,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,mBAAmB,EAAE,eAAe,EAAE,GAAG,kBAAkB,CACvF,eAAsD,CAAC,SAA+B,EACtF,eAAsD,CAAC,iBAE3C,CACd,CAAC;QAEF,IAAI,CAAC,YAAY,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACzC,CAAC;QAED,OAAO;YACL,OAAO,EAAE,YAAY;YACrB,SAAS;YACT,QAAQ;YACR,eAAe;YACf,KAAK;YACL,SAAS,EAAE,QAAQ,CAAC,EAAE;SACvB,CAAC;IACJ,CAAC;IAED,SAAS,uBAAuB,CAC9B,GAAiC,EACjC,KAAuF;QAEvF,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC;QACzE,IAAI,KAAK,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC;QACrC,IAAI,KAAK,CAAC,QAAQ,EAAE,IAAI;YAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;QACvE,IAAI,KAAK,CAAC,QAAQ,EAAE,SAAS;YAAE,QAAQ,CAAC,QAAQ,CAAC,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;QACvF,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED,SAAS,iCAAiC,CACxC,GAAiC;QAEjC,MAAM,SAAS,GAA4D,EAAE,CAAC;QAC9E,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC;YAC9B,IAAI,OAAO,CAAC,EAAE,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,SAAS,CAAC,IAAI,CAAC;oBACb,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,IAAI,EAAE,UAAU;oBAChB,QAAQ,EAAE;wBACR,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;wBAC3B,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,SAAS;qBACtC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,UAAU,8BAA8B,CAC3C,QAA8D,EAC9D,KAAmD,EACnD,SAAyB,EACzB,WAAyB,EACzB,qBAA8B,KAAK;QAEnC,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;YACzB,MAAM,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YAClD,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,QAAQ;YACR,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAC3C,WAAW;YACX,GAAG,CAAC,mBAAmB,IAAI,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;YAC9D,MAAM,EAAE,IAAI;YACZ,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE;YACvC,eAAe,EAAE,oBAAoB;SACtC,CAAC,CAAC;QAEH,IAAI,kBAAkB,GAAG,EAAE,CAAC;QAC5B,MAAM,2BAA2B,GAAsB,EAAE,CAAC;QAC1D,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAA2B,CAAC;QAChE,IAAI,UAA8C,CAAC;QACnD,IAAI,SAAS,GAAG,EAAE,CAAC;QAEnB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACjC,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;gBACzB,MAAM,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAAC;YAC1C,CAAC;YAED,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;gBACb,SAAS,GAAG,KAAK,CAAC,EAAE,CAAC;YACvB,CAAC;YAED,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;YACtC,IAAI,CAAC,KAAK;gBAAE,SAAS;YAErB,MAAM,QAAQ,GAAG,KAA2C,CAAC;YAC7D,IAAI,QAAQ,CAAC,iBAAiB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAC5E,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,iBAAsC,EAAE,CAAC;oBACrE,4DAA4D;oBAC5D,IAAI,CAAC,kBAAkB,EAAE,CAAC;wBACxB,SAAS,CAAC,gBAAgB,EAAE,CAAC,MAAM,CAAC,CAAC;oBACvC,CAAC;oBACD,MAAM,aAAa,GAAG,2BAA2B,CAAC,SAAS,CACzD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,CAChC,CAAC;oBACF,IAAI,aAAa,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;wBAC3D,MAAM,QAAQ,GAAG,2BAA2B,CAAC,aAAa,CAAC,CAAC;wBAC5D,2BAA2B,CAAC,aAAa,CAAC,GAAG;4BAC3C,GAAG,QAAQ;4BACX,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;yBAClD,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC3C,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,0DAA0D;gBAC1D,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,SAAS,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC5C,CAAC;gBACD,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC;YACtC,CAAC;YAED,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBACrB,KAAK,MAAM,aAAa,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;oBAC7C,uBAAuB,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;YAED,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAChB,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,iCAAiC,CAAC,oBAAoB,CAAC,CAAC;QAE1E,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,kBAAkB,CAClD,SAAS,EACT,2BAA2B,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,SAAS,CACjF,CAAC;QAEF,IAAI,CAAC,kBAAkB,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClD,MAAM,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACzC,CAAC;QAED,OAAO;YACL,OAAO,EAAE,kBAAkB;YAC3B,SAAS;YACT,QAAQ;YACR,eAAe,EACb,2BAA2B,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,SAAS;YAClF,KAAK,EAAE,UAAU;YACjB,SAAS;SACV,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,UAAU,mBAAmB,CAChC,QAA8D,EAC9D,YAA0B;QAE1B,IAAI,CAAC;YACH,qFAAqF;YACrF,IAAI,qBAAqB,EAAE,CAAC;gBAC1B,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAAC,kBAAkB,EAAE,CAAC;gBAEtE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,8EAA8E;oBAC9E,OAAO;wBACL,QAAQ,EAAE,KAAK;wBACf,OAAO,EAAE,EAAE;wBACX,aAAa,EAAE,KAAK;wBACpB,eAAe,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;qBACnF,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,4CAA4C;YAC5C,IAAI,WAAW,GAAG,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,QAAQ,EAAE,CAAC;YACrD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,WAAW,GAAG,iDAAiD,CAAC;YAClE,CAAC;YAED,MAAM,+BAA+B,GAAG;gBACtC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kEAAkE;gBAC5F,mBAAmB,CAChB,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAyB,CAAC,OAAO,GAAG,WAAW,CAC7E;aACF,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;gBACpD,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,QAAQ,EAAE,+BAA+B;gBACzC,WAAW,EAAE,CAAC,EAAE,4CAA4C;gBAC5D,eAAe,EAAE,0BAA0B;aAC5C,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC;YAC3D,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;YAC5E,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;gBAC7B,0EAA0E;gBAC1E,OAAO;oBACL,GAAG,gBAAgB,CAAC,IAAI;oBACxB,aAAa,EAAE,IAAI;iBACpB,CAAC;YACJ,CAAC;YAED,yDAAyD;YACzD,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;YACxD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,oDAAoD;YACpD,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,UAAU,uBAAuB;QACpC,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,QAAQ,EAAE,CAAC;QAClD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,UAAU,EAAE,CAAC;QACtD,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAE1F,MAAM,OAAO,GAAG;EAClB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;;WAEX,OAAO,CAAC,OAAO,aAAa,OAAO,CAAC,WAAW,iBAAiB,OAAO,CAAC,SAAS,eAAe,OAAO,CAAC,SAAS;;2EAEjD,CAAC;QAExE,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,SAAS,iBAAiB,CAAC,IAAY,EAAE,MAAqB;QAC5D,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,KAAK,GAAkB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAEtD,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE;oBACT,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,MAAM,EAAE,GAAG,CAAC,MAAM;iBACnB;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,UAAU,qBAAqB,CAClC,WAAmB,EACnB,mBAAkC,EAClC,OAAyC,EACzC,SAAyB,EACzB,eAAwB,EACxB,MAAqB;QAErB,MAAM,KAAK,GAAG,kCAAkC,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAErF,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;QAE3F,IAAI,cAAc,GAAG,CAAC,GAAG,mBAAmB,CAAC,CAAC;QAC9C,IAAI,cAAc,GAAG,WAAW,CAAC;QACjC,IAAI,aAAa,GAAG,MAAM,CAAC,CAAC,sEAAsE;QAClG,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,WAAW,GAAkB,EAAE,CAAC;QACpC,IAAI,eAAmC,CAAC;QACxC,IAAI,UAAU,GAAG,KAAK,CAAC;QAEvB,0DAA0D;QAC1D,qEAAqE;QACrE,gEAAgE;QAChE,MAAM,uBAAuB,GAAG,MAAM,CAAC,gBAAgB,KAAK,IAAI,CAAC;QACjE,MAAM,uBAAuB,GAC3B,MAAM,CAAC,uBAAuB,IAAI,iCAAiC,CAAC;QACtE,IAAI,+BAA+B,GAAG,CAAC,CAAC;QAExC,0DAA0D;QAC1D,MAAM,eAAe,GAAgB;YACnC,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,WAAW;YACpB,YAAY,EAAE,iBAAiB,CAAC,WAAW,EAAE,MAAM,CAAC;YACpD,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;QACF,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAErC,OAAO,SAAS,GAAG,aAAa,EAAE,CAAC;YACjC,IAAI,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;gBACjC,SAAS,CAAC,SAAS,EAAE,EAAE,CAAC;gBACxB,MAAM,IAAI,UAAU,CAAC,iBAAiB,CAAC,CAAC;YAC1C,CAAC;YAED,SAAS,CAAC,gBAAgB,EAAE,CAAC,SAAS,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;YAC3D,MAAM,CAAC,SAAS,CAAC,SAAS,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;YAE/C,8EAA8E;YAC9E,yFAAyF;YACzF,MAAM,oBAAoB,GACxB,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,KAAK,MAAM;gBACxD,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC7B,CAAC,CAAC,cAAc,CAAC;YAErB,6FAA6F;YAC7F,MAAM,aAAa,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YAElE,4CAA4C;YAC5C,MAAM,kBAAkB,GAAG,MAAM,uBAAuB,EAAE,CAAC;YAE3D,MAAM,QAAQ,GAAyD;gBACrE,GAAG,cAAc;gBACjB,sBAAsB,CACpB,8EAA8E,CAC/E;gBACD,GAAG,2BAA2B,CAAC,oBAAoB,CAAC;gBACpD,iBAAiB,CAAC,cAAc,EAAE,aAAa,CAAC;aACjD,CAAC;YAEF,6DAA6D;YAC7D,IAAI,kBAAkB,EAAE,CAAC;gBACvB,gDAAgD;gBAChD,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,kBAAkB,CAAC,CAAC;YAC9D,CAAC;YAED,IAAI,eAAe,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;gBACvC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC,CAAC;YACtD,CAAC;YAED,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAEnE,0EAA0E;YAC1E,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;YAEnD,MAAM,EACJ,OAAO,EAAE,YAAY,EACrB,SAAS,EACT,QAAQ,EACR,eAAe,EACf,KAAK,EACL,SAAS,GACV,GAAG,gBAAgB;gBAClB,CAAC,CAAC,MAAM,8BAA8B,CAClC,QAAQ,EACR,KAAK,EACL,SAAS,EACT,OAAO,CAAC,WAAW,EACnB,kBAAkB,CACnB;gBACH,CAAC,CAAC,MAAM,qBAAqB,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;YAEtE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;YAEjE,eAAe,GAAG,SAAS,CAAC;YAE5B,IAAI,KAAK,EAAE,CAAC;gBACV,WAAW,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;gBAC9C,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC/B,SAAS,CAAC,aAAa,EAAE,CAAC,WAAW,CAAC,CAAC;gBACvC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;gBAEtC,IACE,oBAAoB;oBACpB,WAAW,CAAC,eAAe;oBAC3B,eAAe,CAAC,WAAW,CAAC,eAAe,EAAE,kBAAkB,CAAC,EAChE,CAAC;oBACD,SAAS,CAAC,oBAAoB,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;oBACxD,MAAM,CAAC,kBAAkB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;oBAEjD,MAAM,aAAa,GAAG,MAAM,qBAAqB,CAC/C,cAAc,EACd,MAAM,EACN,MAAM,CAAC,aAAa,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK,EAC3C,MAAM,CAAC,aAAa,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EACzC,mBAAmB,EACnB,WAAW,EACX,OAAO,CAAC,WAAW,CACpB,CAAC;oBAEF,IAAI,CAAC,aAAa,CAAC,KAAK,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;wBAClD,cAAc,GAAG,CAAC,oBAAoB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC/D,UAAU,GAAG,IAAI,CAAC;wBAClB,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;wBACtD,SAAS,CAAC,kBAAkB,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;oBACtF,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC5B,IAAI,QAAQ,EAAE,CAAC;gBACb,SAAS,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;YACpD,CAAC;YAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,oEAAoE;gBACpE,+BAA+B,GAAG,CAAC,CAAC;gBAEpC,MAAM,aAAa,GAAG,qCAAqC,CAAC,SAAS,CAAC,CAAC;gBACvE,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;gBAEpC,SAAS,CAAC,eAAe,EAAE,CACzB,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CACzE,CAAC;gBAEF,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,gBAAgB,CACvD,aAAa,EACb,OAAO,EACP,CAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,EAC5C,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,oBAAoB,CACrB,CAAC;gBAEF,MAAM,eAAe,GAAgB;oBACnC,IAAI,EAAE,WAAW;oBACjB,OAAO,EACL,YAAY,IAAI,wBAAwB,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBACzF,SAAS,EAAE,IAAI,IAAI,EAAE;oBACrB,SAAS,EAAE,aAAa;oBACxB,SAAS,EAAE,QAAQ;oBACnB,iBAAiB,EAAE,eAAe;oBAClC,mBAAmB,EAAE,WAAW,CAAC,mBAAmB;iBACrD,CAAC;gBACF,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBAErC,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;oBACzC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,YAAY,CAAC,0BAA0B,CAC/D,YAAY,CAAC,EAAE,EACf,YAAY,CAAC,YAAY,EACzB,YAAY,CAAC,MAAM,CACpB,CAAC;oBAEF,MAAM,aAAa,GAAgB;wBACjC,IAAI,EAAE,mBAAmB;wBACzB,OAAO;wBACP,SAAS,EAAE,IAAI,IAAI,EAAE;wBACrB,UAAU,EAAE,YAAY,CAAC,EAAE;qBAC5B,CAAC;oBACF,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACrC,CAAC;gBAED,cAAc,GAAG,2CAA2C,CAAC;gBAC7D,SAAS,EAAE,CAAC;gBACZ,SAAS;YACX,CAAC;YAED,IAAI,YAAY,EAAE,CAAC;gBACjB,iDAAiD;gBACjD,IAAI,cAAc,GAAY,SAAS,CAAC;gBACxC,IAAI,oBAAoB,GAAG,CAAC,CAAC;gBAC7B,IAAI,mBAAmB,GAAG,YAAY,CAAC;gBAEvC,IAAI,SAAS,CAAC,oBAAoB,CAAC,EAAE,CAAC;oBACpC,MAAM,oBAAoB,GAAG,WAAW,CAAC,WAAW,GAAG,CAAC,CAAC;oBACzD,OAAO,oBAAoB,IAAI,oBAAoB,EAAE,CAAC;wBACpD,MAAM,gBAAgB,GAAG,gBAAgB,CACvC,mBAAmB,EACnB,oBAAoB,CAAC,MAAM,CAC5B,CAAC;wBAEF,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;4BAC7B,cAAc,GAAG,gBAAgB,CAAC,IAAI,CAAC;4BACvC,MAAM;wBACR,CAAC;wBAED,oBAAoB;wBACpB,IAAI,oBAAoB,IAAI,oBAAoB,EAAE,CAAC;4BACjD,qCAAqC;4BACrC,MAAM,CAAC,KAAK,CAAC,oCAAoC,oBAAoB,UAAU,CAAC,CAAC;4BACjF,MAAM,IAAI,UAAU,CAClB,mCAAmC,EACnC,+BAA+B,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC/F,KAAK,CACN,CAAC;wBACJ,CAAC;wBAED,uCAAuC;wBACvC,oBAAoB,EAAE,CAAC;wBACvB,OAAO,CAAC,IAAI,CACV,iDAAiD,oBAAoB,IAAI,oBAAoB,MAAM,CACpG,CAAC;wBAEF,MAAM,sBAAsB,GAAG,qBAAqB,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;wBAC7E,MAAM,eAAe,GAAG,IAAI,KAAK,CAC/B,GAAG,sBAAsB,8DAA8D,CACxF,CAAC;wBACF,eAAe,CAAC,IAAI,GAAG,yBAAyB,CAAC;wBACjD,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;wBAC/D,MAAM,aAAa,GAAyD;4BAC1E,GAAG,QAAQ;4BACX,sBAAsB,CAAC,mBAAmB,CAAC;4BAC3C,mBAAmB,CAAC,oBAAoB,CAAC;yBAC1C,CAAC;wBAEF,MAAM,WAAW,GAAG,gBAAgB;4BAClC,CAAC,CAAC,MAAM,8BAA8B,CAClC,aAAa,EACb,KAAK,EACL,SAAS,EACT,OAAO,CAAC,WAAW,EACnB,kBAAkB,CACnB;4BACH,CAAC,CAAC,MAAM,qBAAqB,CAAC,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;wBAE3E,mBAAmB,GAAG,WAAW,CAAC,OAAO,CAAC;wBAE1C,4BAA4B;wBAC5B,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;4BACtB,WAAW,GAAG,wBAAwB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;4BAC1D,SAAS,CAAC,aAAa,EAAE,CAAC,WAAW,CAAC,CAAC;4BACvC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;wBACxC,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,8EAA8E;gBAC9E,mDAAmD;gBACnD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,uBAAuB,EAAE,CAAC;oBACtD,8FAA8F;oBAC9F,MAAM,oBAAoB,GAAgB;wBACxC,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,yCAAyC,mBAAmB,EAAE;wBACvE,SAAS,EAAE,IAAI,IAAI,EAAE;qBACtB,CAAC;oBACF,cAAc,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBAE1C,MAAM,oBAAoB,GAAyD;wBACjF,GAAG,cAAc;wBACjB,GAAG,2BAA2B,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,0CAA0C;wBACvG,sBAAsB,CAAC,mBAAmB,CAAC;wBAC3C,mBAAmB,CAAC,mBAAmB,CAAC;qBACzC,CAAC;oBAEF,uCAAuC;oBACvC,SAAS,CAAC,mBAAmB,EAAE,EAAE,CAAC;oBAElC,MAAM,kBAAkB,GAAG,MAAM,mBAAmB,CAClD,oBAAoB,EACpB,OAAO,CAAC,WAAW,CACpB,CAAC;oBAEF,gFAAgF;oBAChF,MAAM,yBAAyB,GAC7B,kBAAkB;wBAClB,CAAC,kBAAkB,CAAC,QAAQ;wBAC5B,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC;oBACrC,MAAM,kBAAkB,GACtB,kBAAkB;wBAClB,kBAAkB,CAAC,aAAa,KAAK,KAAK;wBAC1C,kBAAkB,CAAC,eAAe,EAAE,MAAM,CAAC;oBAE7C,IAAI,yBAAyB,IAAI,kBAAkB,EAAE,CAAC;wBACpD,+BAA+B,EAAE,CAAC;wBAElC,yDAAyD;wBACzD,IAAI,+BAA+B,IAAI,uBAAuB,EAAE,CAAC;4BAC/D,OAAO,CAAC,GAAG,CACT,iDAAiD,+BAA+B,IAAI,uBAAuB,KAAK;gCAC9G,2BAA2B,CAC9B,CAAC;4BACF,0CAA0C;4BAC1C,MAAM,mBAAmB,GAAgB;gCACvC,IAAI,EAAE,QAAQ;gCACd,OAAO,EAAE,iCAAiC,+BAA+B,qEAAqE;gCAC9I,SAAS,EAAE,IAAI,IAAI,EAAE;6BACtB,CAAC;4BACF,cAAc,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;4BACzC,4EAA4E;wBAC9E,CAAC;6BAAM,CAAC;4BACN,MAAM,YAAY,GAAa,EAAE,CAAC;4BAClC,IAAI,kBAAkB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;gCACxC,YAAY,CAAC,IAAI,CAAC,yBAAyB,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BACtF,CAAC;4BACD,IAAI,kBAAkB,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC;gCAChD,YAAY,CAAC,IAAI,CACf,qBAAqB,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACrE,CAAC;4BACJ,CAAC;4BAED,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BAC9C,OAAO,CAAC,GAAG,CAAC,gDAAgD,aAAa,EAAE,CAAC,CAAC;4BAE7E,iEAAiE;4BACjE,SAAS,CAAC,oBAAoB,EAAE,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;4BAE5D,6EAA6E;4BAC7E,MAAM,uBAAuB,GAAgB;gCAC3C,IAAI,EAAE,WAAW;gCACjB,OAAO,EAAE,mBAAmB;gCAC5B,SAAS,EAAE,IAAI,IAAI,EAAE;gCACrB,SAAS,EAAE,QAAQ;gCACnB,iBAAiB,EAAE,eAAe;gCAClC,mBAAmB,EAAE,WAAW,CAAC,mBAAmB;6BACrD,CAAC;4BACF,cAAc,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;4BAE7C,4CAA4C;4BAC5C,MAAM,yBAAyB,GAAgB;gCAC7C,IAAI,EAAE,QAAQ;gCACd,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;gCAC3C,SAAS,EAAE,IAAI,IAAI,EAAE;6BACtB,CAAC;4BACF,cAAc,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;4BAE/C,6BAA6B;4BAC7B,MAAM,iBAAiB,GAAa,EAAE,CAAC;4BACvC,IAAI,kBAAkB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;gCACxC,iBAAiB,CAAC,IAAI,CACpB,iDAAiD,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACzF,CAAC;4BACJ,CAAC;4BACD,IAAI,kBAAkB,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC;gCAChD,iBAAiB,CAAC,IAAI,CACpB,8EAA8E,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC9H,CAAC;4BACJ,CAAC;4BAED,cAAc,GAAG,aAAa,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;4BAC7D,SAAS,EAAE,CAAC;4BACZ,SAAS;wBACX,CAAC;oBACH,CAAC;oBAED,kDAAkD;oBAClD,SAAS,CAAC,oBAAoB,EAAE,EAAE,CAAC;oBAEnC,gFAAgF;oBAChF,4FAA4F;oBAE5F,sDAAsD;oBACtD,IAAI,kBAAkB,EAAE,CAAC;wBACvB,MAAM,yBAAyB,GAAgB;4BAC7C,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,0BAA0B,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE;4BACvE,SAAS,EAAE,IAAI,IAAI,EAAE;yBACtB,CAAC;wBACF,cAAc,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;oBACjD,CAAC;yBAAM,CAAC;wBACN,qEAAqE;wBACrE,MAAM,0BAA0B,GAAgB;4BAC9C,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,8CAA8C;4BACvD,SAAS,EAAE,IAAI,IAAI,EAAE;yBACtB,CAAC;wBACF,cAAc,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC;gBAED,MAAM,gBAAgB,GAAgB;oBACpC,IAAI,EAAE,WAAW;oBACjB,OAAO,EAAE,mBAAmB;oBAC5B,SAAS,EAAE,IAAI,IAAI,EAAE;oBACrB,SAAS,EAAE,QAAQ;oBACnB,iBAAiB,EAAE,eAAe;oBAClC,mBAAmB,EAAE,WAAW,CAAC,mBAAmB;iBACrD,CAAC;gBACF,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAEtC,MAAM,MAAM,GAAyB;oBACnC,OAAO,EAAE,mBAAmB;oBAC5B,cAAc;oBACd,SAAS,EAAE,QAAQ;wBACjB,CAAC,CAAC;4BACE,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,eAAe;4BACxB,UAAU,EAAE,WAAW,CAAC,mBAAmB;yBAC5C;wBACH,CAAC,CAAC,SAAS;oBACb,mBAAmB,EAAE,cAAc;oBACnC,aAAa,EAAE,WAAW;oBAC1B,SAAS,EAAE,eAAe;oBAC1B,UAAU,EAAE,SAAS,GAAG,CAAC;oBACzB,UAAU;iBACX,CAAC;gBAEF,oEAAoE;gBACpE,uFAAuF;gBACvF,qFAAqF;gBACrF,IAAI,mBAAmB,IAAI,uBAAuB,EAAE,CAAC;oBACnD,SAAS,CAAC,cAAc,EAAE,CAAC,mBAAmB,CAAC,CAAC;gBAClD,CAAC;gBAED,SAAS,CAAC,SAAS,EAAE,CAAC,mBAAmB,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC7D,MAAM,CAAC,YAAY,CAAC,SAAS,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC;gBAC/C,SAAS,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC;gBAE/B,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;gBACnC,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,MAAM;QACR,CAAC;QAED,IAAI,SAAS,IAAI,aAAa,EAAE,CAAC;YAC/B,MAAM,cAAc,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;YAC7D,MAAM,gBAAgB,GAAgB;gBACpC,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,cAAc;gBACvB,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC;YACF,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACtC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;YAEnC,MAAM,MAAM,GAAgB;gBAC1B,OAAO,EAAE,cAAc;gBACvB,mBAAmB,EAAE,cAAc;gBACnC,aAAa,EAAE,WAAW;gBAC1B,SAAS,EAAE,eAAe;gBAC1B,UAAU,EAAE,SAAS;gBACrB,UAAU;aACX,CAAC;YAEF,SAAS,CAAC,OAAO,EAAE,CAAC;gBAClB,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,cAAc;gBACvB,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YACH,SAAS,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC;YAE/B,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,SAAS,eAAe,CAAC,KAAY;QACnC,2BAA2B;QAC3B,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,iDAAiD;QACjD,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;YAChC,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBACzE,OAAO,KAAK,CAAC;YACf,CAAC;YACD,kFAAkF;YAClF,+DAA+D;YAC/D,IAAI,KAAK,CAAC,IAAI,KAAK,mCAAmC,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBAC5F,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,UAAU,IAAI,CACjB,OAAe,EACf,OAAyC,EACzC,YAA4B,EAAE,EAC9B,OAAqB;QAErB,0DAA0D;QAC1D,gBAAgB,GAAG,SAAS,CAAC;QAE7B,wFAAwF;QACxF,MAAM,kBAAkB,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC;QAE9C,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC;QACvD,MAAM,eAAe,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QACxD,MAAM,gBAAgB,GAAqC;YACzD,GAAG,OAAO;YACV,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,eAAe,CAAC,MAAM;SAC3D,CAAC;QAEF,IAAI,eAAmC,CAAC;QACxC,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;QAE/B,qEAAqE;QACrE,IAAI,gBAAgB,GAAG,OAAO,CAAC;QAC/B,IAAI,kBAAkB,CAAC,aAAa,EAAE,EAAE,CAAC;YACvC,MAAM,iBAAiB,GAAmC;gBACxD,OAAO;gBACP,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE;gBAC7B,WAAW,EAAE,gBAAgB;aAC9B,CAAC;YACF,gBAAgB,GAAG,MAAM,kBAAkB,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;QACnF,CAAC;QAED,IAAI,CAAC;YACH,IAAI,MAAM,GAAG,MAAM,gBAAgB,CACjC,KAAK,IAAI,EAAE;gBACT,MAAM,aAAa,GAAG,MAAM,qBAAqB,CAC/C,gBAAgB,EAChB,OAAO,CAAC,UAAU,EAAE,EACpB,gBAAgB,EAChB,SAAS,EACT,eAAe,EACf,MAAM,CACP,CAAC;gBACF,OAAO,aAAa,CAAC;YACvB,CAAC,EACD;gBACE,MAAM,EAAE,WAAW;gBACnB,WAAW,EAAE,gBAAgB,CAAC,WAAW;gBACzC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;oBAChB,8EAA8E;oBAC9E,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC/C,sBAAsB;oBACtB,SAAS,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBAChF,CAAC;gBACD,WAAW,EAAE,eAAe;aAC7B,CACF,CAAC;YAEF,mEAAmE;YACnE,IAAI,kBAAkB,CAAC,aAAa,EAAE,EAAE,CAAC;gBACvC,MAAM,gBAAgB,GAAkC;oBACtD,OAAO,EAAE,gBAAgB;oBACzB,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE;oBAC7B,WAAW,EAAE,gBAAgB;oBAC7B,MAAM;iBACP,CAAC;gBACF,MAAM,GAAG,MAAM,kBAAkB,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;YACvE,CAAC;YAED,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAE/B,MAAM,SAAS,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAEvF,6CAA6C;YAC7C,IAAI,kBAAkB,CAAC,aAAa,EAAE,IAAI,SAAS,YAAY,UAAU,EAAE,CAAC;gBAC1E,MAAM,kBAAkB,CAAC,cAAc,CAAC;oBACtC,OAAO,EAAE,gBAAgB;oBACzB,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE;oBAC7B,WAAW,EAAE,gBAAgB;oBAC7B,KAAK,EAAE,SAAS;iBACjB,CAAC,CAAC;YACL,CAAC;YAED,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,SAAS,CAAC,SAAS,EAAE,EAAE,CAAC;gBACxB,MAAM,KAAK,CAAC;YACd,CAAC;YAED,MAAM,YAAY,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAC;YAC1D,SAAS,CAAC,OAAO,EAAE,CAAC;gBAClB,IAAI,EAAE,SAAS,YAAY,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe;gBACxE,OAAO,EAAE,SAAS,EAAE,OAAO,IAAI,YAAY;gBAC3C,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,YAAY;gBACrB,mBAAmB,EAAE,OAAO,CAAC,UAAU,EAAE;gBACzC,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE;gBACtC,UAAU,EAAE,CAAC;gBACb,UAAU,EAAE,KAAK;aAClB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,SAAS,KAAK;QACZ,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;IAED,SAAS,UAAU;QACjB,OAAO,OAAO,CAAC,UAAU,EAAE,CAAC;IAC9B,CAAC;IAED,SAAS,UAAU,CAAC,OAAsB;QACxC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED,SAAS,YAAY;QACnB,OAAO,CAAC,YAAY,EAAE,CAAC;IACzB,CAAC;IAED,SAAS,aAAa;QACpB,OAAO,OAAO,CAAC,aAAa,EAAE,CAAC;IACjC,CAAC;IAED,OAAO;QACL,IAAI;QACJ,KAAK;QACL,UAAU;QACV,UAAU;QACV,YAAY;QACZ,aAAa;KACd,CAAC;AACJ,CAAC"}
@@ -0,0 +1,35 @@
1
+ import type { AgentConfig, AgentCallbacks, AgentResult, ChatMessage, ToolExecutorContext, UsageMetadata, ChatOptions } from '../types/index.js';
2
+ /**
3
+ * Agent interface for AI chat interactions with tool calling capabilities.
4
+ *
5
+ * @typeParam TAppContext - Application-specific context type passed to tools.
6
+ */
7
+ export interface Agent<TAppContext = Record<string, unknown>> {
8
+ /**
9
+ * Sends a message to the agent and receives a response.
10
+ * @param message - The user's message
11
+ * @param context - Execution context (appContext, abortSignal)
12
+ * @param callbacks - Optional callbacks for streaming events
13
+ * @param options - Optional chat options (e.g., images for multimodal input)
14
+ * @returns AgentResult with the response
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * // Text-only message
19
+ * await agent.chat('Hello', context);
20
+ *
21
+ * // Message with images
22
+ * await agent.chat('What is in this image?', context, {}, {
23
+ * images: [{ url: 'https://example.com/image.png' }]
24
+ * });
25
+ * ```
26
+ */
27
+ chat(message: string, context: ToolExecutorContext<TAppContext>, callbacks?: AgentCallbacks, options?: ChatOptions): Promise<AgentResult>;
28
+ abort(): void;
29
+ getHistory(): ChatMessage[];
30
+ setHistory(history: ChatMessage[]): void;
31
+ clearHistory(): void;
32
+ getTokenUsage(): UsageMetadata;
33
+ }
34
+ export declare function createAgent<TAppContext = Record<string, unknown>>(config: AgentConfig<TAppContext>): Agent<TAppContext>;
35
+ //# sourceMappingURL=agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/core/agent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,aAAa,EAOb,WAAW,EAGZ,MAAM,mBAAmB,CAAC;AAiK3B;;;;GAIG;AACH,MAAM,WAAW,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC1D;;;;;;;;;;;;;;;;;;OAkBG;IACH,IAAI,CACF,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,mBAAmB,CAAC,WAAW,CAAC,EACzC,SAAS,CAAC,EAAE,cAAc,EAC1B,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,WAAW,CAAC,CAAC;IACxB,KAAK,IAAI,IAAI,CAAC;IACd,UAAU,IAAI,WAAW,EAAE,CAAC;IAC5B,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IACzC,YAAY,IAAI,IAAI,CAAC;IACrB,aAAa,IAAI,aAAa,CAAC;CAChC;AAED,wBAAgB,WAAW,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC,GAC/B,KAAK,CAAC,WAAW,CAAC,CAqhCpB"}