import { bootstrapMindSpaceService } from './mindspace-service-bootstrap.mjs'; import { startMindSpaceRpcServer } from './mindspace-rpc-server.mjs'; const logger = console; async function main() { const service = await bootstrapMindSpaceService({ env: process.env, logger }); const rpc = await startMindSpaceRpcServer({ adapter: service.adapter, env: process.env, logger, serviceMeta: { operationBasePath: service.runtime.remote.operationBasePath, }, }); logger.log( `MindSpace service listening on http://${rpc.host}:${rpc.port}${service.runtime.remote.operationBasePath}`, ); logger.log(`Memind root: ${service.memindRoot}`); logger.log(`Standalone data root: ${service.standaloneDataRoot}`); logger.log(`Standalone agent worker: ${service.backgroundJobs.agentWorker ? 'enabled' : 'disabled'}`); const shutdown = async (signal) => { logger.log(`Received ${signal}, shutting down MindSpace service...`); await rpc.close().catch(() => {}); await service.close().catch(() => {}); process.exit(0); }; process.on('SIGINT', () => { void shutdown('SIGINT'); }); process.on('SIGTERM', () => { void shutdown('SIGTERM'); }); } main().catch((error) => { console.error('MindSpace service failed to start:', error); process.exit(1); });