@copilotkit/runtime 1.4.0-lgc-alpha3.0 → 1.4.0-pre-1-4-0.10

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 (48) hide show
  1. package/CHANGELOG.md +85 -3
  2. package/dist/{chunk-KTIMUXCE.mjs → chunk-5DNXXJKY.mjs} +2 -2
  3. package/dist/{chunk-WTEY45IF.mjs → chunk-7ASURDKE.mjs} +3 -3
  4. package/dist/{chunk-WTEY45IF.mjs.map → chunk-7ASURDKE.mjs.map} +1 -1
  5. package/dist/{chunk-XE3SYKK4.mjs → chunk-BNQDVBQH.mjs} +1 -1
  6. package/dist/chunk-BNQDVBQH.mjs.map +1 -0
  7. package/dist/{chunk-CMYZ2LM7.mjs → chunk-ITRJ4KUY.mjs} +2 -2
  8. package/dist/{chunk-2EV5DRUI.mjs → chunk-KDMS6EKE.mjs} +27 -47
  9. package/dist/chunk-KDMS6EKE.mjs.map +1 -0
  10. package/dist/{chunk-3CQQ4U77.mjs → chunk-NR7QFSEY.mjs} +2 -2
  11. package/dist/{copilot-runtime-543a59ae.d.ts → copilot-runtime-8d3f40c7.d.ts} +1 -1
  12. package/dist/{groq-adapter-7aa25931.d.ts → groq-adapter-dbfba3eb.d.ts} +33 -0
  13. package/dist/index.d.ts +2 -2
  14. package/dist/index.js +26 -46
  15. package/dist/index.js.map +1 -1
  16. package/dist/index.mjs +6 -6
  17. package/dist/lib/index.d.ts +2 -2
  18. package/dist/lib/index.js +26 -46
  19. package/dist/lib/index.js.map +1 -1
  20. package/dist/lib/index.mjs +6 -6
  21. package/dist/lib/integrations/index.d.ts +2 -2
  22. package/dist/lib/integrations/index.js +1 -1
  23. package/dist/lib/integrations/index.js.map +1 -1
  24. package/dist/lib/integrations/index.mjs +4 -4
  25. package/dist/lib/integrations/nest/index.d.ts +1 -1
  26. package/dist/lib/integrations/nest/index.js +1 -1
  27. package/dist/lib/integrations/nest/index.js.map +1 -1
  28. package/dist/lib/integrations/nest/index.mjs +2 -2
  29. package/dist/lib/integrations/node-express/index.d.ts +1 -1
  30. package/dist/lib/integrations/node-express/index.js +1 -1
  31. package/dist/lib/integrations/node-express/index.js.map +1 -1
  32. package/dist/lib/integrations/node-express/index.mjs +2 -2
  33. package/dist/lib/integrations/node-http/index.d.ts +1 -1
  34. package/dist/lib/integrations/node-http/index.js +1 -1
  35. package/dist/lib/integrations/node-http/index.js.map +1 -1
  36. package/dist/lib/integrations/node-http/index.mjs +1 -1
  37. package/dist/service-adapters/index.d.ts +1 -1
  38. package/dist/service-adapters/index.js.map +1 -1
  39. package/dist/service-adapters/index.mjs +1 -1
  40. package/package.json +4 -4
  41. package/src/lib/runtime/copilot-runtime.ts +2 -2
  42. package/src/lib/runtime/remote-lg-cloud-action.ts +38 -51
  43. package/src/service-adapters/openai/openai-adapter.ts +33 -0
  44. package/dist/chunk-2EV5DRUI.mjs.map +0 -1
  45. package/dist/chunk-XE3SYKK4.mjs.map +0 -1
  46. /package/dist/{chunk-KTIMUXCE.mjs.map → chunk-5DNXXJKY.mjs.map} +0 -0
  47. /package/dist/{chunk-CMYZ2LM7.mjs.map → chunk-ITRJ4KUY.mjs.map} +0 -0
  48. /package/dist/{chunk-3CQQ4U77.mjs.map → chunk-NR7QFSEY.mjs.map} +0 -0
package/dist/index.mjs CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  copilotKitEndpoint,
4
4
  flattenToolCallsNoDuplicates,
5
5
  langGraphCloudEndpoint
6
- } from "./chunk-WTEY45IF.mjs";
6
+ } from "./chunk-7ASURDKE.mjs";
7
7
  import {
8
8
  AnthropicAdapter,
9
9
  GoogleGenerativeAIAdapter,
@@ -13,24 +13,24 @@ import {
13
13
  OpenAIAssistantAdapter,
14
14
  RemoteChain,
15
15
  UnifyAdapter
16
- } from "./chunk-XE3SYKK4.mjs";
16
+ } from "./chunk-BNQDVBQH.mjs";
17
17
  import {
18
18
  config,
19
19
  copilotRuntimeNextJSAppRouterEndpoint,
20
20
  copilotRuntimeNextJSPagesRouterEndpoint
21
- } from "./chunk-KTIMUXCE.mjs";
21
+ } from "./chunk-5DNXXJKY.mjs";
22
22
  import {
23
23
  copilotRuntimeNestEndpoint
24
- } from "./chunk-3CQQ4U77.mjs";
24
+ } from "./chunk-NR7QFSEY.mjs";
25
25
  import {
26
26
  copilotRuntimeNodeExpressEndpoint
27
- } from "./chunk-CMYZ2LM7.mjs";
27
+ } from "./chunk-ITRJ4KUY.mjs";
28
28
  import {
29
29
  buildSchema,
30
30
  copilotRuntimeNodeHttpEndpoint,
31
31
  createContext,
32
32
  getCommonConfig
33
- } from "./chunk-2EV5DRUI.mjs";
33
+ } from "./chunk-KDMS6EKE.mjs";
34
34
  import "./chunk-MXXPWWBF.mjs";
35
35
  import {
36
36
  GuardrailsValidationFailureResponse,
@@ -1,5 +1,5 @@
1
- export { h as CommonConfig, b as CopilotRequestContextProperties, a as CopilotRuntime, C as CopilotRuntimeConstructorParams, d as CreateCopilotRuntimeServerOptions, G as GraphQLContext, g as buildSchema, c as copilotKitEndpoint, e as createContext, f as flattenToolCallsNoDuplicates, i as getCommonConfig, l as langGraphCloudEndpoint } from '../copilot-runtime-543a59ae.js';
2
- export { G as GoogleGenerativeAIAdapter, f as GroqAdapter, e as GroqAdapterParams, L as LangChainAdapter, a as OpenAIAdapter, O as OpenAIAdapterParams, c as OpenAIAssistantAdapter, b as OpenAIAssistantAdapterParams, d as UnifyAdapter, U as UnifyAdapterParams } from '../groq-adapter-7aa25931.js';
1
+ export { h as CommonConfig, b as CopilotRequestContextProperties, a as CopilotRuntime, C as CopilotRuntimeConstructorParams, d as CreateCopilotRuntimeServerOptions, G as GraphQLContext, g as buildSchema, c as copilotKitEndpoint, e as createContext, f as flattenToolCallsNoDuplicates, i as getCommonConfig, l as langGraphCloudEndpoint } from '../copilot-runtime-8d3f40c7.js';
2
+ export { G as GoogleGenerativeAIAdapter, f as GroqAdapter, e as GroqAdapterParams, L as LangChainAdapter, a as OpenAIAdapter, O as OpenAIAdapterParams, c as OpenAIAssistantAdapter, b as OpenAIAssistantAdapterParams, d as UnifyAdapter, U as UnifyAdapterParams } from '../groq-adapter-dbfba3eb.js';
3
3
  export { CopilotRuntimeServerInstance, config, copilotRuntimeNextJSAppRouterEndpoint, copilotRuntimeNextJSPagesRouterEndpoint } from './integrations/index.js';
4
4
  export { copilotRuntimeNodeHttpEndpoint } from './integrations/node-http/index.js';
5
5
  export { copilotRuntimeNodeExpressEndpoint } from './integrations/node-express/index.js';
package/dist/lib/index.js CHANGED
@@ -44,7 +44,7 @@ var require_package = __commonJS({
44
44
  publishConfig: {
45
45
  access: "public"
46
46
  },
47
- version: "1.4.0-lgc-alpha3.0",
47
+ version: "1.4.0-pre-1-4-0.10",
48
48
  sideEffects: false,
49
49
  main: "./dist/index.js",
50
50
  module: "./dist/index.mjs",
@@ -1415,7 +1415,7 @@ async function streamEvents(controller, args) {
1415
1415
  let streamingStateExtractor = new StreamingStateExtractor([]);
1416
1416
  let prevNodeName = null;
1417
1417
  let emitIntermediateStateUntilEnd = null;
1418
- let shouldExit = null;
1418
+ let shouldExit = false;
1419
1419
  let externalRunId = null;
1420
1420
  const streamResponse2 = client.runs.stream(threadId, assistantId, {
1421
1421
  input: streamInput,
@@ -1426,6 +1426,7 @@ async function streamEvents(controller, args) {
1426
1426
  });
1427
1427
  const emit = /* @__PURE__ */ __name((message) => controller.enqueue(new TextEncoder().encode(message)), "emit");
1428
1428
  let latestStateValues = {};
1429
+ let updatedState = state;
1429
1430
  try {
1430
1431
  for await (const chunk of streamResponse2) {
1431
1432
  if (![
@@ -1448,28 +1449,29 @@ async function streamEvents(controller, args) {
1448
1449
  const runId = event.metadata.run_id;
1449
1450
  externalRunId = runId;
1450
1451
  const metadata = event.metadata;
1451
- shouldExit = shouldExit != null ? shouldExit : eventType === LangGraphEventTypes.OnCustomEvent && event.name === CustomEventNames.CopilotKitExit;
1452
+ shouldExit = shouldExit || eventType === LangGraphEventTypes.OnCustomEvent && event.name === CustomEventNames.CopilotKitExit;
1452
1453
  const emitIntermediateState = metadata["copilotkit:emit-intermediate-state"];
1453
1454
  const manuallyEmitIntermediateState = eventType === LangGraphEventTypes.OnCustomEvent && event.name === CustomEventNames.CopilotKitManuallyEmitIntermediateState;
1454
1455
  if (graphInfo["nodes"].some((node) => node.id === currentNodeName)) {
1455
1456
  nodeName = currentNodeName;
1457
+ if (eventType === LangGraphEventTypes.OnChainStart || eventType === LangGraphEventTypes.OnChainEnd) {
1458
+ updatedState = latestStateValues;
1459
+ }
1456
1460
  }
1457
1461
  if (!nodeName) {
1458
1462
  continue;
1459
1463
  }
1460
1464
  if (manuallyEmitIntermediateState) {
1461
- if (eventType === LangGraphEventTypes.OnChainEnd) {
1462
- state = event.data.output;
1463
- emit(getStateSyncEvent({
1464
- threadId,
1465
- runId,
1466
- agentName: agent.name,
1467
- nodeName,
1468
- state: event.data.output,
1469
- running: true,
1470
- active: true
1471
- }));
1472
- }
1465
+ updatedState = event.data;
1466
+ emit(getStateSyncEvent({
1467
+ threadId,
1468
+ runId,
1469
+ agentName: agent.name,
1470
+ nodeName,
1471
+ state: updatedState,
1472
+ running: true,
1473
+ active: true
1474
+ }));
1473
1475
  continue;
1474
1476
  }
1475
1477
  if (emitIntermediateState && emitIntermediateStateUntilEnd == null) {
@@ -1478,7 +1480,6 @@ async function streamEvents(controller, args) {
1478
1480
  if (emitIntermediateState && eventType === LangGraphEventTypes.OnChatModelStart) {
1479
1481
  streamingStateExtractor = new StreamingStateExtractor(emitIntermediateState);
1480
1482
  }
1481
- let updatedState = latestStateValues;
1482
1483
  if (emitIntermediateState && eventType === LangGraphEventTypes.OnChatModelStream) {
1483
1484
  streamingStateExtractor.bufferToolCalls(event);
1484
1485
  }
@@ -1559,10 +1560,10 @@ var StreamingStateExtractor = /* @__PURE__ */ __name(class StreamingStateExtract
1559
1560
  bufferToolCalls(event) {
1560
1561
  if (event.data.chunk.tool_call_chunks.length > 0) {
1561
1562
  const chunk = event.data.chunk.tool_call_chunks[0];
1562
- if (chunk.name !== null) {
1563
+ if (chunk.name !== null && chunk.name !== void 0) {
1563
1564
  this.currentToolCall = chunk.name;
1564
1565
  this.toolCallBuffer[this.currentToolCall] = chunk.args;
1565
- } else if (this.currentToolCall !== null) {
1566
+ } else if (this.currentToolCall !== null && this.currentToolCall !== void 0) {
1566
1567
  this.toolCallBuffer[this.currentToolCall] += chunk.args;
1567
1568
  }
1568
1569
  }
@@ -1638,12 +1639,10 @@ function langGraphDefaultMergeState(state, messages, actions, agentName) {
1638
1639
  mergedMessages.push(message);
1639
1640
  } else {
1640
1641
  for (let i = 0; i < mergedMessages.length; i++) {
1641
- if (mergedMessages[i].id === message.id) {
1642
- if ("tool_calls" in message) {
1643
- if (("tool_calls" in mergedMessages[i] || "additional_kwargs" in mergedMessages[i]) && mergedMessages[i].content) {
1644
- message.tool_calls = mergedMessages[i]["tool_calls"];
1645
- message.additional_kwargs = mergedMessages[i].additional_kwargs;
1646
- }
1642
+ if (mergedMessages[i].id === message.id && message.role === "assistant") {
1643
+ if (("tool_calls" in mergedMessages[i] || "additional_kwargs" in mergedMessages[i]) && mergedMessages[i].content) {
1644
+ message.tool_calls = mergedMessages[i]["tool_calls"];
1645
+ message.additional_kwargs = mergedMessages[i].additional_kwargs;
1647
1646
  }
1648
1647
  mergedMessages[i] = message;
1649
1648
  }
@@ -1695,34 +1694,15 @@ function langGraphDefaultMergeState(state, messages, actions, agentName) {
1695
1694
  }
1696
1695
  correctedMessages.push(currentMessage);
1697
1696
  }
1698
- return deepMerge(state, {
1697
+ return {
1698
+ ...state,
1699
1699
  messages: correctedMessages,
1700
1700
  copilotkit: {
1701
1701
  actions
1702
1702
  }
1703
- });
1704
- }
1705
- __name(langGraphDefaultMergeState, "langGraphDefaultMergeState");
1706
- function deepMerge(obj1, obj2) {
1707
- let result = {
1708
- ...obj1
1709
1703
  };
1710
- for (let key in obj2) {
1711
- if (typeof obj2[key] === "object" && !Array.isArray(obj2[key])) {
1712
- if (obj1[key]) {
1713
- result[key] = deepMerge(obj1[key], obj2[key]);
1714
- } else {
1715
- result[key] = {
1716
- ...obj2[key]
1717
- };
1718
- }
1719
- } else {
1720
- result[key] = obj2[key];
1721
- }
1722
- }
1723
- return result;
1724
1704
  }
1725
- __name(deepMerge, "deepMerge");
1705
+ __name(langGraphDefaultMergeState, "langGraphDefaultMergeState");
1726
1706
  function formatMessages(messages) {
1727
1707
  return messages.map((message) => {
1728
1708
  if (message.isTextMessage() && message.role === "assistant") {