synurex 2026.2.29 → 2026.3.3

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 (97) hide show
  1. package/dist/{acp-cli-C1jHGRAm.js → acp-cli-DG2rUnRu.js} +3 -3
  2. package/dist/{acp-cli-DE8cM2El.js → acp-cli-DgztFMxz.js} +3 -3
  3. package/dist/{agent-N2Qtra36.js → agent-DS48T6lR.js} +2 -2
  4. package/dist/{agent-COM-4PbL.js → agent-Dmx3qZPI.js} +2 -2
  5. package/dist/{audit-CM8pyctg.js → audit-D5Yus8BZ.js} +3 -3
  6. package/dist/{audit-DWZBSh2N.js → audit-yn_25WaA.js} +3 -3
  7. package/dist/{auth-3NYeRZYb.js → auth-CUgjFkvI.js} +1 -1
  8. package/dist/{auth-CVOB8Q9A.js → auth-CVGpCRur.js} +1 -1
  9. package/dist/{call-mnjMMyVJ.js → call-BrWU4m7x.js} +1 -1
  10. package/dist/{call-5aMaMdGl.js → call-CTxvJ5pZ.js} +1 -1
  11. package/dist/{channel-options-Bjh17Z08.js → channel-options-CCbTOytI.js} +1 -1
  12. package/dist/{channel-options-D-lP7aRV.js → channel-options-k4Undn6s.js} +1 -1
  13. package/dist/{channels-cli-BAZXZSuz.js → channels-cli-B-CYfHWP.js} +6 -6
  14. package/dist/{channels-cli-8HUWD1_p.js → channels-cli-CaKQ_wae.js} +5 -5
  15. package/dist/{chrome-BTQJDtEX.js → chrome-CXlGlG3I.js} +7 -7
  16. package/dist/{cli-BYL7Dz_4.js → cli-CO3WG4qC.js} +3 -3
  17. package/dist/{cli-C1ywLVhK.js → cli-DjJX0rq3.js} +3 -3
  18. package/dist/{client-atZzP6kK.js → client-B9j7V2ke.js} +2 -1
  19. package/dist/{command-options-C3aRsW7k.js → command-options-BviqkK5N.js} +1 -1
  20. package/dist/{completion-cli-a5JMEnJS.js → completion-cli-BALgQ2y1.js} +1 -1
  21. package/dist/{completion-cli-DK707Er8.js → completion-cli-C749vwOn.js} +19 -19
  22. package/dist/{config-guard-DKJoUOyT.js → config-guard-CMzxWE0A.js} +15 -15
  23. package/dist/{configure-D4ci8KU6.js → configure-CRoyTkU9.js} +4 -4
  24. package/dist/{configure-BpnOD65O.js → configure-CkkcUQpq.js} +4 -4
  25. package/dist/{cron-cli-DnMfj-JB.js → cron-cli-BPdH_4-b.js} +3 -3
  26. package/dist/{cron-cli-2W0wnKNI.js → cron-cli-CUwPIl1z.js} +3 -3
  27. package/dist/{daemon-cli-CuNBL-Hv.js → daemon-cli-CPgyDKEv.js} +5 -5
  28. package/dist/{daemon-cli-C4IIRXZr.js → daemon-cli-Cb9R6VC7.js} +5 -5
  29. package/dist/{deliver-C2TEJxeH.js → deliver-BUV-sfaF.js} +1 -1
  30. package/dist/{deps-DgFrcXzw.js → deps-CdKtBWOw.js} +1 -1
  31. package/dist/{deps-DHoBVhwZ.js → deps-DePusoG1.js} +1 -1
  32. package/dist/{devices-cli-CUYqlUBU.js → devices-cli-DwepJyRn.js} +2 -2
  33. package/dist/{devices-cli-DXulGFqa.js → devices-cli-Ea0Smn_b.js} +2 -2
  34. package/dist/{doctor-Cof9OUWJ.js → doctor-BRULcSTR.js} +6 -6
  35. package/dist/{doctor-DoeDz6o-.js → doctor-DdUSy2YI.js} +6 -6
  36. package/dist/entry.js +1 -1
  37. package/dist/{exec-approvals-cli-CfSTGR7F.js → exec-approvals-cli-B06y7Ua3.js} +4 -4
  38. package/dist/{exec-approvals-cli-D3lKd9XP.js → exec-approvals-cli-DJZVftuS.js} +4 -4
  39. package/dist/extensionAPI.js +11 -10
  40. package/dist/{gateway-cli-BEqjSEsO.js → gateway-cli-B6N3wj3P.js} +21 -20
  41. package/dist/{gateway-cli-BDVBUNwY.js → gateway-cli-f0ab5QnF.js} +22 -21
  42. package/dist/{gateway-rpc-CFkdcw9l.js → gateway-rpc-C7ZT9go5.js} +1 -1
  43. package/dist/{gateway-rpc-DqZGJ-5z.js → gateway-rpc-uFNlfdvz.js} +1 -1
  44. package/dist/{github-copilot-auth-DWFisj3D.js → github-copilot-auth-ByLv7D6a.js} +1 -1
  45. package/dist/{github-copilot-auth-Bog6I9WM.js → github-copilot-auth-Dv4zhEWb.js} +1 -1
  46. package/dist/{health-format-B3wTmrqY.js → health-format-BqYntyuZ.js} +2 -2
  47. package/dist/{health-format-CLSugjQl.js → health-format-CWhbEk2I.js} +2 -2
  48. package/dist/{hooks-cli-DXs2Jiyd.js → hooks-cli-BNgGmUi8.js} +4 -4
  49. package/dist/{hooks-cli-nGmjlGE7.js → hooks-cli-D_Jt25yP.js} +4 -4
  50. package/dist/{image-saBkWIDR.js → image-C6SHcuJM.js} +1 -1
  51. package/dist/index.js +20 -20
  52. package/dist/{loader-Ds66eH4-.js → loader-DfImT-V3.js} +2 -2
  53. package/dist/{logs-cli-D912P9Qo.js → logs-cli-BPJMLtTO.js} +3 -3
  54. package/dist/{logs-cli-BbRlZoUV.js → logs-cli-nC3f5CLF.js} +3 -3
  55. package/dist/{models-cli-_y06d7uQ.js → models-cli-C5c105HT.js} +4 -4
  56. package/dist/{models-cli-Vsoz5huP.js → models-cli-DkLpQUDt.js} +4 -4
  57. package/dist/{net-MZzhgr1g.js → net-BFQE3qvW.js} +2 -1
  58. package/dist/{node-cli-BzmAIGgs.js → node-cli-ChIQODE6.js} +2 -3
  59. package/dist/{node-cli-Uahurgv5.js → node-cli-LY3X1Vga.js} +2 -3
  60. package/dist/{nodes-cli-DbL_Z-Tf.js → nodes-cli--KUg3Fft.js} +3 -3
  61. package/dist/{nodes-cli-D-pPXmLu.js → nodes-cli-BMTyfteh.js} +3 -3
  62. package/dist/{onboard-channels-BuQPrqIE.js → onboard-channels-B8e17y6y.js} +1 -1
  63. package/dist/{onboard-channels-CyYMvXjh.js → onboard-channels-Be9reB9J.js} +1 -1
  64. package/dist/{onboard-skills-BPBFfhVp.js → onboard-skills-BZIkbD4M.js} +3 -3
  65. package/dist/{onboard-skills-BzZrWnt3.js → onboard-skills-CCW8YtdW.js} +3 -3
  66. package/dist/{onboarding-CaKb-_eZ.js → onboarding-CtQIwp-P.js} +9 -9
  67. package/dist/{pi-embedded-helpers-DKKB89sm.js → pi-embedded-helpers-dkrwwXev.js} +4 -4
  68. package/dist/plugin-sdk/index.js +2 -1
  69. package/dist/{plugins-cli-B9q0wqUI.js → plugins-cli-Cer9SGqS.js} +4 -4
  70. package/dist/{plugins-cli-s2-Xp26x.js → plugins-cli-EAWTwTwX.js} +4 -4
  71. package/dist/{program-DUm2Ko3G.js → program-Ba9hovgZ.js} +22 -22
  72. package/dist/{pw-ai-BKN0Jm4P.js → pw-ai-BUeSOvm-.js} +1 -1
  73. package/dist/{register.subclis-CxW2atUr.js → register.subclis-DRuH7f2k.js} +20 -20
  74. package/dist/{reply-8T1JOF0R.js → reply-CCs-Nvi2.js} +2 -2
  75. package/dist/{rpc-hF-BCzRo.js → rpc-BfAQ9OvQ.js} +1 -1
  76. package/dist/{rpc-DgcF4XNR.js → rpc-CVqnXiJX.js} +1 -1
  77. package/dist/{run-main-DWpvRRBI.js → run-main-BauYi3tE.js} +24 -24
  78. package/dist/{security-cli-CQ6iSAev.js → security-cli-3DojouTY.js} +4 -4
  79. package/dist/{security-cli-Ct93VQD5.js → security-cli-CdZHQp6q.js} +4 -4
  80. package/dist/{server-node-events-DPixVKRb.js → server-node-events-DyQCWI9_.js} +5 -5
  81. package/dist/{server-node-events-D_3bg9qE.js → server-node-events-KHDIroCq.js} +5 -5
  82. package/dist/{shared-Cpd7X2eE.js → shared-BapyXQjP.js} +1 -1
  83. package/dist/{shared-CDe5yKDd.js → shared-Dn5D714-.js} +1 -1
  84. package/dist/{status-MvIrUEv-.js → status-BDG9ZKR1.js} +9 -9
  85. package/dist/{status-Bstd0cot.js → status-BtRZByU9.js} +1 -1
  86. package/dist/{status-DyjCSdtm.js → status-DBqpuo35.js} +1 -1
  87. package/dist/{system-cli-BY3oOcLX.js → system-cli-CQ2uELHE.js} +3 -3
  88. package/dist/{system-cli-MPiQMTjv.js → system-cli-hFQv3fRj.js} +3 -3
  89. package/dist/{tui-Biuvuiog.js → tui-BYO6JShs.js} +79 -22
  90. package/dist/{tui-BPqDn4Jf.js → tui-NIkPzCXp.js} +79 -22
  91. package/dist/{tui-cli-AeeP52_J.js → tui-cli-CuzbvQkm.js} +3 -3
  92. package/dist/{tui-cli-ScD8BrCY.js → tui-cli-DWciEfZf.js} +3 -3
  93. package/dist/{update-cli-VEgtZCt5.js → update-cli-BnWnpqMq.js} +12 -12
  94. package/dist/{update-cli-BmJAMiaD.js → update-cli-mYRAUWB1.js} +11 -11
  95. package/dist/{update-runner-D-aCyLVU.js → update-runner-BscY5n-e.js} +3 -3
  96. package/dist/{update-runner-C8H9v6pQ.js → update-runner-D2oGDU6X.js} +3 -3
  97. package/package.json +1 -1
@@ -11,14 +11,14 @@ import "./manifest-registry-DjRSe72U.js";
11
11
  import "./server-context-CFielb4y.js";
12
12
  import "./errors-C8t2PjW_.js";
13
13
  import "./control-service-Cgrsb6v8.js";
14
- import "./client-atZzP6kK.js";
15
- import "./call-5aMaMdGl.js";
14
+ import "./client-B9j7V2ke.js";
15
+ import "./call-CTxvJ5pZ.js";
16
16
  import "./message-channel-DcxF0eJh.js";
17
17
  import "./links-B79LZSNJ.js";
18
18
  import { r as normalizeChannelId } from "./plugins-C1mc_xWv.js";
19
19
  import "./logging-pqyrk15z.js";
20
20
  import "./accounts-B6AkTILW.js";
21
- import { Qn as requestHeartbeatNow, Yn as enqueueSystemEvent, nn as loadSessionEntry } from "./loader-Ds66eH4-.js";
21
+ import { Qn as requestHeartbeatNow, Yn as enqueueSystemEvent, nn as loadSessionEntry } from "./loader-DfImT-V3.js";
22
22
  import "./progress-Bcjniu7m.js";
23
23
  import "./prompt-style-CFsleyxV.js";
24
24
  import "./manager-e20ne1Ai.js";
@@ -40,9 +40,9 @@ import "./commands-D24fBHIc.js";
40
40
  import "./pairing-store-D_NP0mJs.js";
41
41
  import "./login-qr-BsYLJut1.js";
42
42
  import "./pairing-labels-CrJtLbMY.js";
43
- import "./deps-DHoBVhwZ.js";
43
+ import "./deps-DePusoG1.js";
44
44
  import { t as formatForLog } from "./ws-log-vBkmxf4_.js";
45
- import { t as agentCommand } from "./agent-COM-4PbL.js";
45
+ import { t as agentCommand } from "./agent-Dmx3qZPI.js";
46
46
  import { randomUUID } from "node:crypto";
47
47
 
48
48
  //#region src/gateway/server-node-events.ts
@@ -1,5 +1,5 @@
1
1
  import "./pi-embedded-helpers-N_L31uhW.js";
2
- import { Cr as enqueueSystemEvent, _ as loadSessionEntry, ot as requestHeartbeatNow } from "./reply-8T1JOF0R.js";
2
+ import { Cr as enqueueSystemEvent, _ as loadSessionEntry, ot as requestHeartbeatNow } from "./reply-CCs-Nvi2.js";
3
3
  import "./paths-Drx5WZ13.js";
4
4
  import { u as normalizeMainKey } from "./session-key-DrNCyvP1.js";
5
5
  import { c as defaultRuntime } from "./subsystem-DPYBJG7C.js";
@@ -31,8 +31,8 @@ import "./dispatcher-BLeixzBZ.js";
31
31
  import "./manager-MLoKmXjg.js";
32
32
  import "./sqlite-CbZh0dx1.js";
33
33
  import "./channel-summary-D7joKboS.js";
34
- import "./net-MZzhgr1g.js";
35
- import "./call-mnjMMyVJ.js";
34
+ import "./net-BFQE3qvW.js";
35
+ import "./call-BrWU4m7x.js";
36
36
  import "./login-qr-D823w1Qv.js";
37
37
  import "./pairing-store-pdzxfI5n.js";
38
38
  import "./links-iCD68SwJ.js";
@@ -43,8 +43,8 @@ import "./pairing-labels-DXioxZ5X.js";
43
43
  import "./session-cost-usage-CPvtWzot.js";
44
44
  import "./control-service-DpyCNhOa.js";
45
45
  import "./channel-selection-i-6yBKAk.js";
46
- import "./deps-DgFrcXzw.js";
47
- import { t as agentCommand } from "./agent-N2Qtra36.js";
46
+ import "./deps-CdKtBWOw.js";
47
+ import { t as agentCommand } from "./agent-DS48T6lR.js";
48
48
  import { t as formatForLog } from "./ws-log-Bpm8rpoP.js";
49
49
  import { randomUUID } from "node:crypto";
50
50
 
@@ -1,6 +1,6 @@
1
1
  import { V as getResolvedLoggerSettings, c as defaultRuntime } from "./subsystem-DPYBJG7C.js";
2
2
  import { t as formatCliCommand } from "./command-format-CEnDvS9q.js";
3
- import { a as pickPrimaryLanIPv4 } from "./net-MZzhgr1g.js";
3
+ import { a as pickPrimaryLanIPv4 } from "./net-BFQE3qvW.js";
4
4
  import { d as resolveGatewaySystemdServiceName, f as resolveGatewayWindowsTaskName, l as resolveGatewayLaunchAgentLabel } from "./constants-Cf-Zsiqd.js";
5
5
  import { o as resolveGatewayLogPaths } from "./service-CZFM7dlu.js";
6
6
  import { Writable } from "node:stream";
@@ -1,6 +1,6 @@
1
1
  import { M as getResolvedLoggerSettings, p as defaultRuntime } from "./entry.js";
2
2
  import { t as formatCliCommand } from "./command-format-DUskR3Ej.js";
3
- import { Vt as pickPrimaryLanIPv4 } from "./client-atZzP6kK.js";
3
+ import { Vt as pickPrimaryLanIPv4 } from "./client-B9j7V2ke.js";
4
4
  import { d as resolveGatewaySystemdServiceName, f as resolveGatewayWindowsTaskName, l as resolveGatewayLaunchAgentLabel } from "./constants-CpnpJcmu.js";
5
5
  import { o as resolveGatewayLogPaths } from "./service-sZqtAG53.js";
6
6
  import { Writable } from "node:stream";
@@ -9,31 +9,31 @@ import { c as resolveDefaultAgentId, h as DEFAULT_IDENTITY_FILENAME, p as DEFAUL
9
9
  import { c as writeConfigFile, i as loadConfig, j as VERSION, o as readConfigFileSnapshot } from "./config-nvHm49RH.js";
10
10
  import { f as inspectPortUsage, m as formatPortDiagnostics } from "./errors-C8t2PjW_.js";
11
11
  import { a as findTailscaleBinary, o as getTailnetHostname, s as readTailscaleStatusJson } from "./tailscale-9MusRvOi.js";
12
- import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-5aMaMdGl.js";
12
+ import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-CTxvJ5pZ.js";
13
13
  import { n as listChannelPlugins } from "./plugins-C1mc_xWv.js";
14
- import { $t as listAgentsForGateway, At as sha256HexPrefix, Fn as readRestartSentinel, In as summarizeRestartSentinel, Mr as getMemorySearchManager, Xt as formatUsageReportLines, Yt as loadProviderUsageSummary, Zn as peekSystemEvents, _ as randomToken, a as applyWizardMetadata, b as summarizeExistingConfig, c as ensureWorkspaceAndSessions, d as handleReset, dn as lookupContextTokens, g as probeGatewayReachable, h as printWizardHeader, i as DEFAULT_WORKSPACE, l as formatControlUiSshHint, m as openUrl, p as normalizeGatewayTokenInput, q as getRemoteSkillEligibility, s as detectBrowserOpenSupport, v as resolveControlUiLinks, w as normalizeControlUiBasePath, x as waitForGatewayReachable } from "./loader-Ds66eH4-.js";
14
+ import { $t as listAgentsForGateway, At as sha256HexPrefix, Fn as readRestartSentinel, In as summarizeRestartSentinel, Mr as getMemorySearchManager, Xt as formatUsageReportLines, Yt as loadProviderUsageSummary, Zn as peekSystemEvents, _ as randomToken, a as applyWizardMetadata, b as summarizeExistingConfig, c as ensureWorkspaceAndSessions, d as handleReset, dn as lookupContextTokens, g as probeGatewayReachable, h as printWizardHeader, i as DEFAULT_WORKSPACE, l as formatControlUiSshHint, m as openUrl, p as normalizeGatewayTokenInput, q as getRemoteSkillEligibility, s as detectBrowserOpenSupport, v as resolveControlUiLinks, w as normalizeControlUiBasePath, x as waitForGatewayReachable } from "./loader-DfImT-V3.js";
15
15
  import { n as withProgress } from "./progress-Bcjniu7m.js";
16
16
  import { t as WizardCancelledError } from "./prompts-CudpZgTI.js";
17
17
  import { t as resolveChannelDefaultAccountId } from "./helpers-DMlRCrD6.js";
18
- import { n as setupChannels } from "./onboard-channels-BuQPrqIE.js";
18
+ import { n as setupChannels } from "./onboard-channels-B8e17y6y.js";
19
19
  import { o as resolveStorePath } from "./paths-Cn5vXlEi.js";
20
20
  import { I as resolveMainSessionKey, d as loadSessionStore } from "./sandbox-DBpsZtIS.js";
21
21
  import { t as buildChannelSummary } from "./channel-summary-2b6qt5Cm.js";
22
22
  import { t as collectChannelStatusIssues } from "./channels-status-issues-CgVNTMMz.js";
23
- import { r as installCompletion } from "./completion-cli-a5JMEnJS.js";
23
+ import { r as installCompletion } from "./completion-cli-BALgQ2y1.js";
24
24
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-sBNXpVgk.js";
25
25
  import { o as resolveGatewayLogPaths, t as resolveGatewayService } from "./service-sZqtAG53.js";
26
26
  import { r as isSystemdUserServiceAvailable } from "./systemd-Gt0riLnX.js";
27
27
  import { o as readLastGatewayErrorLine } from "./service-audit-DO0Uy4z0.js";
28
28
  import { t as renderTable } from "./table-BzJyfJCd.js";
29
- import { i as probeGateway, t as runSecurityAudit } from "./audit-DWZBSh2N.js";
30
- import { d as applyAuthChoice, h as promptAuthChoiceGrouped, l as resolvePreferredProviderForAuthChoice, o as applyPrimaryModel, r as promptRemoteGatewayConfig, s as promptDefaultModel, t as setupSkills, u as warnIfModelConfigLooksOff } from "./onboard-skills-BPBFfhVp.js";
31
- import { l as healthCommand, n as ensureControlUiAssetsBuilt, s as formatHealthChannelLines, t as formatHealthCheckFailure, u as resolveHeartbeatSummaryForAgent } from "./health-format-B3wTmrqY.js";
32
- import { C as resolveEffectiveUpdateChannel, S as normalizeUpdateChannel, c as formatUpdateOneLiner, d as checkShellCompletionStatus, h as compareSemverStrings, l as getUpdateCheckResult, m as checkUpdateStatus, p as ensureCompletionCacheExists, s as formatUpdateAvailableHint, u as resolveUpdateAvailability, x as formatUpdateChannelLabel } from "./update-runner-C8H9v6pQ.js";
29
+ import { i as probeGateway, t as runSecurityAudit } from "./audit-yn_25WaA.js";
30
+ import { d as applyAuthChoice, h as promptAuthChoiceGrouped, l as resolvePreferredProviderForAuthChoice, o as applyPrimaryModel, r as promptRemoteGatewayConfig, s as promptDefaultModel, t as setupSkills, u as warnIfModelConfigLooksOff } from "./onboard-skills-BZIkbD4M.js";
31
+ import { l as healthCommand, n as ensureControlUiAssetsBuilt, s as formatHealthChannelLines, t as formatHealthCheckFailure, u as resolveHeartbeatSummaryForAgent } from "./health-format-BqYntyuZ.js";
32
+ import { C as resolveEffectiveUpdateChannel, S as normalizeUpdateChannel, c as formatUpdateOneLiner, d as checkShellCompletionStatus, h as compareSemverStrings, l as getUpdateCheckResult, m as checkUpdateStatus, p as ensureCompletionCacheExists, s as formatUpdateAvailableHint, u as resolveUpdateAvailability, x as formatUpdateChannelLabel } from "./update-runner-D2oGDU6X.js";
33
33
  import { n as logConfigUpdated } from "./logging-CzN9OPmT.js";
34
34
  import { t as buildWorkspaceHookStatus } from "./hooks-status-DFRuWWMp.js";
35
35
  import { t as buildWorkspaceSkillStatus } from "./skills-status-Ck6eJ9hl.js";
36
- import { t as runTui } from "./tui-Biuvuiog.js";
36
+ import { t as runTui } from "./tui-BYO6JShs.js";
37
37
  import { t as resolveNodeService } from "./node-service-CmyQuldc.js";
38
38
  import { i as redactSecrets, n as formatDuration$1, r as formatGatewayAuthUsed, t as formatAge$1 } from "./format-tlvh4-cQ.js";
39
39
  import { spawnSync } from "node:child_process";
@@ -1,7 +1,7 @@
1
1
  import { o as createSubsystemLogger } from "./entry.js";
2
2
  import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir, w as resolveDefaultAgentWorkspaceDir } from "./agent-scope-DNmzkYn4.js";
3
3
  import { i as loadConfig } from "./config-nvHm49RH.js";
4
- import { t as loadSynurexPlugins } from "./loader-Ds66eH4-.js";
4
+ import { t as loadSynurexPlugins } from "./loader-DfImT-V3.js";
5
5
 
6
6
  //#region src/plugins/status.ts
7
7
  const log = createSubsystemLogger("plugins");
@@ -1,4 +1,4 @@
1
- import { lt as loadSynurexPlugins } from "./reply-8T1JOF0R.js";
1
+ import { lt as loadSynurexPlugins } from "./reply-CCs-Nvi2.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-DPYBJG7C.js";
3
3
  import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir, w as resolveDefaultAgentWorkspaceDir } from "./agent-scope-CRRhJ7Hf.js";
4
4
  import { i as loadConfig } from "./config-AFzxllYx.js";
@@ -10,11 +10,11 @@ import "./env-DgIs6BZg.js";
10
10
  import "./config-AFzxllYx.js";
11
11
  import "./manifest-registry-D8FEq9qs.js";
12
12
  import "./message-channel-DJEeCAZD.js";
13
- import "./net-MZzhgr1g.js";
14
- import "./call-mnjMMyVJ.js";
13
+ import "./net-BFQE3qvW.js";
14
+ import "./call-BrWU4m7x.js";
15
15
  import { t as formatDocsLink } from "./links-iCD68SwJ.js";
16
16
  import "./progress-DWODVbwW.js";
17
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-CFkdcw9l.js";
17
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-C7ZT9go5.js";
18
18
 
19
19
  //#region src/cli/system-cli.ts
20
20
  const normalizeWakeMode = (raw) => {
@@ -6,12 +6,12 @@ import "./agent-scope-DNmzkYn4.js";
6
6
  import "./github-copilot-token-SLWintYd.js";
7
7
  import "./config-nvHm49RH.js";
8
8
  import "./manifest-registry-DjRSe72U.js";
9
- import "./client-atZzP6kK.js";
10
- import "./call-5aMaMdGl.js";
9
+ import "./client-B9j7V2ke.js";
10
+ import "./call-CTxvJ5pZ.js";
11
11
  import "./message-channel-DcxF0eJh.js";
12
12
  import { t as formatDocsLink } from "./links-B79LZSNJ.js";
13
13
  import "./progress-Bcjniu7m.js";
14
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-DqZGJ-5z.js";
14
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-uFNlfdvz.js";
15
15
 
16
16
  //#region src/cli/system-cli.ts
17
17
  const normalizeWakeMode = (raw) => {
@@ -2,8 +2,8 @@ import { O as isRich, W as resolveGatewayPort, f as visibleWidth, k as theme$1 }
2
2
  import { i as buildAgentMainSessionKey, l as normalizeAgentId, u as normalizeMainKey, v as parseAgentSessionKey } from "./session-key-n2HVbrj0.js";
3
3
  import { c as resolveDefaultAgentId } from "./agent-scope-DNmzkYn4.js";
4
4
  import { i as loadConfig, j as VERSION } from "./config-nvHm49RH.js";
5
- import { Et as PROTOCOL_VERSION, t as GatewayClient } from "./client-atZzP6kK.js";
6
- import { a as resolveExplicitGatewayAuth, r as ensureExplicitGatewayAuth } from "./call-5aMaMdGl.js";
5
+ import { Et as PROTOCOL_VERSION, t as GatewayClient } from "./client-B9j7V2ke.js";
6
+ import { a as resolveExplicitGatewayAuth, r as ensureExplicitGatewayAuth } from "./call-CTxvJ5pZ.js";
7
7
  import { f as GATEWAY_CLIENT_CAPS, h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-DcxF0eJh.js";
8
8
  import { I as listThinkingLevelLabels, P as formatThinkingLevels, U as resolveResponseUsageMode, V as normalizeUsageDisplay } from "./pi-embedded-helpers-DyfPH1I_.js";
9
9
  import { a as extractContentFromMessage, c as formatContextUsageLine, d as resolveFinalAssistantText, f as resolveCommitHash, g as listChatCommandsForConfig, h as listChatCommands, i as composeThinkingAndContent, l as formatTokens, n as formatAge, o as extractTextFromMessage, r as asString, s as extractThinkingFromMessage, u as isCommandMessage } from "./channel-summary-2b6qt5Cm.js";
@@ -255,8 +255,9 @@ function createSyntaxTheme(fallback) {
255
255
  const palette = {
256
256
  text: "#E8E3D5",
257
257
  dim: "#7B7F87",
258
- accent: "#8B5CF6",
259
- accentSoft: "#A78BFA",
258
+ accent: "#A855F7",
259
+ accentSoft: "#C084FC",
260
+ pink: "#DB2777",
260
261
  border: "#3C414B",
261
262
  userBg: "#1E1B2E",
262
263
  userText: "#F3EEE0",
@@ -264,16 +265,22 @@ const palette = {
264
265
  toolPendingBg: "#1A1625",
265
266
  toolSuccessBg: "#0F2318",
266
267
  toolErrorBg: "#2A0F0F",
267
- toolTitle: "#8B5CF6",
268
+ toolExecBg: "#0F1A2A",
269
+ toolReadBg: "#1A1630",
270
+ toolWriteBg: "#0F2318",
271
+ toolWebBg: "#0F1E2E",
272
+ toolBrowserBg: "#1E1610",
273
+ toolTitle: "#A855F7",
268
274
  toolOutput: "#E1DACB",
269
- quote: "#A78BFA",
275
+ quote: "#C084FC",
270
276
  quoteBorder: "#4C1D95",
271
277
  code: "#C4B5FD",
272
278
  codeBlock: "#1E232A",
273
279
  codeBorder: "#343A45",
274
280
  link: "#34D399",
275
- error: "#F97066",
276
- success: "#7DD3A5"
281
+ error: "#EF4444",
282
+ success: "#22C55E",
283
+ online: "#22C55E"
277
284
  };
278
285
  const fg = (hex) => (text) => chalk.hex(hex)(text);
279
286
  const bg = (hex) => (text) => chalk.bgHex(hex)(text);
@@ -298,8 +305,10 @@ const theme = {
298
305
  dim: fg(palette.dim),
299
306
  accent: fg(palette.accent),
300
307
  accentSoft: fg(palette.accentSoft),
308
+ pink: fg(palette.pink),
301
309
  success: fg(palette.success),
302
310
  error: fg(palette.error),
311
+ online: fg(palette.online),
303
312
  header: (text) => chalk.bold(fg(palette.accent)(text)),
304
313
  system: fg(palette.systemText),
305
314
  userBg: bg(palette.userBg),
@@ -309,6 +318,11 @@ const theme = {
309
318
  toolPendingBg: bg(palette.toolPendingBg),
310
319
  toolSuccessBg: bg(palette.toolSuccessBg),
311
320
  toolErrorBg: bg(palette.toolErrorBg),
321
+ toolExecBg: bg(palette.toolExecBg),
322
+ toolReadBg: bg(palette.toolReadBg),
323
+ toolWriteBg: bg(palette.toolWriteBg),
324
+ toolWebBg: bg(palette.toolWebBg),
325
+ toolBrowserBg: bg(palette.toolBrowserBg),
312
326
  border: fg(palette.border),
313
327
  bold: (text) => chalk.bold(text),
314
328
  italic: (text) => chalk.italic(text)
@@ -366,14 +380,24 @@ const searchableSelectListTheme = {
366
380
  //#endregion
367
381
  //#region src/tui/components/assistant-message.ts
368
382
  function buildDivider(label, width = 60) {
369
- const dashes = "─".repeat(Math.max(0, Math.floor((width - label.length - 2) / 2)));
370
- const right = "─".repeat(Math.max(0, width - label.length - 2 - dashes.length));
371
- return `${theme.border(dashes)} ${theme.accent(label)} ${theme.border(right)}`;
383
+ const dashLen = Math.max(0, width - label.length - 2);
384
+ const dashes = "─".repeat(dashLen);
385
+ return `${theme.dim(label.toUpperCase())} ${theme.border(dashes)}`;
386
+ }
387
+ function formatTime() {
388
+ const now = /* @__PURE__ */ new Date();
389
+ const h = String(now.getHours()).padStart(2, "0");
390
+ const m = String(now.getMinutes()).padStart(2, "0");
391
+ return theme.dim(`${h}:${m}`);
392
+ }
393
+ let _agentLabel = "synurex";
394
+ function setAssistantLabel(label) {
395
+ _agentLabel = label || "synurex";
372
396
  }
373
397
  var AssistantMessageComponent = class extends Container {
374
398
  constructor(text) {
375
399
  super();
376
- const divider = buildDivider("synurex");
400
+ const divider = `${buildDivider(_agentLabel)} ${formatTime()}`;
377
401
  this.body = new Markdown(text, 1, 0, markdownTheme, { color: (line) => theme.fg(line) });
378
402
  this.addChild(new Spacer(1));
379
403
  this.addChild(new Text(divider, 1, 0));
@@ -387,6 +411,33 @@ var AssistantMessageComponent = class extends Container {
387
411
  //#endregion
388
412
  //#region src/tui/components/tool-execution.ts
389
413
  const PREVIEW_LINES = 12;
414
+ function resolveToolBg(toolName) {
415
+ const key = toolName.toLowerCase();
416
+ if (key === "system_run" || key === "exec" || key === "bash" || key.includes("process")) return {
417
+ pending: theme.toolExecBg,
418
+ success: theme.toolSuccessBg
419
+ };
420
+ if (key === "read" || key === "glob" || key === "grep" || key === "search") return {
421
+ pending: theme.toolReadBg,
422
+ success: theme.toolSuccessBg
423
+ };
424
+ if (key === "write" || key === "edit" || key === "attach") return {
425
+ pending: theme.toolWriteBg,
426
+ success: theme.toolSuccessBg
427
+ };
428
+ if (key.includes("web") || key.includes("fetch") || key.includes("http")) return {
429
+ pending: theme.toolWebBg,
430
+ success: theme.toolSuccessBg
431
+ };
432
+ if (key.includes("browser") || key.includes("canvas") || key.includes("screen")) return {
433
+ pending: theme.toolBrowserBg,
434
+ success: theme.toolSuccessBg
435
+ };
436
+ return {
437
+ pending: theme.toolPendingBg,
438
+ success: theme.toolSuccessBg
439
+ };
440
+ }
390
441
  function formatArgs(toolName, args) {
391
442
  const detail = formatToolDetail(resolveToolDisplay({
392
443
  name: toolName,
@@ -452,8 +503,9 @@ var ToolExecutionComponent = class extends Container {
452
503
  this.refresh();
453
504
  }
454
505
  refresh() {
455
- const bg = this.isPartial ? theme.toolPendingBg : this.isError ? theme.toolErrorBg : theme.toolSuccessBg;
456
- this.box.setBgFn((line) => bg(line));
506
+ const toolBg = resolveToolBg(this.toolName);
507
+ const bgFn = this.isPartial ? toolBg.pending : this.isError ? theme.toolErrorBg : toolBg.success;
508
+ this.box.setBgFn((line) => bgFn(line));
457
509
  const display = resolveToolDisplay({
458
510
  name: this.toolName,
459
511
  args: this.args
@@ -2783,18 +2835,22 @@ async function runTui(opts) {
2783
2835
  return `agent:${currentAgentId}:${trimmed}`;
2784
2836
  };
2785
2837
  currentSessionKey = resolveSessionKey(initialSessionInput);
2786
- const updateHeader = () => {
2787
- const sessionLabel = formatSessionKey(currentSessionKey);
2788
- const agentLabel = formatAgentLabel(currentAgentId);
2789
- const dot = theme.dim(" · ");
2790
- header.setText(`${theme.header("⚡ Synurex")}${dot}${theme.accentSoft(agentLabel)}${dot}${theme.dim(sessionLabel)}`);
2791
- };
2792
2838
  const busyStates = new Set([
2793
2839
  "sending",
2794
2840
  "waiting",
2795
2841
  "streaming",
2796
2842
  "running"
2797
2843
  ]);
2844
+ const updateHeader = () => {
2845
+ const sessionLabel = formatSessionKey(currentSessionKey);
2846
+ const agentLabel = formatAgentLabel(currentAgentId);
2847
+ setAssistantLabel(agentNames.get(currentAgentId) || currentAgentId);
2848
+ const dot = theme.dim(" · ");
2849
+ const isBusy = busyStates.has(activityStatus);
2850
+ const statusDot = isBusy ? theme.accent("●") : theme.online("●");
2851
+ const statusLabel = isBusy ? theme.dim("Working") : theme.dim("Online");
2852
+ header.setText(`${theme.header("⚡ Synurex")}${dot}${theme.accentSoft(agentLabel)}${dot}${statusDot} ${statusLabel}${dot}${theme.dim(sessionLabel)}`);
2853
+ };
2798
2854
  let statusText = null;
2799
2855
  let statusLoader = null;
2800
2856
  const formatElapsed = (startMs) => {
@@ -2886,6 +2942,7 @@ async function runTui(opts) {
2886
2942
  statusText?.setText(theme.dim(text));
2887
2943
  }
2888
2944
  lastActivityStatus = activityStatus;
2945
+ updateHeader();
2889
2946
  };
2890
2947
  const setConnectionStatus = (text, ttlMs) => {
2891
2948
  connectionStatus = text;
@@ -3044,9 +3101,9 @@ async function runTui(opts) {
3044
3101
  updateHeader();
3045
3102
  if (!reconnected) {
3046
3103
  const bannerArt = formatCliBannerArt({ richTty: true });
3047
- const subtitle = `${theme.dim("Wishing Engine")}`;
3104
+ const subtitle = theme.accentSoft("Wishing Engine");
3048
3105
  const hint = theme.dim("Type a wish below to begin");
3049
- chatLog.addChild(new Text(`\n${bannerArt}\n${subtitle}\n${hint}`, 1, 1));
3106
+ chatLog.addChild(new Text(`\n${bannerArt}\n\n ${subtitle}\n ${hint}`, 1, 1));
3050
3107
  }
3051
3108
  await loadHistory();
3052
3109
  setConnectionStatus(reconnected ? "gateway reconnected" : "gateway connected", 4e3);
@@ -7,8 +7,8 @@ import { i as loadConfig, j as VERSION } from "./config-AFzxllYx.js";
7
7
  import { f as GATEWAY_CLIENT_CAPS, h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-DJEeCAZD.js";
8
8
  import { n as resolveToolDisplay, t as formatToolDetail } from "./tool-display-C9u4CdQu.js";
9
9
  import { a as extractContentFromMessage, c as formatContextUsageLine, d as resolveFinalAssistantText, f as resolveCommitHash, g as listChatCommandsForConfig, h as listChatCommands, i as composeThinkingAndContent, l as formatTokens, n as formatAge, o as extractTextFromMessage, r as asString, s as extractThinkingFromMessage, u as isCommandMessage } from "./channel-summary-D7joKboS.js";
10
- import { Pt as PROTOCOL_VERSION, l as GatewayClient } from "./net-MZzhgr1g.js";
11
- import { a as resolveExplicitGatewayAuth, r as ensureExplicitGatewayAuth } from "./call-mnjMMyVJ.js";
10
+ import { Pt as PROTOCOL_VERSION, l as GatewayClient } from "./net-BFQE3qvW.js";
11
+ import { a as resolveExplicitGatewayAuth, r as ensureExplicitGatewayAuth } from "./call-BrWU4m7x.js";
12
12
  import { n as formatTokenCount } from "./usage-format-DvowRSs-.js";
13
13
  import chalk from "chalk";
14
14
  import { spawn } from "node:child_process";
@@ -256,8 +256,9 @@ function createSyntaxTheme(fallback) {
256
256
  const palette = {
257
257
  text: "#E8E3D5",
258
258
  dim: "#7B7F87",
259
- accent: "#8B5CF6",
260
- accentSoft: "#A78BFA",
259
+ accent: "#A855F7",
260
+ accentSoft: "#C084FC",
261
+ pink: "#DB2777",
261
262
  border: "#3C414B",
262
263
  userBg: "#1E1B2E",
263
264
  userText: "#F3EEE0",
@@ -265,16 +266,22 @@ const palette = {
265
266
  toolPendingBg: "#1A1625",
266
267
  toolSuccessBg: "#0F2318",
267
268
  toolErrorBg: "#2A0F0F",
268
- toolTitle: "#8B5CF6",
269
+ toolExecBg: "#0F1A2A",
270
+ toolReadBg: "#1A1630",
271
+ toolWriteBg: "#0F2318",
272
+ toolWebBg: "#0F1E2E",
273
+ toolBrowserBg: "#1E1610",
274
+ toolTitle: "#A855F7",
269
275
  toolOutput: "#E1DACB",
270
- quote: "#A78BFA",
276
+ quote: "#C084FC",
271
277
  quoteBorder: "#4C1D95",
272
278
  code: "#C4B5FD",
273
279
  codeBlock: "#1E232A",
274
280
  codeBorder: "#343A45",
275
281
  link: "#34D399",
276
- error: "#F97066",
277
- success: "#7DD3A5"
282
+ error: "#EF4444",
283
+ success: "#22C55E",
284
+ online: "#22C55E"
278
285
  };
279
286
  const fg = (hex) => (text) => chalk.hex(hex)(text);
280
287
  const bg = (hex) => (text) => chalk.bgHex(hex)(text);
@@ -299,8 +306,10 @@ const theme = {
299
306
  dim: fg(palette.dim),
300
307
  accent: fg(palette.accent),
301
308
  accentSoft: fg(palette.accentSoft),
309
+ pink: fg(palette.pink),
302
310
  success: fg(palette.success),
303
311
  error: fg(palette.error),
312
+ online: fg(palette.online),
304
313
  header: (text) => chalk.bold(fg(palette.accent)(text)),
305
314
  system: fg(palette.systemText),
306
315
  userBg: bg(palette.userBg),
@@ -310,6 +319,11 @@ const theme = {
310
319
  toolPendingBg: bg(palette.toolPendingBg),
311
320
  toolSuccessBg: bg(palette.toolSuccessBg),
312
321
  toolErrorBg: bg(palette.toolErrorBg),
322
+ toolExecBg: bg(palette.toolExecBg),
323
+ toolReadBg: bg(palette.toolReadBg),
324
+ toolWriteBg: bg(palette.toolWriteBg),
325
+ toolWebBg: bg(palette.toolWebBg),
326
+ toolBrowserBg: bg(palette.toolBrowserBg),
313
327
  border: fg(palette.border),
314
328
  bold: (text) => chalk.bold(text),
315
329
  italic: (text) => chalk.italic(text)
@@ -367,14 +381,24 @@ const searchableSelectListTheme = {
367
381
  //#endregion
368
382
  //#region src/tui/components/assistant-message.ts
369
383
  function buildDivider(label, width = 60) {
370
- const dashes = "─".repeat(Math.max(0, Math.floor((width - label.length - 2) / 2)));
371
- const right = "─".repeat(Math.max(0, width - label.length - 2 - dashes.length));
372
- return `${theme.border(dashes)} ${theme.accent(label)} ${theme.border(right)}`;
384
+ const dashLen = Math.max(0, width - label.length - 2);
385
+ const dashes = "─".repeat(dashLen);
386
+ return `${theme.dim(label.toUpperCase())} ${theme.border(dashes)}`;
387
+ }
388
+ function formatTime() {
389
+ const now = /* @__PURE__ */ new Date();
390
+ const h = String(now.getHours()).padStart(2, "0");
391
+ const m = String(now.getMinutes()).padStart(2, "0");
392
+ return theme.dim(`${h}:${m}`);
393
+ }
394
+ let _agentLabel = "synurex";
395
+ function setAssistantLabel(label) {
396
+ _agentLabel = label || "synurex";
373
397
  }
374
398
  var AssistantMessageComponent = class extends Container {
375
399
  constructor(text) {
376
400
  super();
377
- const divider = buildDivider("synurex");
401
+ const divider = `${buildDivider(_agentLabel)} ${formatTime()}`;
378
402
  this.body = new Markdown(text, 1, 0, markdownTheme, { color: (line) => theme.fg(line) });
379
403
  this.addChild(new Spacer(1));
380
404
  this.addChild(new Text(divider, 1, 0));
@@ -388,6 +412,33 @@ var AssistantMessageComponent = class extends Container {
388
412
  //#endregion
389
413
  //#region src/tui/components/tool-execution.ts
390
414
  const PREVIEW_LINES = 12;
415
+ function resolveToolBg(toolName) {
416
+ const key = toolName.toLowerCase();
417
+ if (key === "system_run" || key === "exec" || key === "bash" || key.includes("process")) return {
418
+ pending: theme.toolExecBg,
419
+ success: theme.toolSuccessBg
420
+ };
421
+ if (key === "read" || key === "glob" || key === "grep" || key === "search") return {
422
+ pending: theme.toolReadBg,
423
+ success: theme.toolSuccessBg
424
+ };
425
+ if (key === "write" || key === "edit" || key === "attach") return {
426
+ pending: theme.toolWriteBg,
427
+ success: theme.toolSuccessBg
428
+ };
429
+ if (key.includes("web") || key.includes("fetch") || key.includes("http")) return {
430
+ pending: theme.toolWebBg,
431
+ success: theme.toolSuccessBg
432
+ };
433
+ if (key.includes("browser") || key.includes("canvas") || key.includes("screen")) return {
434
+ pending: theme.toolBrowserBg,
435
+ success: theme.toolSuccessBg
436
+ };
437
+ return {
438
+ pending: theme.toolPendingBg,
439
+ success: theme.toolSuccessBg
440
+ };
441
+ }
391
442
  function formatArgs(toolName, args) {
392
443
  const detail = formatToolDetail(resolveToolDisplay({
393
444
  name: toolName,
@@ -453,8 +504,9 @@ var ToolExecutionComponent = class extends Container {
453
504
  this.refresh();
454
505
  }
455
506
  refresh() {
456
- const bg = this.isPartial ? theme.toolPendingBg : this.isError ? theme.toolErrorBg : theme.toolSuccessBg;
457
- this.box.setBgFn((line) => bg(line));
507
+ const toolBg = resolveToolBg(this.toolName);
508
+ const bgFn = this.isPartial ? toolBg.pending : this.isError ? theme.toolErrorBg : toolBg.success;
509
+ this.box.setBgFn((line) => bgFn(line));
458
510
  const display = resolveToolDisplay({
459
511
  name: this.toolName,
460
512
  args: this.args
@@ -2784,18 +2836,22 @@ async function runTui(opts) {
2784
2836
  return `agent:${currentAgentId}:${trimmed}`;
2785
2837
  };
2786
2838
  currentSessionKey = resolveSessionKey(initialSessionInput);
2787
- const updateHeader = () => {
2788
- const sessionLabel = formatSessionKey(currentSessionKey);
2789
- const agentLabel = formatAgentLabel(currentAgentId);
2790
- const dot = theme.dim(" · ");
2791
- header.setText(`${theme.header("⚡ Synurex")}${dot}${theme.accentSoft(agentLabel)}${dot}${theme.dim(sessionLabel)}`);
2792
- };
2793
2839
  const busyStates = new Set([
2794
2840
  "sending",
2795
2841
  "waiting",
2796
2842
  "streaming",
2797
2843
  "running"
2798
2844
  ]);
2845
+ const updateHeader = () => {
2846
+ const sessionLabel = formatSessionKey(currentSessionKey);
2847
+ const agentLabel = formatAgentLabel(currentAgentId);
2848
+ setAssistantLabel(agentNames.get(currentAgentId) || currentAgentId);
2849
+ const dot = theme.dim(" · ");
2850
+ const isBusy = busyStates.has(activityStatus);
2851
+ const statusDot = isBusy ? theme.accent("●") : theme.online("●");
2852
+ const statusLabel = isBusy ? theme.dim("Working") : theme.dim("Online");
2853
+ header.setText(`${theme.header("⚡ Synurex")}${dot}${theme.accentSoft(agentLabel)}${dot}${statusDot} ${statusLabel}${dot}${theme.dim(sessionLabel)}`);
2854
+ };
2799
2855
  let statusText = null;
2800
2856
  let statusLoader = null;
2801
2857
  const formatElapsed = (startMs) => {
@@ -2887,6 +2943,7 @@ async function runTui(opts) {
2887
2943
  statusText?.setText(theme.dim(text));
2888
2944
  }
2889
2945
  lastActivityStatus = activityStatus;
2946
+ updateHeader();
2890
2947
  };
2891
2948
  const setConnectionStatus = (text, ttlMs) => {
2892
2949
  connectionStatus = text;
@@ -3045,9 +3102,9 @@ async function runTui(opts) {
3045
3102
  updateHeader();
3046
3103
  if (!reconnected) {
3047
3104
  const bannerArt = formatCliBannerArt({ richTty: true });
3048
- const subtitle = `${theme.dim("Wishing Engine")}`;
3105
+ const subtitle = theme.accentSoft("Wishing Engine");
3049
3106
  const hint = theme.dim("Type a wish below to begin");
3050
- chatLog.addChild(new Text(`\n${bannerArt}\n${subtitle}\n${hint}`, 1, 1));
3107
+ chatLog.addChild(new Text(`\n${bannerArt}\n\n ${subtitle}\n ${hint}`, 1, 1));
3051
3108
  }
3052
3109
  await loadHistory();
3053
3110
  setConnectionStatus(reconnected ? "gateway reconnected" : "gateway connected", 4e3);
@@ -23,11 +23,11 @@ import "./paths-mzsdSoO2.js";
23
23
  import "./redact-DJCFY628.js";
24
24
  import "./tool-display-C9u4CdQu.js";
25
25
  import "./channel-summary-D7joKboS.js";
26
- import "./net-MZzhgr1g.js";
27
- import "./call-mnjMMyVJ.js";
26
+ import "./net-BFQE3qvW.js";
27
+ import "./call-BrWU4m7x.js";
28
28
  import { t as formatDocsLink } from "./links-iCD68SwJ.js";
29
29
  import { t as parseTimeoutMs } from "./parse-timeout-Du-wHHNi.js";
30
- import { t as runTui } from "./tui-BPqDn4Jf.js";
30
+ import { t as runTui } from "./tui-NIkPzCXp.js";
31
31
 
32
32
  //#region src/cli/tui-cli.ts
33
33
  function registerTuiCli(program) {
@@ -8,8 +8,8 @@ import "./config-nvHm49RH.js";
8
8
  import "./manifest-registry-DjRSe72U.js";
9
9
  import "./server-context-CFielb4y.js";
10
10
  import "./errors-C8t2PjW_.js";
11
- import "./client-atZzP6kK.js";
12
- import "./call-5aMaMdGl.js";
11
+ import "./client-B9j7V2ke.js";
12
+ import "./call-CTxvJ5pZ.js";
13
13
  import "./message-channel-DcxF0eJh.js";
14
14
  import { t as formatDocsLink } from "./links-B79LZSNJ.js";
15
15
  import "./plugins-C1mc_xWv.js";
@@ -24,7 +24,7 @@ import "./skills-B60zX2bC.js";
24
24
  import "./redact-Bt-krp_b.js";
25
25
  import "./tool-display-D_HGmnfa.js";
26
26
  import { t as parseTimeoutMs } from "./parse-timeout-DV8NQQWk.js";
27
- import { t as runTui } from "./tui-Biuvuiog.js";
27
+ import { t as runTui } from "./tui-BYO6JShs.js";
28
28
 
29
29
  //#region src/cli/tui-cli.ts
30
30
  function registerTuiCli(program) {