| 1 | // The engine bundle: one ES module for Node 20+, with every skill module the engine imports lazily inlined |
| 2 | // (codeSplitting: false, as the upstream's vite.mcp.config.ts does for its MCP server). |
| 3 | import { defineConfig } from 'vite'; |
| 4 | |
| 5 | export default defineConfig({ |
| 6 | publicDir: false, |
| 7 | build: { |
| 8 | lib: { entry: 'shoal/sgs.ts', formats: ['es'], fileName: () => 'sgs.mjs' }, |
| 9 | outDir: 'dist/shoal-engine', |
| 10 | emptyOutDir: true, |
| 11 | minify: false, |
| 12 | sourcemap: false, |
| 13 | target: 'node20', |
| 14 | rollupOptions: { |
| 15 | external: [/^node:/], |
| 16 | output: { codeSplitting: false }, |
| 17 | }, |
| 18 | }, |
| 19 | }); |
