integrate-sdk 0.9.10-dev.0 → 0.9.14-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/adapters/auto-routes.js +166 -12360
  2. package/dist/adapters/base-handler.d.ts.map +1 -1
  3. package/dist/adapters/base-handler.js +838 -0
  4. package/dist/adapters/index.js +3370 -12617
  5. package/dist/adapters/nextjs-oauth-redirect.js +0 -3
  6. package/dist/adapters/nextjs.js +266 -12132
  7. package/dist/adapters/node.js +31 -13004
  8. package/dist/adapters/session-detector.js +137 -38
  9. package/dist/adapters/solid-start.js +3633 -0
  10. package/dist/adapters/svelte-kit.js +3382 -12611
  11. package/dist/adapters/tanstack-start.js +7 -13027
  12. package/dist/ai/anthropic.js +44 -12
  13. package/dist/ai/google.js +44 -12
  14. package/dist/ai/index.js +44 -12
  15. package/dist/ai/openai.js +44 -12
  16. package/dist/ai/trigger-tools.js +17 -0
  17. package/dist/ai/utils.js +17 -0
  18. package/dist/ai/vercel-ai.js +44 -12
  19. package/dist/code-mode/executor.d.ts +8 -0
  20. package/dist/code-mode/executor.d.ts.map +1 -1
  21. package/dist/code-mode/executor.js +40 -7
  22. package/dist/code-mode/index.js +48 -12
  23. package/dist/code-mode/runtime-stub.js +19 -0
  24. package/dist/code-mode/tool-builder.d.ts.map +1 -1
  25. package/dist/code-mode/tool-builder.js +48 -12
  26. package/dist/code-mode/type-generator.js +19 -0
  27. package/dist/index.js +4199 -12562
  28. package/dist/oauth.js +140 -12309
  29. package/dist/react.js +14 -16
  30. package/dist/server.js +9147 -9503
  31. package/dist/src/adapters/base-handler.d.ts.map +1 -1
  32. package/dist/src/code-mode/executor.d.ts +8 -0
  33. package/dist/src/code-mode/executor.d.ts.map +1 -1
  34. package/dist/src/code-mode/tool-builder.d.ts.map +1 -1
  35. package/dist/src/index.d.ts +0 -2
  36. package/dist/src/index.d.ts.map +1 -1
  37. package/package.json +2 -2
@@ -1,4 +1,20 @@
1
+ import { createRequire } from "node:module";
2
+ var __create = Object.create;
3
+ var __getProtoOf = Object.getPrototypeOf;
1
4
  var __defProp = Object.defineProperty;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __toESM = (mod, isNodeMode, target) => {
8
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
9
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
+ for (let key of __getOwnPropNames(mod))
11
+ if (!__hasOwnProp.call(to, key))
12
+ __defProp(to, key, {
13
+ get: () => mod[key],
14
+ enumerable: true
15
+ });
16
+ return to;
17
+ };
2
18
  var __export = (target, all) => {
3
19
  for (var name in all)
4
20
  __defProp(target, name, {
@@ -8,6 +24,7 @@ var __export = (target, all) => {
8
24
  set: (newValue) => all[name] = () => newValue
9
25
  });
10
26
  };
27
+ var __require = /* @__PURE__ */ createRequire(import.meta.url);
11
28
 
12
29
  // ../../node_modules/zod/v3/external.js
13
30
  var exports_external = {};
@@ -4692,7 +4709,11 @@ export { callTool };
4692
4709
  // ../code-mode/executor.ts
4693
4710
  var sandboxFactoryOverride = null;
4694
4711
  var _sandboxAvailableCache = null;
4712
+ var _sandboxImportError = null;
4695
4713
  var _sandboxForcedUnavailableForTests = false;
4714
+ function getSandboxImportError() {
4715
+ return _sandboxImportError;
4716
+ }
4696
4717
  async function isSandboxAvailable() {
4697
4718
  if (_sandboxAvailableCache !== null)
4698
4719
  return _sandboxAvailableCache;
@@ -4702,15 +4723,22 @@ async function isSandboxAvailable() {
4702
4723
  }
4703
4724
  if (sandboxFactoryOverride) {
4704
4725
  _sandboxAvailableCache = true;
4726
+ _sandboxImportError = null;
4705
4727
  return true;
4706
4728
  }
4729
+ if (typeof window !== "undefined") {
4730
+ _sandboxAvailableCache = false;
4731
+ _sandboxImportError = new Error("Sandbox is not available in browser environments.");
4732
+ return false;
4733
+ }
4707
4734
  try {
4708
- const dynamicImport = new Function("specifier", "return import(specifier)");
4709
- await dynamicImport("@" + "vercel/sandbox");
4735
+ await import("@vercel/sandbox");
4710
4736
  _sandboxAvailableCache = true;
4737
+ _sandboxImportError = null;
4711
4738
  return true;
4712
- } catch {
4739
+ } catch (err) {
4713
4740
  _sandboxAvailableCache = false;
4741
+ _sandboxImportError = err;
4714
4742
  return false;
4715
4743
  }
4716
4744
  }
@@ -4718,12 +4746,12 @@ async function loadSandboxFactory() {
4718
4746
  if (sandboxFactoryOverride)
4719
4747
  return sandboxFactoryOverride;
4720
4748
  try {
4721
- const dynamicImport = new Function("specifier", "return import(specifier)");
4722
- const pkg = "@" + "vercel/sandbox";
4723
- const mod = await dynamicImport(pkg);
4749
+ const mod = await import("@vercel/sandbox");
4724
4750
  return mod.Sandbox ?? mod.default?.Sandbox ?? mod;
4725
4751
  } catch (err) {
4726
- throw new Error("Code Mode requires the optional peer dependency `@vercel/sandbox`. " + "Install it with `npm install @vercel/sandbox` (or `bun add @vercel/sandbox`).");
4752
+ _sandboxImportError = err;
4753
+ const detail = err instanceof Error ? `: ${err.message}` : "";
4754
+ throw new Error("Code Mode failed to load `@vercel/sandbox`" + detail + ". Ensure the package is installed and reachable at runtime. On Next.js/Vercel, confirm it is listed in `dependencies` (not only `devDependencies`) and that the route using Code Mode runs in the Node.js runtime (not Edge).");
4727
4755
  }
4728
4756
  }
4729
4757
  var RESULT_SENTINEL = "__INTEGRATE_RESULT__";
@@ -4907,16 +4935,20 @@ async function diagnoseCodeMode(client) {
4907
4935
  }
4908
4936
  return { available: true };
4909
4937
  }
4910
- var CODE_MODE_UNAVAILABLE_MESSAGES = {
4911
- "sandbox-missing": "[integrate-sdk] Code Mode unavailable (reason: sandbox-missing) — falling back to tool mode. " + "Install `@vercel/sandbox` (e.g. `bun add @vercel/sandbox`) to enable Code Mode.",
4912
- "no-public-url": "[integrate-sdk] Code Mode unavailable (reason: no-public-url) — falling back to tool mode. " + "Set `codeMode.publicUrl` on your server config or the `INTEGRATE_URL` env var."
4913
- };
4938
+ function buildFallbackMessage(reason) {
4939
+ if (reason === "no-public-url") {
4940
+ return "[integrate-sdk] Code Mode unavailable (reason: no-public-url) — falling back to tool mode. " + "Set `codeMode.publicUrl` on your server config or the `INTEGRATE_URL` env var.";
4941
+ }
4942
+ const importError = getSandboxImportError();
4943
+ const detail = importError instanceof Error ? ` Underlying import error: ${importError.message}` : importError ? ` Underlying import error: ${String(importError)}` : "";
4944
+ return "[integrate-sdk] Code Mode unavailable (reason: sandbox-missing) — falling back to tool mode. " + "Ensure `@vercel/sandbox` is in `dependencies` and the route runs in the Node.js runtime (not Edge)." + detail;
4945
+ }
4914
4946
  var warnedCodeModeReasons = new Set;
4915
4947
  function warnCodeModeFallback(reason) {
4916
4948
  if (warnedCodeModeReasons.has(reason))
4917
4949
  return;
4918
4950
  warnedCodeModeReasons.add(reason);
4919
- console.warn(CODE_MODE_UNAVAILABLE_MESSAGES[reason]);
4951
+ console.warn(buildFallbackMessage(reason));
4920
4952
  }
4921
4953
  function buildCodeModeTool(client, options) {
4922
4954
  const { tools, providerTokens, context, integrationIds } = options;
package/dist/ai/google.js CHANGED
@@ -1,4 +1,20 @@
1
+ import { createRequire } from "node:module";
2
+ var __create = Object.create;
3
+ var __getProtoOf = Object.getPrototypeOf;
1
4
  var __defProp = Object.defineProperty;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __toESM = (mod, isNodeMode, target) => {
8
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
9
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
+ for (let key of __getOwnPropNames(mod))
11
+ if (!__hasOwnProp.call(to, key))
12
+ __defProp(to, key, {
13
+ get: () => mod[key],
14
+ enumerable: true
15
+ });
16
+ return to;
17
+ };
2
18
  var __export = (target, all) => {
3
19
  for (var name in all)
4
20
  __defProp(target, name, {
@@ -8,6 +24,7 @@ var __export = (target, all) => {
8
24
  set: (newValue) => all[name] = () => newValue
9
25
  });
10
26
  };
27
+ var __require = /* @__PURE__ */ createRequire(import.meta.url);
11
28
 
12
29
  // ../../node_modules/zod/v3/external.js
13
30
  var exports_external = {};
@@ -4692,7 +4709,11 @@ export { callTool };
4692
4709
  // ../code-mode/executor.ts
4693
4710
  var sandboxFactoryOverride = null;
4694
4711
  var _sandboxAvailableCache = null;
4712
+ var _sandboxImportError = null;
4695
4713
  var _sandboxForcedUnavailableForTests = false;
4714
+ function getSandboxImportError() {
4715
+ return _sandboxImportError;
4716
+ }
4696
4717
  async function isSandboxAvailable() {
4697
4718
  if (_sandboxAvailableCache !== null)
4698
4719
  return _sandboxAvailableCache;
@@ -4702,15 +4723,22 @@ async function isSandboxAvailable() {
4702
4723
  }
4703
4724
  if (sandboxFactoryOverride) {
4704
4725
  _sandboxAvailableCache = true;
4726
+ _sandboxImportError = null;
4705
4727
  return true;
4706
4728
  }
4729
+ if (typeof window !== "undefined") {
4730
+ _sandboxAvailableCache = false;
4731
+ _sandboxImportError = new Error("Sandbox is not available in browser environments.");
4732
+ return false;
4733
+ }
4707
4734
  try {
4708
- const dynamicImport = new Function("specifier", "return import(specifier)");
4709
- await dynamicImport("@" + "vercel/sandbox");
4735
+ await import("@vercel/sandbox");
4710
4736
  _sandboxAvailableCache = true;
4737
+ _sandboxImportError = null;
4711
4738
  return true;
4712
- } catch {
4739
+ } catch (err) {
4713
4740
  _sandboxAvailableCache = false;
4741
+ _sandboxImportError = err;
4714
4742
  return false;
4715
4743
  }
4716
4744
  }
@@ -4718,12 +4746,12 @@ async function loadSandboxFactory() {
4718
4746
  if (sandboxFactoryOverride)
4719
4747
  return sandboxFactoryOverride;
4720
4748
  try {
4721
- const dynamicImport = new Function("specifier", "return import(specifier)");
4722
- const pkg = "@" + "vercel/sandbox";
4723
- const mod = await dynamicImport(pkg);
4749
+ const mod = await import("@vercel/sandbox");
4724
4750
  return mod.Sandbox ?? mod.default?.Sandbox ?? mod;
4725
4751
  } catch (err) {
4726
- throw new Error("Code Mode requires the optional peer dependency `@vercel/sandbox`. " + "Install it with `npm install @vercel/sandbox` (or `bun add @vercel/sandbox`).");
4752
+ _sandboxImportError = err;
4753
+ const detail = err instanceof Error ? `: ${err.message}` : "";
4754
+ throw new Error("Code Mode failed to load `@vercel/sandbox`" + detail + ". Ensure the package is installed and reachable at runtime. On Next.js/Vercel, confirm it is listed in `dependencies` (not only `devDependencies`) and that the route using Code Mode runs in the Node.js runtime (not Edge).");
4727
4755
  }
4728
4756
  }
4729
4757
  var RESULT_SENTINEL = "__INTEGRATE_RESULT__";
@@ -4907,16 +4935,20 @@ async function diagnoseCodeMode(client) {
4907
4935
  }
4908
4936
  return { available: true };
4909
4937
  }
4910
- var CODE_MODE_UNAVAILABLE_MESSAGES = {
4911
- "sandbox-missing": "[integrate-sdk] Code Mode unavailable (reason: sandbox-missing) — falling back to tool mode. " + "Install `@vercel/sandbox` (e.g. `bun add @vercel/sandbox`) to enable Code Mode.",
4912
- "no-public-url": "[integrate-sdk] Code Mode unavailable (reason: no-public-url) — falling back to tool mode. " + "Set `codeMode.publicUrl` on your server config or the `INTEGRATE_URL` env var."
4913
- };
4938
+ function buildFallbackMessage(reason) {
4939
+ if (reason === "no-public-url") {
4940
+ return "[integrate-sdk] Code Mode unavailable (reason: no-public-url) — falling back to tool mode. " + "Set `codeMode.publicUrl` on your server config or the `INTEGRATE_URL` env var.";
4941
+ }
4942
+ const importError = getSandboxImportError();
4943
+ const detail = importError instanceof Error ? ` Underlying import error: ${importError.message}` : importError ? ` Underlying import error: ${String(importError)}` : "";
4944
+ return "[integrate-sdk] Code Mode unavailable (reason: sandbox-missing) — falling back to tool mode. " + "Ensure `@vercel/sandbox` is in `dependencies` and the route runs in the Node.js runtime (not Edge)." + detail;
4945
+ }
4914
4946
  var warnedCodeModeReasons = new Set;
4915
4947
  function warnCodeModeFallback(reason) {
4916
4948
  if (warnedCodeModeReasons.has(reason))
4917
4949
  return;
4918
4950
  warnedCodeModeReasons.add(reason);
4919
- console.warn(CODE_MODE_UNAVAILABLE_MESSAGES[reason]);
4951
+ console.warn(buildFallbackMessage(reason));
4920
4952
  }
4921
4953
  function buildCodeModeTool(client, options) {
4922
4954
  const { tools, providerTokens, context, integrationIds } = options;
package/dist/ai/index.js CHANGED
@@ -1,4 +1,20 @@
1
+ import { createRequire } from "node:module";
2
+ var __create = Object.create;
3
+ var __getProtoOf = Object.getPrototypeOf;
1
4
  var __defProp = Object.defineProperty;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __toESM = (mod, isNodeMode, target) => {
8
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
9
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
+ for (let key of __getOwnPropNames(mod))
11
+ if (!__hasOwnProp.call(to, key))
12
+ __defProp(to, key, {
13
+ get: () => mod[key],
14
+ enumerable: true
15
+ });
16
+ return to;
17
+ };
2
18
  var __export = (target, all) => {
3
19
  for (var name in all)
4
20
  __defProp(target, name, {
@@ -8,6 +24,7 @@ var __export = (target, all) => {
8
24
  set: (newValue) => all[name] = () => newValue
9
25
  });
10
26
  };
27
+ var __require = /* @__PURE__ */ createRequire(import.meta.url);
11
28
 
12
29
  // ../../node_modules/zod/v3/external.js
13
30
  var exports_external = {};
@@ -4692,7 +4709,11 @@ export { callTool };
4692
4709
  // ../code-mode/executor.ts
4693
4710
  var sandboxFactoryOverride = null;
4694
4711
  var _sandboxAvailableCache = null;
4712
+ var _sandboxImportError = null;
4695
4713
  var _sandboxForcedUnavailableForTests = false;
4714
+ function getSandboxImportError() {
4715
+ return _sandboxImportError;
4716
+ }
4696
4717
  async function isSandboxAvailable() {
4697
4718
  if (_sandboxAvailableCache !== null)
4698
4719
  return _sandboxAvailableCache;
@@ -4702,15 +4723,22 @@ async function isSandboxAvailable() {
4702
4723
  }
4703
4724
  if (sandboxFactoryOverride) {
4704
4725
  _sandboxAvailableCache = true;
4726
+ _sandboxImportError = null;
4705
4727
  return true;
4706
4728
  }
4729
+ if (typeof window !== "undefined") {
4730
+ _sandboxAvailableCache = false;
4731
+ _sandboxImportError = new Error("Sandbox is not available in browser environments.");
4732
+ return false;
4733
+ }
4707
4734
  try {
4708
- const dynamicImport = new Function("specifier", "return import(specifier)");
4709
- await dynamicImport("@" + "vercel/sandbox");
4735
+ await import("@vercel/sandbox");
4710
4736
  _sandboxAvailableCache = true;
4737
+ _sandboxImportError = null;
4711
4738
  return true;
4712
- } catch {
4739
+ } catch (err) {
4713
4740
  _sandboxAvailableCache = false;
4741
+ _sandboxImportError = err;
4714
4742
  return false;
4715
4743
  }
4716
4744
  }
@@ -4718,12 +4746,12 @@ async function loadSandboxFactory() {
4718
4746
  if (sandboxFactoryOverride)
4719
4747
  return sandboxFactoryOverride;
4720
4748
  try {
4721
- const dynamicImport = new Function("specifier", "return import(specifier)");
4722
- const pkg = "@" + "vercel/sandbox";
4723
- const mod = await dynamicImport(pkg);
4749
+ const mod = await import("@vercel/sandbox");
4724
4750
  return mod.Sandbox ?? mod.default?.Sandbox ?? mod;
4725
4751
  } catch (err) {
4726
- throw new Error("Code Mode requires the optional peer dependency `@vercel/sandbox`. " + "Install it with `npm install @vercel/sandbox` (or `bun add @vercel/sandbox`).");
4752
+ _sandboxImportError = err;
4753
+ const detail = err instanceof Error ? `: ${err.message}` : "";
4754
+ throw new Error("Code Mode failed to load `@vercel/sandbox`" + detail + ". Ensure the package is installed and reachable at runtime. On Next.js/Vercel, confirm it is listed in `dependencies` (not only `devDependencies`) and that the route using Code Mode runs in the Node.js runtime (not Edge).");
4727
4755
  }
4728
4756
  }
4729
4757
  var RESULT_SENTINEL = "__INTEGRATE_RESULT__";
@@ -4907,16 +4935,20 @@ async function diagnoseCodeMode(client) {
4907
4935
  }
4908
4936
  return { available: true };
4909
4937
  }
4910
- var CODE_MODE_UNAVAILABLE_MESSAGES = {
4911
- "sandbox-missing": "[integrate-sdk] Code Mode unavailable (reason: sandbox-missing) — falling back to tool mode. " + "Install `@vercel/sandbox` (e.g. `bun add @vercel/sandbox`) to enable Code Mode.",
4912
- "no-public-url": "[integrate-sdk] Code Mode unavailable (reason: no-public-url) — falling back to tool mode. " + "Set `codeMode.publicUrl` on your server config or the `INTEGRATE_URL` env var."
4913
- };
4938
+ function buildFallbackMessage(reason) {
4939
+ if (reason === "no-public-url") {
4940
+ return "[integrate-sdk] Code Mode unavailable (reason: no-public-url) — falling back to tool mode. " + "Set `codeMode.publicUrl` on your server config or the `INTEGRATE_URL` env var.";
4941
+ }
4942
+ const importError = getSandboxImportError();
4943
+ const detail = importError instanceof Error ? ` Underlying import error: ${importError.message}` : importError ? ` Underlying import error: ${String(importError)}` : "";
4944
+ return "[integrate-sdk] Code Mode unavailable (reason: sandbox-missing) — falling back to tool mode. " + "Ensure `@vercel/sandbox` is in `dependencies` and the route runs in the Node.js runtime (not Edge)." + detail;
4945
+ }
4914
4946
  var warnedCodeModeReasons = new Set;
4915
4947
  function warnCodeModeFallback(reason) {
4916
4948
  if (warnedCodeModeReasons.has(reason))
4917
4949
  return;
4918
4950
  warnedCodeModeReasons.add(reason);
4919
- console.warn(CODE_MODE_UNAVAILABLE_MESSAGES[reason]);
4951
+ console.warn(buildFallbackMessage(reason));
4920
4952
  }
4921
4953
  function buildCodeModeTool(client, options) {
4922
4954
  const { tools, providerTokens, context, integrationIds } = options;
package/dist/ai/openai.js CHANGED
@@ -1,4 +1,20 @@
1
+ import { createRequire } from "node:module";
2
+ var __create = Object.create;
3
+ var __getProtoOf = Object.getPrototypeOf;
1
4
  var __defProp = Object.defineProperty;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __toESM = (mod, isNodeMode, target) => {
8
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
9
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
+ for (let key of __getOwnPropNames(mod))
11
+ if (!__hasOwnProp.call(to, key))
12
+ __defProp(to, key, {
13
+ get: () => mod[key],
14
+ enumerable: true
15
+ });
16
+ return to;
17
+ };
2
18
  var __export = (target, all) => {
3
19
  for (var name in all)
4
20
  __defProp(target, name, {
@@ -8,6 +24,7 @@ var __export = (target, all) => {
8
24
  set: (newValue) => all[name] = () => newValue
9
25
  });
10
26
  };
27
+ var __require = /* @__PURE__ */ createRequire(import.meta.url);
11
28
 
12
29
  // ../../node_modules/zod/v3/external.js
13
30
  var exports_external = {};
@@ -4692,7 +4709,11 @@ export { callTool };
4692
4709
  // ../code-mode/executor.ts
4693
4710
  var sandboxFactoryOverride = null;
4694
4711
  var _sandboxAvailableCache = null;
4712
+ var _sandboxImportError = null;
4695
4713
  var _sandboxForcedUnavailableForTests = false;
4714
+ function getSandboxImportError() {
4715
+ return _sandboxImportError;
4716
+ }
4696
4717
  async function isSandboxAvailable() {
4697
4718
  if (_sandboxAvailableCache !== null)
4698
4719
  return _sandboxAvailableCache;
@@ -4702,15 +4723,22 @@ async function isSandboxAvailable() {
4702
4723
  }
4703
4724
  if (sandboxFactoryOverride) {
4704
4725
  _sandboxAvailableCache = true;
4726
+ _sandboxImportError = null;
4705
4727
  return true;
4706
4728
  }
4729
+ if (typeof window !== "undefined") {
4730
+ _sandboxAvailableCache = false;
4731
+ _sandboxImportError = new Error("Sandbox is not available in browser environments.");
4732
+ return false;
4733
+ }
4707
4734
  try {
4708
- const dynamicImport = new Function("specifier", "return import(specifier)");
4709
- await dynamicImport("@" + "vercel/sandbox");
4735
+ await import("@vercel/sandbox");
4710
4736
  _sandboxAvailableCache = true;
4737
+ _sandboxImportError = null;
4711
4738
  return true;
4712
- } catch {
4739
+ } catch (err) {
4713
4740
  _sandboxAvailableCache = false;
4741
+ _sandboxImportError = err;
4714
4742
  return false;
4715
4743
  }
4716
4744
  }
@@ -4718,12 +4746,12 @@ async function loadSandboxFactory() {
4718
4746
  if (sandboxFactoryOverride)
4719
4747
  return sandboxFactoryOverride;
4720
4748
  try {
4721
- const dynamicImport = new Function("specifier", "return import(specifier)");
4722
- const pkg = "@" + "vercel/sandbox";
4723
- const mod = await dynamicImport(pkg);
4749
+ const mod = await import("@vercel/sandbox");
4724
4750
  return mod.Sandbox ?? mod.default?.Sandbox ?? mod;
4725
4751
  } catch (err) {
4726
- throw new Error("Code Mode requires the optional peer dependency `@vercel/sandbox`. " + "Install it with `npm install @vercel/sandbox` (or `bun add @vercel/sandbox`).");
4752
+ _sandboxImportError = err;
4753
+ const detail = err instanceof Error ? `: ${err.message}` : "";
4754
+ throw new Error("Code Mode failed to load `@vercel/sandbox`" + detail + ". Ensure the package is installed and reachable at runtime. On Next.js/Vercel, confirm it is listed in `dependencies` (not only `devDependencies`) and that the route using Code Mode runs in the Node.js runtime (not Edge).");
4727
4755
  }
4728
4756
  }
4729
4757
  var RESULT_SENTINEL = "__INTEGRATE_RESULT__";
@@ -4907,16 +4935,20 @@ async function diagnoseCodeMode(client) {
4907
4935
  }
4908
4936
  return { available: true };
4909
4937
  }
4910
- var CODE_MODE_UNAVAILABLE_MESSAGES = {
4911
- "sandbox-missing": "[integrate-sdk] Code Mode unavailable (reason: sandbox-missing) — falling back to tool mode. " + "Install `@vercel/sandbox` (e.g. `bun add @vercel/sandbox`) to enable Code Mode.",
4912
- "no-public-url": "[integrate-sdk] Code Mode unavailable (reason: no-public-url) — falling back to tool mode. " + "Set `codeMode.publicUrl` on your server config or the `INTEGRATE_URL` env var."
4913
- };
4938
+ function buildFallbackMessage(reason) {
4939
+ if (reason === "no-public-url") {
4940
+ return "[integrate-sdk] Code Mode unavailable (reason: no-public-url) — falling back to tool mode. " + "Set `codeMode.publicUrl` on your server config or the `INTEGRATE_URL` env var.";
4941
+ }
4942
+ const importError = getSandboxImportError();
4943
+ const detail = importError instanceof Error ? ` Underlying import error: ${importError.message}` : importError ? ` Underlying import error: ${String(importError)}` : "";
4944
+ return "[integrate-sdk] Code Mode unavailable (reason: sandbox-missing) — falling back to tool mode. " + "Ensure `@vercel/sandbox` is in `dependencies` and the route runs in the Node.js runtime (not Edge)." + detail;
4945
+ }
4914
4946
  var warnedCodeModeReasons = new Set;
4915
4947
  function warnCodeModeFallback(reason) {
4916
4948
  if (warnedCodeModeReasons.has(reason))
4917
4949
  return;
4918
4950
  warnedCodeModeReasons.add(reason);
4919
- console.warn(CODE_MODE_UNAVAILABLE_MESSAGES[reason]);
4951
+ console.warn(buildFallbackMessage(reason));
4920
4952
  }
4921
4953
  function buildCodeModeTool(client, options) {
4922
4954
  const { tools, providerTokens, context, integrationIds } = options;
@@ -1,4 +1,20 @@
1
+ import { createRequire } from "node:module";
2
+ var __create = Object.create;
3
+ var __getProtoOf = Object.getPrototypeOf;
1
4
  var __defProp = Object.defineProperty;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __toESM = (mod, isNodeMode, target) => {
8
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
9
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
+ for (let key of __getOwnPropNames(mod))
11
+ if (!__hasOwnProp.call(to, key))
12
+ __defProp(to, key, {
13
+ get: () => mod[key],
14
+ enumerable: true
15
+ });
16
+ return to;
17
+ };
2
18
  var __export = (target, all) => {
3
19
  for (var name in all)
4
20
  __defProp(target, name, {
@@ -8,6 +24,7 @@ var __export = (target, all) => {
8
24
  set: (newValue) => all[name] = () => newValue
9
25
  });
10
26
  };
27
+ var __require = /* @__PURE__ */ createRequire(import.meta.url);
11
28
 
12
29
  // ../../node_modules/zod/v3/external.js
13
30
  var exports_external = {};
package/dist/ai/utils.js CHANGED
@@ -1,4 +1,20 @@
1
+ import { createRequire } from "node:module";
2
+ var __create = Object.create;
3
+ var __getProtoOf = Object.getPrototypeOf;
1
4
  var __defProp = Object.defineProperty;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __toESM = (mod, isNodeMode, target) => {
8
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
9
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
+ for (let key of __getOwnPropNames(mod))
11
+ if (!__hasOwnProp.call(to, key))
12
+ __defProp(to, key, {
13
+ get: () => mod[key],
14
+ enumerable: true
15
+ });
16
+ return to;
17
+ };
2
18
  var __export = (target, all) => {
3
19
  for (var name in all)
4
20
  __defProp(target, name, {
@@ -8,6 +24,7 @@ var __export = (target, all) => {
8
24
  set: (newValue) => all[name] = () => newValue
9
25
  });
10
26
  };
27
+ var __require = /* @__PURE__ */ createRequire(import.meta.url);
11
28
 
12
29
  // ../../node_modules/zod/v3/external.js
13
30
  var exports_external = {};
@@ -1,4 +1,20 @@
1
+ import { createRequire } from "node:module";
2
+ var __create = Object.create;
3
+ var __getProtoOf = Object.getPrototypeOf;
1
4
  var __defProp = Object.defineProperty;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __toESM = (mod, isNodeMode, target) => {
8
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
9
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
10
+ for (let key of __getOwnPropNames(mod))
11
+ if (!__hasOwnProp.call(to, key))
12
+ __defProp(to, key, {
13
+ get: () => mod[key],
14
+ enumerable: true
15
+ });
16
+ return to;
17
+ };
2
18
  var __export = (target, all) => {
3
19
  for (var name in all)
4
20
  __defProp(target, name, {
@@ -8,6 +24,7 @@ var __export = (target, all) => {
8
24
  set: (newValue) => all[name] = () => newValue
9
25
  });
10
26
  };
27
+ var __require = /* @__PURE__ */ createRequire(import.meta.url);
11
28
 
12
29
  // ../../node_modules/zod/v3/external.js
13
30
  var exports_external = {};
@@ -4692,7 +4709,11 @@ export { callTool };
4692
4709
  // ../code-mode/executor.ts
4693
4710
  var sandboxFactoryOverride = null;
4694
4711
  var _sandboxAvailableCache = null;
4712
+ var _sandboxImportError = null;
4695
4713
  var _sandboxForcedUnavailableForTests = false;
4714
+ function getSandboxImportError() {
4715
+ return _sandboxImportError;
4716
+ }
4696
4717
  async function isSandboxAvailable() {
4697
4718
  if (_sandboxAvailableCache !== null)
4698
4719
  return _sandboxAvailableCache;
@@ -4702,15 +4723,22 @@ async function isSandboxAvailable() {
4702
4723
  }
4703
4724
  if (sandboxFactoryOverride) {
4704
4725
  _sandboxAvailableCache = true;
4726
+ _sandboxImportError = null;
4705
4727
  return true;
4706
4728
  }
4729
+ if (typeof window !== "undefined") {
4730
+ _sandboxAvailableCache = false;
4731
+ _sandboxImportError = new Error("Sandbox is not available in browser environments.");
4732
+ return false;
4733
+ }
4707
4734
  try {
4708
- const dynamicImport = new Function("specifier", "return import(specifier)");
4709
- await dynamicImport("@" + "vercel/sandbox");
4735
+ await import("@vercel/sandbox");
4710
4736
  _sandboxAvailableCache = true;
4737
+ _sandboxImportError = null;
4711
4738
  return true;
4712
- } catch {
4739
+ } catch (err) {
4713
4740
  _sandboxAvailableCache = false;
4741
+ _sandboxImportError = err;
4714
4742
  return false;
4715
4743
  }
4716
4744
  }
@@ -4718,12 +4746,12 @@ async function loadSandboxFactory() {
4718
4746
  if (sandboxFactoryOverride)
4719
4747
  return sandboxFactoryOverride;
4720
4748
  try {
4721
- const dynamicImport = new Function("specifier", "return import(specifier)");
4722
- const pkg = "@" + "vercel/sandbox";
4723
- const mod = await dynamicImport(pkg);
4749
+ const mod = await import("@vercel/sandbox");
4724
4750
  return mod.Sandbox ?? mod.default?.Sandbox ?? mod;
4725
4751
  } catch (err) {
4726
- throw new Error("Code Mode requires the optional peer dependency `@vercel/sandbox`. " + "Install it with `npm install @vercel/sandbox` (or `bun add @vercel/sandbox`).");
4752
+ _sandboxImportError = err;
4753
+ const detail = err instanceof Error ? `: ${err.message}` : "";
4754
+ throw new Error("Code Mode failed to load `@vercel/sandbox`" + detail + ". Ensure the package is installed and reachable at runtime. On Next.js/Vercel, confirm it is listed in `dependencies` (not only `devDependencies`) and that the route using Code Mode runs in the Node.js runtime (not Edge).");
4727
4755
  }
4728
4756
  }
4729
4757
  var RESULT_SENTINEL = "__INTEGRATE_RESULT__";
@@ -4907,16 +4935,20 @@ async function diagnoseCodeMode(client) {
4907
4935
  }
4908
4936
  return { available: true };
4909
4937
  }
4910
- var CODE_MODE_UNAVAILABLE_MESSAGES = {
4911
- "sandbox-missing": "[integrate-sdk] Code Mode unavailable (reason: sandbox-missing) — falling back to tool mode. " + "Install `@vercel/sandbox` (e.g. `bun add @vercel/sandbox`) to enable Code Mode.",
4912
- "no-public-url": "[integrate-sdk] Code Mode unavailable (reason: no-public-url) — falling back to tool mode. " + "Set `codeMode.publicUrl` on your server config or the `INTEGRATE_URL` env var."
4913
- };
4938
+ function buildFallbackMessage(reason) {
4939
+ if (reason === "no-public-url") {
4940
+ return "[integrate-sdk] Code Mode unavailable (reason: no-public-url) — falling back to tool mode. " + "Set `codeMode.publicUrl` on your server config or the `INTEGRATE_URL` env var.";
4941
+ }
4942
+ const importError = getSandboxImportError();
4943
+ const detail = importError instanceof Error ? ` Underlying import error: ${importError.message}` : importError ? ` Underlying import error: ${String(importError)}` : "";
4944
+ return "[integrate-sdk] Code Mode unavailable (reason: sandbox-missing) — falling back to tool mode. " + "Ensure `@vercel/sandbox` is in `dependencies` and the route runs in the Node.js runtime (not Edge)." + detail;
4945
+ }
4914
4946
  var warnedCodeModeReasons = new Set;
4915
4947
  function warnCodeModeFallback(reason) {
4916
4948
  if (warnedCodeModeReasons.has(reason))
4917
4949
  return;
4918
4950
  warnedCodeModeReasons.add(reason);
4919
- console.warn(CODE_MODE_UNAVAILABLE_MESSAGES[reason]);
4951
+ console.warn(buildFallbackMessage(reason));
4920
4952
  }
4921
4953
  function buildCodeModeTool(client, options) {
4922
4954
  const { tools, providerTokens, context, integrationIds } = options;
@@ -45,6 +45,14 @@ interface SandboxFactory {
45
45
  export declare function __setSandboxFactoryForTests(factory: SandboxFactory | null): void;
46
46
  /** @internal — used by unit tests to simulate missing @vercel/sandbox. */
47
47
  export declare function __setSandboxUnavailableForTests(force: boolean): void;
48
+ /**
49
+ * Returns the most recent error observed while attempting to import
50
+ * `@vercel/sandbox`. Useful for surfacing the root cause when the availability
51
+ * check returns `false` — the warning in `tool-builder.ts` pipes this through
52
+ * to the user so they don't have to guess whether it's a missing package, a
53
+ * bundler issue, or a runtime restriction.
54
+ */
55
+ export declare function getSandboxImportError(): unknown;
48
56
  export declare function isSandboxAvailable(): Promise<boolean>;
49
57
  export interface ExecuteSandboxCodeOptions {
50
58
  /** Source code the LLM produced. Treated as an async function body. */
@@ -1 +1 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/code-mode/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/code-mode/executor.ts"],"names":[],"mappings":"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"}