create-skybridge 0.0.0-dev.fb825da → 0.0.0-dev.fbea14c

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-skybridge",
3
- "version": "0.0.0-dev.fb825da",
3
+ "version": "0.0.0-dev.fbea14c",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "author": "Alpic",
@@ -21,9 +21,8 @@
21
21
  "mri": "^1.2.0"
22
22
  },
23
23
  "devDependencies": {
24
- "@types/node": "^25.0.3",
25
24
  "typescript": "^5.9.3",
26
- "vitest": "^2.1.9"
25
+ "vitest": "^4.0.17"
27
26
  },
28
27
  "scripts": {
29
28
  "build": "tsc",
@@ -6,7 +6,7 @@ A minimal TypeScript template for building OpenAI Apps SDK compatible MCP server
6
6
 
7
7
  ### Prerequisites
8
8
 
9
- - Node.js 22+
9
+ - Node.js 24+
10
10
  - HTTP tunnel such as [ngrok](https://ngrok.com/download)
11
11
 
12
12
  ### Local Development
@@ -1,4 +1,5 @@
1
1
  node_modules/
2
2
  dist/
3
3
  .env*
4
- .DS_store
4
+ .DS_store
5
+ *.tsbuildinfo
@@ -1,4 +1,3 @@
1
1
  {
2
- "$schema": "https://assets.alpic.ai/alpic.json",
3
- "buildOutputDir": "server/dist"
2
+ "$schema": "https://assets.alpic.ai/alpic.json"
4
3
  }
@@ -10,9 +10,9 @@ case `uname` in
10
10
  esac
11
11
 
12
12
  if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@22.19.3_@types+react-dom@19.2.3_@typ_fbf681106c9330dfa636ee45da0d45d7/node_modules/@modelcontextprotocol/inspector/cli/build/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@22.19.3_@types+react-dom@19.2.3_@typ_fbf681106c9330dfa636ee45da0d45d7/node_modules/@modelcontextprotocol/inspector/cli/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@22.19.3_@types+react-dom@19.2.3_@typ_fbf681106c9330dfa636ee45da0d45d7/node_modules/@modelcontextprotocol/inspector/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@22.19.3_@types+react-dom@19.2.3_@typ_fbf681106c9330dfa636ee45da0d45d7/node_modules/@modelcontextprotocol/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@22.19.3_@types+react-dom@19.2.3_@typ_fbf681106c9330dfa636ee45da0d45d7/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/node_modules"
13
+ export NODE_PATH="/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@24.10.8_@types+react-dom@19.2.3_@typ_5968ed93e0f9cb52dedbe69b148b9d41/node_modules/@modelcontextprotocol/inspector/cli/build/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@24.10.8_@types+react-dom@19.2.3_@typ_5968ed93e0f9cb52dedbe69b148b9d41/node_modules/@modelcontextprotocol/inspector/cli/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@24.10.8_@types+react-dom@19.2.3_@typ_5968ed93e0f9cb52dedbe69b148b9d41/node_modules/@modelcontextprotocol/inspector/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@24.10.8_@types+react-dom@19.2.3_@typ_5968ed93e0f9cb52dedbe69b148b9d41/node_modules/@modelcontextprotocol/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@24.10.8_@types+react-dom@19.2.3_@typ_5968ed93e0f9cb52dedbe69b148b9d41/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/node_modules"
14
14
  else
15
- export NODE_PATH="/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@22.19.3_@types+react-dom@19.2.3_@typ_fbf681106c9330dfa636ee45da0d45d7/node_modules/@modelcontextprotocol/inspector/cli/build/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@22.19.3_@types+react-dom@19.2.3_@typ_fbf681106c9330dfa636ee45da0d45d7/node_modules/@modelcontextprotocol/inspector/cli/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@22.19.3_@types+react-dom@19.2.3_@typ_fbf681106c9330dfa636ee45da0d45d7/node_modules/@modelcontextprotocol/inspector/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@22.19.3_@types+react-dom@19.2.3_@typ_fbf681106c9330dfa636ee45da0d45d7/node_modules/@modelcontextprotocol/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@22.19.3_@types+react-dom@19.2.3_@typ_fbf681106c9330dfa636ee45da0d45d7/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/node_modules:$NODE_PATH"
15
+ export NODE_PATH="/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@24.10.8_@types+react-dom@19.2.3_@typ_5968ed93e0f9cb52dedbe69b148b9d41/node_modules/@modelcontextprotocol/inspector/cli/build/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@24.10.8_@types+react-dom@19.2.3_@typ_5968ed93e0f9cb52dedbe69b148b9d41/node_modules/@modelcontextprotocol/inspector/cli/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@24.10.8_@types+react-dom@19.2.3_@typ_5968ed93e0f9cb52dedbe69b148b9d41/node_modules/@modelcontextprotocol/inspector/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@24.10.8_@types+react-dom@19.2.3_@typ_5968ed93e0f9cb52dedbe69b148b9d41/node_modules/@modelcontextprotocol/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/@modelcontextprotocol+inspector@0.18.0_@types+node@24.10.8_@types+react-dom@19.2.3_@typ_5968ed93e0f9cb52dedbe69b148b9d41/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/node_modules:$NODE_PATH"
16
16
  fi
17
17
  if [ -x "$basedir/node" ]; then
18
18
  exec "$basedir/node" "$basedir/../@modelcontextprotocol/inspector/cli/build/cli.js" "$@"
@@ -0,0 +1,21 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*|*MINGW*|*MSYS*)
6
+ if command -v cygpath > /dev/null 2>&1; then
7
+ basedir=`cygpath -w "$basedir"`
8
+ fi
9
+ ;;
10
+ esac
11
+
12
+ if [ -z "$NODE_PATH" ]; then
13
+ export NODE_PATH="/home/runner/work/skybridge/skybridge/node_modules/.pnpm/skybridge@0.22.0_@modelcontextprotocol+sdk@1.25.2_hono@4.11.3_zod@4.3.5__@types+node@24_2119e570f24116098f1bc44f355ba81d/node_modules/skybridge/bin/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/skybridge@0.22.0_@modelcontextprotocol+sdk@1.25.2_hono@4.11.3_zod@4.3.5__@types+node@24_2119e570f24116098f1bc44f355ba81d/node_modules/skybridge/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/skybridge@0.22.0_@modelcontextprotocol+sdk@1.25.2_hono@4.11.3_zod@4.3.5__@types+node@24_2119e570f24116098f1bc44f355ba81d/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/node_modules"
14
+ else
15
+ export NODE_PATH="/home/runner/work/skybridge/skybridge/node_modules/.pnpm/skybridge@0.22.0_@modelcontextprotocol+sdk@1.25.2_hono@4.11.3_zod@4.3.5__@types+node@24_2119e570f24116098f1bc44f355ba81d/node_modules/skybridge/bin/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/skybridge@0.22.0_@modelcontextprotocol+sdk@1.25.2_hono@4.11.3_zod@4.3.5__@types+node@24_2119e570f24116098f1bc44f355ba81d/node_modules/skybridge/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/skybridge@0.22.0_@modelcontextprotocol+sdk@1.25.2_hono@4.11.3_zod@4.3.5__@types+node@24_2119e570f24116098f1bc44f355ba81d/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/node_modules:$NODE_PATH"
16
+ fi
17
+ if [ -x "$basedir/node" ]; then
18
+ exec "$basedir/node" "$basedir/../skybridge/bin/run.js" "$@"
19
+ else
20
+ exec node "$basedir/../skybridge/bin/run.js" "$@"
21
+ fi
@@ -0,0 +1,21 @@
1
+ #!/bin/sh
2
+ basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
+
4
+ case `uname` in
5
+ *CYGWIN*|*MINGW*|*MSYS*)
6
+ if command -v cygpath > /dev/null 2>&1; then
7
+ basedir=`cygpath -w "$basedir"`
8
+ fi
9
+ ;;
10
+ esac
11
+
12
+ if [ -z "$NODE_PATH" ]; then
13
+ export NODE_PATH="/home/runner/work/skybridge/skybridge/node_modules/.pnpm/skybridge@0.22.0_@modelcontextprotocol+sdk@1.25.2_hono@4.11.3_zod@4.3.5__@types+node@24_2119e570f24116098f1bc44f355ba81d/node_modules/skybridge/bin/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/skybridge@0.22.0_@modelcontextprotocol+sdk@1.25.2_hono@4.11.3_zod@4.3.5__@types+node@24_2119e570f24116098f1bc44f355ba81d/node_modules/skybridge/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/skybridge@0.22.0_@modelcontextprotocol+sdk@1.25.2_hono@4.11.3_zod@4.3.5__@types+node@24_2119e570f24116098f1bc44f355ba81d/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/node_modules"
14
+ else
15
+ export NODE_PATH="/home/runner/work/skybridge/skybridge/node_modules/.pnpm/skybridge@0.22.0_@modelcontextprotocol+sdk@1.25.2_hono@4.11.3_zod@4.3.5__@types+node@24_2119e570f24116098f1bc44f355ba81d/node_modules/skybridge/bin/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/skybridge@0.22.0_@modelcontextprotocol+sdk@1.25.2_hono@4.11.3_zod@4.3.5__@types+node@24_2119e570f24116098f1bc44f355ba81d/node_modules/skybridge/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/skybridge@0.22.0_@modelcontextprotocol+sdk@1.25.2_hono@4.11.3_zod@4.3.5__@types+node@24_2119e570f24116098f1bc44f355ba81d/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/node_modules:$NODE_PATH"
16
+ fi
17
+ if [ -x "$basedir/node" ]; then
18
+ exec "$basedir/node" "$basedir/../skybridge/bin/run.js" "$@"
19
+ else
20
+ exec node "$basedir/../skybridge/bin/run.js" "$@"
21
+ fi
@@ -10,9 +10,9 @@ case `uname` in
10
10
  esac
11
11
 
12
12
  if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/home/runner/work/skybridge/skybridge/node_modules/.pnpm/vite@7.3.0_@types+node@22.19.3_jiti@2.6.1_lightningcss@1.30.2_terser@5.44.1_tsx@4.21.0/node_modules/vite/bin/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/vite@7.3.0_@types+node@22.19.3_jiti@2.6.1_lightningcss@1.30.2_terser@5.44.1_tsx@4.21.0/node_modules/vite/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/vite@7.3.0_@types+node@22.19.3_jiti@2.6.1_lightningcss@1.30.2_terser@5.44.1_tsx@4.21.0/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/node_modules"
13
+ export NODE_PATH="/home/runner/work/skybridge/skybridge/node_modules/.pnpm/vite@7.3.1_@types+node@24.10.8_jiti@2.6.1_lightningcss@1.30.2_terser@5.44.1_tsx@4.21.0/node_modules/vite/bin/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/vite@7.3.1_@types+node@24.10.8_jiti@2.6.1_lightningcss@1.30.2_terser@5.44.1_tsx@4.21.0/node_modules/vite/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/vite@7.3.1_@types+node@24.10.8_jiti@2.6.1_lightningcss@1.30.2_terser@5.44.1_tsx@4.21.0/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/node_modules"
14
14
  else
15
- export NODE_PATH="/home/runner/work/skybridge/skybridge/node_modules/.pnpm/vite@7.3.0_@types+node@22.19.3_jiti@2.6.1_lightningcss@1.30.2_terser@5.44.1_tsx@4.21.0/node_modules/vite/bin/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/vite@7.3.0_@types+node@22.19.3_jiti@2.6.1_lightningcss@1.30.2_terser@5.44.1_tsx@4.21.0/node_modules/vite/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/vite@7.3.0_@types+node@22.19.3_jiti@2.6.1_lightningcss@1.30.2_terser@5.44.1_tsx@4.21.0/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/node_modules:$NODE_PATH"
15
+ export NODE_PATH="/home/runner/work/skybridge/skybridge/node_modules/.pnpm/vite@7.3.1_@types+node@24.10.8_jiti@2.6.1_lightningcss@1.30.2_terser@5.44.1_tsx@4.21.0/node_modules/vite/bin/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/vite@7.3.1_@types+node@24.10.8_jiti@2.6.1_lightningcss@1.30.2_terser@5.44.1_tsx@4.21.0/node_modules/vite/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/vite@7.3.1_@types+node@24.10.8_jiti@2.6.1_lightningcss@1.30.2_terser@5.44.1_tsx@4.21.0/node_modules:/home/runner/work/skybridge/skybridge/node_modules/.pnpm/node_modules:$NODE_PATH"
16
16
  fi
17
17
  if [ -x "$basedir/node" ]; then
18
18
  exec "$basedir/node" "$basedir/../vite/bin/vite.js" "$@"
@@ -5,30 +5,31 @@
5
5
  "description": "Alpic MCP Server Template",
6
6
  "type": "module",
7
7
  "scripts": {
8
- "dev": "nodemon",
9
- "build": "vite build -c web/vite.config.ts && shx rm -rf server/dist && tsc -p tsconfig.server.json && shx cp -r web/dist server/dist/assets",
10
- "start": "node server/dist/index.js",
8
+ "dev": "skybridge",
9
+ "build": "skybridge build",
10
+ "start": "skybridge start",
11
11
  "inspector": "mcp-inspector http://localhost:3000/mcp",
12
12
  "server:build": "tsc -p tsconfig.server.json",
13
- "server:start": "node server/dist/index.js",
13
+ "server:start": "node dist/index.js",
14
14
  "web:build": "tsc -b web && vite build -c web/vite.config.ts",
15
15
  "web:preview": "vite preview -c web/vite.config.ts"
16
16
  },
17
17
  "dependencies": {
18
- "@modelcontextprotocol/sdk": "^1.25.1",
18
+ "@modelcontextprotocol/sdk": "^1.25.2",
19
+ "cors": "^2.8.5",
19
20
  "express": "^5.2.1",
20
21
  "react": "^19.2.3",
21
22
  "react-dom": "^19.2.3",
22
- "skybridge": ">=0.16.2 <1.0.0",
23
- "vite": "^7.3.0",
23
+ "skybridge": ">=0.22.0 <1.0.0",
24
+ "vite": "^7.3.1",
24
25
  "zod": "^4.3.5"
25
26
  },
26
27
  "devDependencies": {
27
28
  "@modelcontextprotocol/inspector": "^0.18.0",
28
- "@skybridge/devtools": ">=0.16.2 <1.0.0",
29
+ "@skybridge/devtools": ">=0.22.0 <1.0.0",
30
+ "@types/cors": "^2.8.19",
29
31
  "@types/express": "^5.0.6",
30
- "@types/node": "^22.19.3",
31
- "@types/react": "^19.2.7",
32
+ "@types/react": "^19.2.8",
32
33
  "@types/react-dom": "^19.2.3",
33
34
  "@vitejs/plugin-react": "^5.1.2",
34
35
  "nodemon": "^3.1.11",
@@ -36,5 +37,7 @@
36
37
  "tsx": "^4.21.0",
37
38
  "typescript": "^5.9.3"
38
39
  },
39
- "workspaces": []
40
+ "engines": {
41
+ "node": ">=24.13.0"
42
+ }
40
43
  }
@@ -1,5 +1,8 @@
1
+ import path from "node:path";
2
+ import { fileURLToPath } from "node:url";
3
+ import cors from "cors";
1
4
  import express, { type Express } from "express";
2
- import { devtoolsStaticServer, widgetsDevServer } from "skybridge/server";
5
+ import { widgetsDevServer } from "skybridge/server";
3
6
  import type { ViteDevServer } from "vite";
4
7
  import { mcp } from "./middleware.js";
5
8
  import server from "./server.js";
@@ -13,10 +16,19 @@ app.use(mcp(server));
13
16
  const env = process.env.NODE_ENV || "development";
14
17
 
15
18
  if (env !== "production") {
19
+ const { devtoolsStaticServer } = await import("@skybridge/devtools");
16
20
  app.use(await devtoolsStaticServer());
17
21
  app.use(await widgetsDevServer());
18
22
  }
19
23
 
24
+ if (env === "production") {
25
+ const __filename = fileURLToPath(import.meta.url);
26
+ const __dirname = path.dirname(__filename);
27
+
28
+ app.use("/assets", cors());
29
+ app.use("/assets", express.static(path.join(__dirname, "assets")));
30
+ }
31
+
20
32
  app.listen(3000, (error) => {
21
33
  if (error) {
22
34
  console.error("Failed to start server:", error);
@@ -2,7 +2,7 @@
2
2
  "extends": "./tsconfig.json",
3
3
  "compilerOptions": {
4
4
  "noEmit": false,
5
- "outDir": "server/dist",
5
+ "outDir": "dist",
6
6
  "sourceMap": true,
7
7
  "declaration": true
8
8
  },