UNPKG

evolve-memory-system

Version:

一个集成了LlamaIndex RAG, LMCE和MCP工具的本地记忆系统,专为小说《进化》设计。

43 lines (33 loc) 928 B
#!/usr/bin/env node const { spawn } = require('child_process'); const path = require('path'); // 获取项目根目录 const projectRoot = path.join(__dirname, '..'); // 设置环境变量 process.env.PYTHONPATH = projectRoot; // 使用Python启动stdio版本的MCP服务器 const pythonPath = process.env.VIRTUAL_ENV ? path.join(process.env.VIRTUAL_ENV, 'bin', 'python') : 'python3'; const mcpProcess = spawn(pythonPath, [ '-u', path.join(__dirname, 'start-novel-mcp-stdio.py') ], { cwd: projectRoot, stdio: ['pipe', 'pipe', 'pipe'] }); // 转发stdin process.stdin.pipe(mcpProcess.stdin); // 转发stdout和stderr mcpProcess.stdout.pipe(process.stdout); mcpProcess.stderr.pipe(process.stderr); // 处理退出信号 process.on('SIGINT', () => { mcpProcess.kill('SIGINT'); }); process.on('SIGTERM', () => { mcpProcess.kill('SIGTERM'); }); mcpProcess.on('close', (code) => { process.exit(code); });