@ai-sdk/devtools 0.0.14 → 1.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -116,8 +116,9 @@ data: ${JSON.stringify(data)}
116
116
  }
117
117
  };
118
118
  var __dirname = path2.dirname(fileURLToPath(import.meta.url));
119
- var isDevMode = !__dirname.includes("/dist/") || process.env.NODE_ENV === "development";
120
- var projectRoot = isDevMode ? path2.resolve(__dirname, "../..") : path2.resolve(__dirname, "../..");
119
+ var devEnv = process.env.AI_SDK_DEVTOOLS_DEV;
120
+ var isDevMode = devEnv !== void 0 && devEnv !== "false" && devEnv !== "0";
121
+ var projectRoot = path2.resolve(__dirname, "../..");
121
122
  var clientDir = path2.join(projectRoot, "dist/client");
122
123
  var app = new Hono();
123
124
  app.use("/*", cors());
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-sdk/devtools",
3
- "version": "0.0.14",
3
+ "version": "1.0.0-beta.0",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -27,7 +27,7 @@
27
27
  "dependencies": {
28
28
  "@hono/node-server": "^1.13.7",
29
29
  "hono": "^4.6.14",
30
- "@ai-sdk/provider": "3.0.8"
30
+ "@ai-sdk/provider": "4.0.0-beta.0"
31
31
  },
32
32
  "devDependencies": {
33
33
  "@radix-ui/react-collapsible": "^1.1.12",
@@ -55,11 +55,11 @@
55
55
  "vaul": "^1.1.2",
56
56
  "vite": "^6.0.3",
57
57
  "zod": "3.25.76",
58
- "ai": "6.0.81"
58
+ "ai": "7.0.0-beta.0"
59
59
  },
60
60
  "scripts": {
61
61
  "dev": "concurrently -k \"pnpm dev:api\" \"pnpm dev:client\"",
62
- "dev:api": "tsx src/viewer/server.ts",
62
+ "dev:api": "AI_SDK_DEVTOOLS_DEV=true tsx src/viewer/server.ts",
63
63
  "dev:client": "vite",
64
64
  "example": "tsx examples/basic/index.ts",
65
65
  "start": "node dist/viewer/server.js",
@@ -36,13 +36,19 @@ const broadcastToClients = (event: string, data: Record<string, unknown>) => {
36
36
 
37
37
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
38
38
 
39
- // Determine if we're running from source (tsx) or built (dist)
40
- // We're in dev mode if NOT running from the dist folder
41
- const isDevMode =
42
- !__dirname.includes('/dist/') || process.env.NODE_ENV === 'development';
43
- const projectRoot = isDevMode
44
- ? path.resolve(__dirname, '../..')
45
- : path.resolve(__dirname, '../..');
39
+ // Determine whether to use the dev-mode Vite proxy or serve the built client.
40
+ //
41
+ // We rely exclusively on an explicit env flag to avoid false positives in
42
+ // monorepos where /dist paths are common.
43
+ //
44
+ // AI_SDK_DEVTOOLS_DEV=true use dev mode (Vite proxy)
45
+ // AI_SDK_DEVTOOLS_DEV=false → use production mode (serve built client)
46
+ //
47
+ // If the flag is unset, default to production mode.
48
+ const devEnv = process.env.AI_SDK_DEVTOOLS_DEV;
49
+ const isDevMode = devEnv !== undefined && devEnv !== 'false' && devEnv !== '0';
50
+ // __dirname points at packages/devtools/src/viewer, so ../.. is the package root.
51
+ const projectRoot = path.resolve(__dirname, '../..');
46
52
 
47
53
  // Client directory: dist/client in both cases
48
54
  const clientDir = path.join(projectRoot, 'dist/client');