@cjwddz/mirror 2.0.3 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/cli/cli-commands.d.ts.map +1 -1
  2. package/dist/cli/cli-commands.js +83 -88
  3. package/dist/cli/cli-commands.js.map +1 -1
  4. package/dist/cli/index.d.ts +1 -1
  5. package/dist/cli/index.js +18 -60
  6. package/dist/cli/index.js.map +1 -1
  7. package/dist/core/http-tunnel-server.d.ts.map +1 -1
  8. package/dist/core/http-tunnel-server.js +4 -4
  9. package/dist/core/http-tunnel-server.js.map +1 -1
  10. package/dist/core/rule-manager.d.ts.map +1 -1
  11. package/dist/core/rule-manager.js +4 -6
  12. package/dist/core/rule-manager.js.map +1 -1
  13. package/package.json +1 -1
  14. package/dist/core/file-sync.d.ts +0 -14
  15. package/dist/core/file-sync.d.ts.map +0 -1
  16. package/dist/core/file-sync.js +0 -34
  17. package/dist/core/file-sync.js.map +0 -1
  18. package/dist/core/output-buffer.d.ts +0 -42
  19. package/dist/core/output-buffer.d.ts.map +0 -1
  20. package/dist/core/output-buffer.js +0 -66
  21. package/dist/core/output-buffer.js.map +0 -1
  22. package/dist/core/protocol.d.ts +0 -83
  23. package/dist/core/protocol.d.ts.map +0 -1
  24. package/dist/core/protocol.js +0 -10
  25. package/dist/core/protocol.js.map +0 -1
  26. package/dist/core/state-machine.d.ts +0 -19
  27. package/dist/core/state-machine.d.ts.map +0 -1
  28. package/dist/core/state-machine.js +0 -39
  29. package/dist/core/state-machine.js.map +0 -1
  30. package/dist/core/token-manager.d.ts +0 -29
  31. package/dist/core/token-manager.d.ts.map +0 -1
  32. package/dist/core/token-manager.js +0 -90
  33. package/dist/core/token-manager.js.map +0 -1
  34. package/dist/core/workspace.d.ts +0 -28
  35. package/dist/core/workspace.d.ts.map +0 -1
  36. package/dist/core/workspace.js +0 -186
  37. package/dist/core/workspace.js.map +0 -1
  38. package/dist/transport/websocket.d.ts +0 -22
  39. package/dist/transport/websocket.d.ts.map +0 -1
  40. package/dist/transport/websocket.js +0 -96
  41. package/dist/transport/websocket.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"cli-commands.d.ts","sourceRoot":"","sources":["../../src/cli/cli-commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAoEH;;GAEG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA6F5F;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA0DlF;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoClE;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAsBjD;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CA+BjD;AAED;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAyDnD;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAuFzE"}
1
+ {"version":3,"file":"cli-commands.d.ts","sourceRoot":"","sources":["../../src/cli/cli-commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAoEH;;GAEG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAwF5F;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA0DlF;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoClE;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAsBjD;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CA+BjD;AAED;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAyDnD;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAuFzE"}
@@ -28,8 +28,8 @@ async function checkLockFile() {
28
28
  // 检查进程是否还在运行
29
29
  try {
30
30
  process.kill(pid, 0);
31
- console.error(`[!] Another mirror client is already running (PID: ${pid})`);
32
- console.error('[!] Please stop it first with: mirror stop');
31
+ console.error(`[!] 已有 mirror 客户端在运行 (PID: ${pid})`);
32
+ console.error('[!] 请先执行 mirror stop 停止后再试');
33
33
  return false;
34
34
  }
35
35
  catch {
@@ -42,7 +42,7 @@ async function checkLockFile() {
42
42
  return true;
43
43
  }
44
44
  catch (error) {
45
- console.error('[!] Failed to create lock file:', error);
45
+ console.error('[!] 创建锁文件失败:', error);
46
46
  return false;
47
47
  }
48
48
  }
@@ -64,8 +64,8 @@ async function cleanupLockFile() {
64
64
  * link 命令:连接服务端
65
65
  */
66
66
  export async function linkCommand(server, options) {
67
- console.log('Mirror HTTP Tunnel Client');
68
- console.log('=========================\n');
67
+ console.log('Mirror HTTP 隧道客户端');
68
+ console.log('========================\n');
69
69
  // 检查锁文件
70
70
  const lockCheck = await checkLockFile();
71
71
  if (!lockCheck) {
@@ -81,27 +81,22 @@ export async function linkCommand(server, options) {
81
81
  }
82
82
  // 保存服务器配置
83
83
  ruleManager.setServer(server, options.token);
84
- console.log(`[*] Server: ${server}`);
84
+ console.log(`[*] 服务端: ${server}`);
85
85
  if (options.token) {
86
- console.log(`[*] Token: ${options.token}`);
86
+ console.log(`[*] 令牌: ${options.token}`);
87
87
  }
88
- // 构建 WebSocket URL:不指定端口时使用 wss 默认 443,指定则用 host:port
89
- let wsUrl = server.includes(':')
90
- ? (() => {
91
- const [host, port] = server.split(':');
92
- return `wss://${host}:${port}`;
93
- })()
94
- : `wss://${server}`;
88
+ // 构建 WebSocket URL:仅使用域名,走 wss 默认 443(由 Nginx 等反向代理处理 TLS)
89
+ let wsUrl = `wss://${server}`;
95
90
  // 添加 token
96
91
  if (options.token) {
97
92
  const separator = wsUrl.includes('?') ? '&' : '?';
98
93
  wsUrl = `${wsUrl}${separator}token=${options.token}`;
99
94
  }
100
- console.log(`[*] Connecting to ${wsUrl}...`);
95
+ console.log(`[*] 正在连接 ${wsUrl} ...`);
101
96
  try {
102
97
  tunnelWs = new WebSocket(wsUrl);
103
98
  tunnelWs.on('open', () => {
104
- console.log('[✓] Connected to server\n');
99
+ console.log('[✓] 已连接服务端\n');
105
100
  isConnected = true;
106
101
  // 发送规则同步
107
102
  syncRules();
@@ -110,20 +105,20 @@ export async function linkCommand(server, options) {
110
105
  handleTunnelMessage(data);
111
106
  });
112
107
  tunnelWs.on('close', (code, reason) => {
113
- const reasonStr = reason ? reason.toString() : 'Unknown reason';
114
- console.log(`[!] Disconnected from server: ${reasonStr} (code: ${code})\n`);
108
+ const reasonStr = reason ? reason.toString() : '未知原因';
109
+ console.log(`[!] 已断开与服务端的连接: ${reasonStr} (code: ${code})\n`);
115
110
  isConnected = false;
116
111
  cleanupLockFile();
117
112
  process.exit(0);
118
113
  });
119
114
  tunnelWs.on('error', (error) => {
120
- console.error('[!] Connection error:', error.message);
115
+ console.error('[!] 连接错误:', error.message);
121
116
  cleanupLockFile();
122
117
  process.exit(1);
123
118
  });
124
119
  // 处理进程退出
125
120
  const exitHandler = () => {
126
- console.log('\n[*] Disconnecting...');
121
+ console.log('\n[*] 正在断开连接...');
127
122
  if (tunnelWs) {
128
123
  tunnelWs.close();
129
124
  }
@@ -136,7 +131,7 @@ export async function linkCommand(server, options) {
136
131
  await new Promise(() => { });
137
132
  }
138
133
  catch (error) {
139
- console.error('[!] Failed to connect:', error);
134
+ console.error('[!] 连接失败:', error);
140
135
  cleanupLockFile();
141
136
  process.exit(1);
142
137
  }
@@ -145,34 +140,34 @@ export async function linkCommand(server, options) {
145
140
  * add 命令:添加代理规则
146
141
  */
147
142
  export async function addCommand(domainPath, target) {
148
- console.log('Mirror - Add Proxy Rule');
143
+ console.log('Mirror - 添加代理规则');
149
144
  console.log('========================\n');
150
145
  // 解析 domain 和 path
151
146
  const domainMatch = domainPath.match(/^([^/]+)(.*)$/);
152
147
  if (!domainMatch) {
153
- console.error('[!] Invalid domain/path format');
154
- console.error('[!] Usage: mirror add <domain/path> <target>');
155
- console.error('[!] Example: mirror add example.com/api localhost:3001');
148
+ console.error('[!] 域名/路径格式无效');
149
+ console.error('[!] 用法: mirror add <域名/路径> <目标>');
150
+ console.error('[!] 示例: mirror add example.com/api localhost:3001');
156
151
  process.exit(1);
157
152
  }
158
153
  const domain = domainMatch[1];
159
154
  const path = domainMatch[2] || '/';
160
155
  // 验证参数
161
156
  if (!domain || !target) {
162
- console.error('[!] Missing required arguments');
163
- console.error('[!] Usage: mirror add <domain/path> <target>');
164
- console.error('[!] Example: mirror add example.com/api localhost:3001');
157
+ console.error('[!] 缺少必填参数');
158
+ console.error('[!] 用法: mirror add <域名/路径> <目标>');
159
+ console.error('[!] 示例: mirror add example.com/api localhost:3001');
165
160
  process.exit(1);
166
161
  }
167
- console.log(`[*] Domain: ${domain}`);
168
- console.log(`[*] Path: ${path}`);
169
- console.log(`[*] Target: ${target}\n`);
162
+ console.log(`[*] 域名: ${domain}`);
163
+ console.log(`[*] 路径: ${path}`);
164
+ console.log(`[*] 目标: ${target}\n`);
170
165
  // 创建规则管理器
171
166
  const ruleManager = new RuleManager();
172
167
  // 添加规则
173
168
  const rule = ruleManager.addRule(domain, path, target);
174
169
  if (rule) {
175
- console.log('[✓] Rule added successfully\n');
170
+ console.log('[✓] 规则添加成功\n');
176
171
  console.log(` ID: ${rule.id}`);
177
172
  console.log(` ${rule.domain}${rule.path} -> ${rule.target}`);
178
173
  // 根据路径长度显示优先级
@@ -187,7 +182,7 @@ export async function addCommand(domainPath, target) {
187
182
  console.log(` 优先级: ${priorityText} (路径长度: ${pathLength})\n`);
188
183
  }
189
184
  else {
190
- console.error('[!] Failed to add rule\n');
185
+ console.error('[!] 添加规则失败\n');
191
186
  process.exit(1);
192
187
  }
193
188
  // 如果已连接,同步规则
@@ -200,34 +195,34 @@ export async function addCommand(domainPath, target) {
200
195
  * remove 命令:删除代理规则
201
196
  */
202
197
  export async function removeCommand(ruleId) {
203
- console.log('Mirror - Remove Proxy Rule');
204
- console.log('===========================\n');
198
+ console.log('Mirror - 删除代理规则');
199
+ console.log('========================\n');
205
200
  const ruleManager = new RuleManager();
206
201
  if (ruleId) {
207
202
  // 删除指定规则
208
203
  const id = parseInt(ruleId, 10);
209
204
  if (isNaN(id)) {
210
- console.error('[!] Invalid rule ID:', ruleId);
205
+ console.error('[!] 规则 ID 无效:', ruleId);
211
206
  process.exit(1);
212
207
  }
213
208
  const rules = ruleManager.getRules();
214
209
  const rule = rules.find((r) => r.id === id);
215
210
  if (!rule) {
216
- console.error(`[!] Rule not found: ${id}`);
211
+ console.error(`[!] 规则不存在: ${id}`);
217
212
  process.exit(1);
218
213
  }
219
214
  ruleManager.removeRule(id);
220
- console.log(`[✓] Rule removed: ${rule.domain}${rule.path} -> ${rule.target}\n`);
215
+ console.log(`[✓] 规则已删除: ${rule.domain}${rule.path} -> ${rule.target}\n`);
221
216
  }
222
217
  else {
223
218
  // 删除所有规则
224
219
  const count = ruleManager.getRules().length;
225
220
  ruleManager.removeRule();
226
- console.log(`[✓] All rules removed (${count} rules)\n`);
221
+ console.log(`[✓] 已删除全部规则 (共 ${count} )\n`);
227
222
  }
228
223
  // 如果已连接,同步规则
229
224
  if (isConnected && tunnelWs) {
230
- console.log('[*] Syncing rules to server...');
225
+ console.log('[*] 正在同步规则到服务端...');
231
226
  syncRules();
232
227
  }
233
228
  }
@@ -235,21 +230,21 @@ export async function removeCommand(ruleId) {
235
230
  * list 命令:查看代理规则
236
231
  */
237
232
  export async function listCommand() {
238
- console.log('Mirror - Proxy Rules');
239
- console.log('====================\n');
233
+ console.log('Mirror - 代理规则');
234
+ console.log('================\n');
240
235
  const ruleManager = new RuleManager();
241
236
  const rules = ruleManager.getRules();
242
237
  if (rules.length === 0) {
243
- console.log('[!] No rules configured\n');
238
+ console.log('[!] 未配置规则\n');
244
239
  return;
245
240
  }
246
- console.log(`Total: ${rules.length} rule(s)\n`);
241
+ console.log(`共 ${rules.length} 条规则\n`);
247
242
  for (const rule of rules) {
248
243
  const priorityLabel = rule.priority === 'high' ? '高' : '低';
249
244
  const priorityNote = rule.priority === 'high' ? '(路径规则)' : '(域名规则)';
250
245
  console.log(`[${rule.id}] ${rule.domain}${rule.path} -> ${rule.target}`);
251
- console.log(` Priority: ${priorityLabel}${priorityNote}`);
252
- console.log(` Created: ${new Date(rule.createdAt).toLocaleString()}`);
246
+ console.log(` 优先级: ${priorityLabel}${priorityNote}`);
247
+ console.log(` 创建时间: ${new Date(rule.createdAt).toLocaleString()}`);
253
248
  console.log();
254
249
  }
255
250
  }
@@ -257,31 +252,31 @@ export async function listCommand() {
257
252
  * stop 命令:断开连接
258
253
  */
259
254
  export async function stopCommand() {
260
- console.log('Mirror - Stop Connection');
261
- console.log('========================\n');
255
+ console.log('Mirror - 断开连接');
256
+ console.log('==================\n');
262
257
  // 检查锁文件
263
258
  try {
264
259
  const fs = await import('fs');
265
260
  const lockFile = process.env.HOME + '/.mirror/.lock';
266
261
  if (!fs.existsSync(lockFile)) {
267
- console.log('[!] No mirror client is running\n');
262
+ console.log('[!] 当前没有 mirror 客户端在运行\n');
268
263
  process.exit(0);
269
264
  }
270
265
  const pid = parseInt(fs.readFileSync(lockFile, 'utf-8'), 10);
271
266
  try {
272
267
  // 发送 SIGTERM 信号
273
268
  process.kill(pid, 'SIGTERM');
274
- console.log(`[✓] Sending stop signal to mirror client (PID: ${pid})\n`);
269
+ console.log(`[✓] 已向 mirror 客户端发送停止信号 (PID: ${pid})\n`);
275
270
  }
276
271
  catch {
277
- console.log(`[!] Mirror client (PID: ${pid}) is not responding\n`);
278
- console.log('[!] Cleaning up lock file...');
272
+ console.log(`[!] mirror 客户端 (PID: ${pid}) 无响应\n`);
273
+ console.log('[!] 正在清理锁文件...');
279
274
  fs.unlinkSync(lockFile);
280
- console.log('[✓] Lock file removed\n');
275
+ console.log('[✓] 锁文件已移除\n');
281
276
  }
282
277
  }
283
278
  catch (error) {
284
- console.error('[!] Error:', error);
279
+ console.error('[!] 错误:', error);
285
280
  }
286
281
  process.exit(0);
287
282
  }
@@ -289,8 +284,8 @@ export async function stopCommand() {
289
284
  * status 命令:查看连接状态
290
285
  */
291
286
  export async function statusCommand() {
292
- console.log('Mirror - Connection Status');
293
- console.log('==========================\n');
287
+ console.log('Mirror - 连接状态');
288
+ console.log('==================\n');
294
289
  try {
295
290
  const fs = await import('fs');
296
291
  const lockFile = process.env.HOME + '/.mirror/.lock';
@@ -300,36 +295,36 @@ export async function statusCommand() {
300
295
  const pid = parseInt(fs.readFileSync(lockFile, 'utf-8'), 10);
301
296
  try {
302
297
  process.kill(pid, 0);
303
- console.log('[✓] Mirror client is running');
298
+ console.log('[✓] Mirror 客户端正在运行');
304
299
  console.log(` PID: ${pid}\n`);
305
300
  }
306
301
  catch {
307
- console.log('[!] Mirror client is not running (stale lock file)');
308
- console.log('[!] Cleaning up lock file...');
302
+ console.log('[!] Mirror 客户端未运行(锁文件已过期)');
303
+ console.log('[!] 正在清理锁文件...');
309
304
  fs.unlinkSync(lockFile);
310
- console.log('[✓] Lock file removed\n');
305
+ console.log('[✓] 锁文件已移除\n');
311
306
  }
312
307
  }
313
308
  else {
314
- console.log('[!] Mirror client is not running\n');
309
+ console.log('[!] Mirror 客户端未运行\n');
315
310
  }
316
311
  // 显示服务器配置
317
312
  const config = ruleManager.getServer();
318
313
  if (config.server) {
319
- console.log('Server Configuration:');
320
- console.log(` Server: ${config.server}`);
314
+ console.log('服务器配置:');
315
+ console.log(` 服务端: ${config.server}`);
321
316
  if (config.token) {
322
- console.log(` Token: ${config.token.substring(0, 8)}...`);
317
+ console.log(` 令牌: ${config.token.substring(0, 8)}...`);
323
318
  }
324
319
  console.log();
325
320
  }
326
321
  else {
327
- console.log('[!] No server configured\n');
322
+ console.log('[!] 未配置服务器\n');
328
323
  }
329
324
  // 显示规则
330
325
  const rules = ruleManager.getRules();
331
326
  if (rules.length > 0) {
332
- console.log(`Proxy Rules (${rules.length} configured):`);
327
+ console.log(`代理规则 (已配置 ${rules.length} ):`);
333
328
  for (const rule of rules) {
334
329
  const priority = rule.priority === 'high' ? '高' : '低';
335
330
  console.log(` [${rule.id}] ${rule.domain}${rule.path} -> ${rule.target} (${priority})`);
@@ -337,11 +332,11 @@ export async function statusCommand() {
337
332
  console.log();
338
333
  }
339
334
  else {
340
- console.log('[!] No proxy rules configured\n');
335
+ console.log('[!] 未配置代理规则\n');
341
336
  }
342
337
  }
343
338
  catch (error) {
344
- console.error('[!] Error:', error);
339
+ console.error('[!] 错误:', error);
345
340
  }
346
341
  process.exit(0);
347
342
  }
@@ -350,13 +345,13 @@ export async function statusCommand() {
350
345
  */
351
346
  export async function serverCommand(options) {
352
347
  const { port, host, tunnelPort, token, timeout } = options;
353
- console.log('Mirror HTTP Tunnel Server');
354
- console.log('=========================\n');
348
+ console.log('Mirror HTTP 隧道服务端');
349
+ console.log('========================\n');
355
350
  // 创建 WebSocket 服务器(用于隧道连接)
356
351
  const wss = new WebSocketServer({ port: tunnelPort, host });
357
- console.log(`[*] WebSocket tunnel server listening on ${host}:${tunnelPort}`);
352
+ console.log(`[*] WebSocket 隧道服务端监听中 ${host}:${tunnelPort}`);
358
353
  if (token) {
359
- console.log(`[*] Authentication token: ${token}`);
354
+ console.log(`[*] 认证令牌: ${token}`);
360
355
  }
361
356
  // 创建 HTTP 隧道服务端
362
357
  const tunnelServer = new HttpTunnelServer({
@@ -366,46 +361,46 @@ export async function serverCommand(options) {
366
361
  });
367
362
  // 启动 HTTP 服务器
368
363
  await tunnelServer.start();
369
- console.log(`[*] HTTP server listening on http://${host}:${port}\n`);
370
- console.log('[*] Waiting for client connection...\n');
364
+ console.log(`[*] HTTP 服务监听中 http://${host}:${port}\n`);
365
+ console.log('[*] 等待客户端连接...\n');
371
366
  // 处理 WebSocket 隧道连接
372
367
  wss.on('connection', (ws, req) => {
373
368
  // 验证 token(如果配置了)
374
369
  const url = new URL(req.url || '', `http://${req.headers.host}`);
375
370
  const clientToken = url.searchParams.get('token');
376
371
  if (token && clientToken !== token) {
377
- console.log('[!] Client rejected: invalid token');
372
+ console.log('[!] 客户端被拒绝:令牌无效');
378
373
  ws.close(1008, 'Invalid token');
379
374
  return;
380
375
  }
381
- const clientIp = req.socket.remoteAddress || 'unknown';
382
- console.log(`[✓] New client connected from ${clientIp}`);
376
+ const clientIp = req.socket.remoteAddress || '未知';
377
+ console.log(`[✓] 新客户端已连接,来源: ${clientIp}`);
383
378
  // 设置隧道连接(会自动关闭旧连接)
384
379
  tunnelServer.setTunnelConnection(ws);
385
- console.log('[*] HTTP tunnel is now active\n');
380
+ console.log('[*] HTTP 隧道已就绪\n');
386
381
  // 处理客户端断开
387
382
  ws.on('close', () => {
388
- console.log('[!] Client disconnected');
389
- console.log('[*] HTTP tunnel is inactive\n');
383
+ console.log('[!] 客户端已断开');
384
+ console.log('[*] HTTP 隧道未就绪\n');
390
385
  });
391
386
  ws.on('error', (error) => {
392
- console.error('[!] Client error:', error);
387
+ console.error('[!] 客户端错误:', error);
393
388
  });
394
389
  // 发送欢迎消息
395
390
  ws.send(JSON.stringify({
396
391
  type: 'WELCOME',
397
- message: 'Connected to Mirror HTTP Tunnel Server',
392
+ message: '已连接 Mirror HTTP 隧道服务端',
398
393
  serverVersion: '2.0.0',
399
394
  }));
400
395
  });
401
396
  // 处理 WebSocket 服务器错误
402
397
  wss.on('error', (error) => {
403
- console.error('[!] WebSocket server error:', error);
398
+ console.error('[!] WebSocket 服务错误:', error);
404
399
  process.exit(1);
405
400
  });
406
401
  // 处理进程退出
407
402
  const cleanup = async () => {
408
- console.log('\n[*] Shutting down...');
403
+ console.log('\n[*] 正在关闭...');
409
404
  await tunnelServer.stop();
410
405
  wss.close();
411
406
  process.exit(0);
@@ -438,14 +433,14 @@ function handleTunnelMessage(data) {
438
433
  switch (message.type) {
439
434
  case 'WELCOME':
440
435
  console.log(`[✓] ${message.message}`);
441
- console.log(`[*] Server version: ${message.serverVersion}\n`);
436
+ console.log(`[*] 服务端版本: ${message.serverVersion}\n`);
442
437
  break;
443
438
  case 'RULES_ACK':
444
439
  if (message.success) {
445
- console.log(`[✓] Rules synchronized: ${message.count} rule(s)\n`);
440
+ console.log(`[✓] 规则已同步: ${message.count} 条\n`);
446
441
  }
447
442
  else {
448
- console.error(`[!] Failed to sync rules: ${message.message}\n`);
443
+ console.error(`[!] 规则同步失败: ${message.message}\n`);
449
444
  }
450
445
  break;
451
446
  default:
@@ -454,7 +449,7 @@ function handleTunnelMessage(data) {
454
449
  }
455
450
  }
456
451
  catch (error) {
457
- console.error('[!] Error handling message:', error);
452
+ console.error('[!] 处理消息时出错:', error);
458
453
  }
459
454
  }
460
455
  //# sourceMappingURL=cli-commands.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli-commands.js","sourceRoot":"","sources":["../../src/cli/cli-commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjE,gBAAgB;AAChB,IAAI,QAAQ,GAAqB,IAAI,CAAC;AACtC,IAAI,WAAW,GAAuB,IAAI,CAAC;AAC3C,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB,0BAA0B;AAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,gBAAgB,CAAC;AAEtD;;GAEG;AACH,KAAK,UAAU,aAAa;IAC1B,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;QAElC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAExC,SAAS;QACT,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC;QAED,YAAY;QACZ,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;YAE9D,aAAa;YACb,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBACrB,OAAO,CAAC,KAAK,CAAC,sDAAsD,GAAG,GAAG,CAAC,CAAC;gBAC5E,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;gBAC5D,OAAO,KAAK,CAAC;YACf,CAAC;YAAC,MAAM,CAAC;gBACP,gBAAgB;gBAChB,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,QAAQ;QACR,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;QACxD,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,eAAe;IAC5B,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;IACT,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,OAA2B;IAC3E,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAE3C,QAAQ;IACR,MAAM,SAAS,GAAG,MAAM,aAAa,EAAE,CAAC;IACxC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,UAAU;IACV,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IAEhC,cAAc;IACd,MAAM,cAAc,GAAG,WAAW,CAAC,SAAS,EAAE,CAAC;IAC/C,IAAI,cAAc,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,kBAAkB,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,UAAU;IACV,WAAW,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAE7C,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,EAAE,CAAC,CAAC;IACrC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,sDAAsD;IACtD,IAAI,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;QAC9B,CAAC,CAAC,CAAC,GAAG,EAAE;YACJ,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvC,OAAO,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC;QACjC,CAAC,CAAC,EAAE;QACN,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC;IAEtB,WAAW;IACX,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAClD,KAAK,GAAG,GAAG,KAAK,GAAG,SAAS,SAAS,OAAO,CAAC,KAAK,EAAE,CAAC;IACvD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,KAAK,CAAC,CAAC;IAE7C,IAAI,CAAC;QACH,QAAQ,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC;QAEhC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACvB,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;YACzC,WAAW,GAAG,IAAI,CAAC;YAEnB,SAAS;YACT,SAAS,EAAE,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAY,EAAE,EAAE;YACtC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;YACpC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,iCAAiC,SAAS,WAAW,IAAI,KAAK,CAAC,CAAC;YAC5E,WAAW,GAAG,KAAK,CAAC;YACpB,eAAe,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC7B,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACtD,eAAe,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,SAAS;QACT,MAAM,WAAW,GAAG,GAAG,EAAE;YACvB,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;YACtC,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnB,CAAC;YACD,eAAe,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAClC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAEnC,SAAS;QACT,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QAC/C,eAAe,EAAE,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,UAAkB,EAAE,MAAc;IACjE,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAE1C,mBAAmB;IACnB,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IACtD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAChD,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAC9D,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAC9B,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IAEnC,OAAO;IACP,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAChD,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAC9D,OAAO,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,EAAE,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IACjC,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,IAAI,CAAC,CAAC;IAEvC,UAAU;IACV,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IAEtC,OAAO;IACP,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAEvD,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAEhE,cAAc;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC;QAC5D,IAAI,YAAY,GAAG,GAAG,CAAC;QACvB,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACnB,YAAY,GAAG,GAAG,CAAC;QACrB,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YAC7B,YAAY,GAAG,GAAG,CAAC;QACrB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,YAAY,YAAY,WAAW,UAAU,KAAK,CAAC,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,aAAa;IACb,IAAI,WAAW,IAAI,QAAQ,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,SAAS,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAe;IACjD,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAE7C,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IAEtC,IAAI,MAAM,EAAE,CAAC;QACX,SAAS;QACT,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChC,IAAI,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAE5C,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IAClF,CAAC;SAAM,CAAC;QACN,SAAS;QACT,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC;QAC5C,WAAW,CAAC,UAAU,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,WAAW,CAAC,CAAC;IAC1D,CAAC;IAED,aAAa;IACb,IAAI,WAAW,IAAI,QAAQ,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,SAAS,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAEtC,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IACtC,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;IAErC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QACzC,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,MAAM,YAAY,CAAC,CAAC;IAEhD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;QACpE,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,kBAAkB,aAAa,GAAG,YAAY,EAAE,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAE1C,QAAQ;IACR,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,gBAAgB,CAAC;QAErD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;YACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,GAAG,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAE7D,IAAI,CAAC;YACH,gBAAgB;YAChB,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,kDAAkD,GAAG,KAAK,CAAC,CAAC;QAC1E,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,2BAA2B,GAAG,uBAAuB,CAAC,CAAC;YACnE,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;YAC5C,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,gBAAgB,CAAC;QACrD,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;QAEtC,SAAS;QACT,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;YAE7D,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBACrB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;gBAC5C,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;YACnC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;gBAClE,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;gBAC5C,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QACpD,CAAC;QAED,UAAU;QACV,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,EAAE,CAAC;QACvC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAC5C,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;YAC/D,CAAC;YACD,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO;QACP,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;QACrC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,CAAC,MAAM,eAAe,CAAC,CAAC;YACzD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;gBACtD,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,GAAG,CAAC,CAAC;YAC7F,CAAC;YACD,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAaD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAsB;IACxD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAE3D,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAE3C,2BAA2B;IAC3B,MAAM,GAAG,GAAG,IAAI,eAAe,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IAE5D,OAAO,CAAC,GAAG,CAAC,4CAA4C,IAAI,IAAI,UAAU,EAAE,CAAC,CAAC;IAE9E,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,gBAAgB;IAChB,MAAM,YAAY,GAAG,IAAI,gBAAgB,CAAC;QACxC,IAAI;QACJ,IAAI;QACJ,OAAO;KACR,CAAC,CAAC;IAEH,cAAc;IACd,MAAM,YAAY,CAAC,KAAK,EAAE,CAAC;IAE3B,OAAO,CAAC,GAAG,CAAC,uCAAuC,IAAI,IAAI,IAAI,IAAI,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IAEtD,oBAAoB;IACpB,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE;QAC/B,kBAAkB;QAClB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACjE,MAAM,WAAW,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAElD,IAAI,KAAK,IAAI,WAAW,KAAK,KAAK,EAAE,CAAC;YACnC,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;YAClD,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YAChC,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI,SAAS,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;QAEzD,mBAAmB;QACnB,YAAY,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAErC,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAE/C,UAAU;QACV,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAClB,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACvB,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,SAAS;QACT,EAAE,CAAC,IAAI,CACL,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,wCAAwC;YACjD,aAAa,EAAE,OAAO;SACvB,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,qBAAqB;IACrB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QACxB,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;QACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,SAAS;IACT,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACzB,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC;QAC1B,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAE/B,SAAS;IACT,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,SAAS,SAAS;IAChB,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;IAErC,MAAM,WAAW,GAAG;QAClB,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,KAAK;KACb,CAAC;IAEF,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,IAAY;IACvC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAE5C,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,SAAS;gBACZ,OAAO,CAAC,GAAG,CAAC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;gBACtC,OAAO,CAAC,GAAG,CAAC,uBAAuB,OAAO,CAAC,aAAa,IAAI,CAAC,CAAC;gBAC9D,MAAM;YAER,KAAK,WAAW;gBACd,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO,CAAC,GAAG,CAAC,2BAA2B,OAAO,CAAC,KAAK,YAAY,CAAC,CAAC;gBACpE,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,6BAA6B,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;gBAClE,CAAC;gBACD,MAAM;YAER;gBACE,aAAa;gBACb,MAAM;QACV,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"cli-commands.js","sourceRoot":"","sources":["../../src/cli/cli-commands.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * Mirror CLI 入口 - HTTP 隧道工具(新版)
3
+ * Mirror CLI 入口 - HTTP 隧道工具
4
4
  */
5
5
  export {};
6
6
  //# sourceMappingURL=index.d.ts.map
package/dist/cli/index.js CHANGED
@@ -1,67 +1,34 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * Mirror CLI 入口 - HTTP 隧道工具(新版)
3
+ * Mirror CLI 入口 - HTTP 隧道工具
4
4
  */
5
5
  import { Command } from 'commander';
6
- import { readFile } from 'fs/promises';
7
6
  import { join, dirname } from 'path';
8
- import { existsSync } from 'fs';
9
7
  import { fileURLToPath } from 'url';
10
8
  import { execSync } from 'child_process';
11
- import { linkCommand, addCommand, removeCommand, listCommand, stopCommand, statusCommand, serverCommand } from './cli-commands.js';
9
+ import { linkCommand, addCommand, removeCommand, listCommand, stopCommand, statusCommand, serverCommand, } from './cli-commands.js';
12
10
  const program = new Command();
11
+ /**
12
+ * 通过 npm 查询当前包版本号
13
+ */
13
14
  async function getPackageVersion() {
14
15
  try {
15
- // 获取当前模块的目录
16
16
  const __filename = fileURLToPath(import.meta.url);
17
17
  const __dirname = dirname(__filename);
18
- // 向上查找 package.json
19
- const packageJsonPath = join(__dirname, '../../package.json');
20
- if (existsSync(packageJsonPath)) {
21
- const packageJsonContent = await readFile(packageJsonPath, 'utf-8');
22
- const packageJson = JSON.parse(packageJsonContent);
23
- let version = packageJson.version || '0.0.0';
24
- // 如果是开发环境,尝试添加 git commit hash
25
- try {
26
- // 查找 git 仓库根目录
27
- const gitRoot = join(__dirname, '../../..');
28
- const gitDir = join(gitRoot, '.git');
29
- if (existsSync(gitDir)) {
30
- // 获取当前 commit hash(短版本)
31
- const commitHash = execSync('git rev-parse --short HEAD', {
32
- cwd: gitRoot,
33
- encoding: 'utf-8',
34
- stdio: ['ignore', 'pipe', 'ignore'],
35
- }).trim();
36
- // 检查是否有未提交的更改
37
- let hasChanges = false;
38
- try {
39
- execSync('git diff --quiet', {
40
- cwd: gitRoot,
41
- stdio: ['ignore', 'pipe', 'ignore'],
42
- });
43
- }
44
- catch {
45
- hasChanges = true;
46
- }
47
- version = `${version}-dev.${commitHash}${hasChanges ? '.dirty' : ''}`;
48
- }
49
- }
50
- catch (error) {
51
- // git 命令失败,使用基础版本号
52
- if (version === '0.0.0') {
53
- version = '0.0.0-dev';
54
- }
55
- }
56
- return version;
57
- }
18
+ const packageRoot = join(__dirname, '../..');
19
+ const out = execSync('npm pkg get version', {
20
+ cwd: packageRoot,
21
+ encoding: 'utf-8',
22
+ stdio: ['ignore', 'pipe', 'ignore'],
23
+ }).trim();
24
+ const version = out.replace(/^"|"$/g, '');
25
+ return version || '0.0.0-dev';
58
26
  }
59
27
  catch (error) {
60
- console.warn('[!] Failed to read package.json version:', error);
28
+ console.warn('[!] 无法通过 npm 获取版本号,使用默认值:', error);
29
+ return '0.0.0-dev';
61
30
  }
62
- return '0.0.0-dev';
63
31
  }
64
- // 动态获取版本号
65
32
  const version = await getPackageVersion();
66
33
  program
67
34
  .name('mirror')
@@ -86,20 +53,11 @@ program
86
53
  .argument('[ruleId]', '规则ID(可选)')
87
54
  .action(removeCommand);
88
55
  // list 命令:查看代理规则
89
- program
90
- .command('list')
91
- .description('查看所有代理规则')
92
- .action(listCommand);
56
+ program.command('list').description('查看所有代理规则').action(listCommand);
93
57
  // stop 命令:断开连接
94
- program
95
- .command('stop')
96
- .description('断开与服务端的连接')
97
- .action(stopCommand);
58
+ program.command('stop').description('断开与服务端的连接').action(stopCommand);
98
59
  // status 命令:查看连接状态
99
- program
100
- .command('status')
101
- .description('查看当前连接状态')
102
- .action(statusCommand);
60
+ program.command('status').description('查看当前连接状态').action(statusCommand);
103
61
  // server 命令:启动服务端
104
62
  program
105
63
  .command('server')
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}