youling-task
Version:
基于POMDP的研发任务分解工具,支持MCP协议
52 lines (44 loc) • 1.56 kB
JavaScript
/**
* 这是一个简单的启动脚本,用于启动youling-task服务器
*/
// 使用支持npx的方式导入模块
import { createRequire } from 'module';
const require = createRequire(import.meta.url);
const path = require('path');
const { fileURLToPath } = require('url');
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
// 导入服务器模块
import('../lib/server.js')
.then(({ startYoulingTaskServer }) => {
const port = parseInt(process.env.PORT || '3000', 10);
const secretKey = process.env.MCP_SECRET_KEY || 'youling-task-secret';
console.log(`正在启动Youling任务分解MCP服务器,端口:${port}...`);
return startYoulingTaskServer({
port,
secretKey
})
.then(({ server }) => {
console.log(`服务器已成功启动,访问 http://localhost:${port}/mcp`);
// 处理进程退出信号
process.on('SIGTERM', () => {
console.log('接收到SIGTERM信号,关闭服务器...');
server.close(() => {
console.log('服务器已关闭');
process.exit(0);
});
});
process.on('SIGINT', () => {
console.log('接收到SIGINT信号,关闭服务器...');
server.close(() => {
console.log('服务器已关闭');
process.exit(0);
});
});
});
})
.catch((error) => {
console.error('启动服务器失败:', error);
process.exit(1);
});