botmux 1.5.0 → 1.8.0

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 (58) hide show
  1. package/README.en.md +13 -123
  2. package/README.md +11 -121
  3. package/dist/adapters/backend/tmux-backend.d.ts.map +1 -1
  4. package/dist/adapters/backend/tmux-backend.js +8 -3
  5. package/dist/adapters/backend/tmux-backend.js.map +1 -1
  6. package/dist/adapters/cli/coco.d.ts.map +1 -1
  7. package/dist/adapters/cli/coco.js +14 -0
  8. package/dist/adapters/cli/coco.js.map +1 -1
  9. package/dist/adapters/cli/codex.d.ts.map +1 -1
  10. package/dist/adapters/cli/codex.js +9 -0
  11. package/dist/adapters/cli/codex.js.map +1 -1
  12. package/dist/adapters/cli/gemini.d.ts +4 -0
  13. package/dist/adapters/cli/gemini.d.ts.map +1 -0
  14. package/dist/adapters/cli/gemini.js +70 -0
  15. package/dist/adapters/cli/gemini.js.map +1 -0
  16. package/dist/adapters/cli/registry.d.ts +2 -1
  17. package/dist/adapters/cli/registry.d.ts.map +1 -1
  18. package/dist/adapters/cli/registry.js +3 -1
  19. package/dist/adapters/cli/registry.js.map +1 -1
  20. package/dist/adapters/cli/types.d.ts +9 -2
  21. package/dist/adapters/cli/types.d.ts.map +1 -1
  22. package/dist/cli.js +271 -29
  23. package/dist/cli.js.map +1 -1
  24. package/dist/core/command-handler.d.ts.map +1 -1
  25. package/dist/core/command-handler.js +8 -6
  26. package/dist/core/command-handler.js.map +1 -1
  27. package/dist/core/session-manager.d.ts +1 -1
  28. package/dist/core/session-manager.d.ts.map +1 -1
  29. package/dist/core/session-manager.js +8 -8
  30. package/dist/core/session-manager.js.map +1 -1
  31. package/dist/core/types.d.ts +1 -1
  32. package/dist/core/types.d.ts.map +1 -1
  33. package/dist/core/worker-pool.d.ts +4 -2
  34. package/dist/core/worker-pool.d.ts.map +1 -1
  35. package/dist/core/worker-pool.js +61 -22
  36. package/dist/core/worker-pool.js.map +1 -1
  37. package/dist/daemon.d.ts.map +1 -1
  38. package/dist/daemon.js +19 -14
  39. package/dist/daemon.js.map +1 -1
  40. package/dist/im/lark/card-builder.d.ts +1 -1
  41. package/dist/im/lark/card-builder.d.ts.map +1 -1
  42. package/dist/im/lark/card-builder.js +2 -1
  43. package/dist/im/lark/card-builder.js.map +1 -1
  44. package/dist/im/lark/card-handler.js +7 -7
  45. package/dist/im/lark/card-handler.js.map +1 -1
  46. package/dist/im/lark/client.d.ts +4 -0
  47. package/dist/im/lark/client.d.ts.map +1 -1
  48. package/dist/im/lark/client.js +47 -12
  49. package/dist/im/lark/client.js.map +1 -1
  50. package/dist/server.d.ts.map +1 -1
  51. package/dist/server.js +13 -10
  52. package/dist/server.js.map +1 -1
  53. package/dist/utils/idle-detector.d.ts.map +1 -1
  54. package/dist/utils/idle-detector.js +3 -2
  55. package/dist/utils/idle-detector.js.map +1 -1
  56. package/dist/worker.js +171 -75
  57. package/dist/worker.js.map +1 -1
  58. package/package.json +2 -1
package/dist/worker.js CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * Worker process: manages a single Claude Code PTY session + web terminal.
3
+ * Worker process: manages a single CLI PTY session + web terminal.
4
4
  * Forked by the daemon, communicates via Node.js IPC.
5
5
  *
6
6
  * Lifecycle:
@@ -9,8 +9,8 @@
9
9
  * 3. Spawns CLI via CliAdapter + PtyBackend (interactive mode)
10
10
  * 4. Starts HTTP + WebSocket server for xterm.js
11
11
  * 5. Receives 'message' events from daemon, writes to PTY stdin
12
- * 6. On 'close', kills Claude and exits
13
- * 7. On 'restart', kills Claude and re-spawns with --resume
12
+ * 6. On 'close', kills CLI and exits
13
+ * 7. On 'restart', kills CLI and re-spawns with --resume
14
14
  */
15
15
  import { randomBytes } from 'node:crypto';
16
16
  import { createServer as createHttpServer } from 'node:http';
@@ -20,6 +20,7 @@ import { createCliAdapterSync } from './adapters/cli/registry.js';
20
20
  import { PtyBackend } from './adapters/backend/pty-backend.js';
21
21
  import { TmuxBackend } from './adapters/backend/tmux-backend.js';
22
22
  import { IdleDetector } from './utils/idle-detector.js';
23
+ import * as pty from 'node-pty';
23
24
  // ─── State ───────────────────────────────────────────────────────────────────
24
25
  let cliAdapter = null;
25
26
  let backend = null;
@@ -29,15 +30,19 @@ let httpServer = null;
29
30
  let wss = null;
30
31
  const wsClients = new Set();
31
32
  const authedClients = new WeakSet();
33
+ /** Per-WS-client tmux attach PTYs (tmux mode only). */
34
+ const clientPtys = new Map();
32
35
  const writeToken = randomBytes(16).toString('hex');
33
36
  let sessionId = '';
34
37
  let lastInitConfig = null;
38
+ const CLI_DISPLAY_NAMES = { 'claude-code': 'Claude', aiden: 'Aiden', coco: 'CoCo', codex: 'Codex', gemini: 'Gemini' };
39
+ function cliName() { return CLI_DISPLAY_NAMES[lastInitConfig?.cliId ?? ''] ?? 'CLI'; }
35
40
  let isPromptReady = false;
36
41
  const pendingMessages = [];
37
42
  /** Suppress screen updates until first prompt detected (avoids history replay in card on --resume) */
38
43
  let awaitingFirstPrompt = true;
39
44
  // ─── PTY Dimensions ──────────────────────────────────────────────────────────
40
- // Wide PTY so Claude Code positions right-aligned TUI overlays (timer, timeout)
45
+ // Wide PTY so CLI positions right-aligned TUI overlays (timer, timeout)
41
46
  // far to the right. The snapshot reader only reads the first 160 columns,
42
47
  // cleanly excluding overlays without any regex hacking.
43
48
  const PTY_COLS = 300;
@@ -59,19 +64,17 @@ let trustHandled = false;
59
64
  // ─── Prompt Detection ────────────────────────────────────────────────────────
60
65
  function onPtyData(data) {
61
66
  renderer?.write(data);
62
- // In tmux mode, strip alternate screen sequences so xterm.js stays in
63
- // normal screen mode (where scrollback works). The headless renderer
64
- // above still gets raw data for accurate screen capture.
65
- const relayData = isTmuxMode
66
- ? data.replace(/\x1b\[\?(?:1049|1047|47)[hl]/g, '')
67
- : data;
68
- scrollback += relayData;
69
- if (scrollback.length > MAX_SCROLLBACK) {
70
- scrollback = scrollback.slice(-MAX_SCROLLBACK);
71
- }
72
- for (const ws of wsClients) {
73
- if (ws.readyState === WebSocket.OPEN)
74
- ws.send(relayData);
67
+ // In tmux mode, web clients have their own tmux attach — no relay needed.
68
+ // In non-tmux mode, broadcast to all WS clients via shared scrollback.
69
+ if (!isTmuxMode) {
70
+ scrollback += data;
71
+ if (scrollback.length > MAX_SCROLLBACK) {
72
+ scrollback = scrollback.slice(-MAX_SCROLLBACK);
73
+ }
74
+ for (const ws of wsClients) {
75
+ if (ws.readyState === WebSocket.OPEN)
76
+ ws.send(data);
77
+ }
75
78
  }
76
79
  // Trust dialog auto-accept
77
80
  if (!trustHandled) {
@@ -125,7 +128,7 @@ function sendToPty(content) {
125
128
  }
126
129
  else {
127
130
  pendingMessages.push(content);
128
- log(`Queued message (${pendingMessages.length} pending): "${content.substring(0, 80)}" — Claude is busy`);
131
+ log(`Queued message (${pendingMessages.length} pending): "${content.substring(0, 80)}" — ${cliName()} is busy`);
129
132
  }
130
133
  }
131
134
  // ─── Screen Update Timer ─────────────────────────────────────────────────────
@@ -151,7 +154,7 @@ function stopScreenUpdates() {
151
154
  }
152
155
  }
153
156
  // ─── PTY Management ──────────────────────────────────────────────────────────
154
- function spawnClaude(cfg) {
157
+ function spawnCli(cfg) {
155
158
  cliAdapter = createCliAdapterSync(cfg.cliId, cfg.cliPathOverride);
156
159
  const useTmux = cfg.backendType === 'tmux';
157
160
  isTmuxMode = useTmux;
@@ -160,6 +163,7 @@ function spawnClaude(cfg) {
160
163
  const args = cliAdapter.buildArgs({
161
164
  sessionId: cfg.sessionId,
162
165
  resume: cfg.resume ?? false,
166
+ initialPrompt: cfg.prompt || undefined,
163
167
  });
164
168
  // Extra args from env (CLI_DISABLE_DEFAULT_ARGS is removed — adapters own their defaults)
165
169
  const extra = (process.env.CLI_EXTRA_ARGS ?? '').trim();
@@ -185,13 +189,13 @@ function spawnClaude(cfg) {
185
189
  });
186
190
  backend.onData(onPtyData);
187
191
  backend.onExit((code, signal) => {
188
- log(`Claude exited (code: ${code}, signal: ${signal})`);
192
+ log(`${cliName()} exited (code: ${code}, signal: ${signal})`);
189
193
  backend = null;
190
194
  isPromptReady = false;
191
195
  send({ type: 'claude_exit', code, signal });
192
196
  });
193
197
  }
194
- function killClaude() {
198
+ function killCli() {
195
199
  idleDetector?.dispose();
196
200
  idleDetector = null;
197
201
  stopScreenUpdates();
@@ -218,27 +222,80 @@ function startWebServer(host, preferredPort) {
218
222
  if (hasWrite)
219
223
  authedClients.add(ws);
220
224
  log(`WS client connected (total: ${wsClients.size}, write: ${hasWrite})`);
221
- // Replay scrollback buffer so late-connecting clients see existing output
222
- if (scrollback.length > 0) {
223
- ws.send(scrollback);
224
- }
225
- ws.on('message', (raw) => {
226
- try {
227
- const msg = JSON.parse(String(raw));
228
- if (msg.type === 'resize' && msg.cols > 0 && msg.rows > 0) {
229
- backend?.resize(msg.cols, msg.rows);
225
+ if (isTmuxMode && sessionId) {
226
+ // ── Tmux mode: per-client attach ──
227
+ // Each WS client gets its own `tmux attach-session` PTY.
228
+ // Scrollback is handled natively by tmux (history-limit).
229
+ const tmuxName = TmuxBackend.sessionName(sessionId);
230
+ const cp = pty.spawn('tmux', ['attach-session', '-t', tmuxName], {
231
+ name: 'xterm-256color',
232
+ cols: 80,
233
+ rows: 24,
234
+ });
235
+ clientPtys.set(ws, cp);
236
+ cp.onData((d) => {
237
+ if (ws.readyState === WebSocket.OPEN)
238
+ ws.send(d);
239
+ });
240
+ cp.onExit(() => {
241
+ clientPtys.delete(ws);
242
+ if (ws.readyState === WebSocket.OPEN)
243
+ ws.close();
244
+ });
245
+ ws.on('message', (raw) => {
246
+ try {
247
+ const msg = JSON.parse(String(raw));
248
+ if (msg.type === 'resize' && msg.cols > 0 && msg.rows > 0) {
249
+ cp.resize(msg.cols, msg.rows);
250
+ }
251
+ else if (msg.type === 'input' && typeof msg.data === 'string') {
252
+ if (!authedClients.has(ws)) {
253
+ // Read-only: allow mouse events through (scroll/click are
254
+ // non-destructive in tmux — just views history / selects text).
255
+ // SGR mouse: \x1b[<... X10 mouse: \x1b[M...
256
+ if (!/^\x1b\[([<M])/.test(msg.data))
257
+ return;
258
+ }
259
+ cp.write(msg.data);
260
+ }
230
261
  }
231
- else if (msg.type === 'input' && typeof msg.data === 'string') {
232
- if (!authedClients.has(ws))
233
- return; // read-only
234
- backend?.write(msg.data);
262
+ catch { /* ignore non-JSON or bad messages */ }
263
+ });
264
+ ws.on('close', () => {
265
+ wsClients.delete(ws);
266
+ const existing = clientPtys.get(ws);
267
+ if (existing) {
268
+ try {
269
+ existing.kill();
270
+ }
271
+ catch { /* already dead */ }
272
+ clientPtys.delete(ws);
235
273
  }
274
+ });
275
+ }
276
+ else {
277
+ // ── Non-tmux mode: shared scrollback relay ──
278
+ if (scrollback.length > 0) {
279
+ ws.send(scrollback);
236
280
  }
237
- catch { /* ignore non-JSON or bad messages */ }
238
- });
239
- ws.on('close', () => {
240
- wsClients.delete(ws);
241
- });
281
+ ws.on('message', (raw) => {
282
+ try {
283
+ const msg = JSON.parse(String(raw));
284
+ if (msg.type === 'resize' && msg.cols > 0 && msg.rows > 0) {
285
+ backend?.resize(msg.cols, msg.rows);
286
+ }
287
+ else if (msg.type === 'input' && typeof msg.data === 'string') {
288
+ if (!authedClients.has(ws))
289
+ return; // read-only
290
+ backend?.write(msg.data);
291
+ }
292
+ }
293
+ catch { /* ignore non-JSON or bad messages */ }
294
+ });
295
+ ws.on('close', () => {
296
+ wsClients.delete(ws);
297
+ });
298
+ }
242
299
  });
243
300
  const listenPort = preferredPort ?? 0;
244
301
  httpServer.listen(listenPort, host, () => {
@@ -271,22 +328,23 @@ function getTerminalHtml() {
271
328
  <head>
272
329
  <meta charset="utf-8">
273
330
  <meta id="vp" name="viewport" content="width=device-width,initial-scale=1,viewport-fit=cover">
274
- <title>Claude Code - ${label}</title>
331
+ <title>${cliName()} - ${label}</title>
275
332
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@xterm/xterm@5/css/xterm.min.css">
276
333
  <style>
277
334
  *{margin:0;padding:0;box-sizing:border-box}
278
335
  html,body{height:100%;background:#1a1b26;overflow:hidden}
279
336
  body{display:flex;flex-direction:column}
280
- #input-bar{display:none;padding:3px 6px;background:#15161e;border-bottom:1px solid #33467c;
281
- gap:6px;align-items:flex-end}
282
- #input-bar.show{display:flex}
283
- #input-bar textarea{flex:1;background:#24283b;color:#a9b1d6;border:1px solid #33467c;
284
- border-radius:4px;padding:4px 8px;font-size:14px;outline:none;resize:none;
285
- font-family:-apple-system,sans-serif;line-height:1.3;max-height:72px;overflow-y:auto}
286
- #input-bar textarea:focus{border-color:#7aa2f7}
287
- #input-bar button{background:#7aa2f7;color:#1a1b26;border:none;border-radius:4px;
288
- padding:5px 12px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}
289
- #input-bar button:active{opacity:0.7}
337
+ #toolbar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:100;
338
+ padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));
339
+ background:rgba(21,22,30,0.92);border-top:1px solid #33467c;
340
+ gap:6px;align-items:center;justify-content:center;
341
+ backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
342
+ #toolbar.show{display:flex}
343
+ #toolbar button{background:#24283b;color:#a9b1d6;border:1px solid #33467c;
344
+ border-radius:6px;padding:8px 14px;font-size:14px;font-family:monospace;
345
+ white-space:nowrap;cursor:pointer;min-width:44px;min-height:36px;text-align:center;
346
+ touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none}
347
+ #toolbar button:active{background:#7aa2f7;color:#1a1b26}
290
348
  #terminal{flex:1;min-height:0}
291
349
  #terminal .xterm{height:100%}
292
350
  #status{position:fixed;top:8px;right:12px;z-index:10;font:12px monospace;
@@ -296,11 +354,17 @@ body{display:flex;flex-direction:column}
296
354
  </style>
297
355
  </head>
298
356
  <body>
299
- <div id="input-bar">
300
- <textarea id="mi" rows="1" placeholder="输入消息..." autocomplete="off" autocorrect="off"></textarea>
301
- <button id="ms">发送</button>
302
- </div>
303
357
  <div id="terminal"></div>
358
+ <div id="toolbar">
359
+ <button data-k="esc">Esc</button>
360
+ <button data-k="ctrlc">^C</button>
361
+ <button data-k="tab">Tab</button>
362
+ <button data-k="up">\u2191</button>
363
+ <button data-k="down">\u2193</button>
364
+ <button data-k="left">\u2190</button>
365
+ <button data-k="right">\u2192</button>
366
+ <button data-k="enter">\u21B5</button>
367
+ </div>
304
368
  <div id="status" class="err">connecting...</div>
305
369
  <script src="https://cdn.jsdelivr.net/npm/@xterm/xterm@5/lib/xterm.min.js"></script>
306
370
  <script src="https://cdn.jsdelivr.net/npm/@xterm/addon-fit@0/lib/addon-fit.min.js"></script>
@@ -316,7 +380,7 @@ var term=new Terminal({
316
380
  green:'#9ece6a',yellow:'#e0af68',blue:'#7aa2f7',magenta:'#bb9af7',
317
381
  cyan:'#7dcfff',white:'#a9b1d6'},
318
382
  fontSize:14,fontFamily:"'JetBrains Mono','Fira Code',monospace",
319
- cursorBlink:!isTouch,disableStdin:isTouch,scrollback:50000,allowProposedApi:true
383
+ cursorBlink:!isTouch,scrollback:50000,allowProposedApi:true
320
384
  });
321
385
  var fit=new FitAddon.FitAddon();
322
386
  term.loadAddon(fit);
@@ -341,18 +405,41 @@ window.addEventListener('resize',function(){fit.fit();sendResize()});
341
405
  ws.onerror=function(){ws.close()};
342
406
  })();
343
407
 
344
- // ── Mobile input bar (top) ──
345
- if(isTouch){
346
- var bar=document.getElementById('input-bar'),mi=document.getElementById('mi'),ms=document.getElementById('ms');
347
- bar.classList.add('show');
348
- function send(){
349
- var v=mi.value;if(!v||!ws_||ws_.readyState!==1)return;
350
- ws_.send(JSON.stringify({type:'input',data:v+String.fromCharCode(13)}));
351
- mi.value='';mi.style.height='auto';
352
- fit.fit();sendResize();
408
+ // ── Read-only scroll handling ──
409
+ var hasToken=!!new URLSearchParams(location.search).get('token');
410
+ if(!hasToken&&!${isTmuxMode}){
411
+ // Non-tmux read-only: CLI mouse mode blocks local scroll, override with scrollLines
412
+ document.getElementById('terminal').addEventListener('wheel',function(e){
413
+ e.preventDefault();term.scrollLines(e.deltaY>0?3:-3);
414
+ },{passive:false});
415
+ }
416
+
417
+ // ── Touch shortcut toolbar ──
418
+ if(isTouch&&hasToken){
419
+ var km={esc:'\\x1b',ctrlc:'\\x03',tab:'\\t',up:'\\x1b[A',down:'\\x1b[B',left:'\\x1b[D',right:'\\x1b[C',enter:'\\r'};
420
+ var tb=document.getElementById('toolbar');
421
+ tb.classList.add('show');
422
+ // Use direct listeners per button — more reliable on mobile than event delegation
423
+ var btns=tb.getElementsByTagName('button');
424
+ for(var i=0;i<btns.length;i++){(function(btn){
425
+ function fire(e){e.preventDefault();e.stopPropagation();
426
+ if(!ws_||ws_.readyState!==1)return;
427
+ var k=km[btn.getAttribute('data-k')];
428
+ if(k)ws_.send(JSON.stringify({type:'input',data:k}));
429
+ }
430
+ btn.addEventListener('touchend',fire,{passive:false});
431
+ btn.addEventListener('click',fire);
432
+ })(btns[i]);}
433
+ // Keyboard avoidance: move toolbar above virtual keyboard
434
+ if(window.visualViewport){
435
+ function posToolbar(){
436
+ var vv=window.visualViewport;
437
+ var kb=window.innerHeight-vv.height-vv.offsetTop;
438
+ tb.style.bottom=Math.max(0,Math.round(kb))+'px';
439
+ }
440
+ window.visualViewport.addEventListener('resize',posToolbar);
441
+ window.visualViewport.addEventListener('scroll',posToolbar);
353
442
  }
354
- mi.addEventListener('input',function(){this.style.height='auto';this.style.height=Math.min(this.scrollHeight,72)+'px';fit.fit()});
355
- ms.addEventListener('click',send);
356
443
  }
357
444
  </script>
358
445
  </body>
@@ -381,9 +468,11 @@ process.on('message', async (raw) => {
381
468
  try {
382
469
  const port = await startWebServer('0.0.0.0', msg.webPort);
383
470
  startScreenUpdates();
384
- spawnClaude(msg);
385
- // Queue the initial prompt — flushed when Claude shows
386
- if (msg.prompt) {
471
+ spawnCli(msg);
472
+ // Queue the initial prompt — flushed when CLI shows idle.
473
+ // Adapters with passesInitialPromptViaArgs (e.g. Gemini -i) bake the
474
+ // prompt into CLI args, so we skip queuing to avoid double-send.
475
+ if (msg.prompt && !cliAdapter?.passesInitialPromptViaArgs) {
387
476
  pendingMessages.push(msg.prompt);
388
477
  }
389
478
  send({ type: 'ready', port, token: writeToken });
@@ -402,12 +491,12 @@ process.on('message', async (raw) => {
402
491
  }
403
492
  case 'restart': {
404
493
  log('Restart requested');
405
- killClaude();
494
+ killCli();
406
495
  awaitingFirstPrompt = true;
407
496
  setTimeout(() => {
408
497
  if (lastInitConfig) {
409
498
  startScreenUpdates();
410
- spawnClaude({ ...lastInitConfig, resume: true, prompt: '' });
499
+ spawnCli({ ...lastInitConfig, resume: true, prompt: '' });
411
500
  }
412
501
  }, 500);
413
502
  break;
@@ -416,7 +505,7 @@ process.on('message', async (raw) => {
416
505
  log('Close requested');
417
506
  // destroySession kills tmux session permanently; kill() only detaches
418
507
  backend?.destroySession?.();
419
- killClaude();
508
+ killCli();
420
509
  cleanup();
421
510
  process.exit(0);
422
511
  }
@@ -424,6 +513,13 @@ process.on('message', async (raw) => {
424
513
  });
425
514
  // ─── Cleanup ─────────────────────────────────────────────────────────────────
426
515
  function cleanup() {
516
+ for (const [, cp] of clientPtys) {
517
+ try {
518
+ cp.kill();
519
+ }
520
+ catch { /* already dead */ }
521
+ }
522
+ clientPtys.clear();
427
523
  for (const ws of wsClients)
428
524
  ws.close();
429
525
  wsClients.clear();
@@ -436,9 +532,9 @@ function cleanup() {
436
532
  httpServer = null;
437
533
  }
438
534
  }
439
- process.on('SIGTERM', () => { killClaude(); cleanup(); process.exit(0); });
440
- process.on('SIGINT', () => { killClaude(); cleanup(); process.exit(0); });
535
+ process.on('SIGTERM', () => { killCli(); cleanup(); process.exit(0); });
536
+ process.on('SIGINT', () => { killCli(); cleanup(); process.exit(0); });
441
537
  // If parent daemon dies, IPC channel closes — clean up
442
- process.on('disconnect', () => { log('Daemon disconnected'); killClaude(); cleanup(); process.exit(0); });
538
+ process.on('disconnect', () => { log('Daemon disconnected'); killCli(); cleanup(); process.exit(0); });
443
539
  log('Worker started, waiting for init...');
444
540
  //# sourceMappingURL=worker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,IAAI,gBAAgB,EAAwB,MAAM,WAAW,CAAC;AACnF,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAEhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAEjE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAEhC,gFAAgF;AAEhF,IAAI,UAAU,GAAsB,IAAI,CAAC;AACzC,IAAI,OAAO,GAA0B,IAAI,CAAC;AAC1C,IAAI,YAAY,GAAwB,IAAI,CAAC;AAC7C,IAAI,UAAU,GAAG,KAAK,CAAC;AACvB,IAAI,UAAU,GAA+C,IAAI,CAAC;AAClE,IAAI,GAAG,GAA2B,IAAI,CAAC;AACvC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAa,CAAC;AACvC,MAAM,aAAa,GAAG,IAAI,OAAO,EAAa,CAAC;AAC/C,uDAAuD;AACvD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAuB,CAAC;AAClD,MAAM,UAAU,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AAEnD,IAAI,SAAS,GAAG,EAAE,CAAC;AACnB,IAAI,cAAc,GAAqD,IAAI,CAAC;AAC5E,MAAM,iBAAiB,GAA2B,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AAC9I,SAAS,OAAO,KAAa,OAAO,iBAAiB,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;AAC9F,IAAI,aAAa,GAAG,KAAK,CAAC;AAC1B,MAAM,eAAe,GAAa,EAAE,CAAC;AACrC,sGAAsG;AACtG,IAAI,mBAAmB,GAAG,IAAI,CAAC;AAE/B,gFAAgF;AAChF,wEAAwE;AACxE,0EAA0E;AAC1E,wDAAwD;AACxD,MAAM,QAAQ,GAAG,GAAG,CAAC;AACrB,MAAM,QAAQ,GAAG,EAAE,CAAC;AAEpB,gFAAgF;AAEhF,IAAI,QAAQ,GAA4B,IAAI,CAAC;AAC7C,IAAI,iBAAiB,GAA0C,IAAI,CAAC;AACpE,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAExC,+EAA+E;AAE/E,MAAM,cAAc,GAAG,SAAS,CAAC,CAAC,eAAe;AACjD,IAAI,UAAU,GAAG,EAAE,CAAC;AAEpB,gFAAgF;AAEhF,0CAA0C;AAC1C,sFAAsF;AACtF,yFAAyF;AACzF,uCAAuC;AACvC,MAAM,oBAAoB,GAAG,wCAAwC,CAAC;AACtE,IAAI,YAAY,GAAG,KAAK,CAAC;AAEzB,gFAAgF;AAEhF,SAAS,SAAS,CAAC,IAAY;IAC7B,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAEtB,0EAA0E;IAC1E,uEAAuE;IACvE,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,UAAU,IAAI,IAAI,CAAC;QACnB,IAAI,UAAU,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;YACvC,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,CAAC;QACjD,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;YAC3B,IAAI,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI;gBAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,2BAA2B;IAC3B,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;QAC5D,IAAI,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxC,YAAY,GAAG,IAAI,CAAC;YACpB,GAAG,CAAC,0CAA0C,CAAC,CAAC;YAChD,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;IACH,CAAC;IAED,0CAA0C;IAC1C,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,eAAe;IACtB,IAAI,aAAa;QAAE,OAAO,CAAE,gCAAgC;IAC5D,aAAa,GAAG,IAAI,CAAC;IACrB,IAAI,mBAAmB,EAAE,CAAC;QACxB,mBAAmB,GAAG,KAAK,CAAC;QAC5B,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAE,6CAA6C;IACzE,CAAC;IACD,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;IAC/B,iEAAiE;IACjE,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACxC,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,YAAY,EAAE,CAAC;AACjB,CAAC;AAED,SAAS,YAAY;IACnB,GAAG,CAAC,iBAAiB,eAAe,CAAC,MAAM,yBAAyB,aAAa,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1G,OAAO,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;QAC5E,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,EAAG,CAAC;QACrC,aAAa,GAAG,KAAK,CAAC;QACtB,YAAY,EAAE,KAAK,EAAE,CAAC;QACtB,GAAG,CAAC,4BAA4B,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QACzD,uEAAuE;QACvE,qEAAqE;QACrE,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,OAAe;IAChC,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU;QAAE,OAAO;IACpC,IAAI,aAAa,EAAE,CAAC;QAClB,aAAa,GAAG,KAAK,CAAC;QACtB,YAAY,EAAE,KAAK,EAAE,CAAC;QACtB,GAAG,CAAC,oBAAoB,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QACrD,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;SAAM,CAAC;QACN,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9B,GAAG,CAAC,mBAAmB,eAAe,CAAC,MAAM,eAAe,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,OAAO,EAAE,UAAU,CAAC,CAAC;IAClH,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF,SAAS,kBAAkB;IACzB,QAAQ,GAAG,IAAI,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACpD,iBAAiB,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,IAAI,CAAC,QAAQ,IAAI,mBAAmB;YAAE,OAAO;QAC7C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACjD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QACvF,CAAC;IACH,CAAC,EAAE,yBAAyB,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,iBAAiB;IACxB,IAAI,iBAAiB,EAAE,CAAC;QAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;QAAC,iBAAiB,GAAG,IAAI,CAAC;IAAC,CAAC;IACtF,IAAI,QAAQ,EAAE,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAAC,QAAQ,GAAG,IAAI,CAAC;IAAC,CAAC;AACxD,CAAC;AAED,gFAAgF;AAEhF,SAAS,QAAQ,CAAC,GAA8C;IAC9D,UAAU,GAAG,oBAAoB,CAAC,GAAG,CAAC,KAAY,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,KAAK,MAAM,CAAC;IAC3C,UAAU,GAAG,OAAO,CAAC;IACrB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxF,OAAO,GAAG,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;IAErC,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC;QAChC,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,KAAK;QAC3B,aAAa,EAAE,GAAG,CAAC,MAAM,IAAI,SAAS;KACvC,CAAC,CAAC;IAEH,0FAA0F;IAC1F,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACxD,IAAI,KAAK;QAAE,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAE5D,GAAG,CAAC,aAAa,UAAU,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC;IAEtF,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,EAAE;QAC1C,GAAG,EAAE,GAAG,CAAC,UAAU;QACnB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,SAAS,EAAuC;KACpF,CAAC,CAAC;IAEH,0EAA0E;IAC1E,IAAI,MAAM,EAAE,UAAU,EAAE,CAAC;QACvB,mBAAmB,GAAG,KAAK,CAAC;QAC5B,GAAG,CAAC,sCAAsC,CAAC,CAAC;IAC9C,CAAC;IAED,wBAAwB;IACxB,YAAY,GAAG,IAAI,YAAY,CAAC,UAAU,CAAC,CAAC;IAC5C,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE;QACvB,GAAG,CAAC,wBAAwB,CAAC,CAAC;QAC9B,eAAe,EAAE,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC1B,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAC9B,GAAG,CAAC,GAAG,OAAO,EAAE,kBAAkB,IAAI,aAAa,MAAM,GAAG,CAAC,CAAC;QAC9D,OAAO,GAAG,IAAI,CAAC;QACf,aAAa,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,OAAO;IACd,YAAY,EAAE,OAAO,EAAE,CAAC;IACxB,YAAY,GAAG,IAAI,CAAC;IACpB,iBAAiB,EAAE,CAAC;IACpB,OAAO,EAAE,IAAI,EAAE,CAAC;IAChB,OAAO,GAAG,IAAI,CAAC;IACf,aAAa,GAAG,KAAK,CAAC;IACtB,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,UAAU,GAAG,EAAE,CAAC;IAChB,YAAY,GAAG,KAAK,CAAC;AACvB,CAAC;AAED,gFAAgF;AAEhF,SAAS,cAAc,CAAC,IAAY,EAAE,aAAsB;IAC1D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,UAAU,GAAG,gBAAgB,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YAC1C,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,0BAA0B,EAAE,CAAC,CAAC;YACnE,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,GAAG,GAAG,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QAElD,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,GAAoB,EAAE,EAAE;YAChD,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAElB,iDAAiD;YACjD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAClE,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC;YAC9D,IAAI,QAAQ;gBAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,GAAG,CAAC,+BAA+B,SAAS,CAAC,IAAI,YAAY,QAAQ,GAAG,CAAC,CAAC;YAE1E,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC;gBAC5B,qCAAqC;gBACrC,yDAAyD;gBACzD,0DAA0D;gBAC1D,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBACpD,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE;oBAC/D,IAAI,EAAE,gBAAgB;oBACtB,IAAI,EAAE,EAAE;oBACR,IAAI,EAAE,EAAE;iBACT,CAAC,CAAC;gBACH,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBAEvB,EAAE,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE;oBACtB,IAAI,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI;wBAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACnD,CAAC,CAAC,CAAC;gBACH,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE;oBACb,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACtB,IAAI,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI;wBAAE,EAAE,CAAC,KAAK,EAAE,CAAC;gBACnD,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;oBACvB,IAAI,CAAC;wBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;wBACpC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;4BAC1D,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;wBAChC,CAAC;6BAAM,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;4BAChE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gCAC3B,0DAA0D;gCAC1D,gEAAgE;gCAChE,6CAA6C;gCAC7C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;oCAAE,OAAO;4BAC9C,CAAC;4BACD,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBACrB,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC,CAAC,qCAAqC,CAAC,CAAC;gBACnD,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBAClB,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACrB,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACpC,IAAI,QAAQ,EAAE,CAAC;wBACb,IAAI,CAAC;4BAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;wBAAC,CAAC;wBAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;wBACrD,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACxB,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,+CAA+C;gBAC/C,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1B,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACtB,CAAC;gBAED,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;oBACvB,IAAI,CAAC;wBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;wBACpC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;4BAC1D,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;wBACtC,CAAC;6BAAM,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;4BAChE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;gCAAE,OAAO,CAAC,YAAY;4BAChD,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBAC3B,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC,CAAC,qCAAqC,CAAC,CAAC;gBACnD,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBAClB,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACvB,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,aAAa,IAAI,CAAC,CAAC;QACtC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE;YACvC,MAAM,IAAI,GAAG,UAAW,CAAC,OAAO,EAAE,CAAC;YACnC,MAAM,IAAI,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9D,GAAG,CAAC,qBAAqB,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAA0B,EAAE,EAAE;YACpD,IAAI,aAAa,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC/C,8CAA8C;gBAC9C,GAAG,CAAC,kBAAkB,aAAa,iCAAiC,CAAC,CAAC;gBACtE,UAAW,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE;oBAC/B,MAAM,IAAI,GAAG,UAAW,CAAC,OAAO,EAAE,CAAC;oBACnC,MAAM,IAAI,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC9D,GAAG,CAAC,qBAAqB,IAAI,IAAI,IAAI,aAAa,CAAC,CAAC;oBACpD,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,eAAe;IACtB,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxC,OAAO;;;;;SAKA,OAAO,EAAE,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA+EZ,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAoCnB,CAAC;AACT,CAAC;AAED,gFAAgF;AAEhF,SAAS,IAAI,CAAC,GAAmB;IAC/B,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,GAAG,CAAC,GAAW;IACtB,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,aAAa,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;AACzF,CAAC;AAED,gFAAgF;AAEhF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,GAAY,EAAE,EAAE;IAC3C,MAAM,GAAG,GAAG,GAAqB,CAAC;IAElC,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;QACjB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,IAAI,cAAc;gBAAE,OAAO,CAAE,sBAAsB;YACnD,cAAc,GAAG,GAAG,CAAC;YACrB,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;YAC1B,IAAI,GAAG,CAAC,WAAW;gBAAE,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,WAAW,CAAC;YACnE,GAAG,CAAC,iBAAiB,SAAS,SAAS,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;YAEzD,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC1D,kBAAkB,EAAE,CAAC;gBACrB,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAEd,0DAA0D;gBAC1D,qEAAqE;gBACrE,iEAAiE;gBACjE,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,0BAA0B,EAAE,CAAC;oBAC1D,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACnC,CAAC;gBAED,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;YACnD,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,MAAM;QACR,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,8EAA8E;YAC9E,QAAQ,EAAE,WAAW,EAAE,CAAC;YACxB,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACvB,MAAM;QACR,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACzB,OAAO,EAAE,CAAC;YACV,mBAAmB,GAAG,IAAI,CAAC;YAC3B,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,cAAc,EAAE,CAAC;oBACnB,kBAAkB,EAAE,CAAC;oBACrB,QAAQ,CAAC,EAAE,GAAG,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC5D,CAAC;YACH,CAAC,EAAE,GAAG,CAAC,CAAC;YACR,MAAM;QACR,CAAC;QAED,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,GAAG,CAAC,iBAAiB,CAAC,CAAC;YACvB,sEAAsE;YACtE,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC;YAC5B,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,gFAAgF;AAEhF,SAAS,OAAO;IACd,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC;QAChC,IAAI,CAAC;YAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;IACjD,CAAC;IACD,UAAU,CAAC,KAAK,EAAE,CAAC;IACnB,KAAK,MAAM,EAAE,IAAI,SAAS;QAAE,EAAE,CAAC,KAAK,EAAE,CAAC;IACvC,SAAS,CAAC,KAAK,EAAE,CAAC;IAClB,IAAI,GAAG,EAAE,CAAC;QAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QAAC,GAAG,GAAG,IAAI,CAAC;IAAC,CAAC;IACrC,IAAI,UAAU,EAAE,CAAC;QAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAAC,UAAU,GAAG,IAAI,CAAC;IAAC,CAAC;AAC5D,CAAC;AAED,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACxE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvE,uDAAuD;AACvD,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEvG,GAAG,CAAC,qCAAqC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "botmux",
3
- "version": "1.5.0",
3
+ "version": "1.8.0",
4
4
  "description": "Bridge between IM platforms and AI coding CLIs — one topic, one CLI session with live streaming",
5
5
  "type": "module",
6
6
  "main": "dist/index-daemon.js",
@@ -27,6 +27,7 @@
27
27
  "test:codex": "vitest run test/codex-input.e2e.ts",
28
28
  "test:mcp": "vitest run test/codex-mcp.e2e.ts",
29
29
  "test:claude-mcp": "vitest run test/claude-code-mcp.e2e.ts",
30
+ "test:gemini": "vitest run test/gemini-input.e2e.ts",
30
31
  "prepublishOnly": "npm run build"
31
32
  },
32
33
  "dependencies": {