#!/usr/bin/env node /** * 光湖驱动引擎 · 单行安装命令生成器 * Guanghu Drive Engine · One-liner Installer Generator * * 用途:生成一行命令,粘贴到任何服务器的终端即可安装引擎 * * 运行:node scripts/engine-one-liner.js * 输出:一行 curl | bash 命令 * * 版权:国作登字-2026-A-00037559 · TCS-0002∞ */ const fs = require('fs'); const path = require('path'); // 引擎代码路径(gatekeeper/index.js) const ENGINE_PATH = path.join(__dirname, '..', 'mcp-servers', 'zhuyuan-gateway', 'gatekeeper', 'index.js'); // ██████████████████████████████████████████████████████████████████████ // 第一步:读取引擎代码 // ██████████████████████████████████████████████████████████████████████ const engineCode = fs.readFileSync(ENGINE_PATH, 'utf-8'); const engineBase64 = Buffer.from(engineCode).toString('base64'); // 生成引擎文件名(带随机后缀防止多台服务器文件名冲突) const FILENAME = 'ge.js'; // ██████████████████████████████████████████████████████████████████████ // 第二步:生成安装命令 // ██████████████████████████████████████████████████████████████████████ const oneLiner = `echo '${engineBase64}' | base64 -d > /tmp/${FILENAME} && node /tmp/${FILENAME} 3910 &`; // ██████████████████████████████████████████████████████████████████████ // 第三步:输出 // ██████████████████████████████████████████████████████████████████████ console.log(''); console.log('╔══════════════════════════════════════════════════════════════╗'); console.log('║ 光湖驱动引擎 · 单行安装命令 ║'); console.log('╚══════════════════════════════════════════════════════════════╝'); console.log(''); console.log('▶ 复制下面这一整行命令,粘贴到服务器的终端,按回车:'); console.log(''); console.log(oneLiner); console.log(''); console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━'); console.log(''); console.log('安装后:'); console.log(' 1. 引擎会在端口 3910 启动'); console.log(' 2. 第一次启动会自动生成 API 密钥'); console.log(' 3. 密钥显示在终端上(只看一次!)'); console.log(' 4. 把密钥复制下来发给铸渊'); console.log(' 5. 要验证: curl -X POST http://127.0.0.1:3910/health'); console.log(''); console.log('密钥保存在: ~/.gatekeeper/secret'); console.log(''); // 同时统计信息 console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━'); console.log(` 引擎代码: ${engineCode.length} 字符`); console.log(` 打包后: ${engineBase64.length} 字符`); console.log(` 单行命令: ${oneLiner.length} 字符`); console.log('');