@copilotkit/runtime 1.9.2-next.1 → 1.9.2-next.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 (84) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/dist/{chunk-YV3YXRMR.mjs → chunk-5OK4GLKL.mjs} +19 -2
  3. package/dist/chunk-5OK4GLKL.mjs.map +1 -0
  4. package/dist/{chunk-RIPQZJB5.mjs → chunk-6RUTA76W.mjs} +2 -2
  5. package/dist/chunk-AMUJQ6IR.mjs +50 -0
  6. package/dist/chunk-AMUJQ6IR.mjs.map +1 -0
  7. package/dist/{chunk-IIXJVVTV.mjs → chunk-GS7DO47Q.mjs} +155 -78
  8. package/dist/chunk-GS7DO47Q.mjs.map +1 -0
  9. package/dist/{chunk-XGBY45FP.mjs → chunk-PMIAGZGS.mjs} +2371 -1857
  10. package/dist/chunk-PMIAGZGS.mjs.map +1 -0
  11. package/dist/{chunk-C3SWOFLO.mjs → chunk-TOBFVWZU.mjs} +2 -2
  12. package/dist/{chunk-KPFOAXRX.mjs → chunk-VBXBFZEL.mjs} +2 -2
  13. package/dist/{chunk-5BIEM2UU.mjs → chunk-XWBDEXDA.mjs} +4 -3
  14. package/dist/{chunk-5BIEM2UU.mjs.map → chunk-XWBDEXDA.mjs.map} +1 -1
  15. package/dist/{groq-adapter-25a2bd35.d.ts → groq-adapter-172a2ca4.d.ts} +1 -1
  16. package/dist/index.d.ts +4 -3
  17. package/dist/index.js +3748 -3096
  18. package/dist/index.js.map +1 -1
  19. package/dist/index.mjs +12 -8
  20. package/dist/index.mjs.map +1 -1
  21. package/dist/lib/index.d.ts +7 -133
  22. package/dist/lib/index.js +3357 -2748
  23. package/dist/lib/index.js.map +1 -1
  24. package/dist/lib/index.mjs +9 -8
  25. package/dist/lib/integrations/index.d.ts +3 -3
  26. package/dist/lib/integrations/index.js +162 -98
  27. package/dist/lib/integrations/index.js.map +1 -1
  28. package/dist/lib/integrations/index.mjs +7 -6
  29. package/dist/lib/integrations/nest/index.d.ts +2 -2
  30. package/dist/lib/integrations/nest/index.js +162 -98
  31. package/dist/lib/integrations/nest/index.js.map +1 -1
  32. package/dist/lib/integrations/nest/index.mjs +5 -4
  33. package/dist/lib/integrations/node-express/index.d.ts +2 -2
  34. package/dist/lib/integrations/node-express/index.js +162 -98
  35. package/dist/lib/integrations/node-express/index.js.map +1 -1
  36. package/dist/lib/integrations/node-express/index.mjs +5 -4
  37. package/dist/lib/integrations/node-http/index.d.ts +2 -2
  38. package/dist/lib/integrations/node-http/index.js +162 -98
  39. package/dist/lib/integrations/node-http/index.js.map +1 -1
  40. package/dist/lib/integrations/node-http/index.mjs +4 -3
  41. package/dist/service-adapters/index.d.ts +6 -4
  42. package/dist/service-adapters/index.js +225 -107
  43. package/dist/service-adapters/index.js.map +1 -1
  44. package/dist/service-adapters/index.mjs +6 -2
  45. package/dist/service-adapters/shared/index.d.ts +9 -0
  46. package/dist/service-adapters/shared/index.js +72 -0
  47. package/dist/service-adapters/shared/index.js.map +1 -0
  48. package/dist/service-adapters/shared/index.mjs +8 -0
  49. package/dist/service-adapters/shared/index.mjs.map +1 -0
  50. package/dist/{shared-e272b15a.d.ts → shared-bd953ebf.d.ts} +45 -5
  51. package/dist/utils/index.d.ts +17 -1
  52. package/dist/utils/index.js +3 -2
  53. package/dist/utils/index.js.map +1 -1
  54. package/dist/utils/index.mjs +1 -1
  55. package/package.json +4 -4
  56. package/src/agents/langgraph/event-source.ts +36 -38
  57. package/src/agents/langgraph/events.ts +19 -1
  58. package/src/graphql/resolvers/copilot.resolver.ts +108 -45
  59. package/src/graphql/resolvers/state.resolver.ts +3 -3
  60. package/src/lib/error-messages.ts +200 -0
  61. package/src/lib/integrations/shared.ts +43 -0
  62. package/src/lib/runtime/__tests__/copilot-runtime-trace.test.ts +169 -0
  63. package/src/lib/runtime/copilot-runtime.ts +412 -83
  64. package/src/lib/runtime/langgraph/langgraph-agent.ts +12 -0
  65. package/src/lib/runtime/remote-action-constructors.ts +28 -3
  66. package/src/lib/runtime/remote-lg-action.ts +130 -40
  67. package/src/lib/streaming.ts +125 -36
  68. package/src/service-adapters/anthropic/anthropic-adapter.ts +67 -8
  69. package/src/service-adapters/anthropic/utils.ts +3 -8
  70. package/src/service-adapters/events.ts +37 -81
  71. package/src/service-adapters/groq/groq-adapter.ts +66 -56
  72. package/src/service-adapters/index.ts +1 -0
  73. package/src/service-adapters/openai/openai-adapter.ts +18 -3
  74. package/src/service-adapters/shared/error-utils.ts +61 -0
  75. package/src/service-adapters/shared/index.ts +1 -0
  76. package/src/utils/failed-response-status-reasons.ts +23 -1
  77. package/tests/service-adapters/anthropic/anthropic-adapter.test.ts +172 -387
  78. package/dist/chunk-IIXJVVTV.mjs.map +0 -1
  79. package/dist/chunk-XGBY45FP.mjs.map +0 -1
  80. package/dist/chunk-YV3YXRMR.mjs.map +0 -1
  81. package/dist/{chunk-RIPQZJB5.mjs.map → chunk-6RUTA76W.mjs.map} +0 -0
  82. package/dist/{chunk-C3SWOFLO.mjs.map → chunk-TOBFVWZU.mjs.map} +0 -0
  83. package/dist/{chunk-KPFOAXRX.mjs.map → chunk-VBXBFZEL.mjs.map} +0 -0
  84. package/dist/{langserve-4a5c9217.d.ts → langserve-fc5cac89.d.ts} +7 -7
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  CustomEventNames,
3
3
  LangGraphAgent
4
- } from "../chunk-YV3YXRMR.mjs";
4
+ } from "../chunk-5OK4GLKL.mjs";
5
5
  import {
6
6
  config,
7
7
  copilotRuntimeNextJSAppRouterEndpoint,
8
8
  copilotRuntimeNextJSPagesRouterEndpoint
9
- } from "../chunk-RIPQZJB5.mjs";
9
+ } from "../chunk-6RUTA76W.mjs";
10
10
  import {
11
11
  copilotRuntimeNestEndpoint
12
- } from "../chunk-C3SWOFLO.mjs";
12
+ } from "../chunk-TOBFVWZU.mjs";
13
13
  import {
14
14
  copilotRuntimeNodeExpressEndpoint
15
- } from "../chunk-KPFOAXRX.mjs";
15
+ } from "../chunk-VBXBFZEL.mjs";
16
16
  import {
17
17
  CopilotRuntime,
18
18
  addCustomHeaderPlugin,
@@ -28,7 +28,8 @@ import {
28
28
  getCommonConfig,
29
29
  langGraphPlatformEndpoint,
30
30
  resolveEndpointType
31
- } from "../chunk-XGBY45FP.mjs";
31
+ } from "../chunk-PMIAGZGS.mjs";
32
+ import "../chunk-SHBDMA63.mjs";
32
33
  import {
33
34
  GoogleGenerativeAIAdapter,
34
35
  GroqAdapter,
@@ -36,9 +37,9 @@ import {
36
37
  OpenAIAdapter,
37
38
  OpenAIAssistantAdapter,
38
39
  UnifyAdapter
39
- } from "../chunk-IIXJVVTV.mjs";
40
- import "../chunk-5BIEM2UU.mjs";
41
- import "../chunk-SHBDMA63.mjs";
40
+ } from "../chunk-GS7DO47Q.mjs";
41
+ import "../chunk-XWBDEXDA.mjs";
42
+ import "../chunk-AMUJQ6IR.mjs";
42
43
  import "../chunk-2OZAGFV3.mjs";
43
44
  import "../chunk-FHD4JECV.mjs";
44
45
  export {
@@ -1,5 +1,5 @@
1
- import { b as CreateCopilotRuntimeServerOptions, G as GraphQLContext } from '../../shared-e272b15a.js';
2
- export { e as CommonConfig, C as CopilotRequestContextProperties, a as addCustomHeaderPlugin, d as buildSchema, c as createContext, g as getCommonConfig } from '../../shared-e272b15a.js';
1
+ import { b as CreateCopilotRuntimeServerOptions, G as GraphQLContext } from '../../shared-bd953ebf.js';
2
+ export { e as CommonConfig, C as CopilotRequestContextProperties, a as addCustomHeaderPlugin, d as buildSchema, c as createContext, g as getCommonConfig } from '../../shared-bd953ebf.js';
3
3
  import * as graphql_yoga from 'graphql-yoga';
4
4
  import { YogaServerInstance } from 'graphql-yoga';
5
5
  export { copilotRuntimeNodeHttpEndpoint } from './node-http/index.js';
@@ -8,7 +8,7 @@ export { copilotRuntimeNestEndpoint } from './nest/index.js';
8
8
  import 'graphql';
9
9
  import 'pino';
10
10
  import '@copilotkit/shared';
11
- import '../../langserve-4a5c9217.js';
11
+ import '../../langserve-fc5cac89.js';
12
12
  import '../../index-d4614f9b.js';
13
13
  import '../../graphql/types/base/index.js';
14
14
  import 'rxjs';
@@ -44,7 +44,7 @@ var require_package = __commonJS({
44
44
  publishConfig: {
45
45
  access: "public"
46
46
  },
47
- version: "1.9.2-next.1",
47
+ version: "1.9.2-next.10",
48
48
  sideEffects: false,
49
49
  main: "./dist/index.js",
50
50
  module: "./dist/index.mjs",
@@ -85,7 +85,7 @@ var require_package = __commonJS({
85
85
  "@ag-ui/client": "0.0.28",
86
86
  "@ag-ui/core": "0.0.28",
87
87
  "@ag-ui/encoder": "0.0.28",
88
- "@ag-ui/langgraph": "0.0.3",
88
+ "@ag-ui/langgraph": "0.0.4",
89
89
  "@ag-ui/proto": "0.0.28",
90
90
  "@anthropic-ai/sdk": "^0.27.3",
91
91
  "@copilotkit/shared": "workspace:*",
@@ -109,7 +109,7 @@ var require_package = __commonJS({
109
109
  pino: "^9.2.0",
110
110
  "pino-pretty": "^11.2.1",
111
111
  "reflect-metadata": "^0.2.2",
112
- rxjs: "^7.8.1",
112
+ rxjs: "7.8.1",
113
113
  "type-graphql": "2.0.0-rc.1",
114
114
  zod: "^3.23.3"
115
115
  },
@@ -1645,59 +1645,9 @@ var import_graphql_yoga = require("graphql-yoga");
1645
1645
 
1646
1646
  // src/service-adapters/events.ts
1647
1647
  var import_shared5 = require("@copilotkit/shared");
1648
+ var import_class_transformer = require("class-transformer");
1648
1649
  var import_rxjs2 = require("rxjs");
1649
1650
 
1650
- // src/lib/telemetry-client.ts
1651
- var import_shared4 = require("@copilotkit/shared");
1652
-
1653
- // src/lib/runtime/remote-actions.ts
1654
- var import_shared = require("@copilotkit/shared");
1655
-
1656
- // src/agents/langgraph/events.ts
1657
- var LangGraphEventTypes;
1658
- (function(LangGraphEventTypes2) {
1659
- LangGraphEventTypes2["OnChainStart"] = "on_chain_start";
1660
- LangGraphEventTypes2["OnChainStream"] = "on_chain_stream";
1661
- LangGraphEventTypes2["OnChainEnd"] = "on_chain_end";
1662
- LangGraphEventTypes2["OnChatModelStart"] = "on_chat_model_start";
1663
- LangGraphEventTypes2["OnChatModelStream"] = "on_chat_model_stream";
1664
- LangGraphEventTypes2["OnChatModelEnd"] = "on_chat_model_end";
1665
- LangGraphEventTypes2["OnToolStart"] = "on_tool_start";
1666
- LangGraphEventTypes2["OnToolEnd"] = "on_tool_end";
1667
- LangGraphEventTypes2["OnCopilotKitStateSync"] = "on_copilotkit_state_sync";
1668
- LangGraphEventTypes2["OnCopilotKitEmitMessage"] = "on_copilotkit_emit_message";
1669
- LangGraphEventTypes2["OnCopilotKitEmitToolCall"] = "on_copilotkit_emit_tool_call";
1670
- LangGraphEventTypes2["OnCustomEvent"] = "on_custom_event";
1671
- LangGraphEventTypes2["OnInterrupt"] = "on_interrupt";
1672
- LangGraphEventTypes2["OnCopilotKitInterrupt"] = "on_copilotkit_interrupt";
1673
- })(LangGraphEventTypes || (LangGraphEventTypes = {}));
1674
- var MetaEventNames;
1675
- (function(MetaEventNames2) {
1676
- MetaEventNames2["LangGraphInterruptEvent"] = "LangGraphInterruptEvent";
1677
- MetaEventNames2["CopilotKitLangGraphInterruptEvent"] = "CopilotKitLangGraphInterruptEvent";
1678
- })(MetaEventNames || (MetaEventNames = {}));
1679
- var CustomEventNames;
1680
- (function(CustomEventNames2) {
1681
- CustomEventNames2["CopilotKitManuallyEmitMessage"] = "copilotkit_manually_emit_message";
1682
- CustomEventNames2["CopilotKitManuallyEmitToolCall"] = "copilotkit_manually_emit_tool_call";
1683
- CustomEventNames2["CopilotKitManuallyEmitIntermediateState"] = "copilotkit_manually_emit_intermediate_state";
1684
- CustomEventNames2["CopilotKitExit"] = "copilotkit_exit";
1685
- })(CustomEventNames || (CustomEventNames = {}));
1686
-
1687
- // src/lib/runtime/remote-actions.ts
1688
- var import_shared2 = require("@copilotkit/shared");
1689
- var EndpointType;
1690
- (function(EndpointType2) {
1691
- EndpointType2["CopilotKit"] = "copilotKit";
1692
- EndpointType2["LangGraphPlatform"] = "langgraph-platform";
1693
- })(EndpointType || (EndpointType = {}));
1694
-
1695
- // src/lib/telemetry-client.ts
1696
- var import_node_crypto = require("crypto");
1697
-
1698
- // src/lib/runtime/copilot-runtime.ts
1699
- var import_shared3 = require("@copilotkit/shared");
1700
-
1701
1651
  // src/graphql/types/converted/index.ts
1702
1652
  var Message = class extends BaseMessageInput {
1703
1653
  type;
@@ -1815,9 +1765,51 @@ var AgentStateMessage = class extends Message {
1815
1765
  };
1816
1766
  __name(AgentStateMessage, "AgentStateMessage");
1817
1767
 
1768
+ // src/lib/runtime/remote-actions.ts
1769
+ var import_shared3 = require("@copilotkit/shared");
1770
+
1771
+ // src/lib/telemetry-client.ts
1772
+ var import_shared2 = require("@copilotkit/shared");
1773
+ var import_node_crypto = require("crypto");
1774
+
1818
1775
  // src/lib/runtime/copilot-runtime.ts
1776
+ var import_shared = require("@copilotkit/shared");
1819
1777
  var import_rxjs = require("rxjs");
1820
1778
  var import_langgraph_sdk = require("@langchain/langgraph-sdk");
1779
+
1780
+ // src/agents/langgraph/events.ts
1781
+ var LangGraphEventTypes;
1782
+ (function(LangGraphEventTypes2) {
1783
+ LangGraphEventTypes2["OnChainStart"] = "on_chain_start";
1784
+ LangGraphEventTypes2["OnChainStream"] = "on_chain_stream";
1785
+ LangGraphEventTypes2["OnChainEnd"] = "on_chain_end";
1786
+ LangGraphEventTypes2["OnChatModelStart"] = "on_chat_model_start";
1787
+ LangGraphEventTypes2["OnChatModelStream"] = "on_chat_model_stream";
1788
+ LangGraphEventTypes2["OnChatModelEnd"] = "on_chat_model_end";
1789
+ LangGraphEventTypes2["OnToolStart"] = "on_tool_start";
1790
+ LangGraphEventTypes2["OnToolEnd"] = "on_tool_end";
1791
+ LangGraphEventTypes2["OnCopilotKitStateSync"] = "on_copilotkit_state_sync";
1792
+ LangGraphEventTypes2["OnCopilotKitEmitMessage"] = "on_copilotkit_emit_message";
1793
+ LangGraphEventTypes2["OnCopilotKitEmitToolCall"] = "on_copilotkit_emit_tool_call";
1794
+ LangGraphEventTypes2["OnCustomEvent"] = "on_custom_event";
1795
+ LangGraphEventTypes2["OnInterrupt"] = "on_interrupt";
1796
+ LangGraphEventTypes2["OnCopilotKitInterrupt"] = "on_copilotkit_interrupt";
1797
+ LangGraphEventTypes2["OnCopilotKitError"] = "on_copilotkit_error";
1798
+ })(LangGraphEventTypes || (LangGraphEventTypes = {}));
1799
+ var MetaEventNames;
1800
+ (function(MetaEventNames2) {
1801
+ MetaEventNames2["LangGraphInterruptEvent"] = "LangGraphInterruptEvent";
1802
+ MetaEventNames2["CopilotKitLangGraphInterruptEvent"] = "CopilotKitLangGraphInterruptEvent";
1803
+ })(MetaEventNames || (MetaEventNames = {}));
1804
+ var CustomEventNames;
1805
+ (function(CustomEventNames2) {
1806
+ CustomEventNames2["CopilotKitManuallyEmitMessage"] = "copilotkit_manually_emit_message";
1807
+ CustomEventNames2["CopilotKitManuallyEmitToolCall"] = "copilotkit_manually_emit_tool_call";
1808
+ CustomEventNames2["CopilotKitManuallyEmitIntermediateState"] = "copilotkit_manually_emit_intermediate_state";
1809
+ CustomEventNames2["CopilotKitExit"] = "copilotkit_exit";
1810
+ })(CustomEventNames || (CustomEventNames = {}));
1811
+
1812
+ // src/lib/runtime/copilot-runtime.ts
1821
1813
  function resolveEndpointType(endpoint) {
1822
1814
  if (!endpoint.type) {
1823
1815
  if ("deploymentUrl" in endpoint && "agents" in endpoint) {
@@ -1832,7 +1824,7 @@ __name(resolveEndpointType, "resolveEndpointType");
1832
1824
 
1833
1825
  // src/lib/telemetry-client.ts
1834
1826
  var packageJson = require_package();
1835
- var telemetryClient = new import_shared4.TelemetryClient({
1827
+ var telemetryClient = new import_shared2.TelemetryClient({
1836
1828
  packageName: packageJson.name,
1837
1829
  packageVersion: packageJson.version
1838
1830
  });
@@ -1887,8 +1879,15 @@ function getRuntimeInstanceTelemetryInfo(options) {
1887
1879
  __name(getRuntimeInstanceTelemetryInfo, "getRuntimeInstanceTelemetryInfo");
1888
1880
  var telemetry_client_default = telemetryClient;
1889
1881
 
1882
+ // src/lib/runtime/remote-actions.ts
1883
+ var import_shared4 = require("@copilotkit/shared");
1884
+ var EndpointType;
1885
+ (function(EndpointType2) {
1886
+ EndpointType2["CopilotKit"] = "copilotKit";
1887
+ EndpointType2["LangGraphPlatform"] = "langgraph-platform";
1888
+ })(EndpointType || (EndpointType = {}));
1889
+
1890
1890
  // src/service-adapters/events.ts
1891
- var import_class_transformer = require("class-transformer");
1892
1891
  var RuntimeEventTypes;
1893
1892
  (function(RuntimeEventTypes2) {
1894
1893
  RuntimeEventTypes2["TextMessageStart"] = "TextMessageStart";
@@ -1937,10 +1936,11 @@ var MessageStreamInterruptedResponse = class extends FailedResponseStatus {
1937
1936
  __name(MessageStreamInterruptedResponse, "MessageStreamInterruptedResponse");
1938
1937
  var UnknownErrorResponse = class extends FailedResponseStatus {
1939
1938
  reason = FailedResponseStatusReason.UNKNOWN_ERROR;
1940
- constructor({ description }) {
1939
+ constructor({ description, originalError }) {
1941
1940
  super();
1942
1941
  this.details = {
1943
- description
1942
+ description,
1943
+ originalError
1944
1944
  };
1945
1945
  }
1946
1946
  };
@@ -2073,7 +2073,7 @@ var CopilotResolver = class {
2073
2073
  };
2074
2074
  }
2075
2075
  async generateCopilotResponse(ctx, data, properties) {
2076
- var _a, _b, _c, _d;
2076
+ var _a, _b, _c, _d, _e, _f, _g;
2077
2077
  telemetry_client_default.capture("oss.runtime.copilot_request_created", {
2078
2078
  "cloud.guardrails.enabled": ((_a = data.cloud) == null ? void 0 : _a.guardrails) !== void 0,
2079
2079
  requestType: data.metadata.requestType,
@@ -2104,23 +2104,32 @@ var CopilotResolver = class {
2104
2104
  const serviceAdapter = ctx._copilotkit.serviceAdapter;
2105
2105
  let copilotCloudPublicApiKey = null;
2106
2106
  let copilotCloudBaseUrl;
2107
+ const publicApiKeyFromHeaders = ctx.request.headers.get("x-copilotcloud-public-api-key");
2108
+ if (publicApiKeyFromHeaders) {
2109
+ copilotCloudPublicApiKey = publicApiKeyFromHeaders;
2110
+ }
2107
2111
  if (data.cloud) {
2108
2112
  logger2 = logger2.child({
2109
2113
  cloud: true
2110
2114
  });
2111
2115
  logger2.debug("Cloud configuration provided, checking for public API key in headers");
2112
- const key = ctx.request.headers.get("x-copilotcloud-public-api-key");
2113
- if (key) {
2114
- logger2.debug("Public API key found in headers");
2115
- copilotCloudPublicApiKey = key;
2116
- } else {
2116
+ if (!copilotCloudPublicApiKey) {
2117
2117
  logger2.error("Public API key not found in headers");
2118
+ await copilotRuntime.traceGraphQLError({
2119
+ message: "X-CopilotCloud-Public-API-Key header is required",
2120
+ code: "MISSING_PUBLIC_API_KEY",
2121
+ type: "GraphQLError"
2122
+ }, {
2123
+ operation: "generateCopilotResponse",
2124
+ cloudConfigPresent: Boolean(data.cloud),
2125
+ guardrailsEnabled: Boolean((_b = data.cloud) == null ? void 0 : _b.guardrails)
2126
+ });
2118
2127
  throw new import_graphql.GraphQLError("X-CopilotCloud-Public-API-Key header is required");
2119
2128
  }
2120
2129
  if (process.env.COPILOT_CLOUD_BASE_URL) {
2121
2130
  copilotCloudBaseUrl = process.env.COPILOT_CLOUD_BASE_URL;
2122
- } else if ((_b = ctx._copilotkit.cloud) == null ? void 0 : _b.baseUrl) {
2123
- copilotCloudBaseUrl = (_c = ctx._copilotkit.cloud) == null ? void 0 : _c.baseUrl;
2131
+ } else if ((_c = ctx._copilotkit.cloud) == null ? void 0 : _c.baseUrl) {
2132
+ copilotCloudBaseUrl = (_d = ctx._copilotkit.cloud) == null ? void 0 : _d.baseUrl;
2124
2133
  } else {
2125
2134
  copilotCloudBaseUrl = "https://api.cloud.copilotkit.ai";
2126
2135
  }
@@ -2143,26 +2152,41 @@ var CopilotResolver = class {
2143
2152
  ctx.properties["copilotCloudPublicApiKey"] = copilotCloudPublicApiKey;
2144
2153
  }
2145
2154
  logger2.debug("Processing");
2146
- const { eventSource, threadId = (0, import_shared6.randomId)(), runId, serverSideActions, actionInputsWithoutAgents, extensions } = await copilotRuntime.processRuntimeRequest({
2147
- serviceAdapter,
2148
- messages: data.messages,
2149
- actions: data.frontend.actions.filter((action) => action.available !== ActionInputAvailability.disabled),
2150
- threadId: data.threadId,
2151
- runId: data.runId,
2152
- publicApiKey: copilotCloudPublicApiKey,
2153
- outputMessagesPromise,
2154
- graphqlContext: ctx,
2155
- forwardedParameters: data.forwardedParameters,
2156
- agentSession: data.agentSession,
2157
- agentStates: data.agentStates,
2158
- url: data.frontend.url,
2159
- extensions: data.extensions,
2160
- metaEvents: data.metaEvents
2161
- });
2155
+ let runtimeResponse;
2156
+ try {
2157
+ runtimeResponse = await copilotRuntime.processRuntimeRequest({
2158
+ serviceAdapter,
2159
+ messages: data.messages,
2160
+ actions: data.frontend.actions.filter((action) => action.available !== ActionInputAvailability.disabled),
2161
+ threadId: data.threadId,
2162
+ runId: data.runId,
2163
+ publicApiKey: copilotCloudPublicApiKey,
2164
+ outputMessagesPromise,
2165
+ graphqlContext: ctx,
2166
+ forwardedParameters: data.forwardedParameters,
2167
+ agentSession: data.agentSession,
2168
+ agentStates: data.agentStates,
2169
+ url: data.frontend.url,
2170
+ extensions: data.extensions,
2171
+ metaEvents: data.metaEvents
2172
+ });
2173
+ } catch (error) {
2174
+ if ((0, import_shared7.isStructuredCopilotKitError)(error) || ((_e = error == null ? void 0 : error.extensions) == null ? void 0 : _e.visibility)) {
2175
+ throw new import_graphql.GraphQLError(error.message || "Agent error occurred", {
2176
+ extensions: {
2177
+ ...error.extensions,
2178
+ code: error.code || ((_f = error.extensions) == null ? void 0 : _f.code) || "AGENT_ERROR",
2179
+ originalError: error
2180
+ }
2181
+ });
2182
+ }
2183
+ throw error;
2184
+ }
2185
+ const { eventSource, threadId = (0, import_shared6.randomId)(), runId, serverSideActions, actionInputsWithoutAgents, extensions } = runtimeResponse;
2162
2186
  logger2.debug("Event source created, creating response");
2163
2187
  const eventStream = eventSource.processRuntimeEvents({
2164
2188
  serverSideActions,
2165
- guardrailsResult$: ((_d = data.cloud) == null ? void 0 : _d.guardrails) ? guardrailsResult$ : null,
2189
+ guardrailsResult$: ((_g = data.cloud) == null ? void 0 : _g.guardrails) ? guardrailsResult$ : null,
2166
2190
  actionInputsWithoutAgents: actionInputsWithoutAgents.filter(
2167
2191
  // TODO-AGENTS: do not exclude ALL server side actions
2168
2192
  (action) => !serverSideActions.find((serverSideAction) => serverSideAction.name == action.name)
@@ -2243,12 +2267,16 @@ var CopilotResolver = class {
2243
2267
  }
2244
2268
  },
2245
2269
  error: (err) => {
2246
- logger2.error({
2247
- err
2248
- }, "Error in meta events stream");
2249
- responseStatus$.next(new UnknownErrorResponse({
2250
- description: `An unknown error has occurred in the event stream`
2251
- }));
2270
+ var _a2, _b2;
2271
+ if (((_a2 = err == null ? void 0 : err.name) == null ? void 0 : _a2.includes("CopilotKit")) || ((_b2 = err == null ? void 0 : err.extensions) == null ? void 0 : _b2.visibility)) {
2272
+ responseStatus$.next(new UnknownErrorResponse({
2273
+ description: err.message || "Agent error occurred"
2274
+ }));
2275
+ } else {
2276
+ responseStatus$.next(new UnknownErrorResponse({
2277
+ description: `An unknown error has occurred in the event stream`
2278
+ }));
2279
+ }
2252
2280
  eventStreamSubscription == null ? void 0 : eventStreamSubscription.unsubscribe();
2253
2281
  stop();
2254
2282
  },
@@ -2492,13 +2520,23 @@ var CopilotResolver = class {
2492
2520
  }
2493
2521
  },
2494
2522
  error: (err) => {
2495
- logger2.error({
2496
- err
2497
- }, "Error in event stream");
2498
- if (err instanceof import_shared7.CopilotKitError || err instanceof Error && err.name && err.name.includes("CopilotKit")) {
2523
+ var _a3, _b2, _c2, _d2, _e2, _f2;
2524
+ if (err instanceof import_shared7.CopilotKitError || err instanceof import_shared7.CopilotKitLowLevelError || err instanceof Error && err.name && err.name.includes("CopilotKit") || ((_a3 = err == null ? void 0 : err.extensions) == null ? void 0 : _a3.visibility)) {
2525
+ responseStatus$.next(new UnknownErrorResponse({
2526
+ description: err.message || "Agent error occurred",
2527
+ // Include original error information for frontend to extract
2528
+ originalError: {
2529
+ code: err.code || ((_b2 = err.extensions) == null ? void 0 : _b2.code),
2530
+ statusCode: err.statusCode || ((_c2 = err.extensions) == null ? void 0 : _c2.statusCode),
2531
+ severity: err.severity || ((_d2 = err.extensions) == null ? void 0 : _d2.severity),
2532
+ visibility: err.visibility || ((_e2 = err.extensions) == null ? void 0 : _e2.visibility),
2533
+ originalErrorType: err.originalErrorType || ((_f2 = err.extensions) == null ? void 0 : _f2.originalErrorType),
2534
+ extensions: err.extensions
2535
+ }
2536
+ }));
2499
2537
  eventStreamSubscription == null ? void 0 : eventStreamSubscription.unsubscribe();
2500
2538
  rejectOutputMessagesPromise(err);
2501
- stopStreamingMessages(err);
2539
+ stopStreamingMessages();
2502
2540
  return;
2503
2541
  }
2504
2542
  responseStatus$.next(new UnknownErrorResponse({
@@ -2703,9 +2741,9 @@ function _ts_param2(paramIndex, decorator) {
2703
2741
  __name(_ts_param2, "_ts_param");
2704
2742
  var StateResolver = class {
2705
2743
  async loadAgentState(ctx, data) {
2706
- const agents = await ctx._copilotkit.runtime.discoverAgentsFromEndpoints(ctx);
2707
- const agent = agents.find((agent2) => agent2.name === data.agentName);
2708
- if (!agent) {
2744
+ const agents = await ctx._copilotkit.runtime.getAllAgents(ctx);
2745
+ const hasAgent = agents.some((agent) => agent.name === data.agentName);
2746
+ if (!hasAgent) {
2709
2747
  throw new import_shared8.CopilotKitAgentDiscoveryError({
2710
2748
  agentName: data.agentName,
2711
2749
  availableAgents: agents.map((a) => ({
@@ -2736,6 +2774,7 @@ StateResolver = _ts_decorate22([
2736
2774
 
2737
2775
  // src/lib/integrations/shared.ts
2738
2776
  var packageJson2 = __toESM(require_package());
2777
+ var import_shared9 = require("@copilotkit/shared");
2739
2778
  var logger = createLogger();
2740
2779
  var addCustomHeaderPlugin = {
2741
2780
  onResponse({ response }) {
@@ -2800,6 +2839,13 @@ function getCommonConfig(options) {
2800
2839
  serviceAdapter: options.serviceAdapter.constructor.name
2801
2840
  }
2802
2841
  });
2842
+ const userErrorCodes = [
2843
+ import_shared9.CopilotKitErrorCode.AGENT_NOT_FOUND,
2844
+ import_shared9.CopilotKitErrorCode.API_NOT_FOUND,
2845
+ import_shared9.CopilotKitErrorCode.REMOTE_ENDPOINT_NOT_FOUND,
2846
+ import_shared9.CopilotKitErrorCode.CONFIGURATION_ERROR,
2847
+ import_shared9.CopilotKitErrorCode.MISSING_PUBLIC_API_KEY_ERROR
2848
+ ];
2803
2849
  return {
2804
2850
  logging: createLogger({
2805
2851
  component: "Yoga GraphQL",
@@ -2810,7 +2856,25 @@ function getCommonConfig(options) {
2810
2856
  (0, import_plugin_defer_stream.useDeferStream)(),
2811
2857
  addCustomHeaderPlugin
2812
2858
  ],
2813
- context: (ctx) => createContext(ctx, options, contextLogger, options.properties)
2859
+ context: (ctx) => createContext(ctx, options, contextLogger, options.properties),
2860
+ // Suppress logging for user configuration errors
2861
+ maskedErrors: {
2862
+ maskError: (error, message, isDev) => {
2863
+ const originalError = error.originalError || error;
2864
+ const extensions = error.extensions;
2865
+ const errorCode = extensions == null ? void 0 : extensions.code;
2866
+ if (errorCode && userErrorCodes.includes(errorCode)) {
2867
+ console.debug("User configuration error:", error.message);
2868
+ return error;
2869
+ }
2870
+ if (originalError instanceof import_shared9.CopilotKitError && userErrorCodes.includes(originalError.code)) {
2871
+ console.debug("User configuration error:", error.message);
2872
+ return error;
2873
+ }
2874
+ console.error("Application error:", error);
2875
+ return error;
2876
+ }
2877
+ }
2814
2878
  };
2815
2879
  }
2816
2880
  __name(getCommonConfig, "getCommonConfig");