@copilotkit/runtime 1.50.0-beta.2 → 1.50.0-beta.4

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 (252) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/chunk-27JKTS6P.mjs +1704 -0
  3. package/dist/chunk-27JKTS6P.mjs.map +1 -0
  4. package/dist/chunk-2GPTVDTO.mjs +25 -0
  5. package/dist/chunk-2GPTVDTO.mjs.map +1 -0
  6. package/dist/chunk-2OZAGFV3.mjs +43 -0
  7. package/dist/chunk-2OZAGFV3.mjs.map +1 -0
  8. package/dist/chunk-3AJVKDZX.mjs +3097 -0
  9. package/dist/chunk-3AJVKDZX.mjs.map +1 -0
  10. package/dist/chunk-45RCC3ZS.mjs +25 -0
  11. package/dist/chunk-45RCC3ZS.mjs.map +1 -0
  12. package/dist/chunk-4EHJ4XFJ.mjs +25 -0
  13. package/dist/chunk-4EHJ4XFJ.mjs.map +1 -0
  14. package/dist/chunk-4IANB4TC.mjs +25 -0
  15. package/dist/chunk-4IANB4TC.mjs.map +1 -0
  16. package/dist/chunk-4KES76K3.mjs +74 -0
  17. package/dist/chunk-4KES76K3.mjs.map +1 -0
  18. package/dist/chunk-4OGE3SLW.mjs +3100 -0
  19. package/dist/chunk-4OGE3SLW.mjs.map +1 -0
  20. package/dist/chunk-54YJBMCP.mjs +3097 -0
  21. package/dist/chunk-54YJBMCP.mjs.map +1 -0
  22. package/dist/chunk-62NE5S6M.mjs +226 -0
  23. package/dist/chunk-62NE5S6M.mjs.map +1 -0
  24. package/dist/chunk-6ER4SZYH.mjs +74 -0
  25. package/dist/chunk-6ER4SZYH.mjs.map +1 -0
  26. package/dist/chunk-6TNSLHVR.mjs +74 -0
  27. package/dist/chunk-6TNSLHVR.mjs.map +1 -0
  28. package/dist/chunk-6XRUR5UK.mjs +1 -0
  29. package/dist/chunk-6XRUR5UK.mjs.map +1 -0
  30. package/dist/chunk-7V4BK7TZ.mjs +25 -0
  31. package/dist/chunk-7V4BK7TZ.mjs.map +1 -0
  32. package/dist/chunk-7YZIEXD2.mjs +74 -0
  33. package/dist/chunk-7YZIEXD2.mjs.map +1 -0
  34. package/dist/chunk-A4XHOAFU.mjs +25 -0
  35. package/dist/chunk-A4XHOAFU.mjs.map +1 -0
  36. package/dist/chunk-A555KEAD.mjs +6020 -0
  37. package/dist/chunk-A555KEAD.mjs.map +1 -0
  38. package/dist/chunk-AF73TFTX.mjs +74 -0
  39. package/dist/chunk-AF73TFTX.mjs.map +1 -0
  40. package/dist/chunk-AMUJQ6IR.mjs +50 -0
  41. package/dist/chunk-AMUJQ6IR.mjs.map +1 -0
  42. package/dist/chunk-AQG2SVCA.mjs +25 -0
  43. package/dist/chunk-AQG2SVCA.mjs.map +1 -0
  44. package/dist/chunk-BJZHMXND.mjs +74 -0
  45. package/dist/chunk-BJZHMXND.mjs.map +1 -0
  46. package/dist/chunk-CB2OJXF6.mjs +25 -0
  47. package/dist/chunk-CB2OJXF6.mjs.map +1 -0
  48. package/dist/chunk-CEOMFPJU.mjs +6020 -0
  49. package/dist/chunk-CEOMFPJU.mjs.map +1 -0
  50. package/dist/chunk-CZVLR7CC.mjs +175 -0
  51. package/dist/chunk-CZVLR7CC.mjs.map +1 -0
  52. package/dist/chunk-DCEEHMLJ.mjs +1127 -0
  53. package/dist/chunk-DCEEHMLJ.mjs.map +1 -0
  54. package/dist/chunk-DE3CLKUG.mjs +25 -0
  55. package/dist/chunk-DE3CLKUG.mjs.map +1 -0
  56. package/dist/chunk-DTPRUTNV.mjs +25 -0
  57. package/dist/chunk-DTPRUTNV.mjs.map +1 -0
  58. package/dist/chunk-ERUOA47O.mjs +626 -0
  59. package/dist/chunk-ERUOA47O.mjs.map +1 -0
  60. package/dist/chunk-ESSRC64W.mjs +74 -0
  61. package/dist/chunk-ESSRC64W.mjs.map +1 -0
  62. package/dist/chunk-FHD4JECV.mjs +33 -0
  63. package/dist/chunk-FHD4JECV.mjs.map +1 -0
  64. package/dist/chunk-GRAN6K6N.mjs +25 -0
  65. package/dist/chunk-GRAN6K6N.mjs.map +1 -0
  66. package/dist/chunk-I27F2UPA.mjs +175 -0
  67. package/dist/chunk-I27F2UPA.mjs.map +1 -0
  68. package/dist/chunk-IAZKTOQW.mjs +25 -0
  69. package/dist/chunk-IAZKTOQW.mjs.map +1 -0
  70. package/dist/chunk-J6XZ5MFB.mjs +25 -0
  71. package/dist/chunk-J6XZ5MFB.mjs.map +1 -0
  72. package/dist/chunk-JJ32MA4C.mjs +73 -0
  73. package/dist/chunk-JJ32MA4C.mjs.map +1 -0
  74. package/dist/chunk-JJY4ZTHQ.mjs +25 -0
  75. package/dist/chunk-JJY4ZTHQ.mjs.map +1 -0
  76. package/dist/chunk-KEYLBFU2.mjs +3117 -0
  77. package/dist/chunk-KEYLBFU2.mjs.map +1 -0
  78. package/dist/chunk-KQ53L4WZ.mjs +3094 -0
  79. package/dist/chunk-KQ53L4WZ.mjs.map +1 -0
  80. package/dist/chunk-KTELVQ67.mjs +3098 -0
  81. package/dist/chunk-KTELVQ67.mjs.map +1 -0
  82. package/dist/chunk-LPEPX6NH.mjs +25 -0
  83. package/dist/chunk-LPEPX6NH.mjs.map +1 -0
  84. package/dist/chunk-MDXE55DK.mjs +3117 -0
  85. package/dist/chunk-MDXE55DK.mjs.map +1 -0
  86. package/dist/chunk-MMFUVOXH.mjs +73 -0
  87. package/dist/chunk-MMFUVOXH.mjs.map +1 -0
  88. package/dist/chunk-N3Y4U66N.mjs +253 -0
  89. package/dist/chunk-N3Y4U66N.mjs.map +1 -0
  90. package/dist/chunk-O7UYB4MH.mjs +25 -0
  91. package/dist/chunk-O7UYB4MH.mjs.map +1 -0
  92. package/dist/chunk-OFNVQHNM.mjs +3089 -0
  93. package/dist/chunk-OFNVQHNM.mjs.map +1 -0
  94. package/dist/chunk-OFSV5GET.mjs +3074 -0
  95. package/dist/chunk-OFSV5GET.mjs.map +1 -0
  96. package/dist/chunk-OMRST67R.mjs +25 -0
  97. package/dist/chunk-OMRST67R.mjs.map +1 -0
  98. package/dist/chunk-OWIGJONH.mjs +275 -0
  99. package/dist/chunk-OWIGJONH.mjs.map +1 -0
  100. package/dist/chunk-PRZHE74A.mjs +25 -0
  101. package/dist/chunk-PRZHE74A.mjs.map +1 -0
  102. package/dist/chunk-PTYRVXXP.mjs +80 -0
  103. package/dist/chunk-PTYRVXXP.mjs.map +1 -0
  104. package/dist/chunk-R22B5CCO.mjs +25 -0
  105. package/dist/chunk-R22B5CCO.mjs.map +1 -0
  106. package/dist/chunk-SHBDMA63.mjs +141 -0
  107. package/dist/chunk-SHBDMA63.mjs.map +1 -0
  108. package/dist/chunk-SPVXBPRA.mjs +74 -0
  109. package/dist/chunk-SPVXBPRA.mjs.map +1 -0
  110. package/dist/chunk-T72G46ME.mjs +25 -0
  111. package/dist/chunk-T72G46ME.mjs.map +1 -0
  112. package/dist/chunk-TGELROPU.mjs +25 -0
  113. package/dist/chunk-TGELROPU.mjs.map +1 -0
  114. package/dist/chunk-UNX4IAAD.mjs +25 -0
  115. package/dist/chunk-UNX4IAAD.mjs.map +1 -0
  116. package/dist/chunk-V4DHVC7M.mjs +3085 -0
  117. package/dist/chunk-V4DHVC7M.mjs.map +1 -0
  118. package/dist/chunk-VVRFOB66.mjs +25 -0
  119. package/dist/chunk-VVRFOB66.mjs.map +1 -0
  120. package/dist/chunk-W6NVBYM6.mjs +80 -0
  121. package/dist/chunk-W6NVBYM6.mjs.map +1 -0
  122. package/dist/chunk-W7MBACGC.mjs +74 -0
  123. package/dist/chunk-W7MBACGC.mjs.map +1 -0
  124. package/dist/chunk-WMD4XZZS.mjs +25 -0
  125. package/dist/chunk-WMD4XZZS.mjs.map +1 -0
  126. package/dist/chunk-WX2ZNCRT.mjs +74 -0
  127. package/dist/chunk-WX2ZNCRT.mjs.map +1 -0
  128. package/dist/chunk-XWBDEXDA.mjs +153 -0
  129. package/dist/chunk-XWBDEXDA.mjs.map +1 -0
  130. package/dist/chunk-Y2Z62E2T.mjs +74 -0
  131. package/dist/chunk-Y2Z62E2T.mjs.map +1 -0
  132. package/dist/chunk-YO4I6RVI.mjs +25 -0
  133. package/dist/chunk-YO4I6RVI.mjs.map +1 -0
  134. package/dist/chunk-Z6Q5IW6I.mjs +3098 -0
  135. package/dist/chunk-Z6Q5IW6I.mjs.map +1 -0
  136. package/dist/chunk-Z726O3G2.mjs +25 -0
  137. package/dist/chunk-Z726O3G2.mjs.map +1 -0
  138. package/dist/chunk-ZE4SMZZR.mjs +3097 -0
  139. package/dist/chunk-ZE4SMZZR.mjs.map +1 -0
  140. package/dist/chunk-ZULZB33C.mjs +73 -0
  141. package/dist/chunk-ZULZB33C.mjs.map +1 -0
  142. package/dist/chunk-ZVRGXMY7.mjs +25 -0
  143. package/dist/chunk-ZVRGXMY7.mjs.map +1 -0
  144. package/dist/chunk-ZZ35WBYQ.mjs +25 -0
  145. package/dist/chunk-ZZ35WBYQ.mjs.map +1 -0
  146. package/dist/graphql/message-conversion/index.d.ts +18 -0
  147. package/dist/graphql/message-conversion/index.js +725 -0
  148. package/dist/graphql/message-conversion/index.js.map +1 -0
  149. package/dist/graphql/message-conversion/index.mjs +245 -0
  150. package/dist/graphql/message-conversion/index.mjs.map +1 -0
  151. package/dist/graphql/types/base/index.d.ts +6 -0
  152. package/dist/graphql/types/base/index.js +63 -0
  153. package/dist/graphql/types/base/index.js.map +1 -0
  154. package/dist/graphql/types/base/index.mjs +8 -0
  155. package/dist/graphql/types/base/index.mjs.map +1 -0
  156. package/dist/graphql/types/converted/index.d.ts +2 -0
  157. package/dist/graphql/types/converted/index.js +200 -0
  158. package/dist/graphql/types/converted/index.js.map +1 -0
  159. package/dist/graphql/types/converted/index.mjs +19 -0
  160. package/dist/graphql/types/converted/index.mjs.map +1 -0
  161. package/dist/groq-adapter-540da9c3.d.ts +331 -0
  162. package/dist/groq-adapter-a6f5e9d2.d.ts +331 -0
  163. package/dist/groq-adapter-c8aec5c5.d.ts +321 -0
  164. package/dist/index-96b330da.d.ts +119 -0
  165. package/dist/index-adbd78f1.d.ts +154 -0
  166. package/dist/index.d.ts +71 -281
  167. package/dist/index.js +294 -277
  168. package/dist/index.js.map +1 -1
  169. package/dist/index.mjs +287 -266
  170. package/dist/index.mjs.map +1 -1
  171. package/dist/langgraph.d.ts +284 -0
  172. package/dist/langgraph.js +211 -0
  173. package/dist/langgraph.js.map +1 -0
  174. package/dist/langgraph.mjs +206 -0
  175. package/dist/langgraph.mjs.map +1 -0
  176. package/dist/langserve-0c6100e3.d.ts +257 -0
  177. package/dist/langserve-978d5790.d.ts +243 -0
  178. package/dist/langserve-9fc76ce5.d.ts +243 -0
  179. package/dist/lib/cloud/index.d.ts +6 -0
  180. package/dist/lib/cloud/index.js +18 -0
  181. package/dist/lib/cloud/index.js.map +1 -0
  182. package/dist/lib/cloud/index.mjs +1 -0
  183. package/dist/lib/cloud/index.mjs.map +1 -0
  184. package/dist/lib/index.d.ts +212 -0
  185. package/dist/lib/index.js +7843 -0
  186. package/dist/lib/index.js.map +1 -0
  187. package/dist/lib/index.mjs +76 -0
  188. package/dist/lib/index.mjs.map +1 -0
  189. package/dist/lib/integrations/index.d.ts +34 -0
  190. package/dist/lib/integrations/index.js +3052 -0
  191. package/dist/lib/integrations/index.js.map +1 -0
  192. package/dist/lib/integrations/index.mjs +37 -0
  193. package/dist/lib/integrations/index.mjs.map +1 -0
  194. package/dist/lib/integrations/nest/index.d.ts +15 -0
  195. package/dist/lib/integrations/nest/index.js +2959 -0
  196. package/dist/lib/integrations/nest/index.js.map +1 -0
  197. package/dist/lib/integrations/nest/index.mjs +14 -0
  198. package/dist/lib/integrations/nest/index.mjs.map +1 -0
  199. package/dist/lib/integrations/node-express/index.d.ts +15 -0
  200. package/dist/lib/integrations/node-express/index.js +2959 -0
  201. package/dist/lib/integrations/node-express/index.js.map +1 -0
  202. package/dist/lib/integrations/node-express/index.mjs +14 -0
  203. package/dist/lib/integrations/node-express/index.mjs.map +1 -0
  204. package/dist/lib/integrations/node-http/index.d.ts +15 -0
  205. package/dist/lib/integrations/node-http/index.js +2945 -0
  206. package/dist/lib/integrations/node-http/index.js.map +1 -0
  207. package/dist/lib/integrations/node-http/index.mjs +13 -0
  208. package/dist/lib/integrations/node-http/index.mjs.map +1 -0
  209. package/dist/service-adapters/index.d.ts +162 -0
  210. package/dist/service-adapters/index.js +1787 -0
  211. package/dist/service-adapters/index.js.map +1 -0
  212. package/dist/service-adapters/index.mjs +34 -0
  213. package/dist/service-adapters/index.mjs.map +1 -0
  214. package/dist/service-adapters/shared/index.d.ts +9 -0
  215. package/dist/service-adapters/shared/index.js +72 -0
  216. package/dist/service-adapters/shared/index.js.map +1 -0
  217. package/dist/service-adapters/shared/index.mjs +8 -0
  218. package/dist/service-adapters/shared/index.mjs.map +1 -0
  219. package/dist/shared-0a7346ce.d.ts +466 -0
  220. package/dist/shared-35c6eb04.d.ts +448 -0
  221. package/dist/shared-9ed1dc31.d.ts +414 -0
  222. package/dist/shared-da5708fe.d.ts +449 -0
  223. package/dist/utils/index.d.ts +65 -0
  224. package/dist/utils/index.js +175 -0
  225. package/dist/utils/index.js.map +1 -0
  226. package/dist/utils/index.mjs +12 -0
  227. package/dist/utils/index.mjs.map +1 -0
  228. package/dist/v2/index.d.ts +1 -0
  229. package/dist/v2/index.js +7 -0
  230. package/dist/v2/index.js.map +1 -1
  231. package/dist/v2/index.mjs +1 -0
  232. package/dist/v2/index.mjs.map +1 -1
  233. package/package.json +50 -17
  234. package/src/langgraph.ts +1 -0
  235. package/src/lib/index.ts +41 -1
  236. package/src/lib/integrations/node-http/index.ts +129 -10
  237. package/src/lib/runtime/agent-integrations/{langgraph.agent.ts → langgraph/agent.ts} +5 -30
  238. package/src/lib/runtime/agent-integrations/langgraph/consts.ts +34 -0
  239. package/src/lib/runtime/agent-integrations/langgraph/index.ts +2 -0
  240. package/src/lib/runtime/copilot-runtime.ts +17 -40
  241. package/src/service-adapters/anthropic/anthropic-adapter.ts +16 -3
  242. package/src/service-adapters/bedrock/bedrock-adapter.ts +4 -1
  243. package/src/service-adapters/experimental/ollama/ollama-adapter.ts +2 -1
  244. package/src/service-adapters/google/google-genai-adapter.ts +9 -4
  245. package/src/service-adapters/groq/groq-adapter.ts +16 -3
  246. package/src/service-adapters/langchain/langchain-adapter.ts +5 -3
  247. package/src/service-adapters/langchain/langserve.ts +2 -1
  248. package/src/service-adapters/openai/openai-adapter.ts +17 -3
  249. package/src/service-adapters/openai/openai-assistant-adapter.ts +26 -11
  250. package/src/service-adapters/unify/unify-adapter.ts +3 -1
  251. package/src/v2/index.ts +1 -0
  252. package/tsup.config.ts +5 -2
@@ -0,0 +1,206 @@
1
+ import { map } from 'rxjs';
2
+ import { LangGraphAgent as LangGraphAgent$1 } from '@ag-ui/langgraph';
3
+ export { LangGraphHttpAgent } from '@ag-ui/langgraph';
4
+ import { EventType } from '@ag-ui/client';
5
+
6
+ var __defProp = Object.defineProperty;
7
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
8
+
9
+ // src/lib/runtime/agent-integrations/langgraph/consts.ts
10
+ var CustomEventNames;
11
+ (function(CustomEventNames3) {
12
+ CustomEventNames3["CopilotKitManuallyEmitMessage"] = "copilotkit_manually_emit_message";
13
+ CustomEventNames3["CopilotKitManuallyEmitToolCall"] = "copilotkit_manually_emit_tool_call";
14
+ CustomEventNames3["CopilotKitManuallyEmitIntermediateState"] = "copilotkit_manually_emit_intermediate_state";
15
+ CustomEventNames3["CopilotKitExit"] = "copilotkit_exit";
16
+ })(CustomEventNames || (CustomEventNames = {}));
17
+
18
+ // src/agents/langgraph/events.ts
19
+ var LangGraphEventTypes;
20
+ (function(LangGraphEventTypes2) {
21
+ LangGraphEventTypes2["OnChainStart"] = "on_chain_start";
22
+ LangGraphEventTypes2["OnChainStream"] = "on_chain_stream";
23
+ LangGraphEventTypes2["OnChainEnd"] = "on_chain_end";
24
+ LangGraphEventTypes2["OnChatModelStart"] = "on_chat_model_start";
25
+ LangGraphEventTypes2["OnChatModelStream"] = "on_chat_model_stream";
26
+ LangGraphEventTypes2["OnChatModelEnd"] = "on_chat_model_end";
27
+ LangGraphEventTypes2["OnToolStart"] = "on_tool_start";
28
+ LangGraphEventTypes2["OnToolEnd"] = "on_tool_end";
29
+ LangGraphEventTypes2["OnCopilotKitStateSync"] = "on_copilotkit_state_sync";
30
+ LangGraphEventTypes2["OnCopilotKitEmitMessage"] = "on_copilotkit_emit_message";
31
+ LangGraphEventTypes2["OnCopilotKitEmitToolCall"] = "on_copilotkit_emit_tool_call";
32
+ LangGraphEventTypes2["OnCustomEvent"] = "on_custom_event";
33
+ LangGraphEventTypes2["OnInterrupt"] = "on_interrupt";
34
+ LangGraphEventTypes2["OnCopilotKitInterrupt"] = "on_copilotkit_interrupt";
35
+ LangGraphEventTypes2["OnCopilotKitError"] = "on_copilotkit_error";
36
+ })(LangGraphEventTypes || (LangGraphEventTypes = {}));
37
+ var MetaEventNames;
38
+ (function(MetaEventNames2) {
39
+ MetaEventNames2["LangGraphInterruptEvent"] = "LangGraphInterruptEvent";
40
+ MetaEventNames2["CopilotKitLangGraphInterruptEvent"] = "CopilotKitLangGraphInterruptEvent";
41
+ })(MetaEventNames || (MetaEventNames = {}));
42
+ var CustomEventNames2;
43
+ (function(CustomEventNames3) {
44
+ CustomEventNames3["CopilotKitManuallyEmitMessage"] = "copilotkit_manually_emit_message";
45
+ CustomEventNames3["CopilotKitManuallyEmitToolCall"] = "copilotkit_manually_emit_tool_call";
46
+ CustomEventNames3["CopilotKitManuallyEmitIntermediateState"] = "copilotkit_manually_emit_intermediate_state";
47
+ CustomEventNames3["CopilotKitExit"] = "copilotkit_exit";
48
+ })(CustomEventNames2 || (CustomEventNames2 = {}));
49
+ var LangGraphAgent = class extends LangGraphAgent$1 {
50
+ constructor(config) {
51
+ super(config);
52
+ }
53
+ // @ts-ignore
54
+ clone() {
55
+ return new LangGraphAgent(this.config);
56
+ }
57
+ dispatchEvent(event) {
58
+ if (event.type === EventType.CUSTOM) {
59
+ const customEvent = event;
60
+ if (customEvent.name === CustomEventNames.CopilotKitManuallyEmitMessage) {
61
+ this.subscriber.next({
62
+ type: EventType.TEXT_MESSAGE_START,
63
+ role: "assistant",
64
+ messageId: customEvent.value.message_id,
65
+ rawEvent: event
66
+ });
67
+ this.subscriber.next({
68
+ type: EventType.TEXT_MESSAGE_CONTENT,
69
+ messageId: customEvent.value.message_id,
70
+ delta: customEvent.value.message,
71
+ rawEvent: event
72
+ });
73
+ this.subscriber.next({
74
+ type: EventType.TEXT_MESSAGE_END,
75
+ messageId: customEvent.value.message_id,
76
+ rawEvent: event
77
+ });
78
+ return true;
79
+ }
80
+ if (customEvent.name === CustomEventNames.CopilotKitManuallyEmitToolCall) {
81
+ this.subscriber.next({
82
+ type: EventType.TOOL_CALL_START,
83
+ toolCallId: customEvent.value.id,
84
+ toolCallName: customEvent.value.name,
85
+ parentMessageId: customEvent.value.id,
86
+ rawEvent: event
87
+ });
88
+ this.subscriber.next({
89
+ type: EventType.TOOL_CALL_ARGS,
90
+ toolCallId: customEvent.value.id,
91
+ delta: customEvent.value.args,
92
+ rawEvent: event
93
+ });
94
+ this.subscriber.next({
95
+ type: EventType.TOOL_CALL_END,
96
+ toolCallId: customEvent.value.id,
97
+ rawEvent: event
98
+ });
99
+ return true;
100
+ }
101
+ if (customEvent.name === CustomEventNames.CopilotKitManuallyEmitIntermediateState) {
102
+ this.activeRun.manuallyEmittedState = customEvent.value;
103
+ this.dispatchEvent({
104
+ type: EventType.STATE_SNAPSHOT,
105
+ snapshot: this.getStateSnapshot({
106
+ values: this.activeRun.manuallyEmittedState
107
+ }),
108
+ rawEvent: event
109
+ });
110
+ return true;
111
+ }
112
+ if (customEvent.name === CustomEventNames.CopilotKitExit) {
113
+ this.subscriber.next({
114
+ type: EventType.CUSTOM,
115
+ name: "Exit",
116
+ value: true
117
+ });
118
+ return true;
119
+ }
120
+ }
121
+ const rawEvent = event.rawEvent;
122
+ if (!rawEvent) {
123
+ this.subscriber.next(event);
124
+ return true;
125
+ }
126
+ const isMessageEvent = event.type === EventType.TEXT_MESSAGE_START || event.type === EventType.TEXT_MESSAGE_CONTENT || event.type === EventType.TEXT_MESSAGE_END;
127
+ const isToolEvent = event.type === EventType.TOOL_CALL_START || event.type === EventType.TOOL_CALL_ARGS || event.type === EventType.TOOL_CALL_END;
128
+ if ("copilotkit:emit-tool-calls" in (rawEvent.metadata || {})) {
129
+ if (rawEvent.metadata["copilotkit:emit-tool-calls"] === false && isToolEvent) {
130
+ return false;
131
+ }
132
+ }
133
+ if ("copilotkit:emit-messages" in (rawEvent.metadata || {})) {
134
+ if (rawEvent.metadata["copilotkit:emit-messages"] === false && isMessageEvent) {
135
+ return false;
136
+ }
137
+ }
138
+ this.subscriber.next(event);
139
+ return true;
140
+ }
141
+ // @ts-ignore
142
+ run(input) {
143
+ return super.run(input).pipe(map((processedEvent) => {
144
+ var _a, _b, _c, _d, _e;
145
+ if (processedEvent.type === EventType.RAW) {
146
+ const event = processedEvent.event ?? processedEvent.rawEvent;
147
+ const eventType = event.event;
148
+ const toolCallData = (_c = (_b = (_a = event.data) == null ? void 0 : _a.chunk) == null ? void 0 : _b.tool_call_chunks) == null ? void 0 : _c[0];
149
+ const toolCallUsedToPredictState = (_e = (_d = event.metadata) == null ? void 0 : _d["copilotkit:emit-intermediate-state"]) == null ? void 0 : _e.some((predictStateTool) => predictStateTool.tool === (toolCallData == null ? void 0 : toolCallData.name));
150
+ if (eventType === LangGraphEventTypes.OnChatModelStream && toolCallUsedToPredictState) {
151
+ return {
152
+ type: EventType.CUSTOM,
153
+ name: "PredictState",
154
+ value: event.metadata["copilotkit:emit-intermediate-state"]
155
+ };
156
+ }
157
+ }
158
+ return processedEvent;
159
+ }));
160
+ }
161
+ langGraphDefaultMergeState(state, messages, input) {
162
+ const aguiMergedState = super.langGraphDefaultMergeState(state, messages, input);
163
+ const { tools: returnedTools, "ag-ui": agui } = aguiMergedState;
164
+ const rawCombinedTools = [
165
+ ...returnedTools ?? [],
166
+ ...(agui == null ? void 0 : agui.tools) ?? []
167
+ ];
168
+ const combinedTools = Array.from(new Map(rawCombinedTools.map((t) => [
169
+ (t == null ? void 0 : t.id) ?? (t == null ? void 0 : t.name) ?? (t == null ? void 0 : t.key) ?? JSON.stringify(t),
170
+ t
171
+ ])).values());
172
+ return {
173
+ ...aguiMergedState,
174
+ copilotkit: {
175
+ actions: combinedTools,
176
+ context: (agui == null ? void 0 : agui.context) ?? []
177
+ }
178
+ };
179
+ }
180
+ async getSchemaKeys() {
181
+ const CONSTANT_KEYS = [
182
+ "copilotkit"
183
+ ];
184
+ const schemaKeys = await super.getSchemaKeys();
185
+ return {
186
+ config: schemaKeys.config,
187
+ input: schemaKeys.input ? [
188
+ ...schemaKeys.input,
189
+ ...CONSTANT_KEYS
190
+ ] : null,
191
+ output: schemaKeys.output ? [
192
+ ...schemaKeys.output,
193
+ ...CONSTANT_KEYS
194
+ ] : null,
195
+ context: schemaKeys.context ? [
196
+ ...schemaKeys.context,
197
+ ...CONSTANT_KEYS
198
+ ] : null
199
+ };
200
+ }
201
+ };
202
+ __name(LangGraphAgent, "LangGraphAgent");
203
+
204
+ export { CustomEventNames, LangGraphAgent };
205
+ //# sourceMappingURL=out.js.map
206
+ //# sourceMappingURL=langgraph.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/lib/runtime/agent-integrations/langgraph/consts.ts","../src/lib/runtime/agent-integrations/langgraph/agent.ts","../src/agents/langgraph/events.ts"],"names":["CustomEventNames","map","LangGraphEventTypes","MetaEventNames","LangGraphAgent","AGUILangGraphAgent","LangGraphHttpAgent","EventType","constructor","config","clone","dispatchEvent","event","type","CUSTOM","customEvent","name","CopilotKitManuallyEmitMessage","subscriber","next","TEXT_MESSAGE_START","role","messageId","value","message_id","rawEvent","TEXT_MESSAGE_CONTENT","delta","message","TEXT_MESSAGE_END","CopilotKitManuallyEmitToolCall","TOOL_CALL_START","toolCallId","id","toolCallName","parentMessageId","TOOL_CALL_ARGS","args","TOOL_CALL_END","CopilotKitManuallyEmitIntermediateState","activeRun","manuallyEmittedState","STATE_SNAPSHOT","snapshot","getStateSnapshot","values","CopilotKitExit","isMessageEvent","isToolEvent","metadata","run","input","pipe","processedEvent","RAW","eventType","toolCallData","data","chunk","tool_call_chunks","toolCallUsedToPredictState","some","predictStateTool","tool","OnChatModelStream","langGraphDefaultMergeState","state","messages","aguiMergedState","tools","returnedTools","agui","rawCombinedTools","combinedTools","Array","from","Map","t","key","JSON","stringify","copilotkit","actions","context","getSchemaKeys","CONSTANT_KEYS","schemaKeys","output"],"mappings":"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","sourcesContent":["/**\n * Constants for LangGraph integration.\n * This file is separate from langgraph.agent.ts to avoid pulling in @ag-ui/langgraph\n * when only these constants are needed.\n */\n\nimport {\n TextMessageStartEvent,\n TextMessageContentEvent,\n TextMessageEndEvent,\n ToolCallStartEvent,\n ToolCallArgsEvent,\n ToolCallEndEvent,\n} from \"@ag-ui/client\";\n\nexport type TextMessageEvents =\n | TextMessageStartEvent\n | TextMessageContentEvent\n | TextMessageEndEvent;\n\nexport type ToolCallEvents = ToolCallStartEvent | ToolCallArgsEvent | ToolCallEndEvent;\n\nexport enum CustomEventNames {\n CopilotKitManuallyEmitMessage = \"copilotkit_manually_emit_message\",\n CopilotKitManuallyEmitToolCall = \"copilotkit_manually_emit_tool_call\",\n CopilotKitManuallyEmitIntermediateState = \"copilotkit_manually_emit_intermediate_state\",\n CopilotKitExit = \"copilotkit_exit\",\n}\n\nexport interface PredictStateTool {\n tool: string;\n state_key: string;\n tool_argument: string;\n}\n","import { map } from \"rxjs\";\nimport { LangGraphEventTypes } from \"../../../../agents/langgraph/events\";\nimport { RawEvent } from \"@ag-ui/core\";\nimport {\n LangGraphAgent as AGUILangGraphAgent,\n LangGraphHttpAgent,\n type LangGraphAgentConfig,\n ProcessedEvents,\n SchemaKeys,\n type State,\n StateEnrichment,\n} from \"@ag-ui/langgraph\";\nimport { Message as LangGraphMessage } from \"@langchain/langgraph-sdk/dist/types.messages\";\nimport { ThreadState } from \"@langchain/langgraph-sdk\";\n\ninterface CopilotKitStateEnrichment {\n copilotkit: {\n actions: StateEnrichment[\"ag-ui\"][\"tools\"];\n context: StateEnrichment[\"ag-ui\"][\"context\"];\n };\n}\n\nimport { RunAgentInput, EventType, CustomEvent } from \"@ag-ui/client\";\n\n// Import and re-export from separate file to maintain API compatibility\nimport { CustomEventNames, TextMessageEvents, ToolCallEvents, PredictStateTool } from \"./consts\";\nexport { CustomEventNames };\n\nexport class LangGraphAgent extends AGUILangGraphAgent {\n constructor(config: LangGraphAgentConfig) {\n super(config);\n }\n\n // @ts-ignore\n public clone() {\n return new LangGraphAgent(this.config);\n }\n\n dispatchEvent(event: ProcessedEvents) {\n if (event.type === EventType.CUSTOM) {\n // const event = processedEvent as unknown as CustomEvent;\n const customEvent = event as unknown as CustomEvent;\n\n if (customEvent.name === CustomEventNames.CopilotKitManuallyEmitMessage) {\n this.subscriber.next({\n type: EventType.TEXT_MESSAGE_START,\n role: \"assistant\",\n messageId: customEvent.value.message_id,\n rawEvent: event,\n });\n this.subscriber.next({\n type: EventType.TEXT_MESSAGE_CONTENT,\n messageId: customEvent.value.message_id,\n delta: customEvent.value.message,\n rawEvent: event,\n });\n this.subscriber.next({\n type: EventType.TEXT_MESSAGE_END,\n messageId: customEvent.value.message_id,\n rawEvent: event,\n });\n return true;\n }\n\n if (customEvent.name === CustomEventNames.CopilotKitManuallyEmitToolCall) {\n this.subscriber.next({\n type: EventType.TOOL_CALL_START,\n toolCallId: customEvent.value.id,\n toolCallName: customEvent.value.name,\n parentMessageId: customEvent.value.id,\n rawEvent: event,\n });\n this.subscriber.next({\n type: EventType.TOOL_CALL_ARGS,\n toolCallId: customEvent.value.id,\n delta: customEvent.value.args,\n rawEvent: event,\n });\n this.subscriber.next({\n type: EventType.TOOL_CALL_END,\n toolCallId: customEvent.value.id,\n rawEvent: event,\n });\n return true;\n }\n\n if (customEvent.name === CustomEventNames.CopilotKitManuallyEmitIntermediateState) {\n this.activeRun.manuallyEmittedState = customEvent.value;\n this.dispatchEvent({\n type: EventType.STATE_SNAPSHOT,\n snapshot: this.getStateSnapshot({\n values: this.activeRun.manuallyEmittedState,\n } as ThreadState<State>),\n rawEvent: event,\n });\n return true;\n }\n\n if (customEvent.name === CustomEventNames.CopilotKitExit) {\n this.subscriber.next({\n type: EventType.CUSTOM,\n name: \"Exit\",\n value: true,\n });\n return true;\n }\n }\n\n // Intercept all text message and tool call events and check if should disable\n const rawEvent = (event as ToolCallEvents | TextMessageEvents).rawEvent;\n if (!rawEvent) {\n this.subscriber.next(event);\n return true;\n }\n\n const isMessageEvent =\n event.type === EventType.TEXT_MESSAGE_START ||\n event.type === EventType.TEXT_MESSAGE_CONTENT ||\n event.type === EventType.TEXT_MESSAGE_END;\n const isToolEvent =\n event.type === EventType.TOOL_CALL_START ||\n event.type === EventType.TOOL_CALL_ARGS ||\n event.type === EventType.TOOL_CALL_END;\n if (\"copilotkit:emit-tool-calls\" in (rawEvent.metadata || {})) {\n if (rawEvent.metadata[\"copilotkit:emit-tool-calls\"] === false && isToolEvent) {\n return false;\n }\n }\n if (\"copilotkit:emit-messages\" in (rawEvent.metadata || {})) {\n if (rawEvent.metadata[\"copilotkit:emit-messages\"] === false && isMessageEvent) {\n return false;\n }\n }\n\n this.subscriber.next(event);\n return true;\n }\n\n // @ts-ignore\n run(input: RunAgentInput) {\n return super.run(input).pipe(\n map((processedEvent) => {\n // Turn raw event into emit state snapshot from tool call event\n if (processedEvent.type === EventType.RAW) {\n // Get the LangGraph event from the AGUI event.\n const event = (processedEvent as RawEvent).event ?? (processedEvent as RawEvent).rawEvent;\n\n const eventType = event.event;\n const toolCallData = event.data?.chunk?.tool_call_chunks?.[0];\n const toolCallUsedToPredictState = event.metadata?.[\n \"copilotkit:emit-intermediate-state\"\n ]?.some(\n (predictStateTool: PredictStateTool) => predictStateTool.tool === toolCallData?.name,\n );\n\n if (eventType === LangGraphEventTypes.OnChatModelStream && toolCallUsedToPredictState) {\n return {\n type: EventType.CUSTOM,\n name: \"PredictState\",\n value: event.metadata[\"copilotkit:emit-intermediate-state\"],\n };\n }\n }\n\n return processedEvent;\n }),\n );\n }\n\n langGraphDefaultMergeState(\n state: State,\n messages: LangGraphMessage[],\n input: RunAgentInput,\n ): State<StateEnrichment & CopilotKitStateEnrichment> {\n const aguiMergedState = super.langGraphDefaultMergeState(state, messages, input);\n const { tools: returnedTools, \"ag-ui\": agui } = aguiMergedState;\n // tolerate undefined and de-duplicate by stable key (id | name | key)\n const rawCombinedTools = [\n ...((returnedTools as any[]) ?? []),\n ...((agui?.tools as any[]) ?? []),\n ];\n const combinedTools = Array.from(\n new Map(\n rawCombinedTools.map((t: any) => [t?.id ?? t?.name ?? t?.key ?? JSON.stringify(t), t]),\n ).values(),\n );\n\n return {\n ...aguiMergedState,\n copilotkit: {\n actions: combinedTools,\n context: agui?.context ?? [],\n },\n };\n }\n\n async getSchemaKeys(): Promise<SchemaKeys> {\n const CONSTANT_KEYS = [\"copilotkit\"];\n const schemaKeys = await super.getSchemaKeys();\n return {\n config: schemaKeys.config,\n input: schemaKeys.input ? [...schemaKeys.input, ...CONSTANT_KEYS] : null,\n output: schemaKeys.output ? [...schemaKeys.output, ...CONSTANT_KEYS] : null,\n context: schemaKeys.context ? [...schemaKeys.context, ...CONSTANT_KEYS] : null,\n };\n }\n}\n\nexport { LangGraphHttpAgent };\n","import { ActionExecutionMessage, ResultMessage, TextMessage } from \"../../graphql/types/converted\";\n\nexport enum LangGraphEventTypes {\n OnChainStart = \"on_chain_start\",\n OnChainStream = \"on_chain_stream\",\n OnChainEnd = \"on_chain_end\",\n OnChatModelStart = \"on_chat_model_start\",\n OnChatModelStream = \"on_chat_model_stream\",\n OnChatModelEnd = \"on_chat_model_end\",\n OnToolStart = \"on_tool_start\",\n OnToolEnd = \"on_tool_end\",\n OnCopilotKitStateSync = \"on_copilotkit_state_sync\",\n OnCopilotKitEmitMessage = \"on_copilotkit_emit_message\",\n OnCopilotKitEmitToolCall = \"on_copilotkit_emit_tool_call\",\n OnCustomEvent = \"on_custom_event\",\n OnInterrupt = \"on_interrupt\",\n OnCopilotKitInterrupt = \"on_copilotkit_interrupt\",\n OnCopilotKitError = \"on_copilotkit_error\",\n}\n\nexport enum MetaEventNames {\n LangGraphInterruptEvent = \"LangGraphInterruptEvent\",\n CopilotKitLangGraphInterruptEvent = \"CopilotKitLangGraphInterruptEvent\",\n}\n\nexport enum CustomEventNames {\n CopilotKitManuallyEmitMessage = \"copilotkit_manually_emit_message\",\n CopilotKitManuallyEmitToolCall = \"copilotkit_manually_emit_tool_call\",\n CopilotKitManuallyEmitIntermediateState = \"copilotkit_manually_emit_intermediate_state\",\n CopilotKitExit = \"copilotkit_exit\",\n}\n\ntype LangGraphOnCopilotKitStateSyncEvent = {\n event: LangGraphEventTypes.OnCopilotKitStateSync;\n thread_id: string;\n agent_name: string;\n node_name: string;\n run_id: string;\n active: boolean;\n role: string;\n state: any;\n running: boolean;\n};\n\ntype LangGraphOnChainStartEvent = {\n event: LangGraphEventTypes.OnChainStart;\n run_id: string;\n name: string;\n tags: string[];\n metadata: { thread_id: string };\n data: {\n input: any;\n };\n parent_ids: string[];\n};\n\ntype LangGraphOnChainEndEvent = {\n event: LangGraphEventTypes.OnChainEnd;\n name: string;\n run_id: string;\n tags: string[];\n metadata: {\n thread_id: string;\n langgraph_step: number;\n langgraph_node: string;\n langgraph_triggers: string[];\n langgraph_task_idx: number;\n thread_ts: string;\n };\n data: {\n input: any;\n output: any;\n };\n parent_ids: string[];\n};\n\ntype LangGraphOnChatModelStartEvent = {\n event: LangGraphEventTypes.OnChatModelStart;\n name: string;\n run_id: string;\n tags: string[];\n metadata: {\n thread_id: string;\n langgraph_step: number;\n langgraph_node: string;\n langgraph_triggers: string[];\n langgraph_task_idx: number;\n thread_ts: string;\n ls_provider: string;\n ls_model_name: string;\n ls_model_type: string;\n ls_temperature: number;\n };\n data: {\n input: {\n messages: {\n lc: number;\n type: string;\n id: string[];\n kwargs: {\n content: string;\n type: string;\n id: string;\n };\n }[][];\n };\n };\n parent_ids: string[];\n};\n\ntype LangGraphOnChatModelStreamEvent = {\n event: LangGraphEventTypes.OnChatModelStream;\n name: string;\n run_id: string;\n tags: string[];\n metadata: {\n thread_id: string;\n langgraph_step: number;\n langgraph_node: string;\n langgraph_triggers: string[];\n langgraph_task_idx: number;\n thread_ts: string;\n ls_provider: string;\n ls_model_name: string;\n ls_model_type: string;\n ls_temperature: number;\n };\n data: {\n chunk: {\n lc: number;\n type: string;\n id: string;\n kwargs: {\n content: string | { text: string; type: string; index: number }[];\n additional_kwargs: {\n tool_calls: {\n index: number;\n id: string;\n function: { arguments: string; name: string };\n type: string;\n }[];\n };\n type: string;\n id: string;\n tool_calls: { name: string; args: {}; id: string; type: string }[];\n tool_call_chunks: {\n name: string;\n args: string;\n id: string;\n index: number;\n type: string;\n }[];\n invalid_tool_calls: any[];\n };\n };\n };\n parent_ids: string[];\n};\n\ntype LangGraphOnChatModelEndEvent = {\n event: LangGraphEventTypes.OnChatModelEnd;\n name: string;\n run_id: string;\n tags: string[];\n metadata: {\n thread_id: string;\n langgraph_step: number;\n langgraph_node: string;\n langgraph_triggers: string[];\n langgraph_task_idx: number;\n thread_ts: string;\n ls_provider: string;\n ls_model_name: string;\n ls_model_type: string;\n ls_temperature: number;\n };\n data: {\n input: any;\n output: {\n generations: {\n text: string;\n generation_info: {\n finish_reason: string;\n model_name: string;\n system_fingerprint: string;\n };\n type: string;\n message: {\n lc: number;\n type: string;\n id: string[];\n kwargs: {\n content: string;\n additional_kwargs: {\n tool_calls: {\n index: number;\n id: string;\n function: { arguments: string; name: string };\n type: string;\n }[];\n };\n response_metadata: {\n finish_reason: string;\n model_name: string;\n system_fingerprint: string;\n };\n type: string;\n id: string;\n tool_calls: { name: string; args: { query: string }; id: string; type: string }[];\n invalid_tool_calls: any[];\n };\n };\n }[][];\n llm_output: any;\n run: any;\n };\n };\n parent_ids: string[];\n};\n\ntype LangGraphOnChainStreamEvent = {\n event: LangGraphEventTypes.OnChainStream;\n name: string;\n run_id: string;\n tags: string[];\n metadata: {\n thread_id: string;\n langgraph_step?: number;\n langgraph_node?: string;\n langgraph_triggers?: string[];\n langgraph_task_idx?: number;\n thread_ts?: string;\n };\n data: {\n chunk: {\n messages: {\n lc: number;\n type: string;\n id: string[];\n kwargs: {\n content: string;\n additional_kwargs?: {\n tool_calls?: {\n index: number;\n id: string;\n function: { arguments: string; name: string };\n type: string;\n }[];\n };\n response_metadata?: {\n finish_reason: string;\n model_name: string;\n system_fingerprint: string;\n };\n type: string;\n id: string;\n tool_calls?: { name: string; args: { query: string }; id: string; type: string }[];\n invalid_tool_calls?: any[];\n };\n }[];\n };\n };\n parent_ids: string[];\n};\n\ntype LangGraphOnToolStartEvent = {\n event: LangGraphEventTypes.OnToolStart;\n name: string;\n run_id: string;\n tags: string[];\n metadata: {\n thread_id: string;\n langgraph_step: number;\n langgraph_node: string;\n langgraph_triggers: string[];\n langgraph_task_idx: number;\n thread_ts: string;\n };\n data: {\n input: {\n query: string;\n };\n };\n parent_ids: string[];\n};\n\ntype LangGraphOnToolEndEvent = {\n event: LangGraphEventTypes.OnToolEnd;\n name: string;\n run_id: string;\n tags: string[];\n metadata: {\n thread_id: string;\n langgraph_step: number;\n langgraph_node: string;\n langgraph_triggers: string[];\n langgraph_task_idx: number;\n thread_ts: string;\n };\n data: {\n input: {\n query: string;\n };\n output: {\n lc: number;\n type: string;\n id: string[];\n kwargs: {\n content: string[];\n type: string;\n name: string;\n tool_call_id: string;\n status: string;\n };\n };\n };\n parent_ids: string[];\n};\n\ntype LangGraphOnCustomEvent = {\n event: LangGraphEventTypes.OnCustomEvent;\n run_id: string;\n name: string;\n tags: string[];\n metadata: {\n thread_id: string;\n langgraph_step: number;\n langgraph_node: string;\n langgraph_triggers: string[];\n langgraph_path: [string, string];\n langgraph_checkpoint_ns: string;\n checkpoint_ns: string;\n };\n data: any;\n parent_ids: string[];\n};\n\ninterface LangGraphInterruptEvent {\n event: LangGraphEventTypes.OnInterrupt;\n value: string;\n}\n\ninterface CopilotKitLangGraphInterruptEvent {\n event: LangGraphEventTypes.OnCopilotKitInterrupt;\n data: { value: string; messages: (TextMessage | ActionExecutionMessage | ResultMessage)[] };\n}\n\ninterface CopilotKitLangGraphErrorEvent {\n event: LangGraphEventTypes.OnCopilotKitError;\n data: {\n error: {\n message: string;\n type: string;\n agent_name: string;\n status_code?: number;\n response_data?: any;\n };\n thread_id: string;\n agent_name: string;\n node_name: string;\n };\n}\n\nexport type LangGraphEvent =\n | LangGraphOnChainStartEvent\n | LangGraphOnChainStreamEvent\n | LangGraphOnChainEndEvent\n | LangGraphOnChatModelStartEvent\n | LangGraphOnChatModelStreamEvent\n | LangGraphOnChatModelEndEvent\n | LangGraphOnToolStartEvent\n | LangGraphOnToolEndEvent\n | LangGraphOnCopilotKitStateSyncEvent\n | LangGraphOnCustomEvent\n | LangGraphInterruptEvent\n | CopilotKitLangGraphInterruptEvent\n | CopilotKitLangGraphErrorEvent;\n"]}
@@ -0,0 +1,257 @@
1
+ import { A as ActionInputAvailability, T as TextMessage, a as ActionExecutionMessage, R as ResultMessage, M as Message } from './index-96b330da.js';
2
+ import * as rxjs from 'rxjs';
3
+ import { Subject, ReplaySubject } from 'rxjs';
4
+ import { Action, Parameter } from '@copilotkit/shared';
5
+
6
+ declare class ActionInput {
7
+ name: string;
8
+ description: string;
9
+ jsonSchema: string;
10
+ available?: ActionInputAvailability;
11
+ }
12
+
13
+ declare enum GuardrailsResultStatus {
14
+ ALLOWED = "allowed",
15
+ DENIED = "denied"
16
+ }
17
+ declare class GuardrailsResult {
18
+ status: GuardrailsResultStatus;
19
+ reason?: string;
20
+ }
21
+
22
+ declare enum RuntimeEventTypes {
23
+ TextMessageStart = "TextMessageStart",
24
+ TextMessageContent = "TextMessageContent",
25
+ TextMessageEnd = "TextMessageEnd",
26
+ ActionExecutionStart = "ActionExecutionStart",
27
+ ActionExecutionArgs = "ActionExecutionArgs",
28
+ ActionExecutionEnd = "ActionExecutionEnd",
29
+ ActionExecutionResult = "ActionExecutionResult",
30
+ AgentStateMessage = "AgentStateMessage",
31
+ MetaEvent = "MetaEvent",
32
+ RunError = "RunError"
33
+ }
34
+ declare enum RuntimeMetaEventName {
35
+ LangGraphInterruptEvent = "LangGraphInterruptEvent",
36
+ LangGraphInterruptResumeEvent = "LangGraphInterruptResumeEvent",
37
+ CopilotKitLangGraphInterruptEvent = "CopilotKitLangGraphInterruptEvent"
38
+ }
39
+ type RunTimeMetaEvent = {
40
+ type: RuntimeEventTypes.MetaEvent;
41
+ name: RuntimeMetaEventName.LangGraphInterruptEvent;
42
+ value: string;
43
+ } | {
44
+ type: RuntimeEventTypes.MetaEvent;
45
+ name: RuntimeMetaEventName.CopilotKitLangGraphInterruptEvent;
46
+ data: {
47
+ value: string;
48
+ messages: (TextMessage | ActionExecutionMessage | ResultMessage)[];
49
+ };
50
+ } | {
51
+ type: RuntimeEventTypes.MetaEvent;
52
+ name: RuntimeMetaEventName.LangGraphInterruptResumeEvent;
53
+ data: string;
54
+ };
55
+ type RuntimeErrorEvent = {
56
+ type: RuntimeEventTypes.RunError;
57
+ message: string;
58
+ code?: string;
59
+ };
60
+ type RuntimeEvent = {
61
+ type: RuntimeEventTypes.TextMessageStart;
62
+ messageId: string;
63
+ parentMessageId?: string;
64
+ } | {
65
+ type: RuntimeEventTypes.TextMessageContent;
66
+ messageId: string;
67
+ content: string;
68
+ } | {
69
+ type: RuntimeEventTypes.TextMessageEnd;
70
+ messageId: string;
71
+ } | {
72
+ type: RuntimeEventTypes.ActionExecutionStart;
73
+ actionExecutionId: string;
74
+ actionName: string;
75
+ parentMessageId?: string;
76
+ } | {
77
+ type: RuntimeEventTypes.ActionExecutionArgs;
78
+ actionExecutionId: string;
79
+ args: string;
80
+ } | {
81
+ type: RuntimeEventTypes.ActionExecutionEnd;
82
+ actionExecutionId: string;
83
+ } | {
84
+ type: RuntimeEventTypes.ActionExecutionResult;
85
+ actionName: string;
86
+ actionExecutionId: string;
87
+ result: string;
88
+ } | {
89
+ type: RuntimeEventTypes.AgentStateMessage;
90
+ threadId: string;
91
+ agentName: string;
92
+ nodeName: string;
93
+ runId: string;
94
+ active: boolean;
95
+ role: string;
96
+ state: string;
97
+ running: boolean;
98
+ } | RunTimeMetaEvent | RuntimeErrorEvent;
99
+ type EventSourceCallback = (eventStream$: RuntimeEventSubject) => Promise<void>;
100
+ declare class RuntimeEventSubject extends ReplaySubject<RuntimeEvent> {
101
+ constructor();
102
+ sendTextMessageStart({ messageId, parentMessageId, }: {
103
+ messageId: string;
104
+ parentMessageId?: string;
105
+ }): void;
106
+ sendTextMessageContent({ messageId, content }: {
107
+ messageId: string;
108
+ content: string;
109
+ }): void;
110
+ sendTextMessageEnd({ messageId }: {
111
+ messageId: string;
112
+ }): void;
113
+ sendTextMessage(messageId: string, content: string): void;
114
+ sendActionExecutionStart({ actionExecutionId, actionName, parentMessageId, }: {
115
+ actionExecutionId: string;
116
+ actionName: string;
117
+ parentMessageId?: string;
118
+ }): void;
119
+ sendActionExecutionArgs({ actionExecutionId, args, }: {
120
+ actionExecutionId: string;
121
+ args: string;
122
+ }): void;
123
+ sendActionExecutionEnd({ actionExecutionId }: {
124
+ actionExecutionId: string;
125
+ }): void;
126
+ sendActionExecution({ actionExecutionId, actionName, args, parentMessageId, }: {
127
+ actionExecutionId: string;
128
+ actionName: string;
129
+ args: string;
130
+ parentMessageId?: string;
131
+ }): void;
132
+ sendActionExecutionResult({ actionExecutionId, actionName, result, error, }: {
133
+ actionExecutionId: string;
134
+ actionName: string;
135
+ result?: string;
136
+ error?: {
137
+ code: string;
138
+ message: string;
139
+ };
140
+ }): void;
141
+ sendAgentStateMessage({ threadId, agentName, nodeName, runId, active, role, state, running, }: {
142
+ threadId: string;
143
+ agentName: string;
144
+ nodeName: string;
145
+ runId: string;
146
+ active: boolean;
147
+ role: string;
148
+ state: string;
149
+ running: boolean;
150
+ }): void;
151
+ }
152
+ declare class RuntimeEventSource {
153
+ private eventStream$;
154
+ private callback;
155
+ private errorHandler?;
156
+ private errorContext?;
157
+ constructor(params?: {
158
+ errorHandler?: (error: any, context: any) => Promise<void>;
159
+ errorContext?: any;
160
+ });
161
+ stream(callback: EventSourceCallback): Promise<void>;
162
+ sendErrorMessageToChat(message?: string): void;
163
+ processRuntimeEvents({ serverSideActions, guardrailsResult$, actionInputsWithoutAgents, threadId, }: {
164
+ serverSideActions: Action<any>[];
165
+ guardrailsResult$?: Subject<GuardrailsResult>;
166
+ actionInputsWithoutAgents: ActionInput[];
167
+ threadId: string;
168
+ }): rxjs.Observable<RuntimeEvent>;
169
+ }
170
+
171
+ declare class ForwardedParametersInput {
172
+ model?: string;
173
+ maxTokens?: number;
174
+ stop?: string[];
175
+ toolChoice?: String;
176
+ toolChoiceFunctionName?: string;
177
+ temperature?: number;
178
+ }
179
+
180
+ /**
181
+ * The extensions input is used to pass additional information to the copilot runtime, specific to a
182
+ * service adapter or agent framework.
183
+ */
184
+ declare class ExtensionsInput {
185
+ openaiAssistantAPI?: OpenAIApiAssistantAPIInput;
186
+ }
187
+ declare class OpenAIApiAssistantAPIInput {
188
+ runId?: string;
189
+ threadId?: string;
190
+ }
191
+
192
+ /**
193
+ * The extensions response is used to receive additional information from the copilot runtime, specific to a
194
+ * service adapter or agent framework.
195
+ *
196
+ * Next time a request to the runtime is made, the extensions response will be included in the request as input.
197
+ */
198
+ declare class ExtensionsResponse {
199
+ openaiAssistantAPI?: OpenAIApiAssistantAPIResponse;
200
+ }
201
+ declare class OpenAIApiAssistantAPIResponse {
202
+ runId?: string;
203
+ threadId?: string;
204
+ }
205
+
206
+ declare class AgentSessionInput {
207
+ agentName: string;
208
+ threadId?: string;
209
+ nodeName?: string;
210
+ }
211
+
212
+ declare class AgentStateInput {
213
+ agentName: string;
214
+ state: string;
215
+ config?: string;
216
+ }
217
+
218
+ interface CopilotRuntimeChatCompletionRequest {
219
+ eventSource: RuntimeEventSource;
220
+ messages: Message[];
221
+ actions: ActionInput[];
222
+ model?: string;
223
+ threadId?: string;
224
+ runId?: string;
225
+ forwardedParameters?: ForwardedParametersInput;
226
+ extensions?: ExtensionsInput;
227
+ agentSession?: AgentSessionInput;
228
+ agentStates?: AgentStateInput[];
229
+ }
230
+ interface CopilotRuntimeChatCompletionResponse {
231
+ threadId: string;
232
+ runId?: string;
233
+ extensions?: ExtensionsResponse;
234
+ }
235
+ interface CopilotServiceAdapter {
236
+ process(request: CopilotRuntimeChatCompletionRequest): Promise<CopilotRuntimeChatCompletionResponse>;
237
+ }
238
+
239
+ interface RemoteChainParameters {
240
+ name: string;
241
+ description: string;
242
+ chainUrl: string;
243
+ parameters?: Parameter[];
244
+ parameterType?: "single" | "multi";
245
+ }
246
+ declare class RemoteChain {
247
+ name: string;
248
+ description: string;
249
+ chainUrl: string;
250
+ parameters?: Parameter[];
251
+ parameterType: "single" | "multi";
252
+ constructor(options: RemoteChainParameters);
253
+ toAction(): Promise<Action<any>>;
254
+ inferLangServeParameters(): Promise<void>;
255
+ }
256
+
257
+ export { ActionInput as A, CopilotRuntimeChatCompletionRequest as C, ExtensionsInput as E, ForwardedParametersInput as F, RemoteChainParameters as R, CopilotRuntimeChatCompletionResponse as a, CopilotServiceAdapter as b, RemoteChain as c, AgentSessionInput as d, AgentStateInput as e, RuntimeEventSource as f, ExtensionsResponse as g };