From ec9ac2292ac4e1ab98a543317907fdaa265dfc1f Mon Sep 17 00:00:00 2001 From: bingshuo <565183519@qq.com> Date: Sun, 17 May 2026 17:48:38 +0800 Subject: [PATCH] =?UTF-8?q?D100=20=E5=88=9B=E5=BB=BA=20engine-one-liner.js?= =?UTF-8?q?=20=E2=80=94=20=E5=8D=95=E8=A1=8C=E5=AE=89=E8=A3=85=E5=91=BD?= =?UTF-8?q?=E4=BB=A4=E7=94=9F=E6=88=90=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/engine-one-liner.js | 66 +++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 scripts/engine-one-liner.js diff --git a/scripts/engine-one-liner.js b/scripts/engine-one-liner.js new file mode 100644 index 0000000..473ab77 --- /dev/null +++ b/scripts/engine-one-liner.js @@ -0,0 +1,66 @@ +#!/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(''); \ No newline at end of file