beeai-framework 0.1.11 → 0.1.13

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 (57) hide show
  1. package/dist/adapters/anthropic/backend/client.cjs +5 -5
  2. package/dist/adapters/anthropic/backend/client.cjs.map +1 -1
  3. package/dist/adapters/anthropic/backend/client.d.cts +1 -1
  4. package/dist/adapters/anthropic/backend/client.d.ts +1 -1
  5. package/dist/adapters/anthropic/backend/client.js +5 -5
  6. package/dist/adapters/anthropic/backend/client.js.map +1 -1
  7. package/dist/adapters/azure-openai/backend/client.cjs +6 -6
  8. package/dist/adapters/azure-openai/backend/client.cjs.map +1 -1
  9. package/dist/adapters/azure-openai/backend/client.d.cts +1 -1
  10. package/dist/adapters/azure-openai/backend/client.d.ts +1 -1
  11. package/dist/adapters/azure-openai/backend/client.js +6 -6
  12. package/dist/adapters/azure-openai/backend/client.js.map +1 -1
  13. package/dist/adapters/groq/backend/client.cjs +3 -3
  14. package/dist/adapters/groq/backend/client.cjs.map +1 -1
  15. package/dist/adapters/groq/backend/client.js +3 -3
  16. package/dist/adapters/groq/backend/client.js.map +1 -1
  17. package/dist/adapters/watsonx/backend/client.cjs +1 -1
  18. package/dist/adapters/watsonx/backend/client.cjs.map +1 -1
  19. package/dist/adapters/watsonx/backend/client.js +1 -1
  20. package/dist/adapters/watsonx/backend/client.js.map +1 -1
  21. package/dist/{agent-CgsoqVL5.d.ts → agent-B55OuVCj.d.ts} +1 -1
  22. package/dist/{agent-Ca5UE2P1.d.cts → agent-Cmnvjx_k.d.cts} +1 -1
  23. package/dist/agents/experimental/remote/agent.cjs +107 -61
  24. package/dist/agents/experimental/remote/agent.cjs.map +1 -1
  25. package/dist/agents/experimental/remote/agent.d.cts +37 -34
  26. package/dist/agents/experimental/remote/agent.d.ts +37 -34
  27. package/dist/agents/experimental/remote/agent.js +108 -62
  28. package/dist/agents/experimental/remote/agent.js.map +1 -1
  29. package/dist/agents/react/agent.d.cts +1 -1
  30. package/dist/agents/react/agent.d.ts +1 -1
  31. package/dist/agents/react/prompts.d.cts +1 -1
  32. package/dist/agents/react/prompts.d.ts +1 -1
  33. package/dist/agents/react/runners/base.d.cts +1 -1
  34. package/dist/agents/react/runners/base.d.ts +1 -1
  35. package/dist/agents/react/runners/deep-think/prompts.d.cts +1 -1
  36. package/dist/agents/react/runners/deep-think/prompts.d.ts +1 -1
  37. package/dist/agents/react/runners/deep-think/runner.d.cts +2 -2
  38. package/dist/agents/react/runners/deep-think/runner.d.ts +2 -2
  39. package/dist/agents/react/runners/default/runner.d.cts +2 -2
  40. package/dist/agents/react/runners/default/runner.d.ts +2 -2
  41. package/dist/agents/react/runners/granite/prompts.d.cts +1 -1
  42. package/dist/agents/react/runners/granite/prompts.d.ts +1 -1
  43. package/dist/agents/react/runners/granite/runner.d.cts +2 -2
  44. package/dist/agents/react/runners/granite/runner.d.ts +2 -2
  45. package/dist/backend/client.cjs +1 -1
  46. package/dist/backend/client.cjs.map +1 -1
  47. package/dist/backend/client.js +1 -1
  48. package/dist/backend/client.js.map +1 -1
  49. package/dist/internals/fetcher.cjs +31 -8
  50. package/dist/internals/fetcher.cjs.map +1 -1
  51. package/dist/internals/fetcher.d.cts +5 -3
  52. package/dist/internals/fetcher.d.ts +5 -3
  53. package/dist/internals/fetcher.js +32 -9
  54. package/dist/internals/fetcher.js.map +1 -1
  55. package/dist/version.cjs +1 -1
  56. package/dist/version.js +1 -1
  57. package/package.json +1 -6
@@ -11,17 +11,17 @@ class AnthropicClient extends client_cjs.BackendClient {
11
11
  static {
12
12
  __name(this, "AnthropicClient");
13
13
  }
14
- create(settings) {
14
+ create() {
15
15
  const extraHeaders = env_cjs.parseEnv("ANTHROPIC_API_HEADERS", zod.z.preprocess((value) => {
16
16
  return Object.fromEntries(String(value || "").split(",").filter((pair) => pair.includes("=")).map((pair) => pair.split("=")));
17
17
  }, zod.z.record(zod.z.string())));
18
18
  return anthropic.createAnthropic({
19
- ...settings,
20
- baseURL: settings?.baseURL || env_cjs.getEnv("ANTHROPIC_API_BASE_URL"),
21
- apiKey: env_cjs.getEnv("ANTHROPIC_API_KEY"),
19
+ ...this.settings,
20
+ baseURL: this.settings?.baseURL || env_cjs.getEnv("ANTHROPIC_API_BASE_URL"),
21
+ apiKey: this.settings.apiKey || env_cjs.getEnv("ANTHROPIC_API_KEY"),
22
22
  headers: {
23
23
  ...extraHeaders,
24
- ...settings?.headers
24
+ ...this.settings?.headers
25
25
  }
26
26
  });
27
27
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["client.ts"],"names":["AnthropicClient","BackendClient","create","settings","extraHeaders","parseEnv","z","preprocess","value","Object","fromEntries","String","split","filter","pair","includes","map","record","string","createAnthropic","baseURL","getEnv","apiKey","headers"],"mappings":";;;;;;;;;AAuBO,MAAMA,wBAAwBC,wBAAAA,CAAAA;EAvBrC;;;AAwBYC,EAAAA,MAAAA,CAAOC,QAAuD,EAAA;AACtE,IAAA,MAAMC,eAAeC,gBACnB,CAAA,uBAAA,EACAC,KAAEC,CAAAA,UAAAA,CAAW,CAACC,KAAAA,KAAAA;AACZ,MAAOC,OAAAA,MAAAA,CAAOC,WACZC,CAAAA,MAAAA,CAAOH,KAAS,IAAA,EAAA,EACbI,KAAM,CAAA,GAAA,CACNC,CAAAA,MAAAA,CAAO,CAACC,IAAAA,KAASA,KAAKC,QAAS,CAAA,GAAA,CAAA,CAAA,CAC/BC,GAAI,CAAA,CAACF,SAASA,IAAKF,CAAAA,KAAAA,CAAM,GAAA,CAAA,CAAA,CAAA;AAEhC,KAAA,EAAGN,MAAEW,MAAOX,CAAAA,KAAAA,CAAEY,MAAM,EAAA,CAAA,CAAA,CAAA;AAGtB,IAAA,OAAOC,yBAAgB,CAAA;MACrB,GAAGhB,QAAAA;MACHiB,OAASjB,EAAAA,QAAAA,EAAUiB,OAAWC,IAAAA,cAAAA,CAAO,wBAAA,CAAA;AACrCC,MAAAA,MAAAA,EAAQD,eAAO,mBAAA,CAAA;MACfE,OAAS,EAAA;QACP,GAAGnB,YAAAA;AACH,QAAA,GAAGD,QAAUoB,EAAAA;AACf;KACF,CAAA;AACF;AACF","file":"client.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createAnthropic, AnthropicProvider, AnthropicProviderSettings } from \"@ai-sdk/anthropic\";\nimport { BackendClient } from \"@/backend/client.js\";\nimport { getEnv, parseEnv } from \"@/internals/env.js\";\nimport { z } from \"zod\";\n\nexport type AnthropicClientSettings = AnthropicProviderSettings;\n\nexport class AnthropicClient extends BackendClient<AnthropicClientSettings, AnthropicProvider> {\n protected create(settings?: AnthropicClientSettings): AnthropicProvider {\n const extraHeaders = parseEnv(\n \"ANTHROPIC_API_HEADERS\",\n z.preprocess((value) => {\n return Object.fromEntries(\n String(value || \"\")\n .split(\",\")\n .filter((pair) => pair.includes(\"=\"))\n .map((pair) => pair.split(\"=\")),\n );\n }, z.record(z.string())),\n );\n\n return createAnthropic({\n ...settings,\n baseURL: settings?.baseURL || getEnv(\"ANTHROPIC_API_BASE_URL\"),\n apiKey: getEnv(\"ANTHROPIC_API_KEY\"),\n headers: {\n ...extraHeaders,\n ...settings?.headers,\n },\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["client.ts"],"names":["AnthropicClient","BackendClient","create","extraHeaders","parseEnv","z","preprocess","value","Object","fromEntries","String","split","filter","pair","includes","map","record","string","createAnthropic","settings","baseURL","getEnv","apiKey","headers"],"mappings":";;;;;;;;;AAuBO,MAAMA,wBAAwBC,wBAAAA,CAAAA;EAvBrC;;;EAwBYC,MAA4B,GAAA;AACpC,IAAA,MAAMC,eAAeC,gBACnB,CAAA,uBAAA,EACAC,KAAEC,CAAAA,UAAAA,CAAW,CAACC,KAAAA,KAAAA;AACZ,MAAOC,OAAAA,MAAAA,CAAOC,WACZC,CAAAA,MAAAA,CAAOH,KAAS,IAAA,EAAA,EACbI,KAAM,CAAA,GAAA,CACNC,CAAAA,MAAAA,CAAO,CAACC,IAAAA,KAASA,KAAKC,QAAS,CAAA,GAAA,CAAA,CAAA,CAC/BC,GAAI,CAAA,CAACF,SAASA,IAAKF,CAAAA,KAAAA,CAAM,GAAA,CAAA,CAAA,CAAA;AAEhC,KAAA,EAAGN,MAAEW,MAAOX,CAAAA,KAAAA,CAAEY,MAAM,EAAA,CAAA,CAAA,CAAA;AAGtB,IAAA,OAAOC,yBAAgB,CAAA;AACrB,MAAA,GAAG,IAAKC,CAAAA,QAAAA;AACRC,MAAAA,OAAAA,EAAS,IAAKD,CAAAA,QAAAA,EAAUC,OAAWC,IAAAA,cAAAA,CAAO,wBAAA,CAAA;AAC1CC,MAAAA,MAAAA,EAAQ,IAAKH,CAAAA,QAAAA,CAASG,MAAUD,IAAAA,cAAAA,CAAO,mBAAA,CAAA;MACvCE,OAAS,EAAA;QACP,GAAGpB,YAAAA;AACH,QAAA,GAAG,KAAKgB,QAAUI,EAAAA;AACpB;KACF,CAAA;AACF;AACF","file":"client.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createAnthropic, AnthropicProvider, AnthropicProviderSettings } from \"@ai-sdk/anthropic\";\nimport { BackendClient } from \"@/backend/client.js\";\nimport { getEnv, parseEnv } from \"@/internals/env.js\";\nimport { z } from \"zod\";\n\nexport type AnthropicClientSettings = AnthropicProviderSettings;\n\nexport class AnthropicClient extends BackendClient<AnthropicClientSettings, AnthropicProvider> {\n protected create(): AnthropicProvider {\n const extraHeaders = parseEnv(\n \"ANTHROPIC_API_HEADERS\",\n z.preprocess((value) => {\n return Object.fromEntries(\n String(value || \"\")\n .split(\",\")\n .filter((pair) => pair.includes(\"=\"))\n .map((pair) => pair.split(\"=\")),\n );\n }, z.record(z.string())),\n );\n\n return createAnthropic({\n ...this.settings,\n baseURL: this.settings?.baseURL || getEnv(\"ANTHROPIC_API_BASE_URL\"),\n apiKey: this.settings.apiKey || getEnv(\"ANTHROPIC_API_KEY\"),\n headers: {\n ...extraHeaders,\n ...this.settings?.headers,\n },\n });\n }\n}\n"]}
@@ -22,7 +22,7 @@ import '../../../internals/helpers/guards.cjs';
22
22
 
23
23
  type AnthropicClientSettings = AnthropicProviderSettings;
24
24
  declare class AnthropicClient extends BackendClient<AnthropicClientSettings, AnthropicProvider> {
25
- protected create(settings?: AnthropicClientSettings): AnthropicProvider;
25
+ protected create(): AnthropicProvider;
26
26
  }
27
27
 
28
28
  export { AnthropicClient, type AnthropicClientSettings };
@@ -22,7 +22,7 @@ import '../../../internals/helpers/guards.js';
22
22
 
23
23
  type AnthropicClientSettings = AnthropicProviderSettings;
24
24
  declare class AnthropicClient extends BackendClient<AnthropicClientSettings, AnthropicProvider> {
25
- protected create(settings?: AnthropicClientSettings): AnthropicProvider;
25
+ protected create(): AnthropicProvider;
26
26
  }
27
27
 
28
28
  export { AnthropicClient, type AnthropicClientSettings };
@@ -9,17 +9,17 @@ class AnthropicClient extends BackendClient {
9
9
  static {
10
10
  __name(this, "AnthropicClient");
11
11
  }
12
- create(settings) {
12
+ create() {
13
13
  const extraHeaders = parseEnv("ANTHROPIC_API_HEADERS", z.preprocess((value) => {
14
14
  return Object.fromEntries(String(value || "").split(",").filter((pair) => pair.includes("=")).map((pair) => pair.split("=")));
15
15
  }, z.record(z.string())));
16
16
  return createAnthropic({
17
- ...settings,
18
- baseURL: settings?.baseURL || getEnv("ANTHROPIC_API_BASE_URL"),
19
- apiKey: getEnv("ANTHROPIC_API_KEY"),
17
+ ...this.settings,
18
+ baseURL: this.settings?.baseURL || getEnv("ANTHROPIC_API_BASE_URL"),
19
+ apiKey: this.settings.apiKey || getEnv("ANTHROPIC_API_KEY"),
20
20
  headers: {
21
21
  ...extraHeaders,
22
- ...settings?.headers
22
+ ...this.settings?.headers
23
23
  }
24
24
  });
25
25
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["client.ts"],"names":["AnthropicClient","BackendClient","create","settings","extraHeaders","parseEnv","z","preprocess","value","Object","fromEntries","String","split","filter","pair","includes","map","record","string","createAnthropic","baseURL","getEnv","apiKey","headers"],"mappings":";;;;;;;AAuBO,MAAMA,wBAAwBC,aAAAA,CAAAA;EAvBrC;;;AAwBYC,EAAAA,MAAAA,CAAOC,QAAuD,EAAA;AACtE,IAAA,MAAMC,eAAeC,QACnB,CAAA,uBAAA,EACAC,CAAEC,CAAAA,UAAAA,CAAW,CAACC,KAAAA,KAAAA;AACZ,MAAOC,OAAAA,MAAAA,CAAOC,WACZC,CAAAA,MAAAA,CAAOH,KAAS,IAAA,EAAA,EACbI,KAAM,CAAA,GAAA,CACNC,CAAAA,MAAAA,CAAO,CAACC,IAAAA,KAASA,KAAKC,QAAS,CAAA,GAAA,CAAA,CAAA,CAC/BC,GAAI,CAAA,CAACF,SAASA,IAAKF,CAAAA,KAAAA,CAAM,GAAA,CAAA,CAAA,CAAA;AAEhC,KAAA,EAAGN,EAAEW,MAAOX,CAAAA,CAAAA,CAAEY,MAAM,EAAA,CAAA,CAAA,CAAA;AAGtB,IAAA,OAAOC,eAAgB,CAAA;MACrB,GAAGhB,QAAAA;MACHiB,OAASjB,EAAAA,QAAAA,EAAUiB,OAAWC,IAAAA,MAAAA,CAAO,wBAAA,CAAA;AACrCC,MAAAA,MAAAA,EAAQD,OAAO,mBAAA,CAAA;MACfE,OAAS,EAAA;QACP,GAAGnB,YAAAA;AACH,QAAA,GAAGD,QAAUoB,EAAAA;AACf;KACF,CAAA;AACF;AACF","file":"client.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createAnthropic, AnthropicProvider, AnthropicProviderSettings } from \"@ai-sdk/anthropic\";\nimport { BackendClient } from \"@/backend/client.js\";\nimport { getEnv, parseEnv } from \"@/internals/env.js\";\nimport { z } from \"zod\";\n\nexport type AnthropicClientSettings = AnthropicProviderSettings;\n\nexport class AnthropicClient extends BackendClient<AnthropicClientSettings, AnthropicProvider> {\n protected create(settings?: AnthropicClientSettings): AnthropicProvider {\n const extraHeaders = parseEnv(\n \"ANTHROPIC_API_HEADERS\",\n z.preprocess((value) => {\n return Object.fromEntries(\n String(value || \"\")\n .split(\",\")\n .filter((pair) => pair.includes(\"=\"))\n .map((pair) => pair.split(\"=\")),\n );\n }, z.record(z.string())),\n );\n\n return createAnthropic({\n ...settings,\n baseURL: settings?.baseURL || getEnv(\"ANTHROPIC_API_BASE_URL\"),\n apiKey: getEnv(\"ANTHROPIC_API_KEY\"),\n headers: {\n ...extraHeaders,\n ...settings?.headers,\n },\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["client.ts"],"names":["AnthropicClient","BackendClient","create","extraHeaders","parseEnv","z","preprocess","value","Object","fromEntries","String","split","filter","pair","includes","map","record","string","createAnthropic","settings","baseURL","getEnv","apiKey","headers"],"mappings":";;;;;;;AAuBO,MAAMA,wBAAwBC,aAAAA,CAAAA;EAvBrC;;;EAwBYC,MAA4B,GAAA;AACpC,IAAA,MAAMC,eAAeC,QACnB,CAAA,uBAAA,EACAC,CAAEC,CAAAA,UAAAA,CAAW,CAACC,KAAAA,KAAAA;AACZ,MAAOC,OAAAA,MAAAA,CAAOC,WACZC,CAAAA,MAAAA,CAAOH,KAAS,IAAA,EAAA,EACbI,KAAM,CAAA,GAAA,CACNC,CAAAA,MAAAA,CAAO,CAACC,IAAAA,KAASA,KAAKC,QAAS,CAAA,GAAA,CAAA,CAAA,CAC/BC,GAAI,CAAA,CAACF,SAASA,IAAKF,CAAAA,KAAAA,CAAM,GAAA,CAAA,CAAA,CAAA;AAEhC,KAAA,EAAGN,EAAEW,MAAOX,CAAAA,CAAAA,CAAEY,MAAM,EAAA,CAAA,CAAA,CAAA;AAGtB,IAAA,OAAOC,eAAgB,CAAA;AACrB,MAAA,GAAG,IAAKC,CAAAA,QAAAA;AACRC,MAAAA,OAAAA,EAAS,IAAKD,CAAAA,QAAAA,EAAUC,OAAWC,IAAAA,MAAAA,CAAO,wBAAA,CAAA;AAC1CC,MAAAA,MAAAA,EAAQ,IAAKH,CAAAA,QAAAA,CAASG,MAAUD,IAAAA,MAAAA,CAAO,mBAAA,CAAA;MACvCE,OAAS,EAAA;QACP,GAAGpB,YAAAA;AACH,QAAA,GAAG,KAAKgB,QAAUI,EAAAA;AACpB;KACF,CAAA;AACF;AACF","file":"client.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createAnthropic, AnthropicProvider, AnthropicProviderSettings } from \"@ai-sdk/anthropic\";\nimport { BackendClient } from \"@/backend/client.js\";\nimport { getEnv, parseEnv } from \"@/internals/env.js\";\nimport { z } from \"zod\";\n\nexport type AnthropicClientSettings = AnthropicProviderSettings;\n\nexport class AnthropicClient extends BackendClient<AnthropicClientSettings, AnthropicProvider> {\n protected create(): AnthropicProvider {\n const extraHeaders = parseEnv(\n \"ANTHROPIC_API_HEADERS\",\n z.preprocess((value) => {\n return Object.fromEntries(\n String(value || \"\")\n .split(\",\")\n .filter((pair) => pair.includes(\"=\"))\n .map((pair) => pair.split(\"=\")),\n );\n }, z.record(z.string())),\n );\n\n return createAnthropic({\n ...this.settings,\n baseURL: this.settings?.baseURL || getEnv(\"ANTHROPIC_API_BASE_URL\"),\n apiKey: this.settings.apiKey || getEnv(\"ANTHROPIC_API_KEY\"),\n headers: {\n ...extraHeaders,\n ...this.settings?.headers,\n },\n });\n }\n}\n"]}
@@ -10,13 +10,13 @@ class AzureOpenAIClient extends client_cjs.BackendClient {
10
10
  static {
11
11
  __name(this, "AzureOpenAIClient");
12
12
  }
13
- create(options) {
13
+ create() {
14
14
  return azure.createAzure({
15
- ...options,
16
- apiKey: options?.apiKey || env_cjs.getEnv("AZURE_OPENAI_API_KEY"),
17
- baseURL: options?.baseURL || env_cjs.getEnv("AZURE_OPENAI_API_ENDPOINT"),
18
- resourceName: options?.resourceName || env_cjs.getEnv("AZURE_OPENAI_API_RESOURCE"),
19
- apiVersion: options?.apiVersion || env_cjs.getEnv("AZURE_OPENAI_API_VERSION")
15
+ ...this.settings,
16
+ apiKey: this.settings.apiKey || env_cjs.getEnv("AZURE_OPENAI_API_KEY"),
17
+ baseURL: this.settings.baseURL || env_cjs.getEnv("AZURE_OPENAI_API_ENDPOINT"),
18
+ resourceName: this.settings.resourceName || env_cjs.getEnv("AZURE_OPENAI_API_RESOURCE"),
19
+ apiVersion: this.settings.apiVersion || env_cjs.getEnv("AZURE_OPENAI_API_VERSION")
20
20
  });
21
21
  }
22
22
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["client.ts"],"names":["AzureOpenAIClient","BackendClient","create","options","createAzure","apiKey","getEnv","baseURL","resourceName","apiVersion"],"mappings":";;;;;;;;AAsBO,MAAMA,0BAA0BC,wBAAAA,CAAAA;EAtBvC;;;AA0BYC,EAAAA,MAAAA,CAAOC,OAA0D,EAAA;AACzE,IAAA,OAAOC,iBAAY,CAAA;MACjB,GAAGD,OAAAA;MACHE,MAAQF,EAAAA,OAAAA,EAASE,MAAUC,IAAAA,cAAAA,CAAO,sBAAA,CAAA;MAClCC,OAASJ,EAAAA,OAAAA,EAASI,OAAWD,IAAAA,cAAAA,CAAO,2BAAA,CAAA;MACpCE,YAAcL,EAAAA,OAAAA,EAASK,YAAgBF,IAAAA,cAAAA,CAAO,2BAAA,CAAA;MAC9CG,UAAYN,EAAAA,OAAAA,EAASM,UAAcH,IAAAA,cAAAA,CAAO,0BAAA;KAC5C,CAAA;AACF;AACF","file":"client.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { AzureOpenAIProvider, AzureOpenAIProviderSettings, createAzure } from \"@ai-sdk/azure\";\nimport { getEnv } from \"@/internals/env.js\";\nimport { BackendClient } from \"@/backend/client.js\";\n\nexport type AzureOpenAIClientSettings = AzureOpenAIProviderSettings;\n\nexport class AzureOpenAIClient extends BackendClient<\n AzureOpenAIClientSettings,\n AzureOpenAIProvider\n> {\n protected create(options?: AzureOpenAIClientSettings): AzureOpenAIProvider {\n return createAzure({\n ...options,\n apiKey: options?.apiKey || getEnv(\"AZURE_OPENAI_API_KEY\"),\n baseURL: options?.baseURL || getEnv(\"AZURE_OPENAI_API_ENDPOINT\"),\n resourceName: options?.resourceName || getEnv(\"AZURE_OPENAI_API_RESOURCE\"),\n apiVersion: options?.apiVersion || getEnv(\"AZURE_OPENAI_API_VERSION\"),\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["client.ts"],"names":["AzureOpenAIClient","BackendClient","create","createAzure","settings","apiKey","getEnv","baseURL","resourceName","apiVersion"],"mappings":";;;;;;;;AAsBO,MAAMA,0BAA0BC,wBAAAA,CAAAA;EAtBvC;;;EA0BYC,MAA8B,GAAA;AACtC,IAAA,OAAOC,iBAAY,CAAA;AACjB,MAAA,GAAG,IAAKC,CAAAA,QAAAA;AACRC,MAAAA,MAAAA,EAAQ,IAAKD,CAAAA,QAAAA,CAASC,MAAUC,IAAAA,cAAAA,CAAO,sBAAA,CAAA;AACvCC,MAAAA,OAAAA,EAAS,IAAKH,CAAAA,QAAAA,CAASG,OAAWD,IAAAA,cAAAA,CAAO,2BAAA,CAAA;AACzCE,MAAAA,YAAAA,EAAc,IAAKJ,CAAAA,QAAAA,CAASI,YAAgBF,IAAAA,cAAAA,CAAO,2BAAA,CAAA;AACnDG,MAAAA,UAAAA,EAAY,IAAKL,CAAAA,QAAAA,CAASK,UAAcH,IAAAA,cAAAA,CAAO,0BAAA;KACjD,CAAA;AACF;AACF","file":"client.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { AzureOpenAIProvider, AzureOpenAIProviderSettings, createAzure } from \"@ai-sdk/azure\";\nimport { getEnv } from \"@/internals/env.js\";\nimport { BackendClient } from \"@/backend/client.js\";\n\nexport type AzureOpenAIClientSettings = AzureOpenAIProviderSettings;\n\nexport class AzureOpenAIClient extends BackendClient<\n AzureOpenAIClientSettings,\n AzureOpenAIProvider\n> {\n protected create(): AzureOpenAIProvider {\n return createAzure({\n ...this.settings,\n apiKey: this.settings.apiKey || getEnv(\"AZURE_OPENAI_API_KEY\"),\n baseURL: this.settings.baseURL || getEnv(\"AZURE_OPENAI_API_ENDPOINT\"),\n resourceName: this.settings.resourceName || getEnv(\"AZURE_OPENAI_API_RESOURCE\"),\n apiVersion: this.settings.apiVersion || getEnv(\"AZURE_OPENAI_API_VERSION\"),\n });\n }\n}\n"]}
@@ -22,7 +22,7 @@ import '../../../internals/helpers/guards.cjs';
22
22
 
23
23
  type AzureOpenAIClientSettings = AzureOpenAIProviderSettings;
24
24
  declare class AzureOpenAIClient extends BackendClient<AzureOpenAIClientSettings, AzureOpenAIProvider> {
25
- protected create(options?: AzureOpenAIClientSettings): AzureOpenAIProvider;
25
+ protected create(): AzureOpenAIProvider;
26
26
  }
27
27
 
28
28
  export { AzureOpenAIClient, type AzureOpenAIClientSettings };
@@ -22,7 +22,7 @@ import '../../../internals/helpers/guards.js';
22
22
 
23
23
  type AzureOpenAIClientSettings = AzureOpenAIProviderSettings;
24
24
  declare class AzureOpenAIClient extends BackendClient<AzureOpenAIClientSettings, AzureOpenAIProvider> {
25
- protected create(options?: AzureOpenAIClientSettings): AzureOpenAIProvider;
25
+ protected create(): AzureOpenAIProvider;
26
26
  }
27
27
 
28
28
  export { AzureOpenAIClient, type AzureOpenAIClientSettings };
@@ -8,13 +8,13 @@ class AzureOpenAIClient extends BackendClient {
8
8
  static {
9
9
  __name(this, "AzureOpenAIClient");
10
10
  }
11
- create(options) {
11
+ create() {
12
12
  return createAzure({
13
- ...options,
14
- apiKey: options?.apiKey || getEnv("AZURE_OPENAI_API_KEY"),
15
- baseURL: options?.baseURL || getEnv("AZURE_OPENAI_API_ENDPOINT"),
16
- resourceName: options?.resourceName || getEnv("AZURE_OPENAI_API_RESOURCE"),
17
- apiVersion: options?.apiVersion || getEnv("AZURE_OPENAI_API_VERSION")
13
+ ...this.settings,
14
+ apiKey: this.settings.apiKey || getEnv("AZURE_OPENAI_API_KEY"),
15
+ baseURL: this.settings.baseURL || getEnv("AZURE_OPENAI_API_ENDPOINT"),
16
+ resourceName: this.settings.resourceName || getEnv("AZURE_OPENAI_API_RESOURCE"),
17
+ apiVersion: this.settings.apiVersion || getEnv("AZURE_OPENAI_API_VERSION")
18
18
  });
19
19
  }
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["client.ts"],"names":["AzureOpenAIClient","BackendClient","create","options","createAzure","apiKey","getEnv","baseURL","resourceName","apiVersion"],"mappings":";;;;;;AAsBO,MAAMA,0BAA0BC,aAAAA,CAAAA;EAtBvC;;;AA0BYC,EAAAA,MAAAA,CAAOC,OAA0D,EAAA;AACzE,IAAA,OAAOC,WAAY,CAAA;MACjB,GAAGD,OAAAA;MACHE,MAAQF,EAAAA,OAAAA,EAASE,MAAUC,IAAAA,MAAAA,CAAO,sBAAA,CAAA;MAClCC,OAASJ,EAAAA,OAAAA,EAASI,OAAWD,IAAAA,MAAAA,CAAO,2BAAA,CAAA;MACpCE,YAAcL,EAAAA,OAAAA,EAASK,YAAgBF,IAAAA,MAAAA,CAAO,2BAAA,CAAA;MAC9CG,UAAYN,EAAAA,OAAAA,EAASM,UAAcH,IAAAA,MAAAA,CAAO,0BAAA;KAC5C,CAAA;AACF;AACF","file":"client.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { AzureOpenAIProvider, AzureOpenAIProviderSettings, createAzure } from \"@ai-sdk/azure\";\nimport { getEnv } from \"@/internals/env.js\";\nimport { BackendClient } from \"@/backend/client.js\";\n\nexport type AzureOpenAIClientSettings = AzureOpenAIProviderSettings;\n\nexport class AzureOpenAIClient extends BackendClient<\n AzureOpenAIClientSettings,\n AzureOpenAIProvider\n> {\n protected create(options?: AzureOpenAIClientSettings): AzureOpenAIProvider {\n return createAzure({\n ...options,\n apiKey: options?.apiKey || getEnv(\"AZURE_OPENAI_API_KEY\"),\n baseURL: options?.baseURL || getEnv(\"AZURE_OPENAI_API_ENDPOINT\"),\n resourceName: options?.resourceName || getEnv(\"AZURE_OPENAI_API_RESOURCE\"),\n apiVersion: options?.apiVersion || getEnv(\"AZURE_OPENAI_API_VERSION\"),\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["client.ts"],"names":["AzureOpenAIClient","BackendClient","create","createAzure","settings","apiKey","getEnv","baseURL","resourceName","apiVersion"],"mappings":";;;;;;AAsBO,MAAMA,0BAA0BC,aAAAA,CAAAA;EAtBvC;;;EA0BYC,MAA8B,GAAA;AACtC,IAAA,OAAOC,WAAY,CAAA;AACjB,MAAA,GAAG,IAAKC,CAAAA,QAAAA;AACRC,MAAAA,MAAAA,EAAQ,IAAKD,CAAAA,QAAAA,CAASC,MAAUC,IAAAA,MAAAA,CAAO,sBAAA,CAAA;AACvCC,MAAAA,OAAAA,EAAS,IAAKH,CAAAA,QAAAA,CAASG,OAAWD,IAAAA,MAAAA,CAAO,2BAAA,CAAA;AACzCE,MAAAA,YAAAA,EAAc,IAAKJ,CAAAA,QAAAA,CAASI,YAAgBF,IAAAA,MAAAA,CAAO,2BAAA,CAAA;AACnDG,MAAAA,UAAAA,EAAY,IAAKL,CAAAA,QAAAA,CAASK,UAAcH,IAAAA,MAAAA,CAAO,0BAAA;KACjD,CAAA;AACF;AACF","file":"client.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { AzureOpenAIProvider, AzureOpenAIProviderSettings, createAzure } from \"@ai-sdk/azure\";\nimport { getEnv } from \"@/internals/env.js\";\nimport { BackendClient } from \"@/backend/client.js\";\n\nexport type AzureOpenAIClientSettings = AzureOpenAIProviderSettings;\n\nexport class AzureOpenAIClient extends BackendClient<\n AzureOpenAIClientSettings,\n AzureOpenAIProvider\n> {\n protected create(): AzureOpenAIProvider {\n return createAzure({\n ...this.settings,\n apiKey: this.settings.apiKey || getEnv(\"AZURE_OPENAI_API_KEY\"),\n baseURL: this.settings.baseURL || getEnv(\"AZURE_OPENAI_API_ENDPOINT\"),\n resourceName: this.settings.resourceName || getEnv(\"AZURE_OPENAI_API_RESOURCE\"),\n apiVersion: this.settings.apiVersion || getEnv(\"AZURE_OPENAI_API_VERSION\"),\n });\n }\n}\n"]}
@@ -12,9 +12,9 @@ class GroqClient extends client_cjs.BackendClient {
12
12
  }
13
13
  create() {
14
14
  return groq.createGroq({
15
- baseURL: env_cjs.getEnv("GROQ_API_BASE_URL"),
16
- apiKey: env_cjs.getEnv("GROQ_API_KEY"),
17
- ...this.settings
15
+ ...this.settings,
16
+ baseURL: this.settings.baseURL || env_cjs.getEnv("GROQ_API_BASE_URL"),
17
+ apiKey: this.settings.apiKey || env_cjs.getEnv("GROQ_API_KEY")
18
18
  });
19
19
  }
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["client.ts"],"names":["GroqClient","BackendClient","create","createGroq","baseURL","getEnv","apiKey","settings"],"mappings":";;;;;;;;AAsBO,MAAMA,mBAAmBC,wBAAAA,CAAAA;EAtBhC;;;EAuBYC,MAAuB,GAAA;AAC/B,IAAA,OAAOC,eAAW,CAAA;AAChBC,MAAAA,OAAAA,EAASC,eAAO,mBAAA,CAAA;AAChBC,MAAAA,MAAAA,EAAQD,eAAO,cAAA,CAAA;AACf,MAAA,GAAG,IAAKE,CAAAA;KACV,CAAA;AACF;AACF","file":"client.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createGroq, GroqProvider, GroqProviderSettings } from \"@ai-sdk/groq\";\nimport { BackendClient } from \"@/backend/client.js\";\nimport { getEnv } from \"@/internals/env.js\";\n\nexport type GroqClientSettings = GroqProviderSettings;\n\nexport class GroqClient extends BackendClient<GroqClientSettings, GroqProvider> {\n protected create(): GroqProvider {\n return createGroq({\n baseURL: getEnv(\"GROQ_API_BASE_URL\"),\n apiKey: getEnv(\"GROQ_API_KEY\"),\n ...this.settings,\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["client.ts"],"names":["GroqClient","BackendClient","create","createGroq","settings","baseURL","getEnv","apiKey"],"mappings":";;;;;;;;AAsBO,MAAMA,mBAAmBC,wBAAAA,CAAAA;EAtBhC;;;EAuBYC,MAAuB,GAAA;AAC/B,IAAA,OAAOC,eAAW,CAAA;AAChB,MAAA,GAAG,IAAKC,CAAAA,QAAAA;AACRC,MAAAA,OAAAA,EAAS,IAAKD,CAAAA,QAAAA,CAASC,OAAWC,IAAAA,cAAAA,CAAO,mBAAA,CAAA;AACzCC,MAAAA,MAAAA,EAAQ,IAAKH,CAAAA,QAAAA,CAASG,MAAUD,IAAAA,cAAAA,CAAO,cAAA;KACzC,CAAA;AACF;AACF","file":"client.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createGroq, GroqProvider, GroqProviderSettings } from \"@ai-sdk/groq\";\nimport { BackendClient } from \"@/backend/client.js\";\nimport { getEnv } from \"@/internals/env.js\";\n\nexport type GroqClientSettings = GroqProviderSettings;\n\nexport class GroqClient extends BackendClient<GroqClientSettings, GroqProvider> {\n protected create(): GroqProvider {\n return createGroq({\n ...this.settings,\n baseURL: this.settings.baseURL || getEnv(\"GROQ_API_BASE_URL\"),\n apiKey: this.settings.apiKey || getEnv(\"GROQ_API_KEY\"),\n });\n }\n}\n"]}
@@ -10,9 +10,9 @@ class GroqClient extends BackendClient {
10
10
  }
11
11
  create() {
12
12
  return createGroq({
13
- baseURL: getEnv("GROQ_API_BASE_URL"),
14
- apiKey: getEnv("GROQ_API_KEY"),
15
- ...this.settings
13
+ ...this.settings,
14
+ baseURL: this.settings.baseURL || getEnv("GROQ_API_BASE_URL"),
15
+ apiKey: this.settings.apiKey || getEnv("GROQ_API_KEY")
16
16
  });
17
17
  }
18
18
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["client.ts"],"names":["GroqClient","BackendClient","create","createGroq","baseURL","getEnv","apiKey","settings"],"mappings":";;;;;;AAsBO,MAAMA,mBAAmBC,aAAAA,CAAAA;EAtBhC;;;EAuBYC,MAAuB,GAAA;AAC/B,IAAA,OAAOC,UAAW,CAAA;AAChBC,MAAAA,OAAAA,EAASC,OAAO,mBAAA,CAAA;AAChBC,MAAAA,MAAAA,EAAQD,OAAO,cAAA,CAAA;AACf,MAAA,GAAG,IAAKE,CAAAA;KACV,CAAA;AACF;AACF","file":"client.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createGroq, GroqProvider, GroqProviderSettings } from \"@ai-sdk/groq\";\nimport { BackendClient } from \"@/backend/client.js\";\nimport { getEnv } from \"@/internals/env.js\";\n\nexport type GroqClientSettings = GroqProviderSettings;\n\nexport class GroqClient extends BackendClient<GroqClientSettings, GroqProvider> {\n protected create(): GroqProvider {\n return createGroq({\n baseURL: getEnv(\"GROQ_API_BASE_URL\"),\n apiKey: getEnv(\"GROQ_API_KEY\"),\n ...this.settings,\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["client.ts"],"names":["GroqClient","BackendClient","create","createGroq","settings","baseURL","getEnv","apiKey"],"mappings":";;;;;;AAsBO,MAAMA,mBAAmBC,aAAAA,CAAAA;EAtBhC;;;EAuBYC,MAAuB,GAAA;AAC/B,IAAA,OAAOC,UAAW,CAAA;AAChB,MAAA,GAAG,IAAKC,CAAAA,QAAAA;AACRC,MAAAA,OAAAA,EAAS,IAAKD,CAAAA,QAAAA,CAASC,OAAWC,IAAAA,MAAAA,CAAO,mBAAA,CAAA;AACzCC,MAAAA,MAAAA,EAAQ,IAAKH,CAAAA,QAAAA,CAASG,MAAUD,IAAAA,MAAAA,CAAO,cAAA;KACzC,CAAA;AACF;AACF","file":"client.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { createGroq, GroqProvider, GroqProviderSettings } from \"@ai-sdk/groq\";\nimport { BackendClient } from \"@/backend/client.js\";\nimport { getEnv } from \"@/internals/env.js\";\n\nexport type GroqClientSettings = GroqProviderSettings;\n\nexport class GroqClient extends BackendClient<GroqClientSettings, GroqProvider> {\n protected create(): GroqProvider {\n return createGroq({\n ...this.settings,\n baseURL: this.settings.baseURL || getEnv(\"GROQ_API_BASE_URL\"),\n apiKey: this.settings.apiKey || getEnv(\"GROQ_API_KEY\"),\n });\n }\n}\n"]}
@@ -36,7 +36,7 @@ class WatsonxClient extends client_cjs.BackendClient {
36
36
  version: this.settings.version,
37
37
  serviceUrl: this.settings.baseUrl,
38
38
  authenticator: this.settings?.authenticator || new ibmCloudSdkCore.IamAuthenticator({
39
- apikey: env_cjs.getEnv("WATSONX_API_KEY", this.settings?.apiKey ?? ""),
39
+ apikey: this.settings?.apiKey || env_cjs.getEnv("WATSONX_API_KEY", ""),
40
40
  url: "https://iam.cloud.ibm.com"
41
41
  })
42
42
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["client.ts"],"names":["WatsonxClient","BackendClient","constructor","settings","region","getEnv","baseUrl","projectId","spaceId","undefined","version","create","WatsonXAI","newInstance","serviceUrl","authenticator","IamAuthenticator","apikey","apiKey","url"],"mappings":";;;;;;;;;AA6BO,MAAMA,sBAAsBC,wBAAAA,CAAAA;EA7BnC;;;AA8BEC,EAAAA,WAAAA,CAAYC,QAAiC,EAAA;AAC3C,IAAA,MAAMC,MAASD,GAAAA,QAAAA,EAAUC,MAAUC,IAAAA,cAAAA,CAAO,gBAAA,CAAA;AAC1C,IAAA,MAAMC,UACJH,QAAUG,EAAAA,OAAAA,IAAWD,eAAO,kBAAA,CAAA,IAAuB,WAAWD,MAAAA,CAAAA,iBAAAA,CAAAA;AAEhE,IAAA,MAAMG,SAAYJ,GAAAA,QAAAA,EAAUI,SAAaF,IAAAA,cAAAA,CAAO,oBAAA,CAAA;AAChD,IAAA,MAAMG,UAAUD,SAAYE,GAAAA,MAAAA,GAAYN,QAAUK,EAAAA,OAAAA,IAAWH,eAAO,kBAAA,CAAA;AACpE,IAAA,MAAMK,OAAUP,GAAAA,QAAAA,EAAUO,OAAWL,IAAAA,cAAAA,CAAO,iBAAA,CAAsB,IAAA,YAAA;AAElE,IAAM,KAAA,CAAA;MACJ,GAAGF,QAAAA;AACHG,MAAAA,OAAAA;AACAC,MAAAA,SAAAA;AACAC,MAAAA,OAAAA;AACAE,MAAAA;KACF,CAAA;AACF;AACA,EAAA,IAAIF,OAAU,GAAA;AACZ,IAAA,OAAO,KAAKL,QAASK,CAAAA,OAAAA;AACvB;AAEA,EAAA,IAAID,SAAY,GAAA;AACd,IAAA,OAAO,KAAKJ,QAASI,CAAAA,SAAAA;AACvB;EAEUI,MAAS,GAAA;AACjB,IAAA,OAAOC,oBAAUC,WAAY,CAAA;AAC3BH,MAAAA,OAAAA,EAAS,KAAKP,QAASO,CAAAA,OAAAA;AACvBI,MAAAA,UAAAA,EAAY,KAAKX,QAASG,CAAAA,OAAAA;AAC1BS,MAAAA,aAAAA,EACE,IAAKZ,CAAAA,QAAAA,EAAUY,aACf,IAAA,IAAIC,gCAAiB,CAAA;AACnBC,QAAAA,MAAAA,EAAQZ,cAAO,CAAA,iBAAA,EAAmB,IAAKF,CAAAA,QAAAA,EAAUe,UAAU,EAAA,CAAA;QAC3DC,GAAK,EAAA;OACP;KACJ,CAAA;AACF;AACF","file":"client.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { WatsonXAI } from \"@ibm-cloud/watsonx-ai\";\nimport { getEnv } from \"@/internals/env.js\";\nimport { IamAuthenticator, UserOptions } from \"ibm-cloud-sdk-core\";\nimport { BackendClient } from \"@/backend/client.js\";\n\nexport interface WatsonxClientSettings extends Pick<UserOptions, \"authenticator\" | \"version\"> {\n spaceId?: string;\n baseUrl?: string;\n region?: string;\n projectId?: string;\n apiKey?: string;\n}\n\nexport class WatsonxClient extends BackendClient<WatsonxClientSettings, WatsonXAI> {\n constructor(settings: WatsonxClientSettings) {\n const region = settings?.region || getEnv(\"WATSONX_REGION\");\n const baseUrl =\n settings?.baseUrl || getEnv(\"WATSONX_BASE_URL\") || `https://${region}.ml.cloud.ibm.com`;\n\n const projectId = settings?.projectId || getEnv(\"WATSONX_PROJECT_ID\");\n const spaceId = projectId ? undefined : settings?.spaceId || getEnv(\"WATSONX_SPACE_ID\");\n const version = settings?.version || getEnv(\"WATSONX_VERSION\") || \"2024-05-31\";\n\n super({\n ...settings,\n baseUrl,\n projectId,\n spaceId,\n version,\n });\n }\n get spaceId() {\n return this.settings.spaceId;\n }\n\n get projectId() {\n return this.settings.projectId;\n }\n\n protected create() {\n return WatsonXAI.newInstance({\n version: this.settings.version,\n serviceUrl: this.settings.baseUrl,\n authenticator:\n this.settings?.authenticator ||\n new IamAuthenticator({\n apikey: getEnv(\"WATSONX_API_KEY\", this.settings?.apiKey ?? \"\"),\n url: \"https://iam.cloud.ibm.com\",\n }),\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["client.ts"],"names":["WatsonxClient","BackendClient","constructor","settings","region","getEnv","baseUrl","projectId","spaceId","undefined","version","create","WatsonXAI","newInstance","serviceUrl","authenticator","IamAuthenticator","apikey","apiKey","url"],"mappings":";;;;;;;;;AA6BO,MAAMA,sBAAsBC,wBAAAA,CAAAA;EA7BnC;;;AA8BEC,EAAAA,WAAAA,CAAYC,QAAiC,EAAA;AAC3C,IAAA,MAAMC,MAASD,GAAAA,QAAAA,EAAUC,MAAUC,IAAAA,cAAAA,CAAO,gBAAA,CAAA;AAC1C,IAAA,MAAMC,UACJH,QAAUG,EAAAA,OAAAA,IAAWD,eAAO,kBAAA,CAAA,IAAuB,WAAWD,MAAAA,CAAAA,iBAAAA,CAAAA;AAEhE,IAAA,MAAMG,SAAYJ,GAAAA,QAAAA,EAAUI,SAAaF,IAAAA,cAAAA,CAAO,oBAAA,CAAA;AAChD,IAAA,MAAMG,UAAUD,SAAYE,GAAAA,MAAAA,GAAYN,QAAUK,EAAAA,OAAAA,IAAWH,eAAO,kBAAA,CAAA;AACpE,IAAA,MAAMK,OAAUP,GAAAA,QAAAA,EAAUO,OAAWL,IAAAA,cAAAA,CAAO,iBAAA,CAAsB,IAAA,YAAA;AAElE,IAAM,KAAA,CAAA;MACJ,GAAGF,QAAAA;AACHG,MAAAA,OAAAA;AACAC,MAAAA,SAAAA;AACAC,MAAAA,OAAAA;AACAE,MAAAA;KACF,CAAA;AACF;AACA,EAAA,IAAIF,OAAU,GAAA;AACZ,IAAA,OAAO,KAAKL,QAASK,CAAAA,OAAAA;AACvB;AAEA,EAAA,IAAID,SAAY,GAAA;AACd,IAAA,OAAO,KAAKJ,QAASI,CAAAA,SAAAA;AACvB;EAEUI,MAAS,GAAA;AACjB,IAAA,OAAOC,oBAAUC,WAAY,CAAA;AAC3BH,MAAAA,OAAAA,EAAS,KAAKP,QAASO,CAAAA,OAAAA;AACvBI,MAAAA,UAAAA,EAAY,KAAKX,QAASG,CAAAA,OAAAA;AAC1BS,MAAAA,aAAAA,EACE,IAAKZ,CAAAA,QAAAA,EAAUY,aACf,IAAA,IAAIC,gCAAiB,CAAA;AACnBC,QAAAA,MAAAA,EAAQ,IAAKd,CAAAA,QAAAA,EAAUe,MAAUb,IAAAA,cAAAA,CAAO,mBAAmB,EAAA,CAAA;QAC3Dc,GAAK,EAAA;OACP;KACJ,CAAA;AACF;AACF","file":"client.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { WatsonXAI } from \"@ibm-cloud/watsonx-ai\";\nimport { getEnv } from \"@/internals/env.js\";\nimport { IamAuthenticator, UserOptions } from \"ibm-cloud-sdk-core\";\nimport { BackendClient } from \"@/backend/client.js\";\n\nexport interface WatsonxClientSettings extends Pick<UserOptions, \"authenticator\" | \"version\"> {\n spaceId?: string;\n baseUrl?: string;\n region?: string;\n projectId?: string;\n apiKey?: string;\n}\n\nexport class WatsonxClient extends BackendClient<WatsonxClientSettings, WatsonXAI> {\n constructor(settings: WatsonxClientSettings) {\n const region = settings?.region || getEnv(\"WATSONX_REGION\");\n const baseUrl =\n settings?.baseUrl || getEnv(\"WATSONX_BASE_URL\") || `https://${region}.ml.cloud.ibm.com`;\n\n const projectId = settings?.projectId || getEnv(\"WATSONX_PROJECT_ID\");\n const spaceId = projectId ? undefined : settings?.spaceId || getEnv(\"WATSONX_SPACE_ID\");\n const version = settings?.version || getEnv(\"WATSONX_VERSION\") || \"2024-05-31\";\n\n super({\n ...settings,\n baseUrl,\n projectId,\n spaceId,\n version,\n });\n }\n get spaceId() {\n return this.settings.spaceId;\n }\n\n get projectId() {\n return this.settings.projectId;\n }\n\n protected create() {\n return WatsonXAI.newInstance({\n version: this.settings.version,\n serviceUrl: this.settings.baseUrl,\n authenticator:\n this.settings?.authenticator ||\n new IamAuthenticator({\n apikey: this.settings?.apiKey || getEnv(\"WATSONX_API_KEY\", \"\"),\n url: \"https://iam.cloud.ibm.com\",\n }),\n });\n }\n}\n"]}
@@ -34,7 +34,7 @@ class WatsonxClient extends BackendClient {
34
34
  version: this.settings.version,
35
35
  serviceUrl: this.settings.baseUrl,
36
36
  authenticator: this.settings?.authenticator || new IamAuthenticator({
37
- apikey: getEnv("WATSONX_API_KEY", this.settings?.apiKey ?? ""),
37
+ apikey: this.settings?.apiKey || getEnv("WATSONX_API_KEY", ""),
38
38
  url: "https://iam.cloud.ibm.com"
39
39
  })
40
40
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["client.ts"],"names":["WatsonxClient","BackendClient","constructor","settings","region","getEnv","baseUrl","projectId","spaceId","undefined","version","create","WatsonXAI","newInstance","serviceUrl","authenticator","IamAuthenticator","apikey","apiKey","url"],"mappings":";;;;;;;AA6BO,MAAMA,sBAAsBC,aAAAA,CAAAA;EA7BnC;;;AA8BEC,EAAAA,WAAAA,CAAYC,QAAiC,EAAA;AAC3C,IAAA,MAAMC,MAASD,GAAAA,QAAAA,EAAUC,MAAUC,IAAAA,MAAAA,CAAO,gBAAA,CAAA;AAC1C,IAAA,MAAMC,UACJH,QAAUG,EAAAA,OAAAA,IAAWD,OAAO,kBAAA,CAAA,IAAuB,WAAWD,MAAAA,CAAAA,iBAAAA,CAAAA;AAEhE,IAAA,MAAMG,SAAYJ,GAAAA,QAAAA,EAAUI,SAAaF,IAAAA,MAAAA,CAAO,oBAAA,CAAA;AAChD,IAAA,MAAMG,UAAUD,SAAYE,GAAAA,MAAAA,GAAYN,QAAUK,EAAAA,OAAAA,IAAWH,OAAO,kBAAA,CAAA;AACpE,IAAA,MAAMK,OAAUP,GAAAA,QAAAA,EAAUO,OAAWL,IAAAA,MAAAA,CAAO,iBAAA,CAAsB,IAAA,YAAA;AAElE,IAAM,KAAA,CAAA;MACJ,GAAGF,QAAAA;AACHG,MAAAA,OAAAA;AACAC,MAAAA,SAAAA;AACAC,MAAAA,OAAAA;AACAE,MAAAA;KACF,CAAA;AACF;AACA,EAAA,IAAIF,OAAU,GAAA;AACZ,IAAA,OAAO,KAAKL,QAASK,CAAAA,OAAAA;AACvB;AAEA,EAAA,IAAID,SAAY,GAAA;AACd,IAAA,OAAO,KAAKJ,QAASI,CAAAA,SAAAA;AACvB;EAEUI,MAAS,GAAA;AACjB,IAAA,OAAOC,UAAUC,WAAY,CAAA;AAC3BH,MAAAA,OAAAA,EAAS,KAAKP,QAASO,CAAAA,OAAAA;AACvBI,MAAAA,UAAAA,EAAY,KAAKX,QAASG,CAAAA,OAAAA;AAC1BS,MAAAA,aAAAA,EACE,IAAKZ,CAAAA,QAAAA,EAAUY,aACf,IAAA,IAAIC,gBAAiB,CAAA;AACnBC,QAAAA,MAAAA,EAAQZ,MAAO,CAAA,iBAAA,EAAmB,IAAKF,CAAAA,QAAAA,EAAUe,UAAU,EAAA,CAAA;QAC3DC,GAAK,EAAA;OACP;KACJ,CAAA;AACF;AACF","file":"client.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { WatsonXAI } from \"@ibm-cloud/watsonx-ai\";\nimport { getEnv } from \"@/internals/env.js\";\nimport { IamAuthenticator, UserOptions } from \"ibm-cloud-sdk-core\";\nimport { BackendClient } from \"@/backend/client.js\";\n\nexport interface WatsonxClientSettings extends Pick<UserOptions, \"authenticator\" | \"version\"> {\n spaceId?: string;\n baseUrl?: string;\n region?: string;\n projectId?: string;\n apiKey?: string;\n}\n\nexport class WatsonxClient extends BackendClient<WatsonxClientSettings, WatsonXAI> {\n constructor(settings: WatsonxClientSettings) {\n const region = settings?.region || getEnv(\"WATSONX_REGION\");\n const baseUrl =\n settings?.baseUrl || getEnv(\"WATSONX_BASE_URL\") || `https://${region}.ml.cloud.ibm.com`;\n\n const projectId = settings?.projectId || getEnv(\"WATSONX_PROJECT_ID\");\n const spaceId = projectId ? undefined : settings?.spaceId || getEnv(\"WATSONX_SPACE_ID\");\n const version = settings?.version || getEnv(\"WATSONX_VERSION\") || \"2024-05-31\";\n\n super({\n ...settings,\n baseUrl,\n projectId,\n spaceId,\n version,\n });\n }\n get spaceId() {\n return this.settings.spaceId;\n }\n\n get projectId() {\n return this.settings.projectId;\n }\n\n protected create() {\n return WatsonXAI.newInstance({\n version: this.settings.version,\n serviceUrl: this.settings.baseUrl,\n authenticator:\n this.settings?.authenticator ||\n new IamAuthenticator({\n apikey: getEnv(\"WATSONX_API_KEY\", this.settings?.apiKey ?? \"\"),\n url: \"https://iam.cloud.ibm.com\",\n }),\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["client.ts"],"names":["WatsonxClient","BackendClient","constructor","settings","region","getEnv","baseUrl","projectId","spaceId","undefined","version","create","WatsonXAI","newInstance","serviceUrl","authenticator","IamAuthenticator","apikey","apiKey","url"],"mappings":";;;;;;;AA6BO,MAAMA,sBAAsBC,aAAAA,CAAAA;EA7BnC;;;AA8BEC,EAAAA,WAAAA,CAAYC,QAAiC,EAAA;AAC3C,IAAA,MAAMC,MAASD,GAAAA,QAAAA,EAAUC,MAAUC,IAAAA,MAAAA,CAAO,gBAAA,CAAA;AAC1C,IAAA,MAAMC,UACJH,QAAUG,EAAAA,OAAAA,IAAWD,OAAO,kBAAA,CAAA,IAAuB,WAAWD,MAAAA,CAAAA,iBAAAA,CAAAA;AAEhE,IAAA,MAAMG,SAAYJ,GAAAA,QAAAA,EAAUI,SAAaF,IAAAA,MAAAA,CAAO,oBAAA,CAAA;AAChD,IAAA,MAAMG,UAAUD,SAAYE,GAAAA,MAAAA,GAAYN,QAAUK,EAAAA,OAAAA,IAAWH,OAAO,kBAAA,CAAA;AACpE,IAAA,MAAMK,OAAUP,GAAAA,QAAAA,EAAUO,OAAWL,IAAAA,MAAAA,CAAO,iBAAA,CAAsB,IAAA,YAAA;AAElE,IAAM,KAAA,CAAA;MACJ,GAAGF,QAAAA;AACHG,MAAAA,OAAAA;AACAC,MAAAA,SAAAA;AACAC,MAAAA,OAAAA;AACAE,MAAAA;KACF,CAAA;AACF;AACA,EAAA,IAAIF,OAAU,GAAA;AACZ,IAAA,OAAO,KAAKL,QAASK,CAAAA,OAAAA;AACvB;AAEA,EAAA,IAAID,SAAY,GAAA;AACd,IAAA,OAAO,KAAKJ,QAASI,CAAAA,SAAAA;AACvB;EAEUI,MAAS,GAAA;AACjB,IAAA,OAAOC,UAAUC,WAAY,CAAA;AAC3BH,MAAAA,OAAAA,EAAS,KAAKP,QAASO,CAAAA,OAAAA;AACvBI,MAAAA,UAAAA,EAAY,KAAKX,QAASG,CAAAA,OAAAA;AAC1BS,MAAAA,aAAAA,EACE,IAAKZ,CAAAA,QAAAA,EAAUY,aACf,IAAA,IAAIC,gBAAiB,CAAA;AACnBC,QAAAA,MAAAA,EAAQ,IAAKd,CAAAA,QAAAA,EAAUe,MAAUb,IAAAA,MAAAA,CAAO,mBAAmB,EAAA,CAAA;QAC3Dc,GAAK,EAAA;OACP;KACJ,CAAA;AACF;AACF","file":"client.js","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { WatsonXAI } from \"@ibm-cloud/watsonx-ai\";\nimport { getEnv } from \"@/internals/env.js\";\nimport { IamAuthenticator, UserOptions } from \"ibm-cloud-sdk-core\";\nimport { BackendClient } from \"@/backend/client.js\";\n\nexport interface WatsonxClientSettings extends Pick<UserOptions, \"authenticator\" | \"version\"> {\n spaceId?: string;\n baseUrl?: string;\n region?: string;\n projectId?: string;\n apiKey?: string;\n}\n\nexport class WatsonxClient extends BackendClient<WatsonxClientSettings, WatsonXAI> {\n constructor(settings: WatsonxClientSettings) {\n const region = settings?.region || getEnv(\"WATSONX_REGION\");\n const baseUrl =\n settings?.baseUrl || getEnv(\"WATSONX_BASE_URL\") || `https://${region}.ml.cloud.ibm.com`;\n\n const projectId = settings?.projectId || getEnv(\"WATSONX_PROJECT_ID\");\n const spaceId = projectId ? undefined : settings?.spaceId || getEnv(\"WATSONX_SPACE_ID\");\n const version = settings?.version || getEnv(\"WATSONX_VERSION\") || \"2024-05-31\";\n\n super({\n ...settings,\n baseUrl,\n projectId,\n spaceId,\n version,\n });\n }\n get spaceId() {\n return this.settings.spaceId;\n }\n\n get projectId() {\n return this.settings.projectId;\n }\n\n protected create() {\n return WatsonXAI.newInstance({\n version: this.settings.version,\n serviceUrl: this.settings.baseUrl,\n authenticator:\n this.settings?.authenticator ||\n new IamAuthenticator({\n apikey: this.settings?.apiKey || getEnv(\"WATSONX_API_KEY\", \"\"),\n url: \"https://iam.cloud.ibm.com\",\n }),\n });\n }\n}\n"]}
@@ -81,4 +81,4 @@ declare class ReActAgent extends BaseAgent<ReActAgentRunInput, ReActAgentRunOutp
81
81
  };
82
82
  }
83
83
 
84
- export { BaseRunner as B, type ReActAgentInput as R, ReActAgent as a, type ReActAgentRunnerLLMInput as b, type ReActAgentRunnerToolInput as c, type ReActAgentTemplateFactory as d };
84
+ export { BaseRunner as B, type ReActAgentRunnerLLMInput as R, type ReActAgentRunnerToolInput as a, type ReActAgentInput as b, ReActAgent as c, type ReActAgentTemplateFactory as d };
@@ -81,4 +81,4 @@ declare class ReActAgent extends BaseAgent<ReActAgentRunInput, ReActAgentRunOutp
81
81
  };
82
82
  }
83
83
 
84
- export { BaseRunner as B, type ReActAgentInput as R, ReActAgent as a, type ReActAgentRunnerLLMInput as b, type ReActAgentRunnerToolInput as c, type ReActAgentTemplateFactory as d };
84
+ export { BaseRunner as B, type ReActAgentRunnerLLMInput as R, type ReActAgentRunnerToolInput as a, type ReActAgentInput as b, ReActAgent as c, type ReActAgentTemplateFactory as d };
@@ -3,11 +3,8 @@
3
3
  var emitter_cjs = require('../../../emitter/emitter.cjs');
4
4
  var base_cjs = require('../../base.cjs');
5
5
  var message_cjs = require('../../../backend/message.cjs');
6
- var index_js = require('@i-am-bee/acp-sdk/client/index.js');
7
6
  var utils_cjs = require('../../../serializer/utils.cjs');
8
- var errors_cjs = require('../../../errors.cjs');
9
- var types_js = require('@i-am-bee/acp-sdk/types.js');
10
- var sse_js = require('@i-am-bee/acp-sdk/client/sse.js');
7
+ var fetcher_cjs = require('../../../internals/fetcher.cjs');
11
8
 
12
9
  var __defProp = Object.defineProperty;
13
10
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
@@ -17,6 +14,7 @@ class RemoteAgent extends base_cjs.BaseAgent {
17
14
  }
18
15
  input;
19
16
  emitter;
17
+ client;
20
18
  constructor(input) {
21
19
  super(), this.input = input, this.emitter = emitter_cjs.Emitter.root.child({
22
20
  namespace: [
@@ -25,66 +23,92 @@ class RemoteAgent extends base_cjs.BaseAgent {
25
23
  ],
26
24
  creator: this
27
25
  });
26
+ this.client = new fetcher_cjs.RestfulClient({
27
+ baseUrl: this.input.url,
28
+ headers: /* @__PURE__ */ __name(async () => ({
29
+ "Accept": "application/json",
30
+ "Content-Type": "application/json"
31
+ }), "headers"),
32
+ paths: {
33
+ runs: `/runs`,
34
+ agents: `/agents`
35
+ }
36
+ });
28
37
  }
29
38
  async _run(input, _options, context) {
30
- const runner = this.createRunner(context);
31
- const output = await runner(input);
32
- const message = new message_cjs.AssistantMessage(output);
33
- return {
34
- message
35
- };
36
- }
37
- async listAgents() {
38
- const response = await this.input.client.listAgents();
39
- return response.agents;
40
- }
41
- createRunner(context) {
42
- return async (input) => {
39
+ const inputs = Array.isArray(input.input) ? input.input.map(this.convertToACPMessage) : [
40
+ this.convertToACPMessage(input.input)
41
+ ];
42
+ const generator = this.client.stream("runs", {
43
+ body: JSON.stringify({
44
+ agent_name: this.input.agentName,
45
+ input: inputs,
46
+ mode: "stream"
47
+ }),
48
+ signal: context.signal
49
+ });
50
+ let eventData = null;
51
+ for await (const event of generator) {
43
52
  try {
44
- this.input.client.setNotificationHandler(types_js.AgentRunProgressNotificationSchema, async (notification) => {
45
- await context.emitter.emit("update", {
46
- output: JSON.stringify(notification.params.delta, null, 2)
47
- });
53
+ eventData = JSON.parse(event.data);
54
+ await context.emitter.emit("update", {
55
+ key: eventData.type,
56
+ value: {
57
+ ...eventData,
58
+ type: void 0
59
+ }
48
60
  });
49
- if (!this.input.client.transport) {
50
- await this.input.client.connect(this.input.transport);
51
- }
52
- } catch (e) {
53
- throw new base_cjs.AgentError(`Can't connect to Beeai Platform.`, [
54
- e
55
- ], {
56
- isFatal: true
61
+ } catch {
62
+ await context.emitter.emit("error", {
63
+ message: "Error parsing JSON"
57
64
  });
58
65
  }
59
- const agents = await this.listAgents();
60
- const agent = agents.find((agent2) => agent2.name === this.input.agentName);
61
- if (!agent) {
62
- throw new base_cjs.AgentError(`Agent ${this.input.agentName} is not registered in the platform`, [], {
63
- isFatal: true
64
- });
65
- }
66
- const response = await this.input.client.runAgent({
67
- name: this.input.agentName,
68
- input: typeof input.prompt === "string" ? {
69
- text: input.prompt
70
- } : input.prompt
71
- }, {
72
- timeout: 1e7,
73
- signal: context.signal,
74
- onprogress: /* @__PURE__ */ __name(() => null, "onprogress")
66
+ }
67
+ if (!eventData) {
68
+ throw new base_cjs.AgentError("No event received from agent.");
69
+ }
70
+ if (eventData.type === "run.failed") {
71
+ const message = eventData.run?.error?.message || "Something went wrong with the agent communication.";
72
+ await context.emitter.emit("error", {
73
+ message
75
74
  });
76
- const output = JSON.stringify(response.output, null, 2);
77
- await context.emitter.emit("update", {
78
- output
75
+ throw new base_cjs.AgentError(message);
76
+ } else if (eventData.type === "run.completed") {
77
+ const text = eventData.run.output.reduce((acc, output) => acc + output.parts.reduce((acc2, part) => acc2 + part.content, ""), "");
78
+ const assistantMessage = new message_cjs.AssistantMessage(text, {
79
+ event: eventData
79
80
  });
80
- return output;
81
- };
81
+ const inputMessages = Array.isArray(input.input) ? input.input.map(this.convertToMessage) : [
82
+ this.convertToMessage(input.input)
83
+ ];
84
+ await this.memory.addMany(inputMessages);
85
+ await this.memory.add(assistantMessage);
86
+ return {
87
+ result: assistantMessage,
88
+ event: eventData
89
+ };
90
+ } else {
91
+ return {
92
+ result: new message_cjs.AssistantMessage("No response from agent."),
93
+ event: eventData
94
+ };
95
+ }
96
+ }
97
+ async checkAgentExists() {
98
+ try {
99
+ const response = await this.client.fetch("agents");
100
+ return !!response.agents.find((agent) => agent.name === this.input.agentName);
101
+ } catch (error) {
102
+ throw new base_cjs.AgentError(`Error while checking agent existence: ${error.message}`, [], {
103
+ isFatal: true
104
+ });
105
+ }
82
106
  }
83
107
  get memory() {
84
- throw new errors_cjs.NotImplementedError();
108
+ return this.input.memory;
85
109
  }
86
110
  set memory(memory) {
87
- throw new errors_cjs.NotImplementedError();
111
+ this.input.memory = memory;
88
112
  }
89
113
  createSnapshot() {
90
114
  return {
@@ -93,15 +117,37 @@ class RemoteAgent extends base_cjs.BaseAgent {
93
117
  emitter: this.emitter
94
118
  };
95
119
  }
96
- static createSSEAgent(url, agentName) {
97
- return new RemoteAgent({
98
- client: new index_js.Client({
99
- name: "remote-agent",
100
- version: "1.0.0"
101
- }),
102
- transport: new sse_js.SSEClientTransport(new URL(url)),
103
- agentName
104
- });
120
+ convertToACPMessage(input) {
121
+ if (typeof input === "string") {
122
+ return {
123
+ parts: [
124
+ {
125
+ content: input,
126
+ role: "user"
127
+ }
128
+ ]
129
+ };
130
+ } else if (input instanceof message_cjs.Message) {
131
+ return {
132
+ parts: [
133
+ {
134
+ content: input.content,
135
+ role: input.role
136
+ }
137
+ ]
138
+ };
139
+ } else {
140
+ throw new base_cjs.AgentError("Unsupported input type");
141
+ }
142
+ }
143
+ convertToMessage(input) {
144
+ if (typeof input === "string") {
145
+ return new message_cjs.UserMessage(input);
146
+ } else if (input instanceof message_cjs.Message) {
147
+ return input;
148
+ } else {
149
+ throw new base_cjs.AgentError("Unsupported input type");
150
+ }
105
151
  }
106
152
  }
107
153
 
@@ -1 +1 @@
1
- {"version":3,"sources":["agent.ts"],"names":["RemoteAgent","BaseAgent","emitter","constructor","input","Emitter","root","child","namespace","creator","_run","_options","context","runner","createRunner","output","message","AssistantMessage","listAgents","response","client","agents","setNotificationHandler","AgentRunProgressNotificationSchema","notification","emit","JSON","stringify","params","delta","transport","connect","e","AgentError","isFatal","agent","find","name","agentName","runAgent","prompt","text","timeout","signal","onprogress","memory","NotImplementedError","createSnapshot","shallowCopy","createSSEAgent","url","MCPClient","version","SSEClientTransport","URL"],"mappings":"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","file":"agent.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Callback } from \"@/emitter/types.js\";\nimport { Emitter } from \"@/emitter/emitter.js\";\nimport { AgentError, BaseAgent, BaseAgentRunOptions } from \"@/agents/base.js\";\nimport { GetRunContext } from \"@/context.js\";\nimport { AssistantMessage, Message } from \"@/backend/message.js\";\nimport { BaseMemory } from \"@/memory/base.js\";\nimport { Client as MCPClient } from \"@i-am-bee/acp-sdk/client/index.js\";\nimport { Transport } from \"@i-am-bee/acp-sdk/shared/transport.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\nimport { NotImplementedError } from \"@/errors.js\";\nimport { AgentRunProgressNotificationSchema } from \"@i-am-bee/acp-sdk/types.js\";\nimport { SSEClientTransport } from \"@i-am-bee/acp-sdk/client/sse.js\";\n\nexport interface RemoteAgentRunInput {\n prompt: Record<string, unknown> | string;\n}\n\nexport interface RemoteAgentRunOutput {\n message: Message;\n}\n\nexport interface RemoteAgentEvents {\n update: Callback<{ output: string }>;\n}\n\ninterface Input {\n client: MCPClient;\n transport: Transport;\n agentName: string;\n}\n\nexport class RemoteAgent extends BaseAgent<RemoteAgentRunInput, RemoteAgentRunOutput> {\n public emitter = Emitter.root.child<RemoteAgentEvents>({\n namespace: [\"agent\", \"remote\"],\n creator: this,\n });\n\n constructor(protected readonly input: Input) {\n super();\n }\n\n protected async _run(\n input: RemoteAgentRunInput,\n _options: BaseAgentRunOptions,\n context: GetRunContext<this>,\n ): Promise<RemoteAgentRunOutput> {\n const runner = this.createRunner(context);\n\n const output = await runner(input);\n\n const message: Message = new AssistantMessage(output);\n\n return { message };\n }\n\n protected async listAgents() {\n const response = await this.input.client.listAgents();\n\n return response.agents;\n }\n\n protected createRunner(context: GetRunContext<this>) {\n return async (input: RemoteAgentRunInput): Promise<string> => {\n try {\n this.input.client.setNotificationHandler(\n AgentRunProgressNotificationSchema,\n async (notification) => {\n await context.emitter.emit(\"update\", {\n output: JSON.stringify(notification.params.delta, null, 2),\n });\n },\n );\n if (!this.input.client.transport) {\n await this.input.client.connect(this.input.transport);\n }\n } catch (e) {\n throw new AgentError(`Can't connect to Beeai Platform.`, [e], { isFatal: true });\n }\n\n const agents = await this.listAgents();\n const agent = agents.find((agent) => agent.name === this.input.agentName);\n if (!agent) {\n throw new AgentError(\n `Agent ${this.input.agentName} is not registered in the platform`,\n [],\n {\n isFatal: true,\n },\n );\n }\n\n const response = await this.input.client.runAgent(\n {\n name: this.input.agentName,\n input: typeof input.prompt === \"string\" ? { text: input.prompt } : input.prompt,\n },\n {\n timeout: 10_000_000,\n signal: context.signal,\n onprogress: () => null, // This has to be here in order for notifications to work.\n },\n );\n\n const output = JSON.stringify(response.output, null, 2);\n await context.emitter.emit(\"update\", { output });\n return output;\n };\n }\n\n get memory() {\n throw new NotImplementedError();\n }\n\n set memory(memory: BaseMemory) {\n throw new NotImplementedError();\n }\n\n createSnapshot() {\n return {\n ...super.createSnapshot(),\n input: shallowCopy(this.input),\n emitter: this.emitter,\n };\n }\n\n static createSSEAgent(url: string, agentName: string) {\n return new RemoteAgent({\n client: new MCPClient({\n name: \"remote-agent\",\n version: \"1.0.0\",\n }),\n transport: new SSEClientTransport(new URL(url)),\n agentName: agentName,\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["agent.ts"],"names":["RemoteAgent","BaseAgent","emitter","client","constructor","input","Emitter","root","child","namespace","creator","RestfulClient","baseUrl","url","headers","paths","runs","agents","_run","_options","context","inputs","Array","isArray","map","convertToACPMessage","generator","stream","body","JSON","stringify","agent_name","agentName","mode","signal","eventData","event","parse","data","emit","key","type","value","undefined","message","AgentError","run","error","text","output","reduce","acc","parts","acc2","part","content","assistantMessage","AssistantMessage","inputMessages","convertToMessage","memory","addMany","add","result","checkAgentExists","response","fetch","find","agent","name","isFatal","createSnapshot","shallowCopy","role","Message","UserMessage"],"mappings":"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","file":"agent.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Callback } from \"@/emitter/types.js\";\nimport { Emitter } from \"@/emitter/emitter.js\";\nimport { AgentError, BaseAgent, BaseAgentRunOptions } from \"@/agents/base.js\";\nimport { GetRunContext } from \"@/context.js\";\nimport { AssistantMessage, Message, UserMessage } from \"@/backend/message.js\";\nimport { BaseMemory } from \"@/memory/base.js\";\nimport { shallowCopy } from \"@/serializer/utils.js\";\nimport { RestfulClient } from \"@/internals/fetcher.js\";\n\nexport interface RemoteAgentRunInput {\n input: Message | string | Message[] | string[];\n}\n\nexport interface RemoteAgentRunOutput {\n result: Message;\n event: Record<string, any>;\n}\n\nexport interface RemoteAgentEvents {\n update: Callback<{ key: string; value: any }>;\n error: Callback<{ message: string }>;\n}\n\ninterface Input {\n url: string;\n agentName: string;\n memory: BaseMemory;\n}\n\nexport class RemoteAgent extends BaseAgent<RemoteAgentRunInput, RemoteAgentRunOutput> {\n public emitter = Emitter.root.child<RemoteAgentEvents>({\n namespace: [\"agent\", \"remote\"],\n creator: this,\n });\n protected client: RestfulClient<{ runs: string; agents: string }>;\n\n constructor(protected readonly input: Input) {\n super();\n this.client = new RestfulClient({\n baseUrl: this.input.url,\n headers: async () => ({\n \"Accept\": \"application/json\",\n \"Content-Type\": \"application/json\",\n }),\n paths: { runs: `/runs`, agents: `/agents` },\n });\n }\n\n protected async _run(\n input: RemoteAgentRunInput,\n _options: BaseAgentRunOptions,\n context: GetRunContext<this>,\n ): Promise<RemoteAgentRunOutput> {\n const inputs = Array.isArray(input.input)\n ? input.input.map(this.convertToACPMessage)\n : [this.convertToACPMessage(input.input)];\n\n const generator = this.client.stream(\"runs\", {\n body: JSON.stringify({\n agent_name: this.input.agentName,\n input: inputs,\n mode: \"stream\",\n }),\n signal: context.signal,\n });\n\n let eventData: any = null;\n for await (const event of generator) {\n try {\n eventData = JSON.parse(event.data);\n await context.emitter.emit(\"update\", {\n key: eventData.type,\n value: { ...eventData, type: undefined },\n });\n } catch {\n await context.emitter.emit(\"error\", {\n message: \"Error parsing JSON\",\n });\n }\n }\n\n if (!eventData) {\n throw new AgentError(\"No event received from agent.\");\n }\n\n if (eventData.type === \"run.failed\") {\n const message =\n eventData.run?.error?.message || \"Something went wrong with the agent communication.\";\n await context.emitter.emit(\"error\", { message });\n throw new AgentError(message);\n } else if (eventData.type === \"run.completed\") {\n const text = eventData.run.output.reduce(\n (acc: string, output: any) =>\n acc + output.parts.reduce((acc2: string, part: any) => acc2 + part.content, \"\"),\n \"\",\n );\n const assistantMessage: Message = new AssistantMessage(text, { event: eventData });\n const inputMessages = Array.isArray(input.input)\n ? input.input.map(this.convertToMessage)\n : [this.convertToMessage(input.input)];\n\n await this.memory.addMany(inputMessages);\n await this.memory.add(assistantMessage);\n\n return { result: assistantMessage, event: eventData };\n } else {\n return { result: new AssistantMessage(\"No response from agent.\"), event: eventData };\n }\n }\n\n async checkAgentExists() {\n try {\n const response = await this.client.fetch(\"agents\");\n return !!response.agents.find((agent: any) => agent.name === this.input.agentName);\n } catch (error) {\n throw new AgentError(`Error while checking agent existence: ${error.message}`, [], {\n isFatal: true,\n });\n }\n }\n\n get memory() {\n return this.input.memory;\n }\n\n set memory(memory: BaseMemory) {\n this.input.memory = memory;\n }\n\n createSnapshot() {\n return {\n ...super.createSnapshot(),\n input: shallowCopy(this.input),\n emitter: this.emitter,\n };\n }\n\n protected convertToACPMessage(input: string | Message): any {\n if (typeof input === \"string\") {\n return { parts: [{ content: input, role: \"user\" }] };\n } else if (input instanceof Message) {\n return { parts: [{ content: input.content, role: input.role }] };\n } else {\n throw new AgentError(\"Unsupported input type\");\n }\n }\n\n protected convertToMessage(input: string | Message): any {\n if (typeof input === \"string\") {\n return new UserMessage(input);\n } else if (input instanceof Message) {\n return input;\n } else {\n throw new AgentError(\"Unsupported input type\");\n }\n }\n}\n"]}