very-happy-cli 0.2.177 → 0.2.178

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 (182) hide show
  1. package/dist/{AcpBackend-B-ny68XM.cjs → AcpBackend-CDkAQXYf.cjs} +3 -3
  2. package/dist/{AcpBackend-B0K0WrtW.mjs → AcpBackend-DCQXHRzT.mjs} +3 -3
  3. package/dist/{AcpSessionManager-DykjzBM4.mjs → AcpSessionManager-BXrQcqwC.mjs} +1 -1
  4. package/dist/{AcpSessionManager-CjdJLofq.cjs → AcpSessionManager-DckmUZza.cjs} +1 -1
  5. package/dist/{BasePermissionHandler-hdY7kTqX.mjs → BasePermissionHandler-BVlrEhIi.mjs} +1 -1
  6. package/dist/{BasePermissionHandler-DR6nxuEn.cjs → BasePermissionHandler-DyLmKKtO.cjs} +1 -1
  7. package/dist/{agentHome-GRN2VfHv.mjs → agentHome-C1xi37as.mjs} +5 -5
  8. package/dist/{agentHome-BdTXEUPe.cjs → agentHome-CEp9RMyK.cjs} +5 -5
  9. package/dist/{api-CKBViqI3.mjs → api-Dib0dmqC.mjs} +11 -11
  10. package/dist/{api-BWX10o97.cjs → api-JANhFdZV.cjs} +11 -11
  11. package/dist/{apiMachine-DttO4UFj.mjs → apiMachine-DNTJidYH.mjs} +24 -15
  12. package/dist/{apiMachine-BYYFGgFs.cjs → apiMachine-QhK-sKcr.cjs} +24 -15
  13. package/dist/{attachmentContent-cPVF463_.mjs → attachmentContent-DkkdpSSJ.mjs} +2 -2
  14. package/dist/{attachmentContent-kJKXpkMX.cjs → attachmentContent-bpQTBJ0y.cjs} +2 -2
  15. package/dist/{attachmentLimits-DtFqqiwR.cjs → attachmentLimits-SqeAHrVC.cjs} +1 -1
  16. package/dist/{attachmentLimits-Di1Z93lN.mjs → attachmentLimits-UyFn8fkQ.mjs} +1 -1
  17. package/dist/{auth-BmESeKuM.mjs → auth-BRjd2esb.mjs} +6 -6
  18. package/dist/{auth-CKdXb9zp.mjs → auth-DNct7VUi.mjs} +9 -9
  19. package/dist/{auth-CTECt2Oz.cjs → auth-DgIV0Cvt.cjs} +6 -6
  20. package/dist/{auth-DNxVmVbn.cjs → auth-omWDtgR8.cjs} +9 -9
  21. package/dist/{authRelay-DSAvg1uv.mjs → authRelay-DhQhkBvX.mjs} +1 -1
  22. package/dist/{authRelay-BdYkC1Po.cjs → authRelay-Dy1qU9td.cjs} +1 -0
  23. package/dist/{auto-D1ypjjfx.cjs → auto-CI16FZmX.cjs} +16 -16
  24. package/dist/{auto-Ch3203qd.mjs → auto-DKGFOJBo.mjs} +16 -16
  25. package/dist/{bootstrap-C0s2bPFQ.mjs → bootstrap-BUagGC_-.mjs} +2 -2
  26. package/dist/{bootstrap-6OI698q9.cjs → bootstrap-DCQ87Aan.cjs} +2 -2
  27. package/dist/{browser-DG6Uof5O.cjs → browser-CSKhc0Bl.cjs} +1 -1
  28. package/dist/{browser-BlLWZUMx.mjs → browser-Dj_DYQEh.mjs} +1 -1
  29. package/dist/{claudeLocal-CcWcKnoo.mjs → claudeLocal-CCCvAeMd.mjs} +5 -5
  30. package/dist/{claudeLocal-CemsIArT.cjs → claudeLocal-CdIVnOZp.cjs} +5 -5
  31. package/dist/{claudeLocalLauncher-A4VuevIi.cjs → claudeLocalLauncher-21-xh5gc.cjs} +10 -10
  32. package/dist/{claudeLocalLauncher-7p6y88nj.mjs → claudeLocalLauncher-BmrpaRYJ.mjs} +10 -10
  33. package/dist/{claudeSessionFork-BtROOjqf.mjs → claudeSessionFork-DvxMKAmY.mjs} +1 -1
  34. package/dist/{claudeSessionFork-CbDfm8Fz.cjs → claudeSessionFork-kYCP1IJB.cjs} +1 -1
  35. package/dist/{client-BPMWutfs.mjs → client-BTX9hsbr.mjs} +3 -3
  36. package/dist/{client-COmgDDy0.cjs → client-C4zKGjiJ.cjs} +2 -2
  37. package/dist/{client-DG5ndWLw.mjs → client-CnlkkrZO.mjs} +2 -2
  38. package/dist/{client-DyvBTYee.cjs → client-Dnza1hgN.cjs} +3 -3
  39. package/dist/codex/happyMcpStdioBridge.cjs +16 -16
  40. package/dist/codex/happyMcpStdioBridge.mjs +16 -16
  41. package/dist/{codexAppServerClient-R24WZZfg.cjs → codexAppServerClient-CRlBWGn3.cjs} +3 -3
  42. package/dist/{codexAppServerClient-D-Z8qSfI.mjs → codexAppServerClient-DvkpQgyv.mjs} +3 -3
  43. package/dist/{codexCommand-CVTkZJ1o.mjs → codexCommand-BxjogBzU.mjs} +41 -41
  44. package/dist/{codexCommand-6hW19gsq.cjs → codexCommand-DzxIWXIT.cjs} +41 -41
  45. package/dist/{codexTermination-BBU7e92y.cjs → codexTermination-C28FzlLb.cjs} +1 -1
  46. package/dist/{codexTermination-CCIfwzcx.mjs → codexTermination-ySDNMEhd.mjs} +1 -1
  47. package/dist/{config-DhdrvOLV.cjs → config-BFB5uJ4t.cjs} +3 -3
  48. package/dist/{config-CvsNChKX.mjs → config-DwfEpFr3.mjs} +3 -3
  49. package/dist/{configuration-DZPy0T9Z.cjs → configuration-4TGMrjul.cjs} +1 -1
  50. package/dist/{configuration-D55F0t16.mjs → configuration-DVrb61aY.mjs} +1 -1
  51. package/dist/{connect-CwCXMRmD.mjs → connect-C7FPY0PI.mjs} +14 -14
  52. package/dist/{connect-Wz-XZYXW.cjs → connect-QH2VJGBG.cjs} +14 -14
  53. package/dist/{context-CCRpVXFo.mjs → context-B3XPVJlj.mjs} +1 -1
  54. package/dist/{context-BKbrZ55r.cjs → context-JoKu0V54.cjs} +1 -1
  55. package/dist/{controlClient-SX8gSza2.cjs → controlClient-BTaZlbC6.cjs} +3 -3
  56. package/dist/{controlClient-C4xB5J6O.mjs → controlClient-BYKyGyxj.mjs} +3 -3
  57. package/dist/{createSessionMetadata-Bi-m0Y_O.mjs → createSessionMetadata-8Fuj2-IV.mjs} +2 -2
  58. package/dist/{createSessionMetadata-BCFmYlBo.cjs → createSessionMetadata-B2NynaWZ.cjs} +2 -2
  59. package/dist/{defaultPermissionMode-wBcbBezm.mjs → defaultPermissionMode-B8kJG9uI.mjs} +2 -2
  60. package/dist/{defaultPermissionMode-DMBEnXll.cjs → defaultPermissionMode-BEWCqJU-.cjs} +2 -2
  61. package/dist/{deterministicJson-ChGfQEF6.cjs → deterministicJson-BjNQsAjO.cjs} +9 -9
  62. package/dist/{deterministicJson-BkQETt8_.mjs → deterministicJson-C5ZwZ7hu.mjs} +9 -9
  63. package/dist/{doctor-B9c2C9dF.mjs → doctor-0BiGwJXk.mjs} +8 -8
  64. package/dist/{doctor-BsN3JZJn.cjs → doctor-BshRnjLi.cjs} +8 -8
  65. package/dist/{downloadTarget-Dj3WoVJa.cjs → downloadTarget-BN5vZt3K.cjs} +6 -6
  66. package/dist/{downloadTarget-ByXzbDK4.mjs → downloadTarget-DJPwAZlu.mjs} +6 -6
  67. package/dist/{ensureDaemonRunning-7Wb8M7Lv.cjs → ensureDaemonRunning-C5QfToCe.cjs} +5 -5
  68. package/dist/{ensureDaemonRunning--HYzs5Ce.mjs → ensureDaemonRunning-CSmb_mqt.mjs} +5 -5
  69. package/dist/{handleResumeCommand-OmuUGYjQ.cjs → handleResumeCommand-BwnUZmbo.cjs} +6 -6
  70. package/dist/{handleResumeCommand-DHddBkNJ.mjs → handleResumeCommand-CgjpsdDe.mjs} +6 -6
  71. package/dist/{index-D9NoYc5I.cjs → index-BRClDe07.cjs} +3 -3
  72. package/dist/{index-CrR4JISa.cjs → index-BYOZ_8WZ.cjs} +5 -5
  73. package/dist/{index-CEm0MYiS.mjs → index-BYgfern_.mjs} +3 -3
  74. package/dist/{index-BzJNDsJq.mjs → index-BehVbAsA.mjs} +38 -38
  75. package/dist/{index-Dhl6_bw7.mjs → index-Bvldtdny.mjs} +5 -5
  76. package/dist/{index-DMy3OCBe.mjs → index-Clqlu17M.mjs} +2 -2
  77. package/dist/{index-De8L5lFK.cjs → index-_l1Sdmbi.cjs} +2 -1
  78. package/dist/{index-BRJzH4sc.cjs → index-piJPsTsm.cjs} +37 -37
  79. package/dist/index.cjs +2 -2
  80. package/dist/index.mjs +2 -2
  81. package/dist/{install-1qn-D9FS.cjs → install-TO4taKW7.cjs} +3 -3
  82. package/dist/{install-BDIUtPXi.mjs → install-fYWHrPcC.mjs} +3 -3
  83. package/dist/lib.cjs +13 -13
  84. package/dist/lib.d.cts +3 -0
  85. package/dist/lib.d.mts +3 -0
  86. package/dist/lib.mjs +13 -13
  87. package/dist/{lidState-DxbK0qfu.cjs → lidState-BeOwj6eW.cjs} +2 -2
  88. package/dist/{lidState-BqVsw7H1.mjs → lidState-DNMlIhX0.mjs} +2 -2
  89. package/dist/{localHappyAgentAuth-Ce8kO2yc.mjs → localHappyAgentAuth-BezKSFDi.mjs} +2 -2
  90. package/dist/{localHappyAgentAuth-D5tANdRD.cjs → localHappyAgentAuth-Br-mgogg.cjs} +2 -2
  91. package/dist/{logger-13cBr_ew.mjs → logger--vAVtXB_.mjs} +2 -2
  92. package/dist/{logger-LvwVeATU.cjs → logger-DXTWlPzP.cjs} +2 -2
  93. package/dist/{machineMetadata-dMida2qq.mjs → machineMetadata-B1H9gNbN.mjs} +3 -3
  94. package/dist/{machineMetadata-29h7vgf4.cjs → machineMetadata-DcUupMje.cjs} +3 -3
  95. package/dist/{main-x4nAhdH5.mjs → main-CshDb5-1.mjs} +45 -45
  96. package/dist/{main-DpM5jaFH.cjs → main-DoMFJ2Cl.cjs} +45 -45
  97. package/dist/{mcp-DMiFGYMT.mjs → mcp-DKT_lrvQ.mjs} +15 -15
  98. package/dist/{mcp-DQv3caXs.cjs → mcp-pNc1EbQf.cjs} +15 -15
  99. package/dist/{mirrorProtocol-Bz8tEabR.mjs → mirrorProtocol-6IFGPpjJ.mjs} +3 -3
  100. package/dist/{mirrorProtocol-BfrERW7Z.cjs → mirrorProtocol-qKflWTX_.cjs} +3 -3
  101. package/dist/{package-CjlsAaRe.mjs → package-B7B03ejW.mjs} +7 -7
  102. package/dist/{package-Ch9WGDV_.cjs → package-DY4zTbKS.cjs} +7 -7
  103. package/dist/{peerTools-CxmrKnfV.mjs → peerTools-3R9RUARX.mjs} +4 -4
  104. package/dist/{peerTools-DtGKWli5.cjs → peerTools-iy3_6Yc5.cjs} +4 -4
  105. package/dist/{persistence-DXbKOHxl.cjs → persistence-BfX72dne.cjs} +14 -3
  106. package/dist/{persistence-C_tYtOqK.mjs → persistence-DTk4sNpd.mjs} +14 -4
  107. package/dist/{piRunnerArgs-BpHc-JZl.mjs → piRunnerArgs-AT8QJY7x.mjs} +1 -1
  108. package/dist/{piRunnerArgs-BVRZe2AR.cjs → piRunnerArgs-CRQVR9o-.cjs} +1 -1
  109. package/dist/{piRuntime-D7eio8Ix.cjs → piRuntime-BHRT5MKO.cjs} +1 -1
  110. package/dist/{piRuntime-DOdGF395.mjs → piRuntime-E44qTVQ4.mjs} +1 -1
  111. package/dist/{piTerminal-dpxz4Q8D.mjs → piTerminal-De8nbciM.mjs} +17 -17
  112. package/dist/{piTerminal-y_PRo2NY.cjs → piTerminal-hI4WFdWm.cjs} +17 -17
  113. package/dist/{rateLimitWindows-DFnMU2Vt.cjs → rateLimitWindows-Czb7_7cK.cjs} +1 -1
  114. package/dist/{rateLimitWindows-DYHDGuzQ.mjs → rateLimitWindows-XrJiiBpU.mjs} +1 -1
  115. package/dist/{registerCommonHandlers-60VuTkdg.cjs → registerCommonHandlers-C0_fyBQ0.cjs} +2 -2
  116. package/dist/{registerCommonHandlers-D8OMpBbQ.mjs → registerCommonHandlers-CvIedVRf.mjs} +2 -2
  117. package/dist/{registerKillSessionHandler-pqChBKwO.cjs → registerKillSessionHandler-DYl7l4Ts.cjs} +6 -6
  118. package/dist/{registerKillSessionHandler-Drhf7-Vz.mjs → registerKillSessionHandler-gwJ5lTf0.mjs} +6 -6
  119. package/dist/{remoteSessionClient-B7NvjHD3.cjs → remoteSessionClient-BRTIOX5b.cjs} +5 -5
  120. package/dist/{remoteSessionClient-D01Hso2-.mjs → remoteSessionClient-DRb2Jr5s.mjs} +5 -5
  121. package/dist/{reportProgressTool-Du_zAK4h.cjs → reportProgressTool-B9nCzbkL.cjs} +2 -2
  122. package/dist/{reportProgressTool-B203EZCR.mjs → reportProgressTool-D5tEoXMW.mjs} +2 -2
  123. package/dist/{run-DX4Zs3Ug.mjs → run-BQ_FGaOL.mjs} +105 -37
  124. package/dist/{run-DZ5jU53c.cjs → run-CKe_WeLW.cjs} +106 -38
  125. package/dist/{runClaude-ClRhHpwR.cjs → runClaude-MHI5IKM-.cjs} +22 -22
  126. package/dist/{runClaude-CgPHXP0L.mjs → runClaude-zrrNcQC_.mjs} +22 -22
  127. package/dist/{runClaudeDeps-Dz2iydq4.mjs → runClaudeDeps-CVBCokOS.mjs} +41 -41
  128. package/dist/{runClaudeDeps-D2v_WDSL.cjs → runClaudeDeps-RRw-Nusc.cjs} +36 -36
  129. package/dist/{runGemini-BtZqGFkp.cjs → runGemini-D7Lg9yCr.cjs} +33 -33
  130. package/dist/{runGemini-DBXxpoY8.mjs → runGemini-kipag2ag.mjs} +33 -33
  131. package/dist/{runOpenClaw-BOHpzCEU.mjs → runOpenClaw-C_lRY3Do.mjs} +19 -19
  132. package/dist/{runOpenClaw-D8q8G57u.cjs → runOpenClaw-DCcQ0L2N.cjs} +19 -19
  133. package/dist/{sandbox-C452Vrsc.mjs → sandbox-BSyXFVFp.mjs} +5 -5
  134. package/dist/{sandbox-Cu9mMzjx.cjs → sandbox-dMwPTmjm.cjs} +5 -5
  135. package/dist/selfCheck-CF7XGJPb.mjs +84 -0
  136. package/dist/{selfCheck-gKa3uVr1.cjs → selfCheck-DkzDDUsE.cjs} +34 -34
  137. package/dist/{send-B8HARi7x.mjs → send-C-k9nsd3.mjs} +9 -9
  138. package/dist/{send-2Vb5eppI.cjs → send-dxC0miIA.cjs} +9 -9
  139. package/dist/{server-Db9Wuam3.cjs → server-B-W6P7Qr.cjs} +7 -7
  140. package/dist/{server-BBWCIZyS.mjs → server-DxoTYNlw.mjs} +5 -5
  141. package/dist/{sessionLock-ZfvFVdUi.mjs → sessionLock-DBdtZGOL.mjs} +3 -3
  142. package/dist/{sessionLock-6qL_N6Rn.cjs → sessionLock-DWX6BbiU.cjs} +3 -3
  143. package/dist/{sessionModeFile-CWVq8AT9.mjs → sessionModeFile-ByLbXTbg.mjs} +1 -1
  144. package/dist/{sessionModeFile-CsLtn_PL.cjs → sessionModeFile-CLLdidiJ.cjs} +1 -1
  145. package/dist/{sessionOps-Dmt7WUUs.cjs → sessionOps-BAnr7n8t.cjs} +5 -5
  146. package/dist/{sessionOps-CdgbEJgf.mjs → sessionOps-BVoXe12O.mjs} +5 -5
  147. package/dist/{sessionScanner-CNVaSNOn.mjs → sessionScanner-BtxoeluY.mjs} +3 -3
  148. package/dist/{sessionScanner-CQL_WSaC.cjs → sessionScanner-CDOYsEUD.cjs} +3 -3
  149. package/dist/{sessions-DTomHfFg.mjs → sessions-C3sZJkzI.mjs} +10 -10
  150. package/dist/{sessions-BJblG_Hx.cjs → sessions-hAitoN-m.cjs} +10 -10
  151. package/dist/{setupOfflineReconnection-DVA0VpQL.cjs → setupOfflineReconnection-C2EeYTFH.cjs} +2 -2
  152. package/dist/{setupOfflineReconnection-C5trsV-j.mjs → setupOfflineReconnection-_eD4cuUT.mjs} +2 -2
  153. package/dist/{spawn-DRyNAqD8.cjs → spawn-Bc9v7pIf.cjs} +14 -14
  154. package/dist/{spawn-CQJFgoOq.mjs → spawn-qNrB2CD_.mjs} +14 -14
  155. package/dist/{spawnAgents-CCjJifAW.cjs → spawnAgents-BVEaz35W.cjs} +1 -1
  156. package/dist/{spawnAgents-BjtmjBvP.mjs → spawnAgents-Bw6j4tqz.mjs} +1 -1
  157. package/dist/{spawnHappyCLI-B_0RWxD4.mjs → spawnHappyCLI-C2stUioM.mjs} +1 -1
  158. package/dist/{spawnHappyCLI-ChniczJ5.cjs → spawnHappyCLI-fzUagkKV.cjs} +1 -1
  159. package/dist/{specialCommands-DbntVs0d.cjs → specialCommands-BJ-nqY4s.cjs} +3 -3
  160. package/dist/{specialCommands-DkdFJi4N.mjs → specialCommands-C6W-rVyh.mjs} +3 -3
  161. package/dist/{startFileWatcher-C292fhra.cjs → startFileWatcher-Bqlqjt93.cjs} +1 -1
  162. package/dist/{startFileWatcher-UQyTSRAP.mjs → startFileWatcher-CR09Snmz.mjs} +1 -1
  163. package/dist/{streamRelay-Cx01enfe.cjs → streamRelay-9kBPpbvU.cjs} +1 -1
  164. package/dist/{streamRelay-_qCd873P.mjs → streamRelay-CJoMk_d2.mjs} +1 -1
  165. package/dist/{sync-C3p7-KLn.mjs → sync-DbW07iQS.mjs} +1 -1
  166. package/dist/{sync-C7sxoUYG.cjs → sync-Dhmtk66S.cjs} +1 -1
  167. package/dist/{systemPrompt-DtibzbRU.cjs → systemPrompt-3PYi3EUY.cjs} +2 -2
  168. package/dist/{systemPrompt-CdHOlyVW.mjs → systemPrompt-CQcuUmVp.mjs} +2 -2
  169. package/dist/{teams-ujXr3AFn.mjs → teams-CwF4Z2fA.mjs} +7 -7
  170. package/dist/{teams-D7O7TpVU.cjs → teams-DpxLcUU_.cjs} +7 -7
  171. package/dist/{time-Dg5tVB8S.cjs → time-A6zR3Iy6.cjs} +1 -1
  172. package/dist/{time-yEL6wHUF.mjs → time-BuGWTVP6.mjs} +1 -1
  173. package/dist/{titleGenerator-Dr-BtjzO.mjs → titleGenerator-BGEzNWC9.mjs} +1 -1
  174. package/dist/{titleGenerator-BMEaDTwU.cjs → titleGenerator-D26gvNaS.cjs} +2 -2
  175. package/dist/{todo-CUcFamGs.cjs → todo-73g3NCIO.cjs} +7 -7
  176. package/dist/{todo-CvJe4M2C.mjs → todo-DrZc76H5.mjs} +7 -7
  177. package/dist/{tools-BrM3bZW5.mjs → tools-BtsrQnNS.mjs} +1 -1
  178. package/dist/{tools-DDKTB5aQ.cjs → tools-CxJp4T1T.cjs} +1 -1
  179. package/dist/{uninstall-CEcMMQGz.mjs → uninstall-DOb2mTwV.mjs} +3 -3
  180. package/dist/{uninstall-7oLuhYIu.cjs → uninstall-DWNYvewQ.cjs} +3 -3
  181. package/package.json +7 -7
  182. package/dist/selfCheck-BAvqBwBR.mjs +0 -84
@@ -1,72 +1,72 @@
1
1
  'use strict';
2
2
 
3
- var mirrorProtocol = require('./mirrorProtocol-BfrERW7Z.cjs');
4
- var piRunnerArgs = require('./piRunnerArgs-BVRZe2AR.cjs');
3
+ var mirrorProtocol = require('./mirrorProtocol-qKflWTX_.cjs');
4
+ var piRunnerArgs = require('./piRunnerArgs-CRQVR9o-.cjs');
5
5
  var fs = require('fs/promises');
6
6
  var tmp = require('tmp');
7
7
  var axios = require('axios');
8
- var api = require('./api-BWX10o97.cjs');
9
- var spawnAgents = require('./spawnAgents-CCjJifAW.cjs');
10
- var logger = require('./logger-LvwVeATU.cjs');
8
+ var api = require('./api-JANhFdZV.cjs');
9
+ var spawnAgents = require('./spawnAgents-BVEaz35W.cjs');
10
+ var logger = require('./logger-DXTWlPzP.cjs');
11
11
  var node_fs = require('node:fs');
12
12
  var path = require('node:path');
13
- var index$2 = require('./index-D9NoYc5I.cjs');
14
- var auth = require('./auth-CTECt2Oz.cjs');
15
- var configuration = require('./configuration-DZPy0T9Z.cjs');
13
+ var index$2 = require('./index-BRClDe07.cjs');
14
+ var auth = require('./auth-DgIV0Cvt.cjs');
15
+ var configuration = require('./configuration-4TGMrjul.cjs');
16
16
  var child_process = require('child_process');
17
- var _package = require('./package-Ch9WGDV_.cjs');
18
- var doctor = require('./doctor-BsN3JZJn.cjs');
19
- var spawnHappyCLI = require('./spawnHappyCLI-ChniczJ5.cjs');
20
- var persistence = require('./persistence-DXbKOHxl.cjs');
21
- var controlClient = require('./controlClient-SX8gSza2.cjs');
22
- var sessionOps = require('./sessionOps-Dmt7WUUs.cjs');
17
+ var _package = require('./package-DY4zTbKS.cjs');
18
+ var doctor = require('./doctor-BshRnjLi.cjs');
19
+ var spawnHappyCLI = require('./spawnHappyCLI-fzUagkKV.cjs');
20
+ var persistence = require('./persistence-BfX72dne.cjs');
21
+ var controlClient = require('./controlClient-BTaZlbC6.cjs');
22
+ var sessionOps = require('./sessionOps-BAnr7n8t.cjs');
23
23
  var fastify = require('fastify');
24
24
  var z = require('zod');
25
25
  var fastifyTypeProviderZod = require('fastify-type-provider-zod');
26
- var authRelay = require('./authRelay-BdYkC1Po.cjs');
26
+ var authRelay = require('./authRelay-Dy1qU9td.cjs');
27
27
  var node_crypto = require('node:crypto');
28
28
  var previewPath = require('./previewPath-B0rBdhy1.cjs');
29
29
  var backgroundTaskActivity = require('./backgroundTaskActivity-CBvUdj39.cjs');
30
- var rateLimitWindows = require('./rateLimitWindows-DFnMU2Vt.cjs');
31
- var peerTools = require('./peerTools-DtGKWli5.cjs');
30
+ var rateLimitWindows = require('./rateLimitWindows-Czb7_7cK.cjs');
31
+ var peerTools = require('./peerTools-iy3_6Yc5.cjs');
32
32
  var os = require('node:os');
33
- var remoteSessionClient = require('./remoteSessionClient-B7NvjHD3.cjs');
34
- var bootstrap = require('./bootstrap-6OI698q9.cjs');
35
- var index$1 = require('./index-CrR4JISa.cjs');
33
+ var remoteSessionClient = require('./remoteSessionClient-BRTIOX5b.cjs');
34
+ var bootstrap = require('./bootstrap-DCQ87Aan.cjs');
35
+ var index$1 = require('./index-BYOZ_8WZ.cjs');
36
36
  var fs$1 = require('fs');
37
37
  var path$2 = require('path');
38
38
  var node_child_process = require('node:child_process');
39
39
  var projectPath = require('./projectPath-ChLhdOyt.cjs');
40
40
  var doctorReadiness = require('./doctorReadiness-BCZGcN0a.cjs');
41
- var machineMetadata = require('./machineMetadata-29h7vgf4.cjs');
42
- var handleResumeCommand = require('./handleResumeCommand-OmuUGYjQ.cjs');
41
+ var machineMetadata = require('./machineMetadata-DcUupMje.cjs');
42
+ var handleResumeCommand = require('./handleResumeCommand-BwnUZmbo.cjs');
43
+ var index = require('./index-_l1Sdmbi.cjs');
43
44
  var promises = require('node:fs/promises');
44
45
  var cliUpdate = require('./cliUpdate-DsKXPFYp.cjs');
45
- var client = require('./client-COmgDDy0.cjs');
46
+ var client = require('./client-C4zKGjiJ.cjs');
46
47
  var module$1 = require('node:module');
47
48
  var path$1 = require('./path-B7zW-WwE.cjs');
48
49
  var editPaths = require('./editPaths-Bqp4OFPw.cjs');
49
- var startFileWatcher = require('./startFileWatcher-C292fhra.cjs');
50
- var sync = require('./sync-C7sxoUYG.cjs');
50
+ var startFileWatcher = require('./startFileWatcher-Bqlqjt93.cjs');
51
+ var sync = require('./sync-Dhmtk66S.cjs');
51
52
  var types = require('./types-CRS-srZK.cjs');
52
53
  var tmuxSocket = require('./tmuxSocket-D-Xt6Vn-.cjs');
53
- var sessionLock = require('./sessionLock-6qL_N6Rn.cjs');
54
+ var sessionLock = require('./sessionLock-DWX6BbiU.cjs');
54
55
  var doctor$1 = require('./doctor-u46qYYKX.cjs');
55
56
  var resources = require('./resources-JDPugcDq.cjs');
56
57
  var node_util = require('node:util');
57
- var index = require('./index-De8L5lFK.cjs');
58
58
  var template = require('./template-BaHAmH2K.cjs');
59
59
  var daemonSupervisor = require('./daemonSupervisor-B-SPSqhs.cjs');
60
60
  var loginShellEnv = require('./loginShellEnv-BkuYtExZ.cjs');
61
- require('./sessionModeFile-CsLtn_PL.cjs');
62
- require('./lidState-DxbK0qfu.cjs');
61
+ require('./sessionModeFile-CLLdidiJ.cjs');
62
+ require('./lidState-BeOwj6eW.cjs');
63
63
  require('os');
64
64
  require('node:events');
65
65
  require('socket.io-client');
66
- require('./attachmentLimits-DtFqqiwR.cjs');
66
+ require('./attachmentLimits-SqeAHrVC.cjs');
67
67
  require('./limits-C-a7gr04.cjs');
68
- require('./time-Dg5tVB8S.cjs');
69
- require('./registerCommonHandlers-60VuTkdg.cjs');
68
+ require('./time-A6zR3Iy6.cjs');
69
+ require('./registerCommonHandlers-C0_fyBQ0.cjs');
70
70
  require('util');
71
71
  require('crypto');
72
72
  require('cross-spawn');
@@ -74,12 +74,12 @@ require('@paralleldrive/cuid2');
74
74
  require('./contentLogMetadata-ZSFk_NjQ.cjs');
75
75
  require('chalk');
76
76
  require('tweetnacl');
77
- require('./browser-DG6Uof5O.cjs');
77
+ require('./browser-CSKhc0Bl.cjs');
78
78
  require('open');
79
79
  require('./ids-B6ZC0HGt.cjs');
80
80
  require('url');
81
81
  require('./detectCLI-DR9ZaN6B.cjs');
82
- require('./localHappyAgentAuth-D5tANdRD.cjs');
82
+ require('./localHappyAgentAuth-Br-mgogg.cjs');
83
83
  require('ps-list');
84
84
 
85
85
  var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
@@ -2052,6 +2052,52 @@ function spawnAgentUnavailableError(agent, availability) {
2052
2052
  return null;
2053
2053
  }
2054
2054
 
2055
+ function isAcceptableRelayUrl(url) {
2056
+ try {
2057
+ const parsed = new URL(url);
2058
+ const loopback = parsed.hostname === "localhost" || parsed.hostname === "127.0.0.1" || parsed.hostname === "[::1]";
2059
+ return parsed.protocol === "https:" || parsed.protocol === "http:" && loopback;
2060
+ } catch {
2061
+ return false;
2062
+ }
2063
+ }
2064
+ async function applyServerMigration(raw, deps) {
2065
+ const parsed = index.ServerMigrateNoticeSchema.safeParse(raw);
2066
+ if (!parsed.success) return { action: "ignored", reason: "malformed notice" };
2067
+ const notice = parsed.data;
2068
+ if (authRelay.sameRelay(notice.url, deps.configuredServerUrl)) return { action: "ignored", reason: "already on that relay" };
2069
+ if (!isAcceptableRelayUrl(notice.url) || !isAcceptableRelayUrl(notice.webappUrl)) {
2070
+ return refuse(deps, `relay URL must be https: ${notice.url}`);
2071
+ }
2072
+ if (deps.env.HAPPY_SERVER_URL?.trim()) {
2073
+ return refuse(deps, `HAPPY_SERVER_URL is set in this daemon's environment; unset it (or point it at ${notice.url}) and restart the daemon`);
2074
+ }
2075
+ const credentials = await deps.readCredentials();
2076
+ if (!credentials) return refuse(deps, "no credentials on disk");
2077
+ let token;
2078
+ try {
2079
+ const response = await deps.fetch(`${notice.url}/v1/auth/migrate/complete`, {
2080
+ method: "POST",
2081
+ headers: { "content-type": "application/json", "X-Happy-Client": deps.clientId },
2082
+ body: JSON.stringify({ handoff: notice.handoff })
2083
+ });
2084
+ if (!response.ok) return refuse(deps, `${notice.url} refused the handoff (HTTP ${response.status})`);
2085
+ const body = await response.json();
2086
+ if (body.kind !== "daemon" || typeof body.token !== "string" || !body.token) return refuse(deps, `${notice.url} answered without a daemon token`);
2087
+ token = body.token;
2088
+ } catch (error) {
2089
+ return refuse(deps, `${notice.url} unreachable: ${error instanceof Error ? error.message : String(error)}`);
2090
+ }
2091
+ await deps.updateSettings((current) => ({ ...current, serverUrl: notice.url, webappUrl: notice.webappUrl }));
2092
+ await deps.rewriteCredentials(credentials, { token, authServerUrl: notice.url });
2093
+ deps.log(`[RELAY MOVE] Moved this machine from ${deps.configuredServerUrl} to ${notice.url}; handing over to a new daemon`);
2094
+ return { action: "moved", serverUrl: notice.url, webappUrl: notice.webappUrl };
2095
+ }
2096
+ function refuse(deps, reason) {
2097
+ deps.log(`[RELAY MOVE] Not moving this machine: ${reason}`);
2098
+ return { action: "refused", reason };
2099
+ }
2100
+
2055
2101
  function str(value) {
2056
2102
  return typeof value === "string" && value.length > 0 ? value : void 0;
2057
2103
  }
@@ -2651,7 +2697,7 @@ function parseJsonObject(text) {
2651
2697
  return null;
2652
2698
  }
2653
2699
  }
2654
- function resolveSdkClaudeBinary(platform = process.platform, arch = process.arch, resolver = (s) => module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('run-DZ5jU53c.cjs', document.baseURI).href))).resolve(s)) {
2700
+ function resolveSdkClaudeBinary(platform = process.platform, arch = process.arch, resolver = (s) => module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('run-CKe_WeLW.cjs', document.baseURI).href))).resolve(s)) {
2655
2701
  const platformArch = `${platform}-${arch}`;
2656
2702
  const candidates = [
2657
2703
  `@anthropic-ai/claude-agent-sdk-${platformArch}/claude`,
@@ -6029,6 +6075,27 @@ async function startDaemon() {
6029
6075
  });
6030
6076
  apiMachine.setCliUpdateRetryHandler(updateController.retry);
6031
6077
  apiMachine.setCliUpdateRequestHandler(updateController.request);
6078
+ let pendingRelayMove = null;
6079
+ let relayMoveInFlight = null;
6080
+ apiMachine.setServerMigrateHandler((notice) => {
6081
+ if (relayMoveInFlight || pendingRelayMove) return;
6082
+ relayMoveInFlight = applyServerMigration(notice, {
6083
+ configuredServerUrl: configuration.configuration.serverUrl,
6084
+ env: process.env,
6085
+ clientId: `cli-daemon/${configuration.configuration.currentCliVersion}`,
6086
+ fetch,
6087
+ readCredentials: persistence.readCredentials,
6088
+ rewriteCredentials: persistence.rewriteCredentialsForRelay,
6089
+ updateSettings: persistence.updateSettings,
6090
+ log: (message) => logger.logger.warn(message)
6091
+ }).then((outcome) => {
6092
+ if (outcome.action === "moved") pendingRelayMove = { serverUrl: outcome.serverUrl };
6093
+ }).catch((error) => {
6094
+ logger.logger.warn("[RELAY MOVE] Failed:", error);
6095
+ }).finally(() => {
6096
+ relayMoveInFlight = null;
6097
+ });
6098
+ });
6032
6099
  const refreshCliUpdate = () => updateController.refresh().catch((error) => {
6033
6100
  logger.logger.debug("[DAEMON RUN] CLI update policy check failed:", error);
6034
6101
  });
@@ -6066,8 +6133,9 @@ async function startDaemon() {
6066
6133
  } catch {
6067
6134
  }
6068
6135
  }
6069
- if (bundleReplaced && !teamWorker?.busy && !automationRunner?.busy && !updateController.isRunning() && !turnActivity.hasActiveTurn() && !backgroundTasks.hasAny()) {
6070
- const preflight = await preflightNewBundle(bundlePath);
6136
+ const relayMove = pendingRelayMove;
6137
+ if ((bundleReplaced || relayMove) && !teamWorker?.busy && !automationRunner?.busy && !updateController.isRunning() && !turnActivity.hasActiveTurn() && !backgroundTasks.hasAny()) {
6138
+ const preflight = bundleReplaced ? await preflightNewBundle(bundlePath) : { action: "proceed" };
6071
6139
  if (preflight.action === "hold") {
6072
6140
  if (lastHandoverHold !== preflight.reason) {
6073
6141
  lastHandoverHold = preflight.reason;
@@ -6078,7 +6146,7 @@ async function startDaemon() {
6078
6146
  }
6079
6147
  if (teamWorker?.busy || automationRunner?.busy || updateController.isRunning() || turnActivity.hasActiveTurn() || backgroundTasks.hasAny()) return;
6080
6148
  lastHandoverHold = null;
6081
- logger.logger.debug("[DAEMON RUN] Daemon bundle replaced on disk and verified, handing off to new daemon");
6149
+ logger.logger.debug(relayMove ? `[DAEMON RUN] Relay moved to ${relayMove.serverUrl}; handing off to a new daemon on the new settings` : "[DAEMON RUN] Daemon bundle replaced on disk and verified, handing off to new daemon");
6082
6150
  teamWorker?.stop();
6083
6151
  automationRunner?.stop();
6084
6152
  clearInterval(restartOnStaleVersionAndHeartbeat);
@@ -1,59 +1,59 @@
1
1
  'use strict';
2
2
 
3
3
  var os = require('node:os');
4
- var sessionLock = require('./sessionLock-6qL_N6Rn.cjs');
5
- var persistence = require('./persistence-DXbKOHxl.cjs');
6
- var defaultPermissionMode = require('./defaultPermissionMode-DMBEnXll.cjs');
4
+ var sessionLock = require('./sessionLock-DWX6BbiU.cjs');
5
+ var persistence = require('./persistence-BfX72dne.cjs');
6
+ var defaultPermissionMode = require('./defaultPermissionMode-BEWCqJU-.cjs');
7
7
  var node_crypto = require('node:crypto');
8
- var api = require('./api-BWX10o97.cjs');
9
- var logger = require('./logger-LvwVeATU.cjs');
10
- var createSessionMetadata = require('./createSessionMetadata-BCFmYlBo.cjs');
11
- var _package = require('./package-Ch9WGDV_.cjs');
12
- var index = require('./index-De8L5lFK.cjs');
8
+ var api = require('./api-JANhFdZV.cjs');
9
+ var logger = require('./logger-DXTWlPzP.cjs');
10
+ var createSessionMetadata = require('./createSessionMetadata-B2NynaWZ.cjs');
11
+ var _package = require('./package-DY4zTbKS.cjs');
12
+ var index = require('./index-_l1Sdmbi.cjs');
13
13
  var forkBackfill = require('./forkBackfill-8eLDeS73.cjs');
14
- var configuration = require('./configuration-DZPy0T9Z.cjs');
15
- var controlClient = require('./controlClient-SX8gSza2.cjs');
16
- var machineMetadata = require('./machineMetadata-29h7vgf4.cjs');
14
+ var configuration = require('./configuration-4TGMrjul.cjs');
15
+ var controlClient = require('./controlClient-BTaZlbC6.cjs');
16
+ var machineMetadata = require('./machineMetadata-DcUupMje.cjs');
17
17
  var projectPath = require('./projectPath-ChLhdOyt.cjs');
18
18
  var path = require('node:path');
19
19
  var permissionMode = require('./permissionMode-CrV-XuMs.cjs');
20
- var authRelay = require('./authRelay-BdYkC1Po.cjs');
20
+ var authRelay = require('./authRelay-Dy1qU9td.cjs');
21
21
  var promises = require('node:fs/promises');
22
- var attachmentContent = require('./attachmentContent-kJKXpkMX.cjs');
22
+ var attachmentContent = require('./attachmentContent-bpQTBJ0y.cjs');
23
23
  var transcriptCursor = require('./transcriptCursor-DcXGLeSc.cjs');
24
24
  var startupPlan = require('./startupPlan-BLMbfQIH.cjs');
25
25
  require('node:fs');
26
26
  require('zod');
27
27
  require('axios');
28
- require('./lidState-DxbK0qfu.cjs');
28
+ require('./lidState-BeOwj6eW.cjs');
29
29
  require('os');
30
30
  require('child_process');
31
31
  require('node:events');
32
32
  require('socket.io-client');
33
- require('./attachmentLimits-DtFqqiwR.cjs');
33
+ require('./attachmentLimits-SqeAHrVC.cjs');
34
34
  require('./limits-C-a7gr04.cjs');
35
- require('./time-Dg5tVB8S.cjs');
36
- require('./registerCommonHandlers-60VuTkdg.cjs');
35
+ require('./time-A6zR3Iy6.cjs');
36
+ require('./registerCommonHandlers-C0_fyBQ0.cjs');
37
37
  require('util');
38
38
  require('fs/promises');
39
39
  require('crypto');
40
40
  require('path');
41
41
  require('cross-spawn');
42
42
  require('@paralleldrive/cuid2');
43
- require('./sync-C7sxoUYG.cjs');
43
+ require('./sync-Dhmtk66S.cjs');
44
44
  require('./backgroundTaskActivity-CBvUdj39.cjs');
45
45
  require('./contentLogMetadata-ZSFk_NjQ.cjs');
46
46
  require('chalk');
47
47
  require('node:util');
48
48
  require('./detectCLI-DR9ZaN6B.cjs');
49
49
  require('fs');
50
- require('./localHappyAgentAuth-D5tANdRD.cjs');
50
+ require('./localHappyAgentAuth-Br-mgogg.cjs');
51
51
  require('tweetnacl');
52
52
  require('url');
53
53
 
54
54
  const DEFAULT_CLAUDE_MODEL = void 0;
55
55
  const DEFAULT_CLAUDE_EFFORT = void 0;
56
- const importRunClaudeDeps = () => Promise.resolve().then(function () { return require('./runClaudeDeps-D2v_WDSL.cjs'); });
56
+ const importRunClaudeDeps = () => Promise.resolve().then(function () { return require('./runClaudeDeps-RRw-Nusc.cjs'); });
57
57
  async function runClaude(credentials, options = {}) {
58
58
  logger.logger.debug(`[CLAUDE] ===== CLAUDE MODE STARTING =====`);
59
59
  logger.logger.debug(`[CLAUDE] This is the Claude agent, NOT Gemini`);
@@ -67,7 +67,7 @@ async function runClaude(credentials, options = {}) {
67
67
  const isAssistantVariant = process.env.HAPPY_SESSION_VARIANT === "assistant";
68
68
  if (isAssistantVariant) {
69
69
  try {
70
- const { bootstrapAssistantHome } = await Promise.resolve().then(function () { return require('./bootstrap-6OI698q9.cjs'); });
70
+ const { bootstrapAssistantHome } = await Promise.resolve().then(function () { return require('./bootstrap-DCQ87Aan.cjs'); });
71
71
  await bootstrapAssistantHome();
72
72
  } catch (error) {
73
73
  logger.logger.debug("[START] Assistant home bootstrap failed:", error);
@@ -187,7 +187,7 @@ async function runClaude(credentials, options = {}) {
187
187
  }
188
188
  if (!response) {
189
189
  let offlineSessionId = null;
190
- const { claudeLocal } = await Promise.resolve().then(function () { return require('./claudeLocal-CemsIArT.cjs'); });
190
+ const { claudeLocal } = await Promise.resolve().then(function () { return require('./claudeLocal-CdIVnOZp.cjs'); });
191
191
  const { createSessionScanner: createSessionScanner2 } = await loadDeps();
192
192
  const reconnection = api.startOfflineReconnection({
193
193
  serverUrl: configuration.configuration.serverUrl,
@@ -1,57 +1,57 @@
1
1
  import os from 'node:os';
2
- import { c as claimSessionOrExit, a as applyServerSnapshot, b as applyHibernationReplay, w as withoutServerSnapshot, m as mergeReconnectMetadata } from './sessionLock-ZfvFVdUi.mjs';
3
- import { r as readSettings, H as HIBERNATION_CAPABILITY, a as resolveCheckMs, l as latchKeepAwake, e as evaluateWrapperIdle } from './persistence-C_tYtOqK.mjs';
4
- import { D as DEFAULT_CLAUDE_PERMISSION_MODE, H as HibernationProbe, c as commitHibernation } from './defaultPermissionMode-wBcbBezm.mjs';
2
+ import { c as claimSessionOrExit, a as applyServerSnapshot, b as applyHibernationReplay, w as withoutServerSnapshot, m as mergeReconnectMetadata } from './sessionLock-DBdtZGOL.mjs';
3
+ import { r as readSettings, H as HIBERNATION_CAPABILITY, a as resolveCheckMs, l as latchKeepAwake, e as evaluateWrapperIdle } from './persistence-DTk4sNpd.mjs';
4
+ import { D as DEFAULT_CLAUDE_PERMISSION_MODE, H as HibernationProbe, c as commitHibernation } from './defaultPermissionMode-B8kJG9uI.mjs';
5
5
  import { randomUUID } from 'node:crypto';
6
- import { c as connectionState, A as ApiClient, s as startOfflineReconnection } from './api-CKBViqI3.mjs';
7
- import { l as logger } from './logger-13cBr_ew.mjs';
8
- import { s as spawnOriginTags, a as sessionWorktreeMetadata } from './createSessionMetadata-Bi-m0Y_O.mjs';
9
- import { p as packageJson } from './package-CjlsAaRe.mjs';
10
- import { P as PROMPT_QUEUE_CAPABILITY } from './index-DMy3OCBe.mjs';
6
+ import { c as connectionState, A as ApiClient, s as startOfflineReconnection } from './api-Dib0dmqC.mjs';
7
+ import { l as logger } from './logger--vAVtXB_.mjs';
8
+ import { s as spawnOriginTags, a as sessionWorktreeMetadata } from './createSessionMetadata-8Fuj2-IV.mjs';
9
+ import { p as packageJson } from './package-B7B03ejW.mjs';
10
+ import { P as PROMPT_QUEUE_CAPABILITY } from './index-Clqlu17M.mjs';
11
11
  import { F as FORK_BACKFILL_CAPABILITY, p as publishForkBackfillWhenCommitted } from './forkBackfill-DYIjlN1Z.mjs';
12
- import { c as configuration } from './configuration-D55F0t16.mjs';
13
- import { n as notifyDaemonSessionStarted, c as checkDaemonHibernation } from './controlClient-C4xB5J6O.mjs';
14
- import { g as getInitialMachineMetadata } from './machineMetadata-dMida2qq.mjs';
12
+ import { c as configuration } from './configuration-DVrb61aY.mjs';
13
+ import { n as notifyDaemonSessionStarted, c as checkDaemonHibernation } from './controlClient-BYKyGyxj.mjs';
14
+ import { g as getInitialMachineMetadata } from './machineMetadata-B1H9gNbN.mjs';
15
15
  import { p as projectPath } from './projectPath-BTBIMB57.mjs';
16
16
  import { resolve, join } from 'node:path';
17
17
  import { a as applySandboxPermissionPolicy, r as resolveInitialClaudePermissionMode, m as mapToClaudeMode, b as reconcilePublishedPermissionMode } from './permissionMode-CH4FoZfU.mjs';
18
- import { d as decodeBase64, e as encodeBase64 } from './authRelay-DSAvg1uv.mjs';
18
+ import { d as decodeBase64, e as encodeBase64 } from './authRelay-DhQhkBvX.mjs';
19
19
  import { readFile } from 'node:fs/promises';
20
- import { C as CLAUDE_ATTACHMENT_KINDS, s as stripAttachmentManifest } from './attachmentContent-cPVF463_.mjs';
20
+ import { C as CLAUDE_ATTACHMENT_KINDS, s as stripAttachmentManifest } from './attachmentContent-DkkdpSSJ.mjs';
21
21
  import { T as TranscriptPathHints } from './transcriptCursor-B7T_gkQ0.mjs';
22
22
  import { p as planClaudeStartup } from './startupPlan-DFMyNgAs.mjs';
23
23
  import 'node:fs';
24
24
  import 'zod';
25
25
  import 'axios';
26
- import './lidState-BqVsw7H1.mjs';
26
+ import './lidState-DNMlIhX0.mjs';
27
27
  import 'os';
28
28
  import 'child_process';
29
29
  import 'node:events';
30
30
  import 'socket.io-client';
31
- import './attachmentLimits-Di1Z93lN.mjs';
31
+ import './attachmentLimits-UyFn8fkQ.mjs';
32
32
  import './limits-DIo7rEBR.mjs';
33
- import './time-yEL6wHUF.mjs';
34
- import './registerCommonHandlers-D8OMpBbQ.mjs';
33
+ import './time-BuGWTVP6.mjs';
34
+ import './registerCommonHandlers-CvIedVRf.mjs';
35
35
  import 'util';
36
36
  import 'fs/promises';
37
37
  import 'crypto';
38
38
  import 'path';
39
39
  import 'cross-spawn';
40
40
  import '@paralleldrive/cuid2';
41
- import './sync-C3p7-KLn.mjs';
41
+ import './sync-DbW07iQS.mjs';
42
42
  import './backgroundTaskActivity-BVwJBl02.mjs';
43
43
  import './contentLogMetadata-BlWI0egu.mjs';
44
44
  import 'chalk';
45
45
  import 'node:util';
46
46
  import './detectCLI-CSGMlV51.mjs';
47
47
  import 'fs';
48
- import './localHappyAgentAuth-Ce8kO2yc.mjs';
48
+ import './localHappyAgentAuth-BezKSFDi.mjs';
49
49
  import 'tweetnacl';
50
50
  import 'url';
51
51
 
52
52
  const DEFAULT_CLAUDE_MODEL = void 0;
53
53
  const DEFAULT_CLAUDE_EFFORT = void 0;
54
- const importRunClaudeDeps = () => import('./runClaudeDeps-Dz2iydq4.mjs');
54
+ const importRunClaudeDeps = () => import('./runClaudeDeps-CVBCokOS.mjs');
55
55
  async function runClaude(credentials, options = {}) {
56
56
  logger.debug(`[CLAUDE] ===== CLAUDE MODE STARTING =====`);
57
57
  logger.debug(`[CLAUDE] This is the Claude agent, NOT Gemini`);
@@ -65,7 +65,7 @@ async function runClaude(credentials, options = {}) {
65
65
  const isAssistantVariant = process.env.HAPPY_SESSION_VARIANT === "assistant";
66
66
  if (isAssistantVariant) {
67
67
  try {
68
- const { bootstrapAssistantHome } = await import('./bootstrap-C0s2bPFQ.mjs');
68
+ const { bootstrapAssistantHome } = await import('./bootstrap-BUagGC_-.mjs');
69
69
  await bootstrapAssistantHome();
70
70
  } catch (error) {
71
71
  logger.debug("[START] Assistant home bootstrap failed:", error);
@@ -185,7 +185,7 @@ async function runClaude(credentials, options = {}) {
185
185
  }
186
186
  if (!response) {
187
187
  let offlineSessionId = null;
188
- const { claudeLocal } = await import('./claudeLocal-CcWcKnoo.mjs');
188
+ const { claudeLocal } = await import('./claudeLocal-CCCvAeMd.mjs');
189
189
  const { createSessionScanner: createSessionScanner2 } = await loadDeps();
190
190
  const reconnection = startOfflineReconnection({
191
191
  serverUrl: configuration.serverUrl,
@@ -1,86 +1,86 @@
1
- import { l as logger } from './logger-13cBr_ew.mjs';
2
- import { q as notifyDaemonSessionEvent, t as notifyDaemonClaudeAuthFailed } from './controlClient-C4xB5J6O.mjs';
3
- export { j as reportSessionEditToDaemon } from './controlClient-C4xB5J6O.mjs';
1
+ import { l as logger } from './logger--vAVtXB_.mjs';
2
+ import { q as notifyDaemonSessionEvent, t as notifyDaemonClaudeAuthFailed } from './controlClient-BYKyGyxj.mjs';
3
+ export { j as reportSessionEditToDaemon } from './controlClient-BYKyGyxj.mjs';
4
4
  import { s as sameBackgroundTasks, e as createBackgroundTaskTracker } from './backgroundTaskActivity-BVwJBl02.mjs';
5
5
  import { randomInt, randomUUID, createHash } from 'node:crypto';
6
6
  import { M as MessageBuffer } from './messageBuffer-BWlGgR3A.mjs';
7
7
  import { query } from './index-CEjJnq05.mjs';
8
8
  import { AbortError } from '@anthropic-ai/claude-agent-sdk';
9
9
  import { m as mapToClaudeMode, p as parseClaudePermissionMode, c as resolveRemoteClaudePermissionMode } from './permissionMode-CH4FoZfU.mjs';
10
- import { c as claudeCheckSession, s as systemPrompt } from './systemPrompt-CdHOlyVW.mjs';
10
+ import { c as claudeCheckSession, s as systemPrompt } from './systemPrompt-CQcuUmVp.mjs';
11
11
  import { join, resolve, dirname } from 'node:path';
12
- import { p as parseSpecialCommand, w as wrapperRateLimitReporter } from './specialCommands-DkdFJi4N.mjs';
12
+ import { p as parseSpecialCommand, w as wrapperRateLimitReporter } from './specialCommands-C6W-rVyh.mjs';
13
13
  import 'axios';
14
14
  import 'node:events';
15
15
  import 'socket.io-client';
16
- import { A as AsyncLock } from './attachmentLimits-Di1Z93lN.mjs';
16
+ import { A as AsyncLock } from './attachmentLimits-UyFn8fkQ.mjs';
17
17
  import 'tweetnacl';
18
- import { c as configuration, e as ensurePrivateDirectory } from './configuration-D55F0t16.mjs';
19
- import './index-DMy3OCBe.mjs';
20
- import './registerCommonHandlers-D8OMpBbQ.mjs';
18
+ import { c as configuration, e as ensurePrivateDirectory } from './configuration-DVrb61aY.mjs';
19
+ import './index-Clqlu17M.mjs';
20
+ import './registerCommonHandlers-CvIedVRf.mjs';
21
21
  import 'os';
22
22
  import 'child_process';
23
23
  import '@paralleldrive/cuid2';
24
- import './persistence-C_tYtOqK.mjs';
24
+ import './persistence-DTk4sNpd.mjs';
25
25
  import { c as contentLogMetadata } from './contentLogMetadata-BlWI0egu.mjs';
26
26
  import 'chalk';
27
27
  export { R as RawJSONLinesSchema } from './types-CkqAACXx.mjs';
28
28
  import { g as getProjectPath } from './path-D2wdaNSk.mjs';
29
29
  import { access } from 'fs/promises';
30
- import { d as delay } from './time-yEL6wHUF.mjs';
30
+ import { d as delay } from './time-BuGWTVP6.mjs';
31
31
  import { mkdirSync, writeFileSync, readFileSync, unlinkSync, renameSync, statSync, existsSync } from 'node:fs';
32
- import { h as hashObject } from './deterministicJson-BkQETt8_.mjs';
33
- export { s as startHappyServer } from './deterministicJson-BkQETt8_.mjs';
34
- import { F as Future, d as describeClaudeProcessExit } from './sessionScanner-CNVaSNOn.mjs';
35
- export { c as createSessionScanner } from './sessionScanner-CNVaSNOn.mjs';
32
+ import { h as hashObject } from './deterministicJson-C5ZwZ7hu.mjs';
33
+ export { s as startHappyServer } from './deterministicJson-C5ZwZ7hu.mjs';
34
+ import { F as Future, d as describeClaudeProcessExit } from './sessionScanner-BtxoeluY.mjs';
35
+ export { c as createSessionScanner } from './sessionScanner-BtxoeluY.mjs';
36
36
  import { execSync } from 'node:child_process';
37
- import { S as StreamRelay } from './streamRelay-_qCd873P.mjs';
38
- import { C as CLAUDE_ATTACHMENT_KINDS, c as chatAttachmentDirectory, a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt } from './attachmentContent-cPVF463_.mjs';
37
+ import { S as StreamRelay } from './streamRelay-CJoMk_d2.mjs';
38
+ import { C as CLAUDE_ATTACHMENT_KINDS, c as chatAttachmentDirectory, a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt } from './attachmentContent-DkkdpSSJ.mjs';
39
39
  import { writeFile, rename, unlink, readFile } from 'node:fs/promises';
40
- import { F as ForkSourceMissingError } from './claudeSessionFork-BtROOjqf.mjs';
41
- export { M as MessageQueue2, r as registerKillSessionHandler } from './registerKillSessionHandler-Drhf7-Vz.mjs';
42
- export { a as getEnvironmentInfo } from './doctor-B9c2C9dF.mjs';
40
+ import { F as ForkSourceMissingError } from './claudeSessionFork-DvxMKAmY.mjs';
41
+ export { M as MessageQueue2, r as registerKillSessionHandler } from './registerKillSessionHandler-gwJ5lTf0.mjs';
42
+ export { a as getEnvironmentInfo } from './doctor-0BiGwJXk.mjs';
43
43
  import { createServer } from 'node:http';
44
44
  export { E as EditReportThrottle, b as extractClaudeEditPaths } from './editPaths-BVfS_FFL.mjs';
45
45
  import { p as projectPath } from './projectPath-BTBIMB57.mjs';
46
- import { r as resolveClaudeBinary, a as runClaudeOneShot } from './titleGenerator-Dr-BtjzO.mjs';
47
- export { T as TitleGenerator } from './titleGenerator-Dr-BtjzO.mjs';
46
+ import { r as resolveClaudeBinary, a as runClaudeOneShot } from './titleGenerator-BGEzNWC9.mjs';
47
+ export { T as TitleGenerator } from './titleGenerator-BGEzNWC9.mjs';
48
48
  import { B as BOARD_ANALYZER_PROMPT_PREFIX } from './oneShotPrompts-DT4p6RNd.mjs';
49
- import { i as isSelfReportFresh } from './reportProgressTool-B203EZCR.mjs';
50
- export { c as createSelfReportState } from './reportProgressTool-B203EZCR.mjs';
49
+ import { i as isSelfReportFresh } from './reportProgressTool-D5tEoXMW.mjs';
50
+ export { c as createSelfReportState } from './reportProgressTool-D5tEoXMW.mjs';
51
51
  import 'node:util';
52
52
  import './smallFastModel-BLNgMrwR.mjs';
53
53
  import './trimIdent-BAjmv_TG.mjs';
54
54
  import 'node:os';
55
55
  import './agentGuidance-BDYt2Qy2.mjs';
56
- import './rateLimitWindows-DYHDGuzQ.mjs';
56
+ import './rateLimitWindows-XrJiiBpU.mjs';
57
57
  import 'zod';
58
- import './package-CjlsAaRe.mjs';
58
+ import './package-B7B03ejW.mjs';
59
59
  import 'util';
60
60
  import 'crypto';
61
61
  import 'path';
62
62
  import 'cross-spawn';
63
- import './authRelay-DSAvg1uv.mjs';
64
- import './client-BPMWutfs.mjs';
65
- import './context-CCRpVXFo.mjs';
66
- import './sessionOps-CdgbEJgf.mjs';
63
+ import './authRelay-DhQhkBvX.mjs';
64
+ import './client-BTX9hsbr.mjs';
65
+ import './context-B3XPVJlj.mjs';
66
+ import './sessionOps-BVoXe12O.mjs';
67
67
  import './resources-BdFBQi8r.mjs';
68
- import './tools-BrM3bZW5.mjs';
69
- import './peerTools-CxmrKnfV.mjs';
68
+ import './tools-BtsrQnNS.mjs';
69
+ import './peerTools-3R9RUARX.mjs';
70
70
  import './ids-DU6sLx4C.mjs';
71
- import './remoteSessionClient-D01Hso2-.mjs';
71
+ import './remoteSessionClient-DRb2Jr5s.mjs';
72
72
  import '@modelcontextprotocol/sdk/server/mcp.js';
73
73
  import '@modelcontextprotocol/sdk/server/streamableHttp.js';
74
74
  import './limits-DIo7rEBR.mjs';
75
- import './downloadTarget-ByXzbDK4.mjs';
75
+ import './downloadTarget-DJPwAZlu.mjs';
76
76
  import './terminals-Dlg0x3nY.mjs';
77
77
  import './terminalTitleSuggest-CeKsX_V6.mjs';
78
78
  import './tmuxSocket-B8Yx20sT.mjs';
79
- import './bootstrap-C0s2bPFQ.mjs';
79
+ import './bootstrap-BUagGC_-.mjs';
80
80
  import './previewPath-CXN4Vag0.mjs';
81
- import './sync-C3p7-KLn.mjs';
81
+ import './sync-DbW07iQS.mjs';
82
82
  import './transcriptCursor-B7T_gkQ0.mjs';
83
- import './startFileWatcher-UQyTSRAP.mjs';
83
+ import './startFileWatcher-CR09Snmz.mjs';
84
84
  import 'node:readline';
85
85
  import './doctor-BPkYWSuq.mjs';
86
86
  import 'ps-list';
@@ -88,11 +88,11 @@ import './doctorReadiness-C208SMN9.mjs';
88
88
  import './detectCLI-CSGMlV51.mjs';
89
89
  import 'fs';
90
90
  import './cliUpdate-Y34VGe9Y.mjs';
91
- import './piRunnerArgs-BpHc-JZl.mjs';
92
- import './sessionModeFile-CWVq8AT9.mjs';
91
+ import './piRunnerArgs-AT8QJY7x.mjs';
92
+ import './sessionModeFile-ByLbXTbg.mjs';
93
93
  import 'url';
94
94
  import 'node:module';
95
- import './client-DG5ndWLw.mjs';
95
+ import './client-CnlkkrZO.mjs';
96
96
  import './precheckCompat-DeEbilbr.mjs';
97
97
 
98
98
  const SCHEDULE_WAKEUP_GRACE_MS = 6e4;
@@ -4266,7 +4266,7 @@ async function loop(opts) {
4266
4266
  logger.debug(`[loop] Iteration with mode: ${mode}`);
4267
4267
  switch (mode) {
4268
4268
  case "local": {
4269
- const { claudeLocalLauncher } = await import('./claudeLocalLauncher-7p6y88nj.mjs');
4269
+ const { claudeLocalLauncher } = await import('./claudeLocalLauncher-BmrpaRYJ.mjs');
4270
4270
  const result = await claudeLocalLauncher(session);
4271
4271
  switch (result.type) {
4272
4272
  case "switch":