// The engine bundle: one ES module for Node 20+, with every skill module the engine imports lazily inlined // (codeSplitting: false, as the upstream's vite.mcp.config.ts does for its MCP server). import { defineConfig } from 'vite'; import { upstreamFixes } from './upstream-fixes'; export default defineConfig({ plugins: [upstreamFixes()], publicDir: false, build: { lib: { entry: 'shoal/sgs.ts', formats: ['es'], fileName: () => 'sgs.mjs' }, outDir: 'dist/shoal-engine', emptyOutDir: true, minify: false, sourcemap: false, target: 'node20', rollupOptions: { external: [/^node:/], output: { codeSplitting: false }, }, }, });