@tunnelbox/dsh-tunnelbox 0.1.6 → 0.1.7

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 (2) hide show
  1. package/dist/index.mjs +21 -33
  2. package/package.json +2 -2
package/dist/index.mjs CHANGED
@@ -7,12 +7,14 @@ import Schema from "@deepseek-ai/schemastery";
7
7
  import { randomBytes as randomBytes2 } from "node:crypto";
8
8
  import { hostname } from "node:os";
9
9
 
10
- // ../core/src/types.ts
10
+ // ../core/dist/index.js
11
+ import { randomBytes } from "crypto";
12
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
13
+ import { homedir } from "os";
14
+ import { dirname, join } from "path";
11
15
  function envelope(type, payload, id) {
12
16
  return { id, type, payload, ts: Date.now() };
13
17
  }
14
-
15
- // ../core/src/relay.ts
16
18
  var BASE_DELAY = 1e3;
17
19
  var MAX_DELAY = 15e3;
18
20
  var RelayClient = class {
@@ -95,14 +97,6 @@ var RelayClient = class {
95
97
  this.timer = setTimeout(() => this.open(), delay);
96
98
  }
97
99
  };
98
-
99
- // ../core/src/state.ts
100
- import { randomBytes } from "node:crypto";
101
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
102
- import { homedir } from "node:os";
103
- import { dirname, join } from "node:path";
104
-
105
- // ../core/locales/zh-CN.json
106
100
  var zh_CN_default = {
107
101
  "agent.err.createSession": "\u521B\u5EFA\u4F1A\u8BDD\u5931\u8D25",
108
102
  "agent.err.httpClient": "\u65E0\u6CD5\u8BBF\u95EE opencode HTTP client",
@@ -126,6 +120,8 @@ var zh_CN_default = {
126
120
  "index.log.disconnected": "\u4E0E\u4E2D\u7EE7\u65AD\u5F00\uFF0C\u6B63\u5728\u81EA\u52A8\u91CD\u8FDE\u2026",
127
121
  "index.log.exit": "\u5DF2\u9000\u51FA",
128
122
  "index.log.pairCode": "\u751F\u6210\u914D\u5BF9\u7801: {code}",
123
+ "index.log.pairingStillClaimed": "\u6B64\u914D\u5BF9\u7801\u4EC5\u4F9B\u540C\u8D26\u53F7\u7684\u65B0\u624B\u673A\u91CD\u65B0\u914D\u5BF9\uFF1B\u672C\u673A\u5DF2\u7ED1\u5B9A\uFF0C\u4ECD\u53EF\u4ECE\u624B\u673A\u300C\u6211\u7684\u7535\u8111\u300D\u76F4\u63A5\u8FDE\u63A5\u3002",
124
+ "index.log.pairingPreparing": "\u6B63\u5728\u8FDE\u63A5\u4E2D\u7EE7\u5E76\u751F\u6210\u914D\u5BF9\u7801\u2026",
129
125
  "index.log.permissionToPhone": "\u6743\u9650\u8BF7\u6C42 \u2192 \u624B\u673A\u5BA1\u6279 (id={id} tool={tool})",
130
126
  "index.log.permissionTuiFallback": "app \u79BB\u7EBF\uFF0C\u6743\u9650\u8BF7\u6C42\u7531 opencode TUI \u515C\u5E95 (id={id} tool={tool})",
131
127
  "index.log.relayError": "\u4E2D\u7EE7\u9519\u8BEF: {msg}",
@@ -262,8 +258,6 @@ var zh_CN_default = {
262
258
  "hermes.errToolStatus": "tunnelbox_status \u5931\u8D25: {err}",
263
259
  "hermes.cliUsage": "\u7528\u6CD5: /tunnelbox <pair|status>\n pair \u5411\u4E2D\u7EE7\u7533\u8BF7\u624B\u673A\u914D\u5BF9\u7801\u5E76\u6253\u5370\n status \u663E\u793A\u4E2D\u7EE7/\u7ED1\u5B9A/\u8FDE\u63A5\u72B6\u6001"
264
260
  };
265
-
266
- // ../core/locales/zh-TW.json
267
261
  var zh_TW_default = {
268
262
  "agent.err.createSession": "\u5EFA\u7ACB\u6703\u8A71\u5931\u6557",
269
263
  "agent.err.httpClient": "\u7121\u6CD5\u5B58\u53D6 opencode HTTP client",
@@ -287,6 +281,8 @@ var zh_TW_default = {
287
281
  "index.log.disconnected": "\u8207\u4E2D\u7E7C\u65B7\u7DDA\uFF0C\u6B63\u5728\u81EA\u52D5\u91CD\u9023\u2026",
288
282
  "index.log.exit": "\u5DF2\u9000\u51FA",
289
283
  "index.log.pairCode": "\u7522\u751F\u914D\u5C0D\u78BC: {code}",
284
+ "index.log.pairingStillClaimed": "\u6B64\u914D\u5C0D\u78BC\u50C5\u4F9B\u540C\u5E33\u865F\u7684\u65B0\u624B\u6A5F\u91CD\u65B0\u914D\u5C0D\uFF1B\u672C\u6A5F\u5DF2\u7D81\u5B9A\uFF0C\u4ECD\u53EF\u5F9E\u624B\u6A5F\u300C\u6211\u7684\u96FB\u8166\u300D\u76F4\u63A5\u9023\u63A5\u3002",
285
+ "index.log.pairingPreparing": "\u6B63\u5728\u9023\u7DDA\u4E2D\u7E7C\u4E26\u7522\u751F\u914D\u5C0D\u78BC\u2026",
290
286
  "index.log.permissionToPhone": "\u6B0A\u9650\u8ACB\u6C42 \u2192 \u624B\u6A5F\u5BE9\u6279 (id={id} tool={tool})",
291
287
  "index.log.permissionTuiFallback": "app \u96E2\u7DDA\uFF0C\u6B0A\u9650\u8ACB\u6C42\u7531 opencode TUI \u4EE3\u7BA1 (id={id} tool={tool})",
292
288
  "index.log.relayError": "\u4E2D\u7E7C\u932F\u8AA4: {msg}",
@@ -423,8 +419,6 @@ var zh_TW_default = {
423
419
  "hermes.errToolStatus": "tunnelbox_status \u5931\u6557: {err}",
424
420
  "hermes.cliUsage": "\u7528\u6CD5: /tunnelbox <pair|status>\n pair \u5411\u4E2D\u7E7C\u7533\u8ACB\u624B\u6A5F\u914D\u5C0D\u78BC\u4E26\u5217\u5370\n status \u986F\u793A\u4E2D\u7E7C/\u7D81\u5B9A/\u9023\u7DDA\u72C0\u614B"
425
421
  };
426
-
427
- // ../core/locales/en-US.json
428
422
  var en_US_default = {
429
423
  "agent.err.createSession": "Failed to create session",
430
424
  "agent.err.httpClient": "Cannot access the opencode HTTP client",
@@ -448,6 +442,8 @@ var en_US_default = {
448
442
  "index.log.disconnected": "Disconnected from relay, reconnecting automatically\u2026",
449
443
  "index.log.exit": "Exited",
450
444
  "index.log.pairCode": "Generated pairing code: {code}",
445
+ "index.log.pairingStillClaimed": "This pairing code is for re-pairing a new phone under the same account. This computer is already linked and stays reachable from \u201CMy Computers\u201D on your phone.",
446
+ "index.log.pairingPreparing": "Connecting to the relay and generating a pairing code\u2026",
451
447
  "index.log.permissionToPhone": "Permission request \u2192 phone approval (id={id} tool={tool})",
452
448
  "index.log.permissionTuiFallback": "App offline; permission request handled by the opencode TUI (id={id} tool={tool})",
453
449
  "index.log.relayError": "Relay error: {msg}",
@@ -584,8 +580,6 @@ var en_US_default = {
584
580
  "hermes.errToolStatus": "tunnelbox_status failed: {err}",
585
581
  "hermes.cliUsage": "Usage: /tunnelbox <pair|status>\n pair request and print a phone pairing code\n status show relay/binding/connection status"
586
582
  };
587
-
588
- // ../core/locales/ja-JP.json
589
583
  var ja_JP_default = {
590
584
  "agent.err.createSession": "\u30BB\u30C3\u30B7\u30E7\u30F3\u306E\u4F5C\u6210\u306B\u5931\u6557\u3057\u307E\u3057\u305F",
591
585
  "agent.err.httpClient": "opencode HTTP client \u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093",
@@ -609,6 +603,8 @@ var ja_JP_default = {
609
603
  "index.log.disconnected": "\u30EA\u30EC\u30FC\u304B\u3089\u5207\u65AD\u3001\u81EA\u52D5\u7684\u306B\u518D\u63A5\u7D9A\u3057\u3066\u3044\u307E\u3059\u2026",
610
604
  "index.log.exit": "\u7D42\u4E86\u3057\u307E\u3057\u305F",
611
605
  "index.log.pairCode": "\u30DA\u30A2\u30EA\u30F3\u30B0\u30B3\u30FC\u30C9\u3092\u751F\u6210: {code}",
606
+ "index.log.pairingStillClaimed": "\u3053\u306E\u30DA\u30A2\u30EA\u30F3\u30B0\u30B3\u30FC\u30C9\u306F\u540C\u4E00\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u65B0\u3057\u3044\u30B9\u30DE\u30FC\u30C8\u30D5\u30A9\u30F3\u3068\u306E\u518D\u30DA\u30A2\u30EA\u30F3\u30B0\u5C02\u7528\u3067\u3059\u3002\u3053\u306E PC \u306F\u65E2\u306B\u9023\u643A\u6E08\u307F\u3067\u3001\u30B9\u30DE\u30FC\u30C8\u30D5\u30A9\u30F3\u306E\u300C\u30DE\u30A4 \u30B3\u30F3\u30D4\u30E5\u30FC\u30BF\u30FC\u300D\u304B\u3089\u5F15\u304D\u7D9A\u304D\u63A5\u7D9A\u3067\u304D\u307E\u3059\u3002",
607
+ "index.log.pairingPreparing": "\u30EA\u30EC\u30FC\u3078\u63A5\u7D9A\u3057\u3066\u30DA\u30A2\u30EA\u30F3\u30B0\u30B3\u30FC\u30C9\u3092\u751F\u6210\u3057\u3066\u3044\u307E\u3059\u2026",
612
608
  "index.log.permissionToPhone": "\u6A29\u9650\u30EA\u30AF\u30A8\u30B9\u30C8 \u2192 \u30B9\u30DE\u30DB\u3067\u627F\u8A8D (id={id} tool={tool})",
613
609
  "index.log.permissionTuiFallback": "App \u304C\u30AA\u30D5\u30E9\u30A4\u30F3\u306E\u305F\u3081\u3001\u6A29\u9650\u30EA\u30AF\u30A8\u30B9\u30C8\u306F opencode TUI \u3067\u5BFE\u5FDC (id={id} tool={tool})",
614
610
  "index.log.relayError": "\u30EA\u30EC\u30FC\u30A8\u30E9\u30FC: {msg}",
@@ -745,8 +741,6 @@ var ja_JP_default = {
745
741
  "hermes.errToolStatus": "tunnelbox_status \u5931\u6557: {err}",
746
742
  "hermes.cliUsage": "\u4F7F\u7528\u65B9\u6CD5: /tunnelbox <pair|status>\n pair \u30DA\u30A2\u30EA\u30F3\u30B0\u30B3\u30FC\u30C9\u3092\u53D6\u5F97\u3057\u3066\u8868\u793A\n status \u30EA\u30EC\u30FC/\u30D0\u30A4\u30F3\u30C9/\u63A5\u7D9A\u72B6\u614B\u3092\u8868\u793A"
747
743
  };
748
-
749
- // ../core/locales/ko-KR.json
750
744
  var ko_KR_default = {
751
745
  "agent.err.createSession": "\uC138\uC158 \uC0DD\uC131 \uC2E4\uD328",
752
746
  "agent.err.httpClient": "opencode HTTP client\uC5D0 \uC811\uADFC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4",
@@ -770,6 +764,8 @@ var ko_KR_default = {
770
764
  "index.log.disconnected": "\uB9B4\uB808\uC774 \uC5F0\uACB0\uC774 \uB04A\uACA8 \uC790\uB3D9\uC73C\uB85C \uC7AC\uC5F0\uACB0 \uC911\u2026",
771
765
  "index.log.exit": "\uC885\uB8CC\uB428",
772
766
  "index.log.pairCode": "\uD398\uC5B4\uB9C1 \uCF54\uB4DC \uC0DD\uC131: {code}",
767
+ "index.log.pairingStillClaimed": "\uC774 \uD398\uC5B4\uB9C1 \uCF54\uB4DC\uB294 \uAC19\uC740 \uACC4\uC815\uC758 \uC0C8 \uD734\uB300\uD3F0 \uC7AC\uC5F0\uACB0 \uC804\uC6A9\uC785\uB2C8\uB2E4. \uC774 PC\uB294 \uC774\uBBF8 \uC5F0\uACB0\uB418\uC5B4 \uD734\uB300\uD3F0\uC758 '\uB0B4 \uCEF4\uD4E8\uD130'\uC5D0\uC11C \uACC4\uC18D \uC811\uC18D\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",
768
+ "index.log.pairingPreparing": "\uB9B4\uB808\uC774\uC5D0 \uC5F0\uACB0\uD558\uC5EC \uD398\uC5B4\uB9C1 \uCF54\uB4DC\uB97C \uC0DD\uC131\uD558\uB294 \uC911\uC785\uB2C8\uB2E4\u2026",
773
769
  "index.log.permissionToPhone": "\uAD8C\uD55C \uC694\uCCAD \u2192 \uD734\uB300\uD3F0 \uC2B9\uC778 (id={id} tool={tool})",
774
770
  "index.log.permissionTuiFallback": "\uC571 \uC624\uD504\uB77C\uC778, \uAD8C\uD55C \uC694\uCCAD\uC740 opencode TUI\uAC00 \uCC98\uB9AC (id={id} tool={tool})",
775
771
  "index.log.relayError": "\uB9B4\uB808\uC774 \uC624\uB958: {msg}",
@@ -906,8 +902,6 @@ var ko_KR_default = {
906
902
  "hermes.errToolStatus": "tunnelbox_status \uC2E4\uD328: {err}",
907
903
  "hermes.cliUsage": "\uC0AC\uC6A9\uBC95: /tunnelbox <pair|status>\n pair \uD734\uB300\uD3F0 \uD398\uC5B4\uB9C1 \uCF54\uB4DC \uC694\uCCAD/\uCD9C\uB825\n status \uB9B4\uB808\uC774/\uBC14\uC778\uB529/\uC5F0\uACB0 \uC0C1\uD0DC \uD45C\uC2DC"
908
904
  };
909
-
910
- // ../core/locales/fr-FR.json
911
905
  var fr_FR_default = {
912
906
  "agent.err.createSession": "\xC9chec de la cr\xE9ation de la session",
913
907
  "agent.err.httpClient": "Impossible d'acc\xE9der au client HTTP d'opencode",
@@ -931,6 +925,8 @@ var fr_FR_default = {
931
925
  "index.log.disconnected": "D\xE9connect\xE9 du relais, reconnexion automatique\u2026",
932
926
  "index.log.exit": "Arr\xEAt\xE9",
933
927
  "index.log.pairCode": "Code d'appairage g\xE9n\xE9r\xE9 : {code}",
928
+ "index.log.pairingStillClaimed": "Ce code d'appairage sert uniquement \xE0 r\xE9-appairer un nouveau t\xE9l\xE9phone du m\xEAme compte ; cet ordinateur est d\xE9j\xE0 li\xE9 et reste accessible depuis \xAB Mes ordinateurs \xBB sur votre t\xE9l\xE9phone.",
929
+ "index.log.pairingPreparing": "Connexion au relais et g\xE9n\xE9ration du code d'appairage\u2026",
934
930
  "index.log.permissionToPhone": "Demande d'autorisation \u2192 approbation sur t\xE9l\xE9phone (id={id} tool={tool})",
935
931
  "index.log.permissionTuiFallback": "App hors ligne ; la demande est g\xE9r\xE9e par le TUI opencode (id={id} tool={tool})",
936
932
  "index.log.relayError": "Erreur du relais : {msg}",
@@ -1067,8 +1063,6 @@ var fr_FR_default = {
1067
1063
  "hermes.errToolStatus": "\xE9chec de tunnelbox_status : {err}",
1068
1064
  "hermes.cliUsage": "Utilisation : /tunnelbox <pair|status>\n pair demander et afficher un code d'appairage\n status afficher l'\xE9tat relais/liaison/connexion"
1069
1065
  };
1070
-
1071
- // ../core/locales/de-DE.json
1072
1066
  var de_DE_default = {
1073
1067
  "agent.err.createSession": "Sitzung konnte nicht erstellt werden",
1074
1068
  "agent.err.httpClient": "Auf den opencode-HTTP-Client kann nicht zugegriffen werden",
@@ -1092,6 +1086,8 @@ var de_DE_default = {
1092
1086
  "index.log.disconnected": "Vom Relay getrennt, verbinde automatisch neu\u2026",
1093
1087
  "index.log.exit": "Beendet",
1094
1088
  "index.log.pairCode": "Pairing-Code erzeugt: {code}",
1089
+ "index.log.pairingStillClaimed": "Dieser Pairing-Code dient nur zum erneuten Pairing eines neuen Telefons im selben Konto. Dieser Computer ist bereits verkn\xFCpft und bleibt \xFCber \u201EMeine Computer\u201C auf Ihrem Telefon erreichbar.",
1090
+ "index.log.pairingPreparing": "Verbindung zum Relay wird hergestellt und Pairing-Code generiert\u2026",
1095
1091
  "index.log.permissionToPhone": "Berechtigungsanfrage \u2192 Genehmigung am Telefon (id={id} tool={tool})",
1096
1092
  "index.log.permissionTuiFallback": "App offline; Berechtigungsanfrage wird vom opencode-TUI \xFCbernommen (id={id} tool={tool})",
1097
1093
  "index.log.relayError": "Relay-Fehler: {msg}",
@@ -1228,8 +1224,6 @@ var de_DE_default = {
1228
1224
  "hermes.errToolStatus": "tunnelbox_status fehlgeschlagen: {err}",
1229
1225
  "hermes.cliUsage": "Verwendung: /tunnelbox <pair|status>\n pair Pairing-Code anfordern und anzeigen\n status Relay/Bindung/Verbindung anzeigen"
1230
1226
  };
1231
-
1232
- // ../core/locales/es-ES.json
1233
1227
  var es_ES_default = {
1234
1228
  "agent.err.createSession": "No se pudo crear la sesi\xF3n",
1235
1229
  "agent.err.httpClient": "No se puede acceder al cliente HTTP de opencode",
@@ -1253,6 +1247,8 @@ var es_ES_default = {
1253
1247
  "index.log.disconnected": "Desconectado del relay, reconectando autom\xE1ticamente\u2026",
1254
1248
  "index.log.exit": "Salido",
1255
1249
  "index.log.pairCode": "C\xF3digo de emparejamiento generado: {code}",
1250
+ "index.log.pairingStillClaimed": "Este c\xF3digo de emparejamiento es solo para volver a emparejar un tel\xE9fono nuevo con la misma cuenta; este equipo ya est\xE1 vinculado y sigue accesible desde \xABMis computadoras\xBB en el tel\xE9fono.",
1251
+ "index.log.pairingPreparing": "Conectando al relay y generando el c\xF3digo de emparejamiento\u2026",
1256
1252
  "index.log.permissionToPhone": "Solicitud de permiso \u2192 aprobaci\xF3n en el tel\xE9fono (id={id} tool={tool})",
1257
1253
  "index.log.permissionTuiFallback": "App sin conexi\xF3n; la solicitud la gestiona el TUI de opencode (id={id} tool={tool})",
1258
1254
  "index.log.relayError": "Error del relay: {msg}",
@@ -1389,8 +1385,6 @@ var es_ES_default = {
1389
1385
  "hermes.errToolStatus": "fallo de tunnelbox_status: {err}",
1390
1386
  "hermes.cliUsage": "Uso: /tunnelbox <pair|status>\n pair solicitar e imprimir un c\xF3digo de emparejamiento\n status mostrar estado de rel\xE9/enlace/conexi\xF3n"
1391
1387
  };
1392
-
1393
- // ../core/src/i18n.ts
1394
1388
  var DEFAULT_LANG = "en-US";
1395
1389
  var dicts = {
1396
1390
  "zh-CN": zh_CN_default,
@@ -1445,8 +1439,6 @@ function t(lang, key, vars) {
1445
1439
  }
1446
1440
  return text;
1447
1441
  }
1448
-
1449
- // ../core/src/state.ts
1450
1442
  function baseName() {
1451
1443
  return join(homedir(), ".tunnelbox");
1452
1444
  }
@@ -1509,13 +1501,9 @@ function writePairingJson(info, type) {
1509
1501
  }
1510
1502
  return p;
1511
1503
  }
1512
-
1513
- // ../core/src/env.ts
1514
1504
  function injectedRelayUrl() {
1515
1505
  return "wss://relay.tunnelbox.top" ? "wss://relay.tunnelbox.top".replace(/\/+$/, "") : "";
1516
1506
  }
1517
-
1518
- // ../core/src/qr.ts
1519
1507
  function dispWidth(s) {
1520
1508
  let w = 0;
1521
1509
  for (const ch of s) w += ch.charCodeAt(0) > 255 ? 2 : 1;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tunnelbox/dsh-tunnelbox",
3
- "version": "0.1.6",
3
+ "version": "0.1.7",
4
4
  "description": "tunnelbox 的 dsh 原生 Cordis 插件:手机远程驱动 DeepSeek Harness(agent/session/tools/审批/中止)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.mjs",
@@ -36,7 +36,7 @@
36
36
  "@deepseek-ai/schemastery": "^3.18.1"
37
37
  },
38
38
  "devDependencies": {
39
- "@tunnelbox/core": "0.1.0",
39
+ "@tunnelbox/core": "0.1.7",
40
40
  "@types/node": "^22.0.0",
41
41
  "esbuild": "^0.24.0",
42
42
  "typescript": "^5.4.5"