diff --git a/src/bin/promptx.js b/src/bin/promptx.js
index 8fd89fa..2e68479 100755
--- a/src/bin/promptx.js
+++ b/src/bin/promptx.js
@@ -105,7 +105,7 @@ program
.option('--host
', '绑定地址 (仅http/sse传输)', 'localhost')
.option('--cors', '启用CORS (仅http/sse传输)', false)
.option('--debug', '启用调试模式', false)
- .option('--with-dacp', '同时启动DACP服务', false)
+ .option('--with-dacp', '(已废弃,静默忽略)', false)
.action(async (options) => {
try {
// 设置调试模式
@@ -116,7 +116,8 @@ program
// 根据传输类型选择命令
if (options.transport === 'stdio') {
const mcpServer = new MCPServerCommand();
- await mcpServer.execute({ withDacp: options.withDacp });
+ // 🔧 DACP现为Mock模式,静默忽略用户的withDacp配置
+ await mcpServer.execute();
} else if (options.transport === 'http' || options.transport === 'sse') {
const mcpHttpServer = new MCPStreamableHttpCommand();
const serverOptions = {
diff --git a/src/lib/commands/MCPServerCommand.js b/src/lib/commands/MCPServerCommand.js
index 36126cf..85f1005 100644
--- a/src/lib/commands/MCPServerCommand.js
+++ b/src/lib/commands/MCPServerCommand.js
@@ -84,10 +84,8 @@ class MCPServerCommand {
// 设置进程清理处理器
this.setupProcessCleanup();
- // 如果需要启动DACP服务
- if (options.withDacp) {
- await this.startDACPService();
- }
+ // 🔧 DACP现已改为Mock模式,无需启动独立服务
+ // 静默忽略任何withDacp选项,保持向后兼容
this.log('🚀 启动MCP Server...');
const transport = new StdioServerTransport();
@@ -145,44 +143,27 @@ class MCPServerCommand {
}
/**
- * 清理子进程
+ * 清理子进程 (DACP现为Mock模式,此方法保留但无实际清理工作)
+ * @deprecated DACP已改为Mock模式,无需清理子进程
*/
cleanup() {
- if (this.dacpProcess && !this.dacpProcess.killed && this.dacpProcess.pid) {
- this.log('🛑 正在终止DACP服务及其所有子进程...');
-
- // 使用 tree-kill 终止整个进程树
- treeKill(this.dacpProcess.pid, 'SIGTERM', (err) => {
- if (err) {
- this.log(`⚠️ 优雅终止失败: ${err.message}`);
-
- // 3秒后强制终止
- setTimeout(() => {
- if (this.dacpProcess && !this.dacpProcess.killed && this.dacpProcess.pid) {
- this.log('⚠️ DACP服务未响应SIGTERM,强制终止整个进程树...');
- treeKill(this.dacpProcess.pid, 'SIGKILL', (killErr) => {
- if (killErr) {
- this.log(`❌ 强制终止失败: ${killErr.message}`);
- } else {
- this.log('✅ DACP服务进程树已强制终止');
- }
- });
- }
- }, 3000);
- } else {
- this.log('✅ DACP服务进程树已优雅终止');
- }
- });
- }
+ // 🔧 DACP现已改为Mock模式,无需清理DACP子进程
+ // HTTP模式的进程清理代码已保留作为参考实现
+ this.log('🔧 Mock模式下无需清理DACP子进程');
}
/**
- * 检测DACP服务是否已经运行
+ * 检测DACP服务是否已经运行 (HTTP模式 - 仅作参考实现保留)
+ * @deprecated DACP已改为Mock模式,此方法仅保留作为参考
* @param {string} host - 主机地址
* @param {number} port - 端口号
* @returns {Promise} 服务是否运行
*/
async isDACPServiceRunning(host = 'localhost', port = 3002) {
+ // 🔧 Mock模式下始终返回false,因为不需要HTTP服务
+ return false;
+
+ /* HTTP模式参考实现(已禁用)
const http = require('http');
return new Promise((resolve) => {
@@ -224,15 +205,28 @@ class MCPServerCommand {
req.end();
});
+ */
}
/**
- * 获取DACP服务信息
+ * 获取DACP服务信息 (HTTP模式 - 仅作参考实现保留)
+ * @deprecated DACP已改为Mock模式,此方法仅保留作为参考
* @param {string} host - 主机地址
* @param {number} port - 端口号
* @returns {Promise