@falai/agent 0.9.0-alpha-1 → 0.9.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 (217) hide show
  1. package/README.md +34 -22
  2. package/dist/cjs/src/core/Agent.d.ts +77 -59
  3. package/dist/cjs/src/core/Agent.d.ts.map +1 -1
  4. package/dist/cjs/src/core/Agent.js +284 -1060
  5. package/dist/cjs/src/core/Agent.js.map +1 -1
  6. package/dist/cjs/src/core/PersistenceManager.d.ts.map +1 -1
  7. package/dist/cjs/src/core/PersistenceManager.js +48 -25
  8. package/dist/cjs/src/core/PersistenceManager.js.map +1 -1
  9. package/dist/cjs/src/core/PromptComposer.d.ts +1 -1
  10. package/dist/cjs/src/core/PromptComposer.d.ts.map +1 -1
  11. package/dist/cjs/src/core/PromptComposer.js.map +1 -1
  12. package/dist/cjs/src/core/ResponseEngine.d.ts +13 -12
  13. package/dist/cjs/src/core/ResponseEngine.d.ts.map +1 -1
  14. package/dist/cjs/src/core/ResponseEngine.js +4 -4
  15. package/dist/cjs/src/core/ResponseEngine.js.map +1 -1
  16. package/dist/cjs/src/core/ResponseModal.d.ts +205 -0
  17. package/dist/cjs/src/core/ResponseModal.d.ts.map +1 -0
  18. package/dist/cjs/src/core/ResponseModal.js +1328 -0
  19. package/dist/cjs/src/core/ResponseModal.js.map +1 -0
  20. package/dist/cjs/src/core/ResponsePipeline.d.ts +66 -38
  21. package/dist/cjs/src/core/ResponsePipeline.d.ts.map +1 -1
  22. package/dist/cjs/src/core/ResponsePipeline.js +72 -4
  23. package/dist/cjs/src/core/ResponsePipeline.js.map +1 -1
  24. package/dist/cjs/src/core/Route.d.ts +24 -5
  25. package/dist/cjs/src/core/Route.d.ts.map +1 -1
  26. package/dist/cjs/src/core/Route.js +45 -1
  27. package/dist/cjs/src/core/Route.js.map +1 -1
  28. package/dist/cjs/src/core/RoutingEngine.d.ts +31 -6
  29. package/dist/cjs/src/core/RoutingEngine.d.ts.map +1 -1
  30. package/dist/cjs/src/core/RoutingEngine.js +113 -9
  31. package/dist/cjs/src/core/RoutingEngine.js.map +1 -1
  32. package/dist/cjs/src/core/SessionManager.d.ts +14 -4
  33. package/dist/cjs/src/core/SessionManager.d.ts.map +1 -1
  34. package/dist/cjs/src/core/SessionManager.js +25 -5
  35. package/dist/cjs/src/core/SessionManager.js.map +1 -1
  36. package/dist/cjs/src/core/Step.d.ts +10 -10
  37. package/dist/cjs/src/core/Step.d.ts.map +1 -1
  38. package/dist/cjs/src/core/Step.js.map +1 -1
  39. package/dist/cjs/src/core/ToolExecutor.d.ts +4 -2
  40. package/dist/cjs/src/core/ToolExecutor.d.ts.map +1 -1
  41. package/dist/cjs/src/core/ToolExecutor.js +13 -3
  42. package/dist/cjs/src/core/ToolExecutor.js.map +1 -1
  43. package/dist/cjs/src/index.d.ts +3 -1
  44. package/dist/cjs/src/index.d.ts.map +1 -1
  45. package/dist/cjs/src/index.js +7 -1
  46. package/dist/cjs/src/index.js.map +1 -1
  47. package/dist/cjs/src/types/agent.d.ts +42 -21
  48. package/dist/cjs/src/types/agent.d.ts.map +1 -1
  49. package/dist/cjs/src/types/agent.js.map +1 -1
  50. package/dist/cjs/src/types/ai.d.ts +1 -1
  51. package/dist/cjs/src/types/ai.d.ts.map +1 -1
  52. package/dist/cjs/src/types/index.d.ts +1 -1
  53. package/dist/cjs/src/types/index.d.ts.map +1 -1
  54. package/dist/cjs/src/types/index.js.map +1 -1
  55. package/dist/cjs/src/types/persistence.d.ts +0 -1
  56. package/dist/cjs/src/types/persistence.d.ts.map +1 -1
  57. package/dist/cjs/src/types/route.d.ts +22 -16
  58. package/dist/cjs/src/types/route.d.ts.map +1 -1
  59. package/dist/cjs/src/types/session.d.ts +6 -11
  60. package/dist/cjs/src/types/session.d.ts.map +1 -1
  61. package/dist/cjs/src/types/tool.d.ts +12 -6
  62. package/dist/cjs/src/types/tool.d.ts.map +1 -1
  63. package/dist/cjs/src/utils/clone.d.ts.map +1 -1
  64. package/dist/cjs/src/utils/clone.js +0 -4
  65. package/dist/cjs/src/utils/clone.js.map +1 -1
  66. package/dist/cjs/src/utils/history.d.ts +30 -1
  67. package/dist/cjs/src/utils/history.d.ts.map +1 -1
  68. package/dist/cjs/src/utils/history.js +169 -23
  69. package/dist/cjs/src/utils/history.js.map +1 -1
  70. package/dist/cjs/src/utils/index.d.ts +1 -1
  71. package/dist/cjs/src/utils/index.d.ts.map +1 -1
  72. package/dist/cjs/src/utils/index.js +5 -1
  73. package/dist/cjs/src/utils/index.js.map +1 -1
  74. package/dist/cjs/src/utils/session.d.ts +2 -2
  75. package/dist/cjs/src/utils/session.d.ts.map +1 -1
  76. package/dist/cjs/src/utils/session.js +6 -26
  77. package/dist/cjs/src/utils/session.js.map +1 -1
  78. package/dist/src/core/Agent.d.ts +77 -59
  79. package/dist/src/core/Agent.d.ts.map +1 -1
  80. package/dist/src/core/Agent.js +285 -1061
  81. package/dist/src/core/Agent.js.map +1 -1
  82. package/dist/src/core/PersistenceManager.d.ts.map +1 -1
  83. package/dist/src/core/PersistenceManager.js +48 -25
  84. package/dist/src/core/PersistenceManager.js.map +1 -1
  85. package/dist/src/core/PromptComposer.d.ts +1 -1
  86. package/dist/src/core/PromptComposer.d.ts.map +1 -1
  87. package/dist/src/core/PromptComposer.js.map +1 -1
  88. package/dist/src/core/ResponseEngine.d.ts +13 -12
  89. package/dist/src/core/ResponseEngine.d.ts.map +1 -1
  90. package/dist/src/core/ResponseEngine.js +4 -4
  91. package/dist/src/core/ResponseEngine.js.map +1 -1
  92. package/dist/src/core/ResponseModal.d.ts +205 -0
  93. package/dist/src/core/ResponseModal.d.ts.map +1 -0
  94. package/dist/src/core/ResponseModal.js +1323 -0
  95. package/dist/src/core/ResponseModal.js.map +1 -0
  96. package/dist/src/core/ResponsePipeline.d.ts +66 -38
  97. package/dist/src/core/ResponsePipeline.d.ts.map +1 -1
  98. package/dist/src/core/ResponsePipeline.js +72 -4
  99. package/dist/src/core/ResponsePipeline.js.map +1 -1
  100. package/dist/src/core/Route.d.ts +24 -5
  101. package/dist/src/core/Route.d.ts.map +1 -1
  102. package/dist/src/core/Route.js +45 -1
  103. package/dist/src/core/Route.js.map +1 -1
  104. package/dist/src/core/RoutingEngine.d.ts +31 -6
  105. package/dist/src/core/RoutingEngine.d.ts.map +1 -1
  106. package/dist/src/core/RoutingEngine.js +113 -9
  107. package/dist/src/core/RoutingEngine.js.map +1 -1
  108. package/dist/src/core/SessionManager.d.ts +14 -4
  109. package/dist/src/core/SessionManager.d.ts.map +1 -1
  110. package/dist/src/core/SessionManager.js +25 -5
  111. package/dist/src/core/SessionManager.js.map +1 -1
  112. package/dist/src/core/Step.d.ts +10 -10
  113. package/dist/src/core/Step.d.ts.map +1 -1
  114. package/dist/src/core/Step.js.map +1 -1
  115. package/dist/src/core/ToolExecutor.d.ts +4 -2
  116. package/dist/src/core/ToolExecutor.d.ts.map +1 -1
  117. package/dist/src/core/ToolExecutor.js +13 -3
  118. package/dist/src/core/ToolExecutor.js.map +1 -1
  119. package/dist/src/index.d.ts +3 -1
  120. package/dist/src/index.d.ts.map +1 -1
  121. package/dist/src/index.js +2 -1
  122. package/dist/src/index.js.map +1 -1
  123. package/dist/src/types/agent.d.ts +42 -21
  124. package/dist/src/types/agent.d.ts.map +1 -1
  125. package/dist/src/types/agent.js.map +1 -1
  126. package/dist/src/types/ai.d.ts +1 -1
  127. package/dist/src/types/ai.d.ts.map +1 -1
  128. package/dist/src/types/index.d.ts +1 -1
  129. package/dist/src/types/index.d.ts.map +1 -1
  130. package/dist/src/types/index.js.map +1 -1
  131. package/dist/src/types/persistence.d.ts +0 -1
  132. package/dist/src/types/persistence.d.ts.map +1 -1
  133. package/dist/src/types/route.d.ts +22 -16
  134. package/dist/src/types/route.d.ts.map +1 -1
  135. package/dist/src/types/session.d.ts +6 -11
  136. package/dist/src/types/session.d.ts.map +1 -1
  137. package/dist/src/types/tool.d.ts +12 -6
  138. package/dist/src/types/tool.d.ts.map +1 -1
  139. package/dist/src/utils/clone.d.ts.map +1 -1
  140. package/dist/src/utils/clone.js +0 -4
  141. package/dist/src/utils/clone.js.map +1 -1
  142. package/dist/src/utils/history.d.ts +30 -1
  143. package/dist/src/utils/history.d.ts.map +1 -1
  144. package/dist/src/utils/history.js +165 -23
  145. package/dist/src/utils/history.js.map +1 -1
  146. package/dist/src/utils/index.d.ts +1 -1
  147. package/dist/src/utils/index.d.ts.map +1 -1
  148. package/dist/src/utils/index.js +1 -1
  149. package/dist/src/utils/index.js.map +1 -1
  150. package/dist/src/utils/session.d.ts +2 -2
  151. package/dist/src/utils/session.d.ts.map +1 -1
  152. package/dist/src/utils/session.js +6 -26
  153. package/dist/src/utils/session.js.map +1 -1
  154. package/docs/README.md +5 -4
  155. package/docs/api/README.md +195 -4
  156. package/docs/api/overview.md +232 -13
  157. package/docs/core/agent/README.md +162 -17
  158. package/docs/core/agent/context-management.md +39 -15
  159. package/docs/core/agent/session-management.md +49 -16
  160. package/docs/core/ai-integration/prompt-composition.md +38 -14
  161. package/docs/core/ai-integration/response-processing.md +28 -17
  162. package/docs/core/conversation-flows/data-collection.md +103 -25
  163. package/docs/core/conversation-flows/route-dsl.md +45 -22
  164. package/docs/core/conversation-flows/routes.md +74 -18
  165. package/docs/core/conversation-flows/step-transitions.md +3 -3
  166. package/docs/core/conversation-flows/steps.md +39 -15
  167. package/docs/core/routing/intelligent-routing.md +18 -9
  168. package/docs/core/tools/tool-definition.md +8 -8
  169. package/docs/core/tools/tool-execution.md +26 -26
  170. package/docs/core/tools/tool-scoping.md +5 -5
  171. package/docs/guides/getting-started/README.md +54 -32
  172. package/docs/guides/migration/README.md +72 -0
  173. package/docs/guides/migration/response-modal-refactor.md +518 -0
  174. package/examples/advanced-patterns/knowledge-based-agent.ts +37 -28
  175. package/examples/advanced-patterns/persistent-onboarding.ts +70 -41
  176. package/examples/advanced-patterns/route-lifecycle-hooks.ts +28 -2
  177. package/examples/advanced-patterns/streaming-responses.ts +197 -119
  178. package/examples/ai-providers/anthropic-integration.ts +40 -33
  179. package/examples/ai-providers/openai-integration.ts +25 -25
  180. package/examples/conversation-flows/completion-transitions.ts +36 -32
  181. package/examples/core-concepts/basic-agent.ts +76 -78
  182. package/examples/core-concepts/modern-streaming-api.ts +309 -0
  183. package/examples/core-concepts/schema-driven-extraction.ts +20 -16
  184. package/examples/core-concepts/session-management.ts +65 -53
  185. package/examples/integrations/database-integration.ts +49 -34
  186. package/examples/integrations/healthcare-integration.ts +96 -91
  187. package/examples/integrations/search-integration.ts +79 -82
  188. package/examples/integrations/server-session-management.ts +25 -17
  189. package/examples/persistence/database-persistence.ts +61 -45
  190. package/examples/persistence/memory-sessions.ts +52 -63
  191. package/examples/persistence/redis-persistence.ts +81 -95
  192. package/examples/tools/basic-tools.ts +73 -62
  193. package/examples/tools/data-enrichment-tools.ts +52 -44
  194. package/package.json +1 -1
  195. package/src/core/Agent.ts +396 -1499
  196. package/src/core/PersistenceManager.ts +51 -27
  197. package/src/core/PromptComposer.ts +1 -1
  198. package/src/core/ResponseEngine.ts +21 -19
  199. package/src/core/ResponseModal.ts +1722 -0
  200. package/src/core/ResponsePipeline.ts +175 -60
  201. package/src/core/Route.ts +58 -6
  202. package/src/core/RoutingEngine.ts +174 -27
  203. package/src/core/SessionManager.ts +32 -8
  204. package/src/core/Step.ts +20 -12
  205. package/src/core/ToolExecutor.ts +19 -5
  206. package/src/index.ts +11 -0
  207. package/src/types/agent.ts +47 -23
  208. package/src/types/ai.ts +1 -1
  209. package/src/types/index.ts +2 -0
  210. package/src/types/persistence.ts +0 -1
  211. package/src/types/route.ts +22 -16
  212. package/src/types/session.ts +6 -12
  213. package/src/types/tool.ts +15 -9
  214. package/src/utils/clone.ts +6 -8
  215. package/src/utils/history.ts +190 -27
  216. package/src/utils/index.ts +4 -0
  217. package/src/utils/session.ts +6 -31
@@ -1 +1 @@
1
- {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/types/route.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/types/route.ts"],"names":[],"mappings":"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"}
@@ -14,8 +14,8 @@ export interface PendingTransition {
14
14
  reason: "route_complete" | "manual";
15
15
  }
16
16
  /**
17
- * Session step tracks the current position in the conversation flow
18
- * and data collected during the route progression
17
+ * Session state tracks the current position in the conversation flow
18
+ * and data collected at the agent level across all routes
19
19
  */
20
20
  export interface SessionState<TData = unknown> {
21
21
  /** Unique session identifier (useful for persistence) */
@@ -33,16 +33,11 @@ export interface SessionState<TData = unknown> {
33
33
  enteredAt?: Date;
34
34
  };
35
35
  /**
36
- * Data collected during the current route
37
- * Convenience reference to dataByRoute[currentRoute.id]
36
+ * Agent-level data collected across all routes
37
+ * This is the single source of truth for all collected data
38
+ * Routes can access and contribute to this shared data structure
38
39
  */
39
- data?: Partial<TData>;
40
- /**
41
- * Data collected organized by route ID
42
- * Persists data when switching between routes
43
- * Allows resuming incomplete routes where they left off
44
- */
45
- dataByRoute?: Record<string, Partial<TData>>;
40
+ data: Partial<TData>;
46
41
  /** History of routes visited in this session */
47
42
  routeHistory?: Array<{
48
43
  routeId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../src/types/session.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,uCAAuC;IACvC,aAAa,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,MAAM,EAAE,gBAAgB,GAAG,QAAQ,CAAC;CACrC;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY,CAAC,KAAK,GAAG,OAAO;IAC3C,yDAAyD;IACzD,EAAE,EAAE,MAAM,CAAC;IAEX,2CAA2C;IAC3C,YAAY,CAAC,EAAE;QACb,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,IAAI,CAAC;KAClB,CAAC;IAEF,oCAAoC;IACpC,WAAW,CAAC,EAAE;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,IAAI,CAAC;KAClB,CAAC;IAEF;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAEtB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAE7C,gDAAgD;IAChD,YAAY,CAAC,EAAE,KAAK,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,IAAI,CAAC;QACjB,QAAQ,CAAC,EAAE,IAAI,CAAC;QAChB,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC,CAAC;IAEH;;;OAGG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAEtC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,uBAAuB;IACvB,QAAQ,CAAC,EAAE;QACT,SAAS,CAAC,EAAE,IAAI,CAAC;QACjB,aAAa,CAAC,EAAE,IAAI,CAAC;QACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;CACH"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../src/types/session.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,uCAAuC;IACvC,aAAa,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gCAAgC;IAChC,MAAM,EAAE,gBAAgB,GAAG,QAAQ,CAAC;CACrC;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY,CAAC,KAAK,GAAG,OAAO;IAC3C,yDAAyD;IACzD,EAAE,EAAE,MAAM,CAAC;IAEX,2CAA2C;IAC3C,YAAY,CAAC,EAAE;QACb,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,CAAC,EAAE,IAAI,CAAC;KAClB,CAAC;IAEF,oCAAoC;IACpC,WAAW,CAAC,EAAE;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,IAAI,CAAC;KAClB,CAAC;IAEF;;;;OAIG;IACH,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAErB,gDAAgD;IAChD,YAAY,CAAC,EAAE,KAAK,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,IAAI,CAAC;QACjB,QAAQ,CAAC,EAAE,IAAI,CAAC;QAChB,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC,CAAC;IAEH;;;OAGG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAEtC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,uBAAuB;IACvB,QAAQ,CAAC,EAAE;QACT,SAAS,CAAC,EAAE,IAAI,CAAC;QACjB,aAAa,CAAC,EAAE,IAAI,CAAC;QACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;CACH"}
@@ -10,11 +10,13 @@ export interface ToolContext<TContext = unknown, TData = unknown> {
10
10
  context: TContext;
11
11
  /** Update the agent's context (triggers lifecycle hooks if configured) */
12
12
  updateContext: (updates: Partial<TContext>) => Promise<void>;
13
+ /** Update the agent's collected data (triggers lifecycle hooks if configured) */
14
+ updateData: (updates: Partial<TData>) => Promise<void>;
13
15
  /** Current step reference (if in a route) */
14
16
  step?: StepRef;
15
17
  /** Interaction history */
16
18
  history: Event[];
17
- /** Data collected so far in the current route */
19
+ /** Complete agent-level data collected so far */
18
20
  data?: Partial<TData>;
19
21
  /** Additional metadata */
20
22
  metadata?: Record<string, unknown>;
@@ -24,28 +26,32 @@ export interface ToolContext<TContext = unknown, TData = unknown> {
24
26
  */
25
27
  export interface ToolResult<TResultData = unknown, TContext = unknown, TData = unknown> {
26
28
  /** The result data */
27
- data: TResultData;
29
+ data?: TResultData;
28
30
  /** Optional context update to be merged with current context */
29
31
  contextUpdate?: Partial<TContext>;
30
- /** Optional collected data update to be merged with session step */
32
+ /** Optional agent-level data update to be merged with collected data */
31
33
  dataUpdate?: Partial<TData>;
34
+ /** Success indicator */
35
+ success?: boolean;
36
+ /** Error message if operation failed */
37
+ error?: string;
32
38
  /** Optional metadata about the execution */
33
39
  meta?: Record<string, unknown>;
34
40
  }
35
41
  /**
36
42
  * Handler function for a tool
37
43
  */
38
- export type ToolHandler<TContext, TArgs extends unknown[], TResult, TData = unknown> = (context: ToolContext<TContext, TData>, ...args: TArgs) => Promise<ToolResult<TResult, TContext, TData>> | ToolResult<TResult, TContext, TData>;
44
+ export type ToolHandler<TContext, TData = unknown, TArgs extends unknown[] = unknown[], TResult = unknown> = (context: ToolContext<TContext, TData>, ...args: TArgs) => Promise<ToolResult<TResult, TContext, TData>> | ToolResult<TResult, TContext, TData>;
39
45
  /**
40
46
  * Tool definition - plain object interface
41
47
  */
42
- export interface Tool<TContext = unknown, TArgs extends unknown[] = unknown[], TResult = unknown, TData = unknown> {
48
+ export interface Tool<TContext = unknown, TData = unknown, TArgs extends unknown[] = unknown[], TResult = unknown> {
43
49
  /** Tool identifier */
44
50
  id: string;
45
51
  /** Tool display name (shown to AI models) */
46
52
  name?: string;
47
53
  /** Tool handler function */
48
- handler: ToolHandler<TContext, TArgs, TResult, TData>;
54
+ handler: ToolHandler<TContext, TData, TArgs, TResult>;
49
55
  /** Description of what the tool does (for AI discovery) */
50
56
  description?: string;
51
57
  /** Parameter schema or description */
@@ -1 +1 @@
1
- {"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../../../src/types/tool.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAC9D,+BAA+B;IAC/B,OAAO,EAAE,QAAQ,CAAC;IAClB,0EAA0E;IAC1E,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,6CAA6C;IAC7C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,0BAA0B;IAC1B,OAAO,EAAE,KAAK,EAAE,CAAC;IACjB,iDAAiD;IACjD,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACtB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU,CACzB,WAAW,GAAG,OAAO,EACrB,QAAQ,GAAG,OAAO,EAClB,KAAK,GAAG,OAAO;IAEf,sBAAsB;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,gEAAgE;IAChE,aAAa,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,oEAAoE;IACpE,UAAU,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5B,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,CACrB,QAAQ,EACR,KAAK,SAAS,OAAO,EAAE,EACvB,OAAO,EACP,KAAK,GAAG,OAAO,IACb,CACF,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EACrC,GAAG,IAAI,EAAE,KAAK,KAEZ,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,GAC7C,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,IAAI,CACnB,QAAQ,GAAG,OAAO,EAClB,KAAK,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,EACnC,OAAO,GAAG,OAAO,EACjB,KAAK,GAAG,OAAO;IAEf,sBAAsB;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACtD,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sCAAsC;IACtC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB"}
1
+ {"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../../../src/types/tool.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,QAAQ,GAAG,OAAO,EAAE,KAAK,GAAG,OAAO;IAC9D,+BAA+B;IAC/B,OAAO,EAAE,QAAQ,CAAC;IAClB,0EAA0E;IAC1E,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,iFAAiF;IACjF,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,6CAA6C;IAC7C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,0BAA0B;IAC1B,OAAO,EAAE,KAAK,EAAE,CAAC;IACjB,iDAAiD;IACjD,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACtB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU,CACzB,WAAW,GAAG,OAAO,EACrB,QAAQ,GAAG,OAAO,EAClB,KAAK,GAAG,OAAO;IAEf,sBAAsB;IACtB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,gEAAgE;IAChE,aAAa,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,wEAAwE;IACxE,UAAU,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5B,wBAAwB;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,CACrB,QAAQ,EACR,KAAK,GAAG,OAAO,EACf,KAAK,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,EACnC,OAAO,GAAG,OAAO,IACf,CACF,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,EACrC,GAAG,IAAI,EAAE,KAAK,KAEZ,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,GAC7C,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,IAAI,CACnB,QAAQ,GAAG,OAAO,EAClB,KAAK,GAAG,OAAO,EACf,KAAK,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,EACnC,OAAO,GAAG,OAAO;IAEjB,sBAAsB;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACtD,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sCAAsC;IACtC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"clone.d.ts","sourceRoot":"","sources":["../../../../src/utils/clone.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CA4BtC"}
1
+ {"version":3,"file":"clone.d.ts","sourceRoot":"","sources":["../../../../src/utils/clone.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CA0BtC"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.cloneDeep = cloneDeep;
4
- /* eslint-disable @typescript-eslint/no-explicit-any */
5
4
  /**
6
5
  * Deep clone utility to avoid adding large dependencies like lodash.
7
6
  * Handles objects, arrays, dates, and primitives.
@@ -13,16 +12,13 @@ function cloneDeep(obj) {
13
12
  return obj;
14
13
  }
15
14
  if (obj instanceof Date) {
16
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return
17
15
  return new Date(obj.getTime());
18
16
  }
19
17
  if (Array.isArray(obj)) {
20
18
  const arrCopy = [];
21
19
  for (let i = 0; i < obj.length; i++) {
22
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
23
20
  arrCopy[i] = cloneDeep(obj[i]);
24
21
  }
25
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return
26
22
  return arrCopy;
27
23
  }
28
24
  const objCopy = {};
@@ -1 +1 @@
1
- {"version":3,"file":"clone.js","sourceRoot":"","sources":["../../../../src/utils/clone.ts"],"names":[],"mappings":";;AAOA,8BA4BC;AAnCD,uDAAuD;AACvD;;;;;GAKG;AACH,SAAgB,SAAS,CAAI,GAAM;IACjC,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,GAAG,YAAY,IAAI,EAAE,CAAC;QACxB,+DAA+D;QAC/D,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAQ,CAAC;IACxC,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,EAAW,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,mEAAmE;YACnE,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,+DAA+D;QAC/D,OAAO,OAAc,CAAC;IACxB,CAAC;IAED,MAAM,OAAO,GAAG,EAA4B,CAAC;IAC7C,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,GAAG,SAAS,CAAE,GAA+B,CAAC,GAAG,CAAC,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,OAAO,OAAY,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"clone.js","sourceRoot":"","sources":["../../../../src/utils/clone.ts"],"names":[],"mappings":";;AAOA,8BA0BC;AAhCD;;;;;GAKG;AACH,SAAgB,SAAS,CAAI,GAAM;IACjC,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,GAAG,YAAY,IAAI,EAAE,CAAC;QACxB,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAM,CAAC;IACtC,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,OAAO,GAAc,EAAE,CAAC;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAEpC,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,OAAY,CAAC;IACtB,CAAC;IAED,MAAM,OAAO,GAA4B,EAAE,CAAC;IAC5C,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,GAAG,SAAS,CAAE,GAA+B,CAAC,GAAG,CAAC,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,OAAO,OAAY,CAAC;AACtB,CAAC"}
@@ -2,10 +2,39 @@
2
2
  * History normalization utilities
3
3
  * Convert simplified history format to internal Event format
4
4
  */
5
- import type { Event } from "../types";
5
+ import type { Event, MessageEventData, ToolEventData, StatusEventData } from "../types";
6
6
  import type { History, HistoryItem } from "../types/history";
7
+ /**
8
+ * Convert a simplified history item to an internal Event
9
+ * @param item - The HistoryItem to convert
10
+ * @returns Event with proper type-safe structure
11
+ * @throws Error if the history item is malformed or has invalid data
12
+ */
13
+ export declare function historyItemToEvent(item: HistoryItem): Event<MessageEventData | ToolEventData | StatusEventData>;
14
+ /**
15
+ * Convert an array of HistoryItems to Events
16
+ * @param history - Array of HistoryItems to convert
17
+ * @returns Array of Events with proper type-safe structure
18
+ * @throws Error if any history item is malformed
19
+ */
20
+ export declare function historyToEvents(history: History): Event<MessageEventData | ToolEventData | StatusEventData>[];
21
+ /**
22
+ * Convert an Event back to a HistoryItem
23
+ * @param event - The Event to convert
24
+ * @returns HistoryItem with simplified structure
25
+ * @throws Error if the event is malformed or has invalid data
26
+ */
27
+ export declare function eventToHistoryItem(event: Event): HistoryItem;
28
+ /**
29
+ * Convert an array of Events back to HistoryItems
30
+ * @param events - Array of Events to convert
31
+ * @returns Array of HistoryItems with simplified structure
32
+ * @throws Error if any event is malformed
33
+ */
34
+ export declare function eventsToHistory(events: Event[]): History;
7
35
  /**
8
36
  * Normalize a simplified history array to internal Event array
37
+ * @deprecated Use historyToEvents instead
9
38
  */
10
39
  export declare function normalizeHistory(history: History): Event[];
11
40
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../../src/utils/history.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAoB,MAAM,UAAU,CAAC;AAExD,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AA2F7D;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK,EAAE,CAE1D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAEvE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,SAAS,CAAC,EAAE,KAAK,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC,GACD,WAAW,CAEb;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,GACf,WAAW,CAEb;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAE1D"}
1
+ {"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../../src/utils/history.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAExF,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAA0D,MAAM,kBAAkB,CAAC;AAErH;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,WAAW,GAAG,KAAK,CAAC,gBAAgB,GAAG,aAAa,GAAG,eAAe,CAAC,CAgH/G;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK,CAAC,gBAAgB,GAAG,aAAa,GAAG,eAAe,CAAC,EAAE,CAY7G;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,WAAW,CAmF5D;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAYxD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK,EAAE,CAE1D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAEvE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,SAAS,CAAC,EAAE,KAAK,CAAC;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC,CAAC,GACD,WAAW,CAEb;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,GACf,WAAW,CAEb;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAE1D"}
@@ -4,6 +4,10 @@
4
4
  * Convert simplified history format to internal Event format
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.historyItemToEvent = historyItemToEvent;
8
+ exports.historyToEvents = historyToEvents;
9
+ exports.eventToHistoryItem = eventToHistoryItem;
10
+ exports.eventsToHistory = eventsToHistory;
7
11
  exports.normalizeHistory = normalizeHistory;
8
12
  exports.userMessage = userMessage;
9
13
  exports.assistantMessage = assistantMessage;
@@ -12,25 +16,41 @@ exports.systemMessage = systemMessage;
12
16
  const types_1 = require("../types");
13
17
  /**
14
18
  * Convert a simplified history item to an internal Event
19
+ * @param item - The HistoryItem to convert
20
+ * @returns Event with proper type-safe structure
21
+ * @throws Error if the history item is malformed or has invalid data
15
22
  */
16
- function convertHistoryItemToEvent(item) {
23
+ function historyItemToEvent(item) {
24
+ if (!item || typeof item !== 'object') {
25
+ throw new Error('Invalid history item: must be a non-null object');
26
+ }
27
+ if (!item.role || typeof item.role !== 'string') {
28
+ throw new Error('Invalid history item: role is required and must be a string');
29
+ }
17
30
  const timestamp = new Date().toISOString();
18
31
  switch (item.role) {
19
32
  case "user": {
33
+ const userItem = item;
34
+ if (typeof userItem.content !== 'string') {
35
+ throw new Error('Invalid user history item: content must be a string');
36
+ }
20
37
  return {
21
38
  kind: types_1.EventKind.MESSAGE,
22
39
  source: types_1.MessageRole.USER,
23
40
  timestamp,
24
41
  data: {
25
42
  participant: {
26
- display_name: item.name || "User",
43
+ display_name: userItem.name || "User",
27
44
  },
28
- message: item.content,
45
+ message: userItem.content,
29
46
  },
30
47
  };
31
48
  }
32
49
  case "assistant": {
33
- // Handle assistant message with optional tool calls
50
+ const assistantItem = item;
51
+ if (assistantItem.content !== null && typeof assistantItem.content !== 'string') {
52
+ throw new Error('Invalid assistant history item: content must be a string or null');
53
+ }
34
54
  const event = {
35
55
  kind: types_1.EventKind.MESSAGE,
36
56
  source: types_1.MessageRole.ASSISTANT,
@@ -39,17 +59,31 @@ function convertHistoryItemToEvent(item) {
39
59
  participant: {
40
60
  display_name: "Assistant",
41
61
  },
42
- message: item.content || "",
62
+ message: assistantItem.content || "",
43
63
  },
44
64
  };
45
- // If there are tool calls, we need to create a separate tool event
46
- // But for now, we'll just store the tool calls in the message data
47
- if (item.tool_calls && item.tool_calls.length > 0) {
48
- event.data.toolCalls = item.tool_calls;
65
+ // If there are tool calls, validate and add them
66
+ if (assistantItem.tool_calls && assistantItem.tool_calls.length > 0) {
67
+ if (!Array.isArray(assistantItem.tool_calls)) {
68
+ throw new Error('Invalid assistant history item: tool_calls must be an array');
69
+ }
70
+ for (const toolCall of assistantItem.tool_calls) {
71
+ if (!toolCall.id || !toolCall.name || typeof toolCall.arguments !== 'object') {
72
+ throw new Error('Invalid tool call: id, name, and arguments are required');
73
+ }
74
+ }
75
+ event.data.toolCalls = assistantItem.tool_calls;
49
76
  }
50
77
  return event;
51
78
  }
52
79
  case "tool": {
80
+ const toolItem = item;
81
+ if (!toolItem.tool_call_id || typeof toolItem.tool_call_id !== 'string') {
82
+ throw new Error('Invalid tool history item: tool_call_id is required and must be a string');
83
+ }
84
+ if (!toolItem.name || typeof toolItem.name !== 'string') {
85
+ throw new Error('Invalid tool history item: name is required and must be a string');
86
+ }
53
87
  return {
54
88
  kind: types_1.EventKind.TOOL,
55
89
  source: types_1.MessageRole.AGENT,
@@ -57,10 +91,10 @@ function convertHistoryItemToEvent(item) {
57
91
  data: {
58
92
  tool_calls: [
59
93
  {
60
- tool_id: item.tool_call_id,
94
+ tool_id: toolItem.tool_call_id,
61
95
  arguments: {}, // Tool results don't have arguments
62
96
  result: {
63
- data: item.content,
97
+ data: toolItem.content,
64
98
  },
65
99
  },
66
100
  ],
@@ -68,6 +102,10 @@ function convertHistoryItemToEvent(item) {
68
102
  };
69
103
  }
70
104
  case "system": {
105
+ const systemItem = item;
106
+ if (typeof systemItem.content !== 'string') {
107
+ throw new Error('Invalid system history item: content must be a string');
108
+ }
71
109
  return {
72
110
  kind: types_1.EventKind.MESSAGE,
73
111
  source: types_1.MessageRole.SYSTEM,
@@ -76,30 +114,138 @@ function convertHistoryItemToEvent(item) {
76
114
  participant: {
77
115
  display_name: "System",
78
116
  },
79
- message: item.content,
117
+ message: systemItem.content,
80
118
  },
81
119
  };
82
120
  }
83
121
  default:
84
- // This should never happen due to TypeScript, but fallback just in case
122
+ throw new Error(`Invalid history item role: ${String(item.role)}`);
123
+ }
124
+ }
125
+ /**
126
+ * Convert an array of HistoryItems to Events
127
+ * @param history - Array of HistoryItems to convert
128
+ * @returns Array of Events with proper type-safe structure
129
+ * @throws Error if any history item is malformed
130
+ */
131
+ function historyToEvents(history) {
132
+ if (!Array.isArray(history)) {
133
+ throw new Error('Invalid history: must be an array');
134
+ }
135
+ return history.map((item, index) => {
136
+ try {
137
+ return historyItemToEvent(item);
138
+ }
139
+ catch (error) {
140
+ throw new Error(`Error converting history item at index ${index}: ${error instanceof Error ? error.message : 'Unknown error'}`);
141
+ }
142
+ });
143
+ }
144
+ /**
145
+ * Convert an Event back to a HistoryItem
146
+ * @param event - The Event to convert
147
+ * @returns HistoryItem with simplified structure
148
+ * @throws Error if the event is malformed or has invalid data
149
+ */
150
+ function eventToHistoryItem(event) {
151
+ if (!event || typeof event !== 'object') {
152
+ throw new Error('Invalid event: must be a non-null object');
153
+ }
154
+ if (!event.kind || !event.source || !event.data) {
155
+ throw new Error('Invalid event: kind, source, and data are required');
156
+ }
157
+ switch (event.kind) {
158
+ case types_1.EventKind.MESSAGE: {
159
+ const messageData = event.data;
160
+ if (!messageData.message && messageData.message !== '') {
161
+ throw new Error('Invalid message event: message is required');
162
+ }
163
+ switch (event.source) {
164
+ case types_1.MessageRole.USER: {
165
+ const userItem = {
166
+ role: "user",
167
+ content: messageData.message,
168
+ };
169
+ if (messageData.participant?.display_name && messageData.participant.display_name !== "User") {
170
+ userItem.name = messageData.participant.display_name;
171
+ }
172
+ return userItem;
173
+ }
174
+ case types_1.MessageRole.ASSISTANT: {
175
+ const assistantItem = {
176
+ role: "assistant",
177
+ content: messageData.message || null,
178
+ };
179
+ if (messageData.toolCalls && messageData.toolCalls.length > 0) {
180
+ assistantItem.tool_calls = messageData.toolCalls;
181
+ }
182
+ return assistantItem;
183
+ }
184
+ case types_1.MessageRole.SYSTEM: {
185
+ return {
186
+ role: "system",
187
+ content: messageData.message,
188
+ };
189
+ }
190
+ default:
191
+ throw new Error(`Unsupported message source for conversion: ${event.source}`);
192
+ }
193
+ }
194
+ case types_1.EventKind.TOOL: {
195
+ const toolData = event.data;
196
+ if (!toolData.tool_calls || !Array.isArray(toolData.tool_calls) || toolData.tool_calls.length === 0) {
197
+ throw new Error('Invalid tool event: tool_calls array is required and must not be empty');
198
+ }
199
+ const firstToolCall = toolData.tool_calls[0];
200
+ if (!firstToolCall.tool_id) {
201
+ throw new Error('Invalid tool call: tool_id is required');
202
+ }
203
+ const toolItem = {
204
+ role: "tool",
205
+ tool_call_id: firstToolCall.tool_id,
206
+ name: firstToolCall.tool_id, // Use tool_id as name for simplicity
207
+ content: firstToolCall.result?.data,
208
+ };
209
+ return toolItem;
210
+ }
211
+ case types_1.EventKind.STATUS: {
212
+ // Status events don't have a direct HistoryItem equivalent
213
+ // Convert to system message for compatibility
214
+ const statusData = event.data;
85
215
  return {
86
- kind: types_1.EventKind.MESSAGE,
87
- source: types_1.MessageRole.SYSTEM,
88
- timestamp,
89
- data: {
90
- participant: {
91
- display_name: "Unknown",
92
- },
93
- message: "Unknown message type",
94
- },
216
+ role: "system",
217
+ content: statusData.status || "Status update",
95
218
  };
219
+ }
220
+ default:
221
+ throw new Error(`Unsupported event kind for conversion: ${String(event.kind)}`);
222
+ }
223
+ }
224
+ /**
225
+ * Convert an array of Events back to HistoryItems
226
+ * @param events - Array of Events to convert
227
+ * @returns Array of HistoryItems with simplified structure
228
+ * @throws Error if any event is malformed
229
+ */
230
+ function eventsToHistory(events) {
231
+ if (!Array.isArray(events)) {
232
+ throw new Error('Invalid events: must be an array');
96
233
  }
234
+ return events.map((event, index) => {
235
+ try {
236
+ return eventToHistoryItem(event);
237
+ }
238
+ catch (error) {
239
+ throw new Error(`Error converting event at index ${index}: ${error instanceof Error ? error.message : 'Unknown error'}`);
240
+ }
241
+ });
97
242
  }
98
243
  /**
99
244
  * Normalize a simplified history array to internal Event array
245
+ * @deprecated Use historyToEvents instead
100
246
  */
101
247
  function normalizeHistory(history) {
102
- return history.map(convertHistoryItemToEvent);
248
+ return historyToEvents(history);
103
249
  }
104
250
  /**
105
251
  * Helper function to create a user message
@@ -1 +1 @@
1
- {"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../src/utils/history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../src/utils/history.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export { createSession, createSessionId, enterRoute, enterStep, mergeCollected,
6
6
  export { render, renderMany, renderTemplate, renderTemplateObject, formatKnowledgeBase, } from "./template";
7
7
  export { cloneDeep } from "./clone";
8
8
  export { getLastMessageFromHistory } from "./event";
9
- export { normalizeHistory, userMessage, assistantMessage, toolMessage, systemMessage, } from "./history";
9
+ export { normalizeHistory, historyItemToEvent, historyToEvents, eventToHistoryItem, eventsToHistory, userMessage, assistantMessage, toolMessage, systemMessage, } from "./history";
10
10
  export { LoggerLevel, logger } from "./logger";
11
11
  export type { RetryOptions } from "./retry";
12
12
  export { retry, withTimeoutAndRetry } from "./retry";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,eAAe,EACf,cAAc,EACd,cAAc,EACd,oBAAoB,GACrB,MAAM,MAAM,CAAC;AAGd,OAAO,EACL,aAAa,EACb,eAAe,EACf,UAAU,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,MAAM,EACN,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAGpD,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,aAAa,GACd,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAG/C,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,eAAe,EACf,cAAc,EACd,cAAc,EACd,oBAAoB,GACrB,MAAM,MAAM,CAAC;AAGd,OAAO,EACL,aAAa,EACb,eAAe,EACf,UAAU,EACV,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,MAAM,EACN,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAGpD,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,aAAa,GACd,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAG/C,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * Utility functions and helpers
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.withTimeoutAndRetry = exports.retry = exports.logger = exports.LoggerLevel = exports.systemMessage = exports.toolMessage = exports.assistantMessage = exports.userMessage = exports.normalizeHistory = exports.getLastMessageFromHistory = exports.cloneDeep = exports.formatKnowledgeBase = exports.renderTemplateObject = exports.renderTemplate = exports.renderMany = exports.render = exports.sessionDataToStep = exports.sessionStepToData = exports.mergeCollected = exports.enterStep = exports.enterRoute = exports.createSessionId = exports.createSession = exports.generateInlineToolId = exports.generateToolId = exports.generateStepId = exports.generateRouteId = void 0;
6
+ exports.withTimeoutAndRetry = exports.retry = exports.logger = exports.LoggerLevel = exports.systemMessage = exports.toolMessage = exports.assistantMessage = exports.userMessage = exports.eventsToHistory = exports.eventToHistoryItem = exports.historyToEvents = exports.historyItemToEvent = exports.normalizeHistory = exports.getLastMessageFromHistory = exports.cloneDeep = exports.formatKnowledgeBase = exports.renderTemplateObject = exports.renderTemplate = exports.renderMany = exports.render = exports.sessionDataToStep = exports.sessionStepToData = exports.mergeCollected = exports.enterStep = exports.enterRoute = exports.createSessionId = exports.createSession = exports.generateInlineToolId = exports.generateToolId = exports.generateStepId = exports.generateRouteId = void 0;
7
7
  // ID generation
8
8
  var id_1 = require("./id");
9
9
  Object.defineProperty(exports, "generateRouteId", { enumerable: true, get: function () { return id_1.generateRouteId; } });
@@ -35,6 +35,10 @@ Object.defineProperty(exports, "getLastMessageFromHistory", { enumerable: true,
35
35
  // History utilities
36
36
  var history_1 = require("./history");
37
37
  Object.defineProperty(exports, "normalizeHistory", { enumerable: true, get: function () { return history_1.normalizeHistory; } });
38
+ Object.defineProperty(exports, "historyItemToEvent", { enumerable: true, get: function () { return history_1.historyItemToEvent; } });
39
+ Object.defineProperty(exports, "historyToEvents", { enumerable: true, get: function () { return history_1.historyToEvents; } });
40
+ Object.defineProperty(exports, "eventToHistoryItem", { enumerable: true, get: function () { return history_1.eventToHistoryItem; } });
41
+ Object.defineProperty(exports, "eventsToHistory", { enumerable: true, get: function () { return history_1.eventsToHistory; } });
38
42
  Object.defineProperty(exports, "userMessage", { enumerable: true, get: function () { return history_1.userMessage; } });
39
43
  Object.defineProperty(exports, "assistantMessage", { enumerable: true, get: function () { return history_1.assistantMessage; } });
40
44
  Object.defineProperty(exports, "toolMessage", { enumerable: true, get: function () { return history_1.toolMessage; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,gBAAgB;AAChB,2BAKc;AAJZ,qGAAA,eAAe,OAAA;AACf,oGAAA,cAAc,OAAA;AACd,oGAAA,cAAc,OAAA;AACd,0GAAA,oBAAoB,OAAA;AAGtB,qBAAqB;AACrB,qCAQmB;AAPjB,wGAAA,aAAa,OAAA;AACb,0GAAA,eAAe,OAAA;AACf,qGAAA,UAAU,OAAA;AACV,oGAAA,SAAS,OAAA;AACT,yGAAA,cAAc,OAAA;AACd,4GAAA,iBAAiB,OAAA;AACjB,4GAAA,iBAAiB,OAAA;AAGnB,qBAAqB;AACrB,uCAMoB;AALlB,kGAAA,MAAM,OAAA;AACN,sGAAA,UAAU,OAAA;AACV,0GAAA,cAAc,OAAA;AACd,gHAAA,oBAAoB,OAAA;AACpB,+GAAA,mBAAmB,OAAA;AAGrB,oBAAoB;AACpB,iCAAoC;AAA3B,kGAAA,SAAS,OAAA;AAElB,kBAAkB;AAClB,iCAAoD;AAA3C,kHAAA,yBAAyB,OAAA;AAElC,oBAAoB;AACpB,qCAMmB;AALjB,2GAAA,gBAAgB,OAAA;AAChB,sGAAA,WAAW,OAAA;AACX,2GAAA,gBAAgB,OAAA;AAChB,sGAAA,WAAW,OAAA;AACX,wGAAA,aAAa,OAAA;AAGf,UAAU;AACV,mCAA+C;AAAtC,qGAAA,WAAW,OAAA;AAAE,gGAAA,MAAM,OAAA;AAI5B,iCAAqD;AAA5C,8FAAA,KAAK,OAAA;AAAE,4GAAA,mBAAmB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,gBAAgB;AAChB,2BAKc;AAJZ,qGAAA,eAAe,OAAA;AACf,oGAAA,cAAc,OAAA;AACd,oGAAA,cAAc,OAAA;AACd,0GAAA,oBAAoB,OAAA;AAGtB,qBAAqB;AACrB,qCAQmB;AAPjB,wGAAA,aAAa,OAAA;AACb,0GAAA,eAAe,OAAA;AACf,qGAAA,UAAU,OAAA;AACV,oGAAA,SAAS,OAAA;AACT,yGAAA,cAAc,OAAA;AACd,4GAAA,iBAAiB,OAAA;AACjB,4GAAA,iBAAiB,OAAA;AAGnB,qBAAqB;AACrB,uCAMoB;AALlB,kGAAA,MAAM,OAAA;AACN,sGAAA,UAAU,OAAA;AACV,0GAAA,cAAc,OAAA;AACd,gHAAA,oBAAoB,OAAA;AACpB,+GAAA,mBAAmB,OAAA;AAGrB,oBAAoB;AACpB,iCAAoC;AAA3B,kGAAA,SAAS,OAAA;AAElB,kBAAkB;AAClB,iCAAoD;AAA3C,kHAAA,yBAAyB,OAAA;AAElC,oBAAoB;AACpB,qCAUmB;AATjB,2GAAA,gBAAgB,OAAA;AAChB,6GAAA,kBAAkB,OAAA;AAClB,0GAAA,eAAe,OAAA;AACf,6GAAA,kBAAkB,OAAA;AAClB,0GAAA,eAAe,OAAA;AACf,sGAAA,WAAW,OAAA;AACX,2GAAA,gBAAgB,OAAA;AAChB,sGAAA,WAAW,OAAA;AACX,wGAAA,aAAa,OAAA;AAGf,UAAU;AACV,mCAA+C;AAAtC,qGAAA,WAAW,OAAA;AAAE,gGAAA,MAAM,OAAA;AAI5B,iCAAqD;AAA5C,8FAAA,KAAK,OAAA;AAAE,4GAAA,mBAAmB,OAAA"}
@@ -16,7 +16,7 @@ export declare function createSessionId(): string;
16
16
  export declare function cloneSession<TData>(session: SessionState<TData>): SessionState<TData>;
17
17
  /**
18
18
  * Helper to update session with new route
19
- * Preserves collected data per route in dataByRoute map
19
+ * With agent-level data, routes share the same data structure
20
20
  */
21
21
  export declare function enterRoute<TData = Record<string, unknown>>(session: SessionState<TData>, routeId: string, routeTitle: string): SessionState<TData>;
22
22
  /**
@@ -25,7 +25,7 @@ export declare function enterRoute<TData = Record<string, unknown>>(session: Ses
25
25
  export declare function enterStep<TData = Record<string, unknown>>(session: SessionState<TData>, stepId: string, stepDescription?: string): SessionState<TData>;
26
26
  /**
27
27
  * Helper to merge collected data into session
28
- * Updates both data and dataByRoute for current route
28
+ * Updates agent-level data structure
29
29
  */
30
30
  export declare function mergeCollected<TData = Record<string, unknown>>(session: SessionState<TData>, data: Partial<unknown>): SessionState<TData>;
31
31
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../src/utils/session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,SAAS,CAAC,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,GACzC,YAAY,CAAC,KAAK,CAAC,CAerB;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAExC;AACD;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAChC,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,GAC3B,YAAY,CAAC,KAAK,CAAC,CAErB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxD,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,EAC5B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACjB,YAAY,CAAC,KAAK,CAAC,CAkDrB;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvD,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,EAC5B,MAAM,EAAE,MAAM,EACd,eAAe,CAAC,EAAE,MAAM,GACvB,YAAY,CAAC,KAAK,CAAC,CAarB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5D,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,EAC5B,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,GACrB,YAAY,CAAC,KAAK,CAAC,CAqBrB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,GAC3B;IACD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;CAC1C,CAcA;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE;IACJ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;CAC3C,GACA,YAAY,CAAC,KAAK,CAAC,CAiCrB"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../src/utils/session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,SAAS,CAAC,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,GACzC,YAAY,CAAC,KAAK,CAAC,CAcrB;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAExC;AACD;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAChC,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,GAC3B,YAAY,CAAC,KAAK,CAAC,CAErB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxD,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,EAC5B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACjB,YAAY,CAAC,KAAK,CAAC,CAoCrB;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvD,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,EAC5B,MAAM,EAAE,MAAM,EACd,eAAe,CAAC,EAAE,MAAM,GACvB,YAAY,CAAC,KAAK,CAAC,CAarB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5D,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,EAC5B,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,GACrB,YAAY,CAAC,KAAK,CAAC,CAcrB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,GAC3B;IACD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;CAC1C,CAaA;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/D,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE;IACJ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;CAC3C,GACA,YAAY,CAAC,KAAK,CAAC,CA+BrB"}