@copilotkit/react-core 1.10.6 → 1.50.0-beta.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 (333) hide show
  1. package/dist/chunk-24SCZAB4.mjs +143 -0
  2. package/dist/chunk-24SCZAB4.mjs.map +1 -0
  3. package/dist/chunk-36KQV2NA.mjs +1 -0
  4. package/dist/{chunk-U7QULEVO.mjs → chunk-3GURHDG7.mjs} +3 -3
  5. package/dist/{chunk-4BHIQMN6.mjs → chunk-3R423LZT.mjs} +6 -5
  6. package/dist/{chunk-4BHIQMN6.mjs.map → chunk-3R423LZT.mjs.map} +1 -1
  7. package/dist/chunk-5X5DJRQQ.mjs +71 -0
  8. package/dist/chunk-5X5DJRQQ.mjs.map +1 -0
  9. package/dist/{chunk-N4WEHORG.mjs → chunk-6PUNP7CD.mjs} +4 -4
  10. package/dist/chunk-6PUNP7CD.mjs.map +1 -0
  11. package/dist/chunk-7BYHZLPL.mjs +32 -0
  12. package/dist/chunk-7BYHZLPL.mjs.map +1 -0
  13. package/dist/chunk-7DTB7S5V.mjs +83 -0
  14. package/dist/chunk-7DTB7S5V.mjs.map +1 -0
  15. package/dist/chunk-A6NKSGH3.mjs +1 -0
  16. package/dist/{chunk-GT5WI3AF.mjs → chunk-BR5YEYZJ.mjs} +7 -9
  17. package/dist/chunk-BR5YEYZJ.mjs.map +1 -0
  18. package/dist/chunk-CB7CRBDG.mjs +48 -0
  19. package/dist/chunk-CB7CRBDG.mjs.map +1 -0
  20. package/dist/chunk-CYDWEPFL.mjs +1 -0
  21. package/dist/{chunk-BBUQMG45.mjs → chunk-D3QSYDJR.mjs} +3 -3
  22. package/dist/{chunk-BBUQMG45.mjs.map → chunk-D3QSYDJR.mjs.map} +1 -1
  23. package/dist/chunk-DCHSCK62.mjs +549 -0
  24. package/dist/chunk-DCHSCK62.mjs.map +1 -0
  25. package/dist/{chunk-ZLQVRPDS.mjs → chunk-DMLQZG75.mjs} +1 -1
  26. package/dist/chunk-DMLQZG75.mjs.map +1 -0
  27. package/dist/chunk-F555TVE4.mjs +33 -0
  28. package/dist/chunk-F555TVE4.mjs.map +1 -0
  29. package/dist/{chunk-C6IANC2R.mjs → chunk-FBD24VEH.mjs} +7 -43
  30. package/dist/chunk-FBD24VEH.mjs.map +1 -0
  31. package/dist/chunk-FD6FGKYY.mjs +1 -0
  32. package/dist/chunk-FDOMAPJY.mjs +59 -0
  33. package/dist/chunk-FDOMAPJY.mjs.map +1 -0
  34. package/dist/{chunk-X7MJWPI7.mjs → chunk-GMI4KO4X.mjs} +8 -6
  35. package/dist/{chunk-X7MJWPI7.mjs.map → chunk-GMI4KO4X.mjs.map} +1 -1
  36. package/dist/chunk-IUSKVYUI.mjs +13 -0
  37. package/dist/chunk-IUSKVYUI.mjs.map +1 -0
  38. package/dist/chunk-JD7BAH7U.mjs +1 -0
  39. package/dist/{chunk-N5HOP3PG.mjs → chunk-JRT5BJF3.mjs} +2 -2
  40. package/dist/{chunk-N4VN2B5S.mjs → chunk-LHERIF3L.mjs} +2 -2
  41. package/dist/{chunk-DXEQPN43.mjs → chunk-LHKZJ2ND.mjs} +3 -3
  42. package/dist/chunk-NB2FKV2V.mjs +1 -0
  43. package/dist/chunk-NBK4KBLX.mjs +54 -0
  44. package/dist/chunk-NBK4KBLX.mjs.map +1 -0
  45. package/dist/chunk-NG26QEGF.mjs +46 -0
  46. package/dist/chunk-NG26QEGF.mjs.map +1 -0
  47. package/dist/chunk-NROJOTQP.mjs +163 -0
  48. package/dist/chunk-NROJOTQP.mjs.map +1 -0
  49. package/dist/{chunk-MGWRDFBE.mjs → chunk-OVYFRPSN.mjs} +2 -2
  50. package/dist/{chunk-MQYWH4E6.mjs → chunk-QU6NONOD.mjs} +2 -2
  51. package/dist/chunk-R4MR43UQ.mjs +101 -0
  52. package/dist/chunk-R4MR43UQ.mjs.map +1 -0
  53. package/dist/chunk-SPCZTZCY.mjs +1 -0
  54. package/dist/chunk-SPCZTZCY.mjs.map +1 -0
  55. package/dist/chunk-TXI72QHK.mjs +80 -0
  56. package/dist/chunk-TXI72QHK.mjs.map +1 -0
  57. package/dist/chunk-UJBV5GAG.mjs +767 -0
  58. package/dist/chunk-UJBV5GAG.mjs.map +1 -0
  59. package/dist/{chunk-OKCYPO4I.mjs → chunk-WMJVBMUX.mjs} +3 -3
  60. package/dist/{chunk-EUX2P2E7.mjs → chunk-WVLHXIFP.mjs} +11 -9
  61. package/dist/chunk-WVLHXIFP.mjs.map +1 -0
  62. package/dist/{chunk-5FHSUKQL.mjs → chunk-YYN33GSG.mjs} +5 -2
  63. package/dist/chunk-YYN33GSG.mjs.map +1 -0
  64. package/dist/chunk-ZVF5Q6IH.mjs +29 -0
  65. package/dist/chunk-ZVF5Q6IH.mjs.map +1 -0
  66. package/dist/components/CopilotListeners.d.ts +3 -0
  67. package/dist/components/CopilotListeners.js +234 -0
  68. package/dist/components/CopilotListeners.js.map +1 -0
  69. package/dist/components/CopilotListeners.mjs +14 -0
  70. package/dist/components/CopilotListeners.mjs.map +1 -0
  71. package/dist/components/copilot-provider/copilot-messages.js +14 -48
  72. package/dist/components/copilot-provider/copilot-messages.js.map +1 -1
  73. package/dist/components/copilot-provider/copilot-messages.mjs +3 -3
  74. package/dist/components/copilot-provider/copilotkit-props.d.ts +9 -2
  75. package/dist/components/copilot-provider/copilotkit-props.js.map +1 -1
  76. package/dist/components/copilot-provider/copilotkit.d.ts +2 -1
  77. package/dist/components/copilot-provider/copilotkit.js +528 -370
  78. package/dist/components/copilot-provider/copilotkit.js.map +1 -1
  79. package/dist/components/copilot-provider/copilotkit.mjs +17 -12
  80. package/dist/components/copilot-provider/index.d.ts +2 -1
  81. package/dist/components/copilot-provider/index.js +528 -370
  82. package/dist/components/copilot-provider/index.js.map +1 -1
  83. package/dist/components/copilot-provider/index.mjs +18 -12
  84. package/dist/components/dev-console/console-trigger.js +10 -8
  85. package/dist/components/dev-console/console-trigger.js.map +1 -1
  86. package/dist/components/dev-console/console-trigger.mjs +4 -4
  87. package/dist/components/dev-console/developer-console-modal.js +10 -8
  88. package/dist/components/dev-console/developer-console-modal.js.map +1 -1
  89. package/dist/components/dev-console/developer-console-modal.mjs +3 -3
  90. package/dist/components/error-boundary/error-boundary.d.ts +7 -7
  91. package/dist/components/error-boundary/error-boundary.js +3 -3
  92. package/dist/components/error-boundary/error-boundary.js.map +1 -1
  93. package/dist/components/error-boundary/error-boundary.mjs +2 -2
  94. package/dist/components/error-boundary/error-utils.d.ts +1 -1
  95. package/dist/components/error-boundary/error-utils.js +3 -3
  96. package/dist/components/error-boundary/error-utils.js.map +1 -1
  97. package/dist/components/error-boundary/error-utils.mjs +1 -1
  98. package/dist/components/index.d.ts +2 -1
  99. package/dist/components/index.js +528 -370
  100. package/dist/components/index.js.map +1 -1
  101. package/dist/components/index.mjs +19 -12
  102. package/dist/components/toast/exclamation-mark-icon.d.ts +2 -2
  103. package/dist/components/toast/toast-provider.d.ts +3 -3
  104. package/dist/components/usage-banner.d.ts +2 -2
  105. package/dist/context/coagent-state-renders-context.d.ts +24 -0
  106. package/dist/context/coagent-state-renders-context.js +91 -0
  107. package/dist/context/coagent-state-renders-context.js.map +1 -0
  108. package/dist/context/coagent-state-renders-context.mjs +12 -0
  109. package/dist/context/coagent-state-renders-context.mjs.map +1 -0
  110. package/dist/context/copilot-context.d.ts +1 -1
  111. package/dist/context/copilot-context.js +10 -8
  112. package/dist/context/copilot-context.js.map +1 -1
  113. package/dist/context/copilot-context.mjs +1 -1
  114. package/dist/context/copilot-messages-context.d.ts +18 -11
  115. package/dist/context/copilot-messages-context.js.map +1 -1
  116. package/dist/context/copilot-messages-context.mjs +1 -1
  117. package/dist/context/index.d.ts +6 -2
  118. package/dist/context/index.js +110 -10
  119. package/dist/context/index.js.map +1 -1
  120. package/dist/context/index.mjs +20 -4
  121. package/dist/context/threads-context.d.ts +16 -0
  122. package/dist/context/threads-context.js +59 -0
  123. package/dist/context/threads-context.js.map +1 -0
  124. package/dist/context/threads-context.mjs +12 -0
  125. package/dist/context/threads-context.mjs.map +1 -0
  126. package/dist/{copilot-context-cf9de848.d.ts → copilot-context-1cd70a3f.d.ts} +36 -32
  127. package/dist/hooks/index.d.ts +9 -6
  128. package/dist/hooks/index.js +1445 -1839
  129. package/dist/hooks/index.js.map +1 -1
  130. package/dist/hooks/index.mjs +47 -56
  131. package/dist/hooks/use-coagent-state-render-bridge.d.ts +100 -0
  132. package/dist/hooks/use-coagent-state-render-bridge.js +211 -0
  133. package/dist/hooks/use-coagent-state-render-bridge.js.map +1 -0
  134. package/dist/hooks/use-coagent-state-render-bridge.mjs +15 -0
  135. package/dist/hooks/use-coagent-state-render-bridge.mjs.map +1 -0
  136. package/dist/hooks/use-coagent-state-render.js +31 -20
  137. package/dist/hooks/use-coagent-state-render.js.map +1 -1
  138. package/dist/hooks/use-coagent-state-render.mjs +3 -2
  139. package/dist/hooks/use-coagent.d.ts +2 -14
  140. package/dist/hooks/use-coagent.js +109 -1906
  141. package/dist/hooks/use-coagent.js.map +1 -1
  142. package/dist/hooks/use-coagent.mjs +1 -30
  143. package/dist/hooks/use-configure-chat-suggestions.d.ts +36 -0
  144. package/dist/hooks/use-configure-chat-suggestions.js +210 -0
  145. package/dist/hooks/use-configure-chat-suggestions.js.map +1 -0
  146. package/dist/hooks/use-configure-chat-suggestions.mjs +13 -0
  147. package/dist/hooks/use-configure-chat-suggestions.mjs.map +1 -0
  148. package/dist/hooks/use-copilot-action.d.ts +8 -45
  149. package/dist/hooks/use-copilot-action.js +207 -349
  150. package/dist/hooks/use-copilot-action.js.map +1 -1
  151. package/dist/hooks/use-copilot-action.mjs +4 -5
  152. package/dist/hooks/use-copilot-additional-instructions.js +10 -8
  153. package/dist/hooks/use-copilot-additional-instructions.js.map +1 -1
  154. package/dist/hooks/use-copilot-additional-instructions.mjs +2 -2
  155. package/dist/hooks/use-copilot-authenticated-action.js +224 -248
  156. package/dist/hooks/use-copilot-authenticated-action.js.map +1 -1
  157. package/dist/hooks/use-copilot-authenticated-action.mjs +6 -6
  158. package/dist/hooks/use-copilot-chat-headless_c.d.ts +2 -10
  159. package/dist/hooks/use-copilot-chat-headless_c.js +973 -1369
  160. package/dist/hooks/use-copilot-chat-headless_c.js.map +1 -1
  161. package/dist/hooks/use-copilot-chat-headless_c.mjs +12 -22
  162. package/dist/hooks/use-copilot-chat.d.ts +2 -10
  163. package/dist/hooks/use-copilot-chat.js +967 -1388
  164. package/dist/hooks/use-copilot-chat.js.map +1 -1
  165. package/dist/hooks/use-copilot-chat.mjs +12 -22
  166. package/dist/hooks/use-copilot-chat_internal.d.ts +38 -14
  167. package/dist/hooks/use-copilot-chat_internal.js +965 -1362
  168. package/dist/hooks/use-copilot-chat_internal.js.map +1 -1
  169. package/dist/hooks/use-copilot-chat_internal.mjs +13 -23
  170. package/dist/hooks/use-copilot-readable.d.ts +1 -1
  171. package/dist/hooks/use-copilot-readable.js +6 -157
  172. package/dist/hooks/use-copilot-readable.js.map +1 -1
  173. package/dist/hooks/use-copilot-readable.mjs +1 -2
  174. package/dist/hooks/use-default-tool.js +204 -349
  175. package/dist/hooks/use-default-tool.js.map +1 -1
  176. package/dist/hooks/use-default-tool.mjs +5 -6
  177. package/dist/hooks/use-flat-category-store.js +4 -1
  178. package/dist/hooks/use-flat-category-store.js.map +1 -1
  179. package/dist/hooks/use-flat-category-store.mjs +1 -1
  180. package/dist/hooks/use-frontend-tool.d.ts +3 -3
  181. package/dist/hooks/use-frontend-tool.js +30 -370
  182. package/dist/hooks/use-frontend-tool.js.map +1 -1
  183. package/dist/hooks/use-frontend-tool.mjs +1 -6
  184. package/dist/hooks/use-human-in-the-loop.d.ts +4 -3
  185. package/dist/hooks/use-human-in-the-loop.js +61 -393
  186. package/dist/hooks/use-human-in-the-loop.js.map +1 -1
  187. package/dist/hooks/use-human-in-the-loop.mjs +1 -6
  188. package/dist/hooks/use-langgraph-interrupt-render.d.ts +3 -2
  189. package/dist/hooks/use-langgraph-interrupt-render.js +92 -36
  190. package/dist/hooks/use-langgraph-interrupt-render.js.map +1 -1
  191. package/dist/hooks/use-langgraph-interrupt-render.mjs +6 -4
  192. package/dist/hooks/use-langgraph-interrupt.d.ts +1 -1
  193. package/dist/hooks/use-langgraph-interrupt.js +24 -1642
  194. package/dist/hooks/use-langgraph-interrupt.js.map +1 -1
  195. package/dist/hooks/use-langgraph-interrupt.mjs +2 -23
  196. package/dist/hooks/use-lazy-tool-renderer.d.ts +6 -0
  197. package/dist/hooks/use-lazy-tool-renderer.js +53 -0
  198. package/dist/hooks/use-lazy-tool-renderer.js.map +1 -0
  199. package/dist/hooks/use-lazy-tool-renderer.mjs +8 -0
  200. package/dist/hooks/use-lazy-tool-renderer.mjs.map +1 -0
  201. package/dist/hooks/use-make-copilot-document-readable.js +11 -9
  202. package/dist/hooks/use-make-copilot-document-readable.js.map +1 -1
  203. package/dist/hooks/use-make-copilot-document-readable.mjs +2 -2
  204. package/dist/hooks/use-render-tool-call.d.ts +7 -6
  205. package/dist/hooks/use-render-tool-call.js +36 -386
  206. package/dist/hooks/use-render-tool-call.js.map +1 -1
  207. package/dist/hooks/use-render-tool-call.mjs +1 -6
  208. package/dist/index.d.ts +11 -6
  209. package/dist/index.js +1841 -2056
  210. package/dist/index.js.map +1 -1
  211. package/dist/index.mjs +82 -63
  212. package/dist/lib/copilot-task.d.ts +1 -1
  213. package/dist/lib/copilot-task.js +1 -0
  214. package/dist/lib/copilot-task.js.map +1 -1
  215. package/dist/lib/copilot-task.mjs +20 -13
  216. package/dist/lib/index.d.ts +1 -1
  217. package/dist/lib/index.js +1 -0
  218. package/dist/lib/index.js.map +1 -1
  219. package/dist/lib/index.mjs +20 -13
  220. package/dist/setupTests.d.ts +2 -2
  221. package/dist/types/frontend-action.d.ts +5 -5
  222. package/dist/types/index.d.ts +4 -0
  223. package/dist/types/index.js.map +1 -1
  224. package/dist/types/index.mjs +2 -1
  225. package/dist/types/interrupt-action.d.ts +1 -1
  226. package/dist/types/interrupt-action.js.map +1 -1
  227. package/dist/types/interrupt-action.mjs +1 -0
  228. package/dist/utils/index.d.ts +0 -12
  229. package/dist/utils/index.js +6 -325
  230. package/dist/utils/index.js.map +1 -1
  231. package/dist/utils/index.mjs +3 -23
  232. package/dist/utils/utils.js.map +1 -1
  233. package/dist/v2/index.d.ts +2 -0
  234. package/dist/v2/index.js +27 -0
  235. package/dist/v2/index.js.map +1 -0
  236. package/dist/v2/index.mjs +4 -0
  237. package/dist/v2/index.mjs.map +1 -0
  238. package/package.json +34 -23
  239. package/src/components/CopilotListeners.tsx +82 -0
  240. package/src/components/copilot-provider/copilot-messages.tsx +46 -47
  241. package/src/components/copilot-provider/copilotkit-props.tsx +8 -1
  242. package/src/components/copilot-provider/copilotkit.tsx +177 -144
  243. package/src/components/error-boundary/error-utils.tsx +3 -3
  244. package/src/context/coagent-state-renders-context.tsx +76 -0
  245. package/src/context/copilot-context.tsx +21 -21
  246. package/src/context/copilot-messages-context.tsx +3 -3
  247. package/src/context/index.ts +8 -0
  248. package/src/context/threads-context.tsx +41 -0
  249. package/src/hooks/index.ts +7 -3
  250. package/src/hooks/use-coagent-state-render-bridge.tsx +293 -0
  251. package/src/hooks/use-coagent-state-render.ts +4 -7
  252. package/src/hooks/use-coagent.ts +129 -249
  253. package/src/hooks/use-configure-chat-suggestions.tsx +85 -0
  254. package/src/hooks/use-copilot-action.ts +88 -199
  255. package/src/hooks/use-copilot-chat-headless_c.ts +2 -1
  256. package/src/hooks/use-copilot-chat.ts +4 -1
  257. package/src/hooks/use-copilot-chat_internal.ts +349 -258
  258. package/src/hooks/use-copilot-readable.ts +6 -26
  259. package/src/hooks/use-flat-category-store.ts +4 -3
  260. package/src/hooks/use-frontend-tool.ts +67 -8
  261. package/src/hooks/use-human-in-the-loop.ts +111 -13
  262. package/src/hooks/use-langgraph-interrupt-render.ts +90 -40
  263. package/src/hooks/use-langgraph-interrupt.ts +18 -47
  264. package/src/hooks/use-lazy-tool-renderer.tsx +30 -0
  265. package/src/hooks/use-make-copilot-document-readable.ts +1 -1
  266. package/src/hooks/use-render-tool-call.ts +73 -13
  267. package/src/types/index.ts +1 -0
  268. package/src/types/interrupt-action.ts +8 -4
  269. package/src/utils/index.ts +0 -3
  270. package/src/utils/utils.ts +7 -0
  271. package/src/v2/index.ts +2 -0
  272. package/src/v2/styles.css +1 -0
  273. package/tsup.config.ts +1 -1
  274. package/dist/chunk-5FHSUKQL.mjs.map +0 -1
  275. package/dist/chunk-6GPVUMBU.mjs +0 -13
  276. package/dist/chunk-6GPVUMBU.mjs.map +0 -1
  277. package/dist/chunk-AKR2SSUJ.mjs +0 -22
  278. package/dist/chunk-AKR2SSUJ.mjs.map +0 -1
  279. package/dist/chunk-C6IANC2R.mjs.map +0 -1
  280. package/dist/chunk-CI4KD357.mjs +0 -804
  281. package/dist/chunk-CI4KD357.mjs.map +0 -1
  282. package/dist/chunk-DZTU6PGS.mjs +0 -1
  283. package/dist/chunk-EUX2P2E7.mjs.map +0 -1
  284. package/dist/chunk-EVVO67QO.mjs +0 -25
  285. package/dist/chunk-EVVO67QO.mjs.map +0 -1
  286. package/dist/chunk-GT5WI3AF.mjs.map +0 -1
  287. package/dist/chunk-HDOG2RTM.mjs +0 -37
  288. package/dist/chunk-HDOG2RTM.mjs.map +0 -1
  289. package/dist/chunk-N4WEHORG.mjs.map +0 -1
  290. package/dist/chunk-OT5NHMEC.mjs +0 -723
  291. package/dist/chunk-OT5NHMEC.mjs.map +0 -1
  292. package/dist/chunk-QHCLJODF.mjs +0 -332
  293. package/dist/chunk-QHCLJODF.mjs.map +0 -1
  294. package/dist/chunk-QV5SBF2S.mjs +0 -239
  295. package/dist/chunk-QV5SBF2S.mjs.map +0 -1
  296. package/dist/chunk-T3376SZS.mjs +0 -142
  297. package/dist/chunk-T3376SZS.mjs.map +0 -1
  298. package/dist/chunk-U3DQY67T.mjs +0 -71
  299. package/dist/chunk-U3DQY67T.mjs.map +0 -1
  300. package/dist/chunk-YPBKY4KY.mjs +0 -1
  301. package/dist/chunk-YPSGKPDA.mjs +0 -1
  302. package/dist/chunk-ZLQVRPDS.mjs.map +0 -1
  303. package/dist/chunk-ZVOLWJCY.mjs +0 -47
  304. package/dist/chunk-ZVOLWJCY.mjs.map +0 -1
  305. package/dist/hooks/use-chat.d.ts +0 -145
  306. package/dist/hooks/use-chat.js +0 -1129
  307. package/dist/hooks/use-chat.js.map +0 -1
  308. package/dist/hooks/use-chat.mjs +0 -14
  309. package/dist/index-1f5b66ac.d.ts +0 -36
  310. package/dist/utils/extract.d.ts +0 -43
  311. package/dist/utils/extract.js +0 -208
  312. package/dist/utils/extract.js.map +0 -1
  313. package/dist/utils/extract.mjs +0 -25
  314. package/dist/utils/suggestions.d.ts +0 -11
  315. package/dist/utils/suggestions.js +0 -343
  316. package/dist/utils/suggestions.js.map +0 -1
  317. package/dist/utils/suggestions.mjs +0 -25
  318. package/src/hooks/use-chat.ts +0 -1142
  319. package/src/utils/extract.ts +0 -215
  320. package/src/utils/suggestions.ts +0 -208
  321. /package/dist/{chunk-DZTU6PGS.mjs.map → chunk-36KQV2NA.mjs.map} +0 -0
  322. /package/dist/{chunk-U7QULEVO.mjs.map → chunk-3GURHDG7.mjs.map} +0 -0
  323. /package/dist/{chunk-YPBKY4KY.mjs.map → chunk-A6NKSGH3.mjs.map} +0 -0
  324. /package/dist/{chunk-YPSGKPDA.mjs.map → chunk-CYDWEPFL.mjs.map} +0 -0
  325. /package/dist/{hooks/use-chat.mjs.map → chunk-FD6FGKYY.mjs.map} +0 -0
  326. /package/dist/{utils/extract.mjs.map → chunk-JD7BAH7U.mjs.map} +0 -0
  327. /package/dist/{chunk-N5HOP3PG.mjs.map → chunk-JRT5BJF3.mjs.map} +0 -0
  328. /package/dist/{chunk-N4VN2B5S.mjs.map → chunk-LHERIF3L.mjs.map} +0 -0
  329. /package/dist/{chunk-DXEQPN43.mjs.map → chunk-LHKZJ2ND.mjs.map} +0 -0
  330. /package/dist/{utils/suggestions.mjs.map → chunk-NB2FKV2V.mjs.map} +0 -0
  331. /package/dist/{chunk-MGWRDFBE.mjs.map → chunk-OVYFRPSN.mjs.map} +0 -0
  332. /package/dist/{chunk-MQYWH4E6.mjs.map → chunk-QU6NONOD.mjs.map} +0 -0
  333. /package/dist/{chunk-OKCYPO4I.mjs.map → chunk-WMJVBMUX.mjs.map} +0 -0
@@ -0,0 +1,767 @@
1
+ import {
2
+ useLazyToolRenderer
3
+ } from "./chunk-ZVF5Q6IH.mjs";
4
+ import {
5
+ useLangGraphInterruptRender
6
+ } from "./chunk-R4MR43UQ.mjs";
7
+ import {
8
+ useConfigureChatSuggestions
9
+ } from "./chunk-CB7CRBDG.mjs";
10
+ import {
11
+ useAsyncCallback
12
+ } from "./chunk-6PUNP7CD.mjs";
13
+ import {
14
+ CoAgentStateRenderBridge
15
+ } from "./chunk-NROJOTQP.mjs";
16
+ import {
17
+ useCopilotContext
18
+ } from "./chunk-WVLHXIFP.mjs";
19
+ import {
20
+ __async,
21
+ __spreadProps,
22
+ __spreadValues
23
+ } from "./chunk-SKC7AJIV.mjs";
24
+
25
+ // src/hooks/use-copilot-chat_internal.ts
26
+ import { useRef, useEffect, useCallback, useMemo, useState, createElement } from "react";
27
+ import { gqlToAGUI, Message as DeprecatedGqlMessage } from "@copilotkit/runtime-client-gql";
28
+ import {
29
+ useAgent,
30
+ useCopilotChatConfiguration,
31
+ useCopilotKit,
32
+ useRenderCustomMessages,
33
+ useSuggestions
34
+ } from "@copilotkitnext/react";
35
+
36
+ // ../../node_modules/.pnpm/@ag-ui+core@0.0.42-alpha.1/node_modules/@ag-ui/core/dist/index.mjs
37
+ import { z } from "zod";
38
+ import { z as z2 } from "zod";
39
+ var FunctionCallSchema = z.object({
40
+ name: z.string(),
41
+ arguments: z.string()
42
+ });
43
+ var ToolCallSchema = z.object({
44
+ id: z.string(),
45
+ type: z.literal("function"),
46
+ function: FunctionCallSchema
47
+ });
48
+ var BaseMessageSchema = z.object({
49
+ id: z.string(),
50
+ role: z.string(),
51
+ content: z.string().optional(),
52
+ name: z.string().optional()
53
+ });
54
+ var TextInputContentSchema = z.object({
55
+ type: z.literal("text"),
56
+ text: z.string()
57
+ });
58
+ var BinaryInputContentObjectSchema = z.object({
59
+ type: z.literal("binary"),
60
+ mimeType: z.string(),
61
+ id: z.string().optional(),
62
+ url: z.string().optional(),
63
+ data: z.string().optional(),
64
+ filename: z.string().optional()
65
+ });
66
+ var ensureBinaryPayload = (value, ctx) => {
67
+ if (!value.id && !value.url && !value.data) {
68
+ ctx.addIssue({
69
+ code: z.ZodIssueCode.custom,
70
+ message: "BinaryInputContent requires at least one of id, url, or data.",
71
+ path: ["id"]
72
+ });
73
+ }
74
+ };
75
+ var BinaryInputContentSchema = BinaryInputContentObjectSchema.superRefine((value, ctx) => {
76
+ ensureBinaryPayload(value, ctx);
77
+ });
78
+ var InputContentBaseSchema = z.discriminatedUnion("type", [
79
+ TextInputContentSchema,
80
+ BinaryInputContentObjectSchema
81
+ ]);
82
+ var InputContentSchema = InputContentBaseSchema.superRefine((value, ctx) => {
83
+ if (value.type === "binary") {
84
+ ensureBinaryPayload(value, ctx);
85
+ }
86
+ });
87
+ var DeveloperMessageSchema = BaseMessageSchema.extend({
88
+ role: z.literal("developer"),
89
+ content: z.string()
90
+ });
91
+ var SystemMessageSchema = BaseMessageSchema.extend({
92
+ role: z.literal("system"),
93
+ content: z.string()
94
+ });
95
+ var AssistantMessageSchema = BaseMessageSchema.extend({
96
+ role: z.literal("assistant"),
97
+ content: z.string().optional(),
98
+ toolCalls: z.array(ToolCallSchema).optional()
99
+ });
100
+ var UserMessageSchema = BaseMessageSchema.extend({
101
+ role: z.literal("user"),
102
+ content: z.union([z.string(), z.array(InputContentSchema)])
103
+ });
104
+ var ToolMessageSchema = z.object({
105
+ id: z.string(),
106
+ content: z.string(),
107
+ role: z.literal("tool"),
108
+ toolCallId: z.string(),
109
+ error: z.string().optional()
110
+ });
111
+ var ActivityMessageSchema = z.object({
112
+ id: z.string(),
113
+ role: z.literal("activity"),
114
+ activityType: z.string(),
115
+ content: z.record(z.any())
116
+ });
117
+ var MessageSchema = z.discriminatedUnion("role", [
118
+ DeveloperMessageSchema,
119
+ SystemMessageSchema,
120
+ AssistantMessageSchema,
121
+ UserMessageSchema,
122
+ ToolMessageSchema,
123
+ ActivityMessageSchema
124
+ ]);
125
+ var RoleSchema = z.union([
126
+ z.literal("developer"),
127
+ z.literal("system"),
128
+ z.literal("assistant"),
129
+ z.literal("user"),
130
+ z.literal("tool"),
131
+ z.literal("activity")
132
+ ]);
133
+ var ContextSchema = z.object({
134
+ description: z.string(),
135
+ value: z.string()
136
+ });
137
+ var ToolSchema = z.object({
138
+ name: z.string(),
139
+ description: z.string(),
140
+ parameters: z.any()
141
+ // JSON Schema for the tool parameters
142
+ });
143
+ var RunAgentInputSchema = z.object({
144
+ threadId: z.string(),
145
+ runId: z.string(),
146
+ parentRunId: z.string().optional(),
147
+ state: z.any(),
148
+ messages: z.array(MessageSchema),
149
+ tools: z.array(ToolSchema),
150
+ context: z.array(ContextSchema),
151
+ forwardedProps: z.any()
152
+ });
153
+ var StateSchema = z.any();
154
+ var AGUIError = class extends Error {
155
+ constructor(message) {
156
+ super(message);
157
+ }
158
+ };
159
+ var AGUIConnectNotImplementedError = class extends AGUIError {
160
+ constructor() {
161
+ super("Connect not implemented. This method is not supported by the current agent.");
162
+ }
163
+ };
164
+ var TextMessageRoleSchema = z2.union([
165
+ z2.literal("developer"),
166
+ z2.literal("system"),
167
+ z2.literal("assistant"),
168
+ z2.literal("user")
169
+ ]);
170
+ var EventType = /* @__PURE__ */ ((EventType2) => {
171
+ EventType2["TEXT_MESSAGE_START"] = "TEXT_MESSAGE_START";
172
+ EventType2["TEXT_MESSAGE_CONTENT"] = "TEXT_MESSAGE_CONTENT";
173
+ EventType2["TEXT_MESSAGE_END"] = "TEXT_MESSAGE_END";
174
+ EventType2["TEXT_MESSAGE_CHUNK"] = "TEXT_MESSAGE_CHUNK";
175
+ EventType2["THINKING_TEXT_MESSAGE_START"] = "THINKING_TEXT_MESSAGE_START";
176
+ EventType2["THINKING_TEXT_MESSAGE_CONTENT"] = "THINKING_TEXT_MESSAGE_CONTENT";
177
+ EventType2["THINKING_TEXT_MESSAGE_END"] = "THINKING_TEXT_MESSAGE_END";
178
+ EventType2["TOOL_CALL_START"] = "TOOL_CALL_START";
179
+ EventType2["TOOL_CALL_ARGS"] = "TOOL_CALL_ARGS";
180
+ EventType2["TOOL_CALL_END"] = "TOOL_CALL_END";
181
+ EventType2["TOOL_CALL_CHUNK"] = "TOOL_CALL_CHUNK";
182
+ EventType2["TOOL_CALL_RESULT"] = "TOOL_CALL_RESULT";
183
+ EventType2["THINKING_START"] = "THINKING_START";
184
+ EventType2["THINKING_END"] = "THINKING_END";
185
+ EventType2["STATE_SNAPSHOT"] = "STATE_SNAPSHOT";
186
+ EventType2["STATE_DELTA"] = "STATE_DELTA";
187
+ EventType2["MESSAGES_SNAPSHOT"] = "MESSAGES_SNAPSHOT";
188
+ EventType2["ACTIVITY_SNAPSHOT"] = "ACTIVITY_SNAPSHOT";
189
+ EventType2["ACTIVITY_DELTA"] = "ACTIVITY_DELTA";
190
+ EventType2["RAW"] = "RAW";
191
+ EventType2["CUSTOM"] = "CUSTOM";
192
+ EventType2["RUN_STARTED"] = "RUN_STARTED";
193
+ EventType2["RUN_FINISHED"] = "RUN_FINISHED";
194
+ EventType2["RUN_ERROR"] = "RUN_ERROR";
195
+ EventType2["STEP_STARTED"] = "STEP_STARTED";
196
+ EventType2["STEP_FINISHED"] = "STEP_FINISHED";
197
+ return EventType2;
198
+ })(EventType || {});
199
+ var BaseEventSchema = z2.object({
200
+ type: z2.nativeEnum(EventType),
201
+ timestamp: z2.number().optional(),
202
+ rawEvent: z2.any().optional()
203
+ });
204
+ var TextMessageStartEventSchema = BaseEventSchema.extend({
205
+ type: z2.literal(
206
+ "TEXT_MESSAGE_START"
207
+ /* TEXT_MESSAGE_START */
208
+ ),
209
+ messageId: z2.string(),
210
+ role: TextMessageRoleSchema.default("assistant")
211
+ });
212
+ var TextMessageContentEventSchema = BaseEventSchema.extend({
213
+ type: z2.literal(
214
+ "TEXT_MESSAGE_CONTENT"
215
+ /* TEXT_MESSAGE_CONTENT */
216
+ ),
217
+ messageId: z2.string(),
218
+ delta: z2.string().refine((s) => s.length > 0, "Delta must not be an empty string")
219
+ });
220
+ var TextMessageEndEventSchema = BaseEventSchema.extend({
221
+ type: z2.literal(
222
+ "TEXT_MESSAGE_END"
223
+ /* TEXT_MESSAGE_END */
224
+ ),
225
+ messageId: z2.string()
226
+ });
227
+ var TextMessageChunkEventSchema = BaseEventSchema.extend({
228
+ type: z2.literal(
229
+ "TEXT_MESSAGE_CHUNK"
230
+ /* TEXT_MESSAGE_CHUNK */
231
+ ),
232
+ messageId: z2.string().optional(),
233
+ role: TextMessageRoleSchema.optional(),
234
+ delta: z2.string().optional()
235
+ });
236
+ var ThinkingTextMessageStartEventSchema = BaseEventSchema.extend({
237
+ type: z2.literal(
238
+ "THINKING_TEXT_MESSAGE_START"
239
+ /* THINKING_TEXT_MESSAGE_START */
240
+ )
241
+ });
242
+ var ThinkingTextMessageContentEventSchema = TextMessageContentEventSchema.omit({
243
+ messageId: true,
244
+ type: true
245
+ }).extend({
246
+ type: z2.literal(
247
+ "THINKING_TEXT_MESSAGE_CONTENT"
248
+ /* THINKING_TEXT_MESSAGE_CONTENT */
249
+ )
250
+ });
251
+ var ThinkingTextMessageEndEventSchema = BaseEventSchema.extend({
252
+ type: z2.literal(
253
+ "THINKING_TEXT_MESSAGE_END"
254
+ /* THINKING_TEXT_MESSAGE_END */
255
+ )
256
+ });
257
+ var ToolCallStartEventSchema = BaseEventSchema.extend({
258
+ type: z2.literal(
259
+ "TOOL_CALL_START"
260
+ /* TOOL_CALL_START */
261
+ ),
262
+ toolCallId: z2.string(),
263
+ toolCallName: z2.string(),
264
+ parentMessageId: z2.string().optional()
265
+ });
266
+ var ToolCallArgsEventSchema = BaseEventSchema.extend({
267
+ type: z2.literal(
268
+ "TOOL_CALL_ARGS"
269
+ /* TOOL_CALL_ARGS */
270
+ ),
271
+ toolCallId: z2.string(),
272
+ delta: z2.string()
273
+ });
274
+ var ToolCallEndEventSchema = BaseEventSchema.extend({
275
+ type: z2.literal(
276
+ "TOOL_CALL_END"
277
+ /* TOOL_CALL_END */
278
+ ),
279
+ toolCallId: z2.string()
280
+ });
281
+ var ToolCallResultEventSchema = BaseEventSchema.extend({
282
+ messageId: z2.string(),
283
+ type: z2.literal(
284
+ "TOOL_CALL_RESULT"
285
+ /* TOOL_CALL_RESULT */
286
+ ),
287
+ toolCallId: z2.string(),
288
+ content: z2.string(),
289
+ role: z2.literal("tool").optional()
290
+ });
291
+ var ToolCallChunkEventSchema = BaseEventSchema.extend({
292
+ type: z2.literal(
293
+ "TOOL_CALL_CHUNK"
294
+ /* TOOL_CALL_CHUNK */
295
+ ),
296
+ toolCallId: z2.string().optional(),
297
+ toolCallName: z2.string().optional(),
298
+ parentMessageId: z2.string().optional(),
299
+ delta: z2.string().optional()
300
+ });
301
+ var ThinkingStartEventSchema = BaseEventSchema.extend({
302
+ type: z2.literal(
303
+ "THINKING_START"
304
+ /* THINKING_START */
305
+ ),
306
+ title: z2.string().optional()
307
+ });
308
+ var ThinkingEndEventSchema = BaseEventSchema.extend({
309
+ type: z2.literal(
310
+ "THINKING_END"
311
+ /* THINKING_END */
312
+ )
313
+ });
314
+ var StateSnapshotEventSchema = BaseEventSchema.extend({
315
+ type: z2.literal(
316
+ "STATE_SNAPSHOT"
317
+ /* STATE_SNAPSHOT */
318
+ ),
319
+ snapshot: StateSchema
320
+ });
321
+ var StateDeltaEventSchema = BaseEventSchema.extend({
322
+ type: z2.literal(
323
+ "STATE_DELTA"
324
+ /* STATE_DELTA */
325
+ ),
326
+ delta: z2.array(z2.any())
327
+ // JSON Patch (RFC 6902)
328
+ });
329
+ var MessagesSnapshotEventSchema = BaseEventSchema.extend({
330
+ type: z2.literal(
331
+ "MESSAGES_SNAPSHOT"
332
+ /* MESSAGES_SNAPSHOT */
333
+ ),
334
+ messages: z2.array(MessageSchema)
335
+ });
336
+ var ActivitySnapshotEventSchema = BaseEventSchema.extend({
337
+ type: z2.literal(
338
+ "ACTIVITY_SNAPSHOT"
339
+ /* ACTIVITY_SNAPSHOT */
340
+ ),
341
+ messageId: z2.string(),
342
+ activityType: z2.string(),
343
+ content: z2.record(z2.any()),
344
+ replace: z2.boolean().optional().default(true)
345
+ });
346
+ var ActivityDeltaEventSchema = BaseEventSchema.extend({
347
+ type: z2.literal(
348
+ "ACTIVITY_DELTA"
349
+ /* ACTIVITY_DELTA */
350
+ ),
351
+ messageId: z2.string(),
352
+ activityType: z2.string(),
353
+ patch: z2.array(z2.any())
354
+ });
355
+ var RawEventSchema = BaseEventSchema.extend({
356
+ type: z2.literal(
357
+ "RAW"
358
+ /* RAW */
359
+ ),
360
+ event: z2.any(),
361
+ source: z2.string().optional()
362
+ });
363
+ var CustomEventSchema = BaseEventSchema.extend({
364
+ type: z2.literal(
365
+ "CUSTOM"
366
+ /* CUSTOM */
367
+ ),
368
+ name: z2.string(),
369
+ value: z2.any()
370
+ });
371
+ var RunStartedEventSchema = BaseEventSchema.extend({
372
+ type: z2.literal(
373
+ "RUN_STARTED"
374
+ /* RUN_STARTED */
375
+ ),
376
+ threadId: z2.string(),
377
+ runId: z2.string(),
378
+ parentRunId: z2.string().optional(),
379
+ input: RunAgentInputSchema.optional()
380
+ });
381
+ var RunFinishedEventSchema = BaseEventSchema.extend({
382
+ type: z2.literal(
383
+ "RUN_FINISHED"
384
+ /* RUN_FINISHED */
385
+ ),
386
+ threadId: z2.string(),
387
+ runId: z2.string(),
388
+ result: z2.any().optional()
389
+ });
390
+ var RunErrorEventSchema = BaseEventSchema.extend({
391
+ type: z2.literal(
392
+ "RUN_ERROR"
393
+ /* RUN_ERROR */
394
+ ),
395
+ message: z2.string(),
396
+ code: z2.string().optional()
397
+ });
398
+ var StepStartedEventSchema = BaseEventSchema.extend({
399
+ type: z2.literal(
400
+ "STEP_STARTED"
401
+ /* STEP_STARTED */
402
+ ),
403
+ stepName: z2.string()
404
+ });
405
+ var StepFinishedEventSchema = BaseEventSchema.extend({
406
+ type: z2.literal(
407
+ "STEP_FINISHED"
408
+ /* STEP_FINISHED */
409
+ ),
410
+ stepName: z2.string()
411
+ });
412
+ var EventSchemas = z2.discriminatedUnion("type", [
413
+ TextMessageStartEventSchema,
414
+ TextMessageContentEventSchema,
415
+ TextMessageEndEventSchema,
416
+ TextMessageChunkEventSchema,
417
+ ThinkingStartEventSchema,
418
+ ThinkingEndEventSchema,
419
+ ThinkingTextMessageStartEventSchema,
420
+ ThinkingTextMessageContentEventSchema,
421
+ ThinkingTextMessageEndEventSchema,
422
+ ToolCallStartEventSchema,
423
+ ToolCallArgsEventSchema,
424
+ ToolCallEndEventSchema,
425
+ ToolCallChunkEventSchema,
426
+ ToolCallResultEventSchema,
427
+ StateSnapshotEventSchema,
428
+ StateDeltaEventSchema,
429
+ MessagesSnapshotEventSchema,
430
+ ActivitySnapshotEventSchema,
431
+ ActivityDeltaEventSchema,
432
+ RawEventSchema,
433
+ CustomEventSchema,
434
+ RunStartedEventSchema,
435
+ RunFinishedEventSchema,
436
+ RunErrorEventSchema,
437
+ StepStartedEventSchema,
438
+ StepFinishedEventSchema
439
+ ]);
440
+
441
+ // src/hooks/use-copilot-chat_internal.ts
442
+ function useConfigureSuggestions(suggestions) {
443
+ let suggestionsConfig;
444
+ if (Array.isArray(suggestions)) {
445
+ suggestionsConfig = {
446
+ suggestions,
447
+ available: "always"
448
+ };
449
+ } else if (suggestions === "auto") {
450
+ suggestionsConfig = {
451
+ available: suggestions === "auto" ? "always" : "disabled",
452
+ instructions: "Suggest what the user could say next. Provide clear, highly relevant suggestions. Do not literally suggest function calls."
453
+ };
454
+ } else {
455
+ suggestionsConfig = { available: "disabled" };
456
+ }
457
+ useConfigureChatSuggestions(suggestionsConfig);
458
+ }
459
+ function useCopilotChatInternal({
460
+ suggestions
461
+ } = {}) {
462
+ var _a, _b, _c, _d;
463
+ const { copilotkit } = useCopilotKit();
464
+ const { threadId, agentSession } = useCopilotContext();
465
+ const existingConfig = useCopilotChatConfiguration();
466
+ const [agentAvailable, setAgentAvailable] = useState(false);
467
+ useConfigureSuggestions(suggestions);
468
+ const resolvedAgentId = (_b = (_a = agentSession == null ? void 0 : agentSession.agentName) != null ? _a : existingConfig == null ? void 0 : existingConfig.agentId) != null ? _b : "default";
469
+ const { agent } = useAgent({ agentId: resolvedAgentId });
470
+ useEffect(() => {
471
+ const connect = (agent2) => __async(this, null, function* () {
472
+ setAgentAvailable(false);
473
+ try {
474
+ yield copilotkit.connectAgent({ agent: agent2 });
475
+ setAgentAvailable(true);
476
+ } catch (error) {
477
+ if (error instanceof AGUIConnectNotImplementedError) {
478
+ } else {
479
+ throw error;
480
+ }
481
+ }
482
+ });
483
+ if (agent && (existingConfig == null ? void 0 : existingConfig.threadId) && agent.threadId !== existingConfig.threadId) {
484
+ agent.threadId = existingConfig.threadId;
485
+ connect(agent);
486
+ }
487
+ return () => {
488
+ };
489
+ }, [existingConfig == null ? void 0 : existingConfig.threadId, agent, copilotkit, resolvedAgentId]);
490
+ const interrupt = useLangGraphInterruptRender(agent);
491
+ const reset = () => {
492
+ agent == null ? void 0 : agent.setMessages([]);
493
+ agent == null ? void 0 : agent.setState(null);
494
+ };
495
+ const deleteMessage = useCallback(
496
+ (messageId) => {
497
+ var _a2;
498
+ const filteredMessages = ((_a2 = agent == null ? void 0 : agent.messages) != null ? _a2 : []).filter(
499
+ (message) => message.id !== messageId
500
+ );
501
+ agent == null ? void 0 : agent.setMessages(filteredMessages);
502
+ },
503
+ [agent == null ? void 0 : agent.setMessages, agent == null ? void 0 : agent.messages]
504
+ );
505
+ const latestDelete = useUpdatedRef(deleteMessage);
506
+ const latestDeleteFunc = useCallback(
507
+ (messageId) => {
508
+ return latestDelete.current(messageId);
509
+ },
510
+ [latestDelete]
511
+ );
512
+ const currentSuggestions = useSuggestions({ agentId: resolvedAgentId });
513
+ const reload = useAsyncCallback(
514
+ (reloadMessageId) => __async(this, null, function* () {
515
+ var _a2;
516
+ const messages = (_a2 = agent == null ? void 0 : agent.messages) != null ? _a2 : [];
517
+ const isLoading = false;
518
+ if (isLoading || messages.length === 0) {
519
+ return;
520
+ }
521
+ const reloadMessageIndex = messages.findIndex((msg) => msg.id === reloadMessageId);
522
+ if (reloadMessageIndex === -1) {
523
+ console.warn(`Message with id ${reloadMessageId} not found`);
524
+ return;
525
+ }
526
+ const reloadMessageRole = messages[reloadMessageIndex].role;
527
+ if (reloadMessageRole !== "assistant") {
528
+ console.warn(`Regenerate cannot be performed on ${reloadMessageRole} role`);
529
+ return;
530
+ }
531
+ let historyCutoff = [messages[0]];
532
+ if (messages.length > 2 && reloadMessageIndex !== 0) {
533
+ const lastUserMessageBeforeRegenerate = messages.slice(0, reloadMessageIndex).reverse().find((msg) => msg.role === "user");
534
+ if (!lastUserMessageBeforeRegenerate) {
535
+ historyCutoff = [messages[0]];
536
+ } else {
537
+ const indexOfLastUserMessageBeforeRegenerate = messages.findIndex(
538
+ (msg) => msg.id === lastUserMessageBeforeRegenerate.id
539
+ );
540
+ historyCutoff = messages.slice(0, indexOfLastUserMessageBeforeRegenerate + 1);
541
+ }
542
+ } else if (messages.length > 2 && reloadMessageIndex === 0) {
543
+ historyCutoff = [messages[0], messages[1]];
544
+ }
545
+ agent == null ? void 0 : agent.setMessages(historyCutoff);
546
+ if (agent) {
547
+ copilotkit.runAgent({ agent });
548
+ }
549
+ return;
550
+ }),
551
+ [agent == null ? void 0 : agent.setMessages, copilotkit == null ? void 0 : copilotkit.runAgent]
552
+ );
553
+ const latestSendMessageFunc = useAsyncCallback(
554
+ (message, options) => __async(this, null, function* () {
555
+ var _a2;
556
+ if (!agent)
557
+ return;
558
+ const followUp = (_a2 = options == null ? void 0 : options.followUp) != null ? _a2 : true;
559
+ if (options == null ? void 0 : options.clearSuggestions) {
560
+ copilotkit.clearSuggestions(resolvedAgentId);
561
+ }
562
+ agent == null ? void 0 : agent.addMessage(message);
563
+ if (followUp) {
564
+ try {
565
+ yield copilotkit.runAgent({ agent });
566
+ } catch (error) {
567
+ console.error("CopilotChat: runAgent failed", error);
568
+ }
569
+ }
570
+ }),
571
+ [agent, copilotkit, resolvedAgentId]
572
+ );
573
+ const latestAppendFunc = useAsyncCallback(
574
+ (message, options) => __async(this, null, function* () {
575
+ return latestSendMessageFunc(gqlToAGUI([message])[0], options);
576
+ }),
577
+ [latestSendMessageFunc]
578
+ );
579
+ const latestSetMessages = useUpdatedRef(agent == null ? void 0 : agent.setMessages);
580
+ const latestSetMessagesFunc = useCallback(
581
+ (messages) => {
582
+ var _a2, _b2;
583
+ if (messages.every((message) => message instanceof DeprecatedGqlMessage)) {
584
+ return (_a2 = latestSetMessages.current) == null ? void 0 : _a2.call(latestSetMessages, gqlToAGUI(messages));
585
+ }
586
+ return (_b2 = latestSetMessages.current) == null ? void 0 : _b2.call(latestSetMessages, messages);
587
+ },
588
+ [latestSetMessages, agent]
589
+ );
590
+ const latestReload = useUpdatedRef(reload);
591
+ const latestReloadFunc = useAsyncCallback(
592
+ (messageId) => __async(this, null, function* () {
593
+ return yield latestReload.current(messageId);
594
+ }),
595
+ [latestReload]
596
+ );
597
+ const latestStop = useUpdatedRef(agent == null ? void 0 : agent.abortRun);
598
+ const latestStopFunc = useCallback(() => {
599
+ var _a2;
600
+ return (_a2 = latestStop.current) == null ? void 0 : _a2.call(latestStop);
601
+ }, [latestStop]);
602
+ const latestReset = useUpdatedRef(reset);
603
+ const latestResetFunc = useCallback(() => {
604
+ return latestReset.current();
605
+ }, [latestReset]);
606
+ const lazyToolRendered = useLazyToolRenderer();
607
+ const renderCustomMessage = useRenderCustomMessages();
608
+ const legacyCustomMessageRenderer = useLegacyCoagentRenderer({
609
+ copilotkit,
610
+ agent,
611
+ agentId: resolvedAgentId,
612
+ threadId: (_c = existingConfig == null ? void 0 : existingConfig.threadId) != null ? _c : threadId
613
+ });
614
+ const allMessages = (_d = agent == null ? void 0 : agent.messages) != null ? _d : [];
615
+ const resolvedMessages = useMemo(() => {
616
+ let processedMessages = allMessages.map((message) => {
617
+ if (message.role !== "assistant") {
618
+ return message;
619
+ }
620
+ const lazyRendered = lazyToolRendered(message, allMessages);
621
+ if (lazyRendered) {
622
+ const renderedGenUi = lazyRendered();
623
+ if (renderedGenUi) {
624
+ return __spreadProps(__spreadValues({}, message), { generativeUI: () => renderedGenUi });
625
+ }
626
+ }
627
+ const bridgeRenderer = legacyCustomMessageRenderer || renderCustomMessage ? () => {
628
+ const customRender = renderCustomMessage == null ? void 0 : renderCustomMessage({
629
+ message,
630
+ position: "before"
631
+ });
632
+ if (customRender) {
633
+ return customRender;
634
+ }
635
+ return legacyCustomMessageRenderer == null ? void 0 : legacyCustomMessageRenderer({ message, position: "before" });
636
+ } : null;
637
+ if (bridgeRenderer) {
638
+ return __spreadProps(__spreadValues({}, message), { generativeUI: bridgeRenderer });
639
+ }
640
+ return message;
641
+ });
642
+ const hasAssistantMessages = processedMessages.some((msg) => msg.role === "assistant");
643
+ if (legacyCustomMessageRenderer && !hasAssistantMessages) {
644
+ const placeholderId = `coagent-state-render-${resolvedAgentId}`;
645
+ const placeholderMessage = {
646
+ id: placeholderId,
647
+ role: "assistant",
648
+ content: "",
649
+ name: "coagent-state-render"
650
+ };
651
+ processedMessages = [
652
+ ...processedMessages,
653
+ __spreadProps(__spreadValues({}, placeholderMessage), {
654
+ generativeUI: () => legacyCustomMessageRenderer({
655
+ message: placeholderMessage,
656
+ position: "before"
657
+ })
658
+ })
659
+ ];
660
+ }
661
+ return processedMessages;
662
+ }, [
663
+ agent == null ? void 0 : agent.messages,
664
+ lazyToolRendered,
665
+ allMessages,
666
+ renderCustomMessage,
667
+ legacyCustomMessageRenderer,
668
+ resolvedAgentId
669
+ ]);
670
+ return {
671
+ messages: resolvedMessages,
672
+ sendMessage: latestSendMessageFunc,
673
+ appendMessage: latestAppendFunc,
674
+ setMessages: latestSetMessagesFunc,
675
+ reloadMessages: latestReloadFunc,
676
+ stopGeneration: latestStopFunc,
677
+ reset: latestResetFunc,
678
+ deleteMessage: latestDeleteFunc,
679
+ isAvailable: !agentAvailable,
680
+ isLoading: Boolean(agent == null ? void 0 : agent.isRunning),
681
+ // mcpServers,
682
+ // setMcpServers,
683
+ suggestions: currentSuggestions.suggestions,
684
+ setSuggestions: (suggestions2) => copilotkit.addSuggestionsConfig({ suggestions: suggestions2 }),
685
+ generateSuggestions: () => __async(this, null, function* () {
686
+ return copilotkit.reloadSuggestions(resolvedAgentId);
687
+ }),
688
+ resetSuggestions: () => copilotkit.clearSuggestions(resolvedAgentId),
689
+ isLoadingSuggestions: currentSuggestions.isLoading,
690
+ interrupt,
691
+ agent,
692
+ threadId
693
+ };
694
+ }
695
+ function useUpdatedRef(value) {
696
+ const ref = useRef(value);
697
+ useEffect(() => {
698
+ ref.current = value;
699
+ }, [value]);
700
+ return ref;
701
+ }
702
+ function useLegacyCoagentRenderer({
703
+ copilotkit,
704
+ agent,
705
+ agentId,
706
+ threadId
707
+ }) {
708
+ return useMemo(() => {
709
+ if (!copilotkit || !agent) {
710
+ return null;
711
+ }
712
+ return ({ message, position }) => {
713
+ var _a;
714
+ const effectiveThreadId = (_a = threadId != null ? threadId : agent.threadId) != null ? _a : "default";
715
+ const existingRunId = copilotkit.getRunIdForMessage(
716
+ agentId,
717
+ effectiveThreadId,
718
+ message.id
719
+ );
720
+ const runId = existingRunId || `pending:${message.id}`;
721
+ const messageIndex = Math.max(agent.messages.findIndex((msg) => msg.id === message.id), 0);
722
+ const bridgeProps = {
723
+ message,
724
+ position,
725
+ runId,
726
+ messageIndex,
727
+ messageIndexInRun: 0,
728
+ numberOfMessagesInRun: 1,
729
+ agentId,
730
+ stateSnapshot: message.state
731
+ };
732
+ return createElement(CoAgentStateRenderBridge, bridgeProps);
733
+ };
734
+ }, [agent, agentId, copilotkit, threadId]);
735
+ }
736
+ function defaultSystemMessage(contextString, additionalInstructions) {
737
+ return `
738
+ Please act as an efficient, competent, conscientious, and industrious professional assistant.
739
+
740
+ Help the user achieve their goals, and you do so in a way that is as efficient as possible, without unnecessary fluff, but also without sacrificing professionalism.
741
+ Always be polite and respectful, and prefer brevity over verbosity.
742
+
743
+ The user has provided you with the following context:
744
+ \`\`\`
745
+ ${contextString}
746
+ \`\`\`
747
+
748
+ They have also provided you with functions you can call to initiate actions on their behalf, or functions you can call to receive more information.
749
+
750
+ Please assist them as best you can.
751
+
752
+ You can ask them for clarifying questions if needed, but don't be annoying about it. If you can reasonably 'fill in the blanks' yourself, do so.
753
+
754
+ If you would like to call a function, call it without saying anything else.
755
+ In case of a function error:
756
+ - If this error stems from incorrect function parameters or syntax, you may retry with corrected arguments.
757
+ - If the error's source is unclear or seems unrelated to your input, do not attempt further retries.
758
+ ` + (additionalInstructions ? `
759
+
760
+ ${additionalInstructions}` : "");
761
+ }
762
+
763
+ export {
764
+ useCopilotChatInternal,
765
+ defaultSystemMessage
766
+ };
767
+ //# sourceMappingURL=chunk-UJBV5GAG.mjs.map