* feat: bundle mcp-server into release app so AI Chat works - Add esbuild bundle script (scripts/bundle-mcp-server.mjs) that compiles mcp-server/index.js and ws-bridge.js into self-contained CJS bundles - Output goes to src-tauri/resources/mcp-server/ (gitignored) - Add Tauri resources config to copy bundles into Contents/Resources/mcp-server/ - Update mcp_server_dir() to look in Contents/Resources/ (not Contents/) in release - Add bundle-mcp npm script; hook it into tauri beforeBuildCommand - Exclude generated resources from ESLint Previously AI Chat showed 'mcp-server not found at .../Contents/mcp-server' because the release path lacked the 'Resources' segment and no files were bundled. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * ci: bundle mcp-server resources before Rust tests * fix: add mcp-server as pnpm workspace package so esbuild can resolve its deps in CI * fix: exclude src-tauri/target from eslint to fix CI lint failure --------- Co-authored-by: Test <test@test.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
82 lines
2.4 KiB
JSON
82 lines
2.4 KiB
JSON
{
|
|
"name": "laputa-app",
|
|
"private": true,
|
|
"version": "0.1.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "tsc -b && vite build",
|
|
"bundle-mcp": "node scripts/bundle-mcp-server.mjs",
|
|
"lint": "eslint .",
|
|
"preview": "vite preview",
|
|
"tauri": "tauri",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest",
|
|
"test:e2e": "playwright test",
|
|
"test:coverage": "vitest run --coverage",
|
|
"prepare": "husky"
|
|
},
|
|
"dependencies": {
|
|
"@anthropic-ai/sdk": "^0.78.0",
|
|
"@blocknote/core": "^0.46.2",
|
|
"@blocknote/mantine": "^0.46.2",
|
|
"@blocknote/react": "^0.46.2",
|
|
"@dnd-kit/core": "^6.3.1",
|
|
"@dnd-kit/sortable": "^10.0.0",
|
|
"@dnd-kit/utilities": "^3.2.2",
|
|
"@mantine/core": "^8.3.14",
|
|
"@phosphor-icons/react": "^2.1.10",
|
|
"@radix-ui/react-dialog": "^1.1.15",
|
|
"@radix-ui/react-dropdown-menu": "^2.1.16",
|
|
"@radix-ui/react-select": "^2.2.6",
|
|
"@radix-ui/react-separator": "^1.1.8",
|
|
"@radix-ui/react-slot": "^1.2.4",
|
|
"@radix-ui/react-tabs": "^1.1.13",
|
|
"@radix-ui/react-tooltip": "^1.2.8",
|
|
"@tailwindcss/vite": "^4.1.18",
|
|
"@tauri-apps/api": "^2.10.1",
|
|
"@tauri-apps/plugin-dialog": "^2.6.0",
|
|
"@tauri-apps/plugin-opener": "^2.5.3",
|
|
"@tauri-apps/plugin-process": "^2.3.1",
|
|
"@tauri-apps/plugin-updater": "^2.10.0",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"date-fns": "^4.1.0",
|
|
"katex": "^0.16.28",
|
|
"lowlight": "^3.3.0",
|
|
"lucide-react": "^0.564.0",
|
|
"radix-ui": "^1.4.3",
|
|
"react": "^19.2.0",
|
|
"react-day-picker": "^9.13.2",
|
|
"react-dom": "^19.2.0",
|
|
"react-virtuoso": "^4.18.1",
|
|
"tailwind-merge": "^3.4.1",
|
|
"tailwindcss": "^4.1.18",
|
|
"tw-animate-css": "^1.4.0"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint/js": "^9.39.1",
|
|
"@playwright/test": "^1.58.2",
|
|
"@tauri-apps/cli": "^2.10.0",
|
|
"@testing-library/jest-dom": "^6.9.1",
|
|
"@testing-library/react": "^16.3.2",
|
|
"@types/node": "^24.10.1",
|
|
"@types/react": "^19.2.7",
|
|
"@types/react-dom": "^19.2.3",
|
|
"@vitejs/plugin-react": "^5.1.1",
|
|
"@vitest/coverage-v8": "^4.0.18",
|
|
"esbuild": "^0.27.3",
|
|
"eslint": "^9.39.1",
|
|
"eslint-plugin-react-hooks": "^7.0.1",
|
|
"eslint-plugin-react-refresh": "^0.4.24",
|
|
"globals": "^16.5.0",
|
|
"gray-matter": "^4.0.3",
|
|
"husky": "^9.1.7",
|
|
"jsdom": "^28.0.0",
|
|
"typescript": "~5.9.3",
|
|
"typescript-eslint": "^8.48.0",
|
|
"vite": "^7.3.1",
|
|
"vitest": "^4.0.18"
|
|
}
|
|
}
|