very-happy-cli 0.2.196 → 0.2.197

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 (191) hide show
  1. package/dist/{AcpBackend-RqGkFeeY.mjs → AcpBackend-B-CD1MrV.mjs} +3 -3
  2. package/dist/{AcpBackend-tL_g_UJ5.cjs → AcpBackend-CqDg1GgF.cjs} +3 -3
  3. package/dist/{AcpSessionManager-C-R6yHXc.mjs → AcpSessionManager-CgomFAjk.mjs} +1 -1
  4. package/dist/{AcpSessionManager-CFB24qBh.cjs → AcpSessionManager-Cv1KTldV.cjs} +1 -1
  5. package/dist/{BasePermissionHandler-C0JS37Jt.cjs → BasePermissionHandler-BxUjjHiI.cjs} +1 -1
  6. package/dist/{BasePermissionHandler-CgHLVNKT.mjs → BasePermissionHandler-D6-fZvtx.mjs} +1 -1
  7. package/dist/{account-DOil1Hn8.cjs → account-Bexqa-vj.cjs} +5 -5
  8. package/dist/{account-EzL-zwwE.mjs → account-CnN-iHFd.mjs} +5 -5
  9. package/dist/{acpSessionResume-B01oHWDS.cjs → acpSessionResume-CfEw8L26.cjs} +1 -1
  10. package/dist/{acpSessionResume-DEOIZUuj.mjs → acpSessionResume-DzFELzTU.mjs} +1 -1
  11. package/dist/{agentHome-BulDO_1K.cjs → agentHome-CBYL4J4Q.cjs} +4 -4
  12. package/dist/{agentHome-DucTue1n.mjs → agentHome-CmSA7hBC.mjs} +4 -4
  13. package/dist/{api-fuwEEEkT.cjs → api-CB3tLbbj.cjs} +9 -9
  14. package/dist/{api-CiNezCys.mjs → api-Do7MUIrP.mjs} +9 -9
  15. package/dist/{apiMachine-DCmKjms1.mjs → apiMachine-CytFlPdl.mjs} +96 -25
  16. package/dist/{apiMachine-CxmiSa2-.cjs → apiMachine-guUGAifI.cjs} +96 -25
  17. package/dist/{attachmentContent-CiY3MvdO.mjs → attachmentContent-B8Lg7kgp.mjs} +2 -2
  18. package/dist/{attachmentContent-Cehh7ClR.cjs → attachmentContent-errR84kh.cjs} +2 -2
  19. package/dist/{auth-DHqHrs5d.mjs → auth-B-1T6w1U.mjs} +8 -8
  20. package/dist/{auth-tlMcvk2Y.cjs → auth-BhM0lHLA.cjs} +8 -8
  21. package/dist/{auth-DVsH_a8J.mjs → auth-Dnu0Mocz.mjs} +5 -5
  22. package/dist/{auth-DHlbjtf7.cjs → auth-ZKJNs8AK.cjs} +5 -5
  23. package/dist/{auto-Cnn8luKk.mjs → auto-CFSmWudH.mjs} +14 -14
  24. package/dist/{auto-DNAa8xDZ.cjs → auto-eimPZ4gm.cjs} +14 -14
  25. package/dist/{bootstrap-PeTZ2sAn.cjs → bootstrap-B7mwfud6.cjs} +2 -2
  26. package/dist/{bootstrap-C2XSEyOe.mjs → bootstrap-C2JyiPax.mjs} +2 -2
  27. package/dist/{browser-Bm24RiFU.cjs → browser-B3VVAWcC.cjs} +1 -1
  28. package/dist/{browser-CWWyaf8_.mjs → browser-Cnk2N81e.mjs} +1 -1
  29. package/dist/{claudeLocal-BDWy2pFt.cjs → claudeLocal-CvZ5Sfq_.cjs} +4 -4
  30. package/dist/{claudeLocal-CRG-Q7kS.mjs → claudeLocal-gDpGeteK.mjs} +4 -4
  31. package/dist/{claudeLocalLauncher-DmSLoHlw.cjs → claudeLocalLauncher-CFSxFln_.cjs} +9 -9
  32. package/dist/{claudeLocalLauncher-B5cOrszW.mjs → claudeLocalLauncher-e_DkguJW.mjs} +9 -9
  33. package/dist/{claudeSessionFork-OffWLYgd.cjs → claudeSessionFork--_RtwhC2.cjs} +1 -1
  34. package/dist/{claudeSessionFork-BqV6E0ep.mjs → claudeSessionFork-BMMJmfxX.mjs} +1 -1
  35. package/dist/{client-B3lOol4f.mjs → client-Bav5WI8p.mjs} +3 -3
  36. package/dist/{client-Cg_cuQb1.mjs → client-BeEAF2yn.mjs} +2 -2
  37. package/dist/{client-CfTeXnYS.mjs → client-CkiWUkm6.mjs} +2 -2
  38. package/dist/{client-B9fcSMXP.cjs → client-DH_mgm2T.cjs} +2 -2
  39. package/dist/{client-Ckic3nxZ.cjs → client-DmO89_dS.cjs} +2 -2
  40. package/dist/{client-YFvImdwH.cjs → client-TZ1BY7kn.cjs} +3 -3
  41. package/dist/codex/happyMcpStdioBridge.cjs +15 -15
  42. package/dist/codex/happyMcpStdioBridge.mjs +15 -15
  43. package/dist/{codexAppServerClient-aV5m-FpZ.mjs → codexAppServerClient-AcMiUjlK.mjs} +3 -3
  44. package/dist/{codexAppServerClient-C-UwVMUN.cjs → codexAppServerClient-C4FYS9D9.cjs} +3 -3
  45. package/dist/{codexCommand-5nWT7F8A.cjs → codexCommand-BkF16_aL.cjs} +42 -42
  46. package/dist/{codexCommand-CI2NTyIF.mjs → codexCommand-CuteJvKE.mjs} +42 -42
  47. package/dist/{codexTermination-CLjDP6Ja.mjs → codexTermination-CjHWp1C_.mjs} +1 -1
  48. package/dist/{codexTermination-D18IHgLP.cjs → codexTermination-DGgKsMxj.cjs} +1 -1
  49. package/dist/{config-B7YtrHi0.cjs → config-BklFo_Cs.cjs} +3 -3
  50. package/dist/{config-BfwjfFSC.mjs → config-CUvb7oaW.mjs} +3 -3
  51. package/dist/{configuration-C8r6uD9k.mjs → configuration-BIh6P6kB.mjs} +1 -1
  52. package/dist/{configuration-CWRKSOyj.cjs → configuration-BL_fxboH.cjs} +1 -1
  53. package/dist/{connect-DALX1hGB.cjs → connect-Bi7cRXtj.cjs} +12 -12
  54. package/dist/{connect-K5HBcM56.mjs → connect-KIJsx0iT.mjs} +12 -12
  55. package/dist/{context-BqhlGL3u.cjs → context-BYcZIvKn.cjs} +1 -1
  56. package/dist/{context-CtMY-M8T.mjs → context-Ct__7RAS.mjs} +1 -1
  57. package/dist/{controlClient-DYQ1g2ar.mjs → controlClient-CPZkMKsH.mjs} +3 -3
  58. package/dist/{controlClient-DyNgxNl7.cjs → controlClient-DMtkGpc3.cjs} +3 -3
  59. package/dist/{createSessionMetadata-C4WN8pVK.cjs → createSessionMetadata-BWr0XT-Y.cjs} +2 -2
  60. package/dist/{createSessionMetadata-CZuEDo2v.mjs → createSessionMetadata-DkkddlJa.mjs} +2 -2
  61. package/dist/{deterministicJson-r4zhG546.cjs → deterministicJson-BO6ZUUiV.cjs} +12 -12
  62. package/dist/{deterministicJson-Dg_0QJAR.mjs → deterministicJson-Dm3yDrwj.mjs} +12 -12
  63. package/dist/{doctor-0gLGzwz6.cjs → doctor-DHK-5Hxm.cjs} +7 -7
  64. package/dist/{doctor-COeFzPpz.mjs → doctor-TK49jR60.mjs} +7 -7
  65. package/dist/{downloadTarget-CbuUiS5p.mjs → downloadTarget-C2XcfMXb.mjs} +7 -7
  66. package/dist/{downloadTarget-8ovVpDv1.cjs → downloadTarget-QP5nnKsW.cjs} +7 -7
  67. package/dist/{ensureDaemonRunning-CwlujXmV.mjs → ensureDaemonRunning-Bi-PF5LL.mjs} +5 -5
  68. package/dist/{ensureDaemonRunning-Bq-n6xTt.cjs → ensureDaemonRunning-pg-EYmG0.cjs} +5 -5
  69. package/dist/{handleResumeCommand-B5GgmPm_.mjs → handleResumeCommand-B69L6W80.mjs} +5 -5
  70. package/dist/{handleResumeCommand-muSrYA5y.cjs → handleResumeCommand-CMLpVjkl.cjs} +5 -5
  71. package/dist/{index-DKCmDned.mjs → index-BM14YD9K.mjs} +4 -4
  72. package/dist/{index-BZCIkrFj.mjs → index-BSSAKD4Q.mjs} +4 -4
  73. package/dist/{index-BRH0XYSO.mjs → index-CwwDV02T.mjs} +40 -40
  74. package/dist/{index-BUOd8bNd.cjs → index-DC_XlLAD.cjs} +4 -4
  75. package/dist/{index-CnY74Dae.cjs → index-DgnbOqH_.cjs} +3 -3
  76. package/dist/{index-D0V-seiN.mjs → index-P6modcWo.mjs} +3 -3
  77. package/dist/{index-CQZg9jKx.cjs → index-XeWmi_Wt.cjs} +4 -4
  78. package/dist/{index-Dt_YE-zw.cjs → index-sXThJ-ic.cjs} +39 -39
  79. package/dist/index.cjs +2 -2
  80. package/dist/index.mjs +2 -2
  81. package/dist/{install-CooQf1oU.mjs → install-B6vD9h4Z.mjs} +3 -3
  82. package/dist/{install-BlW2kkPl.cjs → install-Cyb1ZsOO.cjs} +3 -3
  83. package/dist/lib.cjs +11 -11
  84. package/dist/lib.d.cts +9 -0
  85. package/dist/lib.d.mts +9 -0
  86. package/dist/lib.mjs +11 -11
  87. package/dist/{lidState-VZ1j_QYw.cjs → lidState-DXy1ymL0.cjs} +1 -1
  88. package/dist/{lidState-BflRFw38.mjs → lidState-nbXgabCS.mjs} +1 -1
  89. package/dist/{localHappyAgentAuth-BAK_nqMG.mjs → localHappyAgentAuth-BupJnMMB.mjs} +1 -1
  90. package/dist/{localHappyAgentAuth-oxhpgJOb.cjs → localHappyAgentAuth-Dxl6itKW.cjs} +1 -1
  91. package/dist/{logger-D1hb3CG8.mjs → logger-CahcyjlK.mjs} +2 -2
  92. package/dist/{logger-HQ9yDb8R.cjs → logger-CtweAuKq.cjs} +2 -2
  93. package/dist/{machineMetadata-Dxng45Uh.mjs → machineMetadata-jOqz4fn8.mjs} +3 -3
  94. package/dist/{machineMetadata-Dzwn-HjN.cjs → machineMetadata-thOCcaSv.cjs} +3 -3
  95. package/dist/{main-D7qre-pa.cjs → main-CTIbEEsd.cjs} +47 -47
  96. package/dist/{main-BP0iY2vQ.mjs → main-bCGlXj7y.mjs} +47 -47
  97. package/dist/{mcp-D3yzLkh8.cjs → mcp-BOS5msHd.cjs} +16 -16
  98. package/dist/{mcp-BmDGyj7k.mjs → mcp-dtmpWc-Y.mjs} +16 -16
  99. package/dist/{mirrorProtocol-Cv2otcvM.cjs → mirrorProtocol-CFDn3zfT.cjs} +11 -3
  100. package/dist/{mirrorProtocol-C9Zc6GFT.mjs → mirrorProtocol-OJPFNpbq.mjs} +11 -4
  101. package/dist/{package-CpmoMPuj.mjs → package-DUKnh8UF.mjs} +7 -7
  102. package/dist/{package-Dn7zZkY1.cjs → package-DdYN77UN.cjs} +7 -7
  103. package/dist/{panels-CQobcX5w.mjs → panels-DQs5x77X.mjs} +5 -5
  104. package/dist/{panels-D59PlNoD.cjs → panels-DZZTavkP.cjs} +5 -5
  105. package/dist/{peerTools-D417O7d-.cjs → peerTools-03MimWe-.cjs} +5 -5
  106. package/dist/{peerTools-CNzlwuL7.mjs → peerTools-ByJiL-w1.mjs} +5 -5
  107. package/dist/{persistence-CagHeZ-f.mjs → persistence-CPIj3Iha.mjs} +2 -2
  108. package/dist/{persistence-BiyvEYaR.cjs → persistence-CWEaFv6R.cjs} +2 -2
  109. package/dist/{piRunnerArgs-kTaNYd23.cjs → piRunnerArgs-Aqs-zKLm.cjs} +1 -1
  110. package/dist/{piRunnerArgs-DKU5LoWu.mjs → piRunnerArgs-DxbuKnFC.mjs} +1 -1
  111. package/dist/{piRuntime-BI4KNAUY.cjs → piRuntime-BFMV2Hlg.cjs} +1 -1
  112. package/dist/{piRuntime-BV4fQyZD.mjs → piRuntime-KJn9G3Ax.mjs} +1 -1
  113. package/dist/{piTerminal-WPUtDJAV.cjs → piTerminal-DFzQb38E.cjs} +18 -18
  114. package/dist/{piTerminal-oObkl3WJ.mjs → piTerminal-DhVFk2Hc.mjs} +18 -18
  115. package/dist/{pushNotifications-DRDWUnP-.cjs → pushNotifications-BhnrQa32.cjs} +15 -2
  116. package/dist/{pushNotifications-4sNESDMv.mjs → pushNotifications-CD5-W90c.mjs} +15 -2
  117. package/dist/{query-6OWHW1U1.mjs → query-BRTHwQ1m.mjs} +1 -1
  118. package/dist/{query-qIbeJ2-r.cjs → query-BRvDJTUF.cjs} +1 -1
  119. package/dist/{rateLimitWindows-4uhuwKnU.mjs → rateLimitWindows-BAfkXSck.mjs} +1 -1
  120. package/dist/{rateLimitWindows-U4fc1-_6.cjs → rateLimitWindows-_KfSDJdB.cjs} +1 -1
  121. package/dist/{registerCommonHandlers-PTJ8TBj9.mjs → registerCommonHandlers-Anq6Ma1d.mjs} +2 -2
  122. package/dist/{registerCommonHandlers-CEV9KUsq.cjs → registerCommonHandlers-CsMpXP1_.cjs} +2 -2
  123. package/dist/{registerKillSessionHandler-C6F1sjoo.cjs → registerKillSessionHandler-DnES0UnY.cjs} +5 -5
  124. package/dist/{registerKillSessionHandler-D4SSwQj8.mjs → registerKillSessionHandler-DvA-f_D4.mjs} +5 -5
  125. package/dist/{registerSideQuestionHandler-4mRv0Msq.mjs → registerSideQuestionHandler-B6EgCzBZ.mjs} +4 -4
  126. package/dist/{registerSideQuestionHandler-ByUnjI3V.cjs → registerSideQuestionHandler-GIzcFczo.cjs} +4 -4
  127. package/dist/{remoteSessionClient-CUk6haD7.cjs → remoteSessionClient-BsXgrMSP.cjs} +5 -5
  128. package/dist/{remoteSessionClient-CfYDFlKm.mjs → remoteSessionClient-DYTwJSZR.mjs} +5 -5
  129. package/dist/{reportProgressTool-C1JOvo6T.cjs → reportProgressTool-DhTM7qvk.cjs} +2 -2
  130. package/dist/{reportProgressTool-BCn5oG52.mjs → reportProgressTool-DzmnFItq.mjs} +2 -2
  131. package/dist/{run-DC8BIklA.mjs → run-Cuz34V0P.mjs} +33 -33
  132. package/dist/{run-D2SlfZPP.cjs → run-D0nDSvGo.cjs} +33 -33
  133. package/dist/{runClaude-BE-5GgIZ.cjs → runClaude-DHHDBtKG.cjs} +20 -20
  134. package/dist/{runClaude-D6fqN9PD.mjs → runClaude-ySgHmPJg.mjs} +20 -20
  135. package/dist/{runClaudeDeps-W0nv2vHL.cjs → runClaudeDeps-Cfeci4al.cjs} +37 -37
  136. package/dist/{runClaudeDeps-BmdwskeI.mjs → runClaudeDeps-k-QAN7Em.mjs} +43 -43
  137. package/dist/{runGemini-C3Ipeu1i.mjs → runGemini-BpiHwTGj.mjs} +34 -34
  138. package/dist/{runGemini-Da_d-2kV.cjs → runGemini-Dob7MFa2.cjs} +34 -34
  139. package/dist/{runOpenClaw-af5qDNU0.cjs → runOpenClaw-B-BGCcbD.cjs} +17 -17
  140. package/dist/{runOpenClaw-BoI6nbKB.mjs → runOpenClaw-B_7LblMr.mjs} +17 -17
  141. package/dist/{sandbox-CjoyUSGa.mjs → sandbox-D4UmUYIM.mjs} +4 -4
  142. package/dist/{sandbox-UGF68GrE.cjs → sandbox-D9xs3oeT.cjs} +4 -4
  143. package/dist/{selfCheck-Cr8eAw4m.cjs → selfCheck-B1ueapb2.cjs} +38 -38
  144. package/dist/selfCheck-BrC9vuGH.mjs +88 -0
  145. package/dist/{send-gqX0-i4p.mjs → send-BZoS0m6-.mjs} +8 -8
  146. package/dist/{send-CVSht9s_.cjs → send-CgIeqwqq.cjs} +8 -8
  147. package/dist/{server-DxlNqWJo.mjs → server-C5zdUyIu.mjs} +4 -4
  148. package/dist/{server-BPgVv-BG.cjs → server-XgEG5D8c.cjs} +6 -6
  149. package/dist/{sessionLock-BfvR9BGB.mjs → sessionLock-C4zRSYwt.mjs} +3 -3
  150. package/dist/{sessionLock-D2usWXAg.cjs → sessionLock-CbIB9WAp.cjs} +3 -3
  151. package/dist/{sessionOps-JRyQhF5s.cjs → sessionOps-flaRRzdo.cjs} +4 -4
  152. package/dist/{sessionOps-OmRqUFm4.mjs → sessionOps-fuLJNyOT.mjs} +4 -4
  153. package/dist/{sessionProvider-DTEdidBc.mjs → sessionProvider-DPwRzcbT.mjs} +5 -5
  154. package/dist/{sessionProvider-BpscgwwC.cjs → sessionProvider-DlWrak_l.cjs} +5 -5
  155. package/dist/{sessionScanner-BlAOpqMh.mjs → sessionScanner-BX7ZBVzX.mjs} +3 -3
  156. package/dist/{sessionScanner-C_qVc1ok.cjs → sessionScanner-I6fGycPd.cjs} +3 -3
  157. package/dist/{sessions-7iyjxti9.cjs → sessions-Cr0jIQ9r.cjs} +10 -10
  158. package/dist/{sessions-CnjHHllR.mjs → sessions-Csz0_dnz.mjs} +10 -10
  159. package/dist/{setupOfflineReconnection-BCbJa5mT.cjs → setupOfflineReconnection-BawiOCUA.cjs} +2 -2
  160. package/dist/{setupOfflineReconnection-IKEI7fLJ.mjs → setupOfflineReconnection-Pxsr7M_B.mjs} +2 -2
  161. package/dist/{spawn-CxEl0Dyz.cjs → spawn-Bfw10V7R.cjs} +12 -12
  162. package/dist/{spawn-CbfcClhj.mjs → spawn-C3wiREei.mjs} +12 -12
  163. package/dist/{spawnHappyCLI-C8gMHJu5.mjs → spawnHappyCLI-C9dzdAh0.mjs} +1 -1
  164. package/dist/{spawnHappyCLI-CHSlXWUe.cjs → spawnHappyCLI-D4_Ij_BB.cjs} +1 -1
  165. package/dist/{startFileWatcher-BGpYPz6L.cjs → startFileWatcher-905w_JCn.cjs} +1 -1
  166. package/dist/{startFileWatcher-6hslFu_B.mjs → startFileWatcher-FjvRihwq.mjs} +1 -1
  167. package/dist/{startupSessionCreate-B7jrCZUD.mjs → startupSessionCreate-B-QHA-nQ.mjs} +3 -3
  168. package/dist/{startupSessionCreate-CltDtCEF.cjs → startupSessionCreate-WY7c74aG.cjs} +3 -3
  169. package/dist/{sync-DtzoF9sw.mjs → sync-CHU9HM9N.mjs} +1 -1
  170. package/dist/{sync-DfI78smj.cjs → sync-Dz_U1UHu.cjs} +1 -1
  171. package/dist/{systemPrompt-HZNR9rjt.cjs → systemPrompt-NTIxM2Ss.cjs} +1 -1
  172. package/dist/{systemPrompt-B1Xd99hK.mjs → systemPrompt-PHD2Va2G.mjs} +1 -1
  173. package/dist/{teams-Vk75H6BZ.mjs → teams-CgT1c65s.mjs} +6 -6
  174. package/dist/{teams-fFX-L_ms.cjs → teams-CqoSWbrQ.cjs} +6 -6
  175. package/dist/{terminals-Dlg0x3nY.mjs → terminals-Dc38XmZv.mjs} +9 -5
  176. package/dist/{terminals-B_bfC9c2.cjs → terminals-dK3Lrjfp.cjs} +9 -5
  177. package/dist/{time-BqPZjTpo.cjs → time-BTXLicT9.cjs} +1 -1
  178. package/dist/{time-CgAwVt5R.mjs → time-DZ7wPlsL.mjs} +1 -1
  179. package/dist/{titleGenerator-D2UB7Uyr.mjs → titleGenerator-BOcHO0fW.mjs} +1 -1
  180. package/dist/{titleGenerator-ijVOuv3J.cjs → titleGenerator-DxSLdXjL.cjs} +2 -2
  181. package/dist/tmuxSocket-BmZyixRM.mjs +29 -0
  182. package/dist/{tmuxSocket-D-Xt6Vn-.cjs → tmuxSocket-Dg11Olx0.cjs} +12 -0
  183. package/dist/{todo-vCzaIwNp.cjs → todo-CqD6H2Bt.cjs} +5 -5
  184. package/dist/{todo-CCuqtD0O.mjs → todo-kBweG4H9.mjs} +5 -5
  185. package/dist/{tools-CL8h3fqh.cjs → tools-C7SRJVwy.cjs} +1 -1
  186. package/dist/{tools-DthGQoo3.mjs → tools-DuXYIUTD.mjs} +1 -1
  187. package/dist/{uninstall-CIvThBvI.cjs → uninstall-DHdOrwHT.cjs} +3 -3
  188. package/dist/{uninstall-DCJh4UoO.mjs → uninstall-WJYYM27v.mjs} +3 -3
  189. package/package.json +7 -7
  190. package/dist/selfCheck-CNrOZgBv.mjs +0 -88
  191. package/dist/tmuxSocket-B8Yx20sT.mjs +0 -19
@@ -2,46 +2,46 @@
2
2
 
3
3
  var socket_ioClient = require('socket.io-client');
4
4
  var webPanels = require('./webPanels-FCgFKvVe.cjs');
5
- var logger = require('./logger-HQ9yDb8R.cjs');
6
- var lidState = require('./lidState-VZ1j_QYw.cjs');
7
- var mirrorProtocol = require('./mirrorProtocol-Cv2otcvM.cjs');
8
- var configuration = require('./configuration-CWRKSOyj.cjs');
5
+ var logger = require('./logger-CtweAuKq.cjs');
6
+ var lidState = require('./lidState-DXy1ymL0.cjs');
7
+ var mirrorProtocol = require('./mirrorProtocol-CFDn3zfT.cjs');
8
+ var configuration = require('./configuration-BL_fxboH.cjs');
9
9
  var cliUpdate = require('./cliUpdate-DsKXPFYp.cjs');
10
- var registerCommonHandlers = require('./registerCommonHandlers-CEV9KUsq.cjs');
10
+ var registerCommonHandlers = require('./registerCommonHandlers-CsMpXP1_.cjs');
11
11
  var promises = require('node:fs/promises');
12
12
  var path = require('node:path');
13
13
  var os = require('node:os');
14
14
  var fsMkdir = require('./fsMkdir-0K3yENml.cjs');
15
15
  var node_child_process = require('node:child_process');
16
- var persistence = require('./persistence-BiyvEYaR.cjs');
16
+ var persistence = require('./persistence-CWEaFv6R.cjs');
17
17
  var fileStore = require('./fileStore-7qhnbs6N.cjs');
18
18
  var index = require('./index-D9Hidq-g.cjs');
19
19
  var accountService = require('./accountService-DL6xhVUa.cjs');
20
20
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
21
21
  var limits = require('./limits-C-a7gr04.cjs');
22
- var time = require('./time-BqPZjTpo.cjs');
22
+ var time = require('./time-BTXLicT9.cjs');
23
23
  var pty = require('node-pty');
24
- var terminals = require('./terminals-B_bfC9c2.cjs');
25
- var tmuxSocket = require('./tmuxSocket-D-Xt6Vn-.cjs');
26
- var index$1 = require('./index-CQZg9jKx.cjs');
24
+ var terminals = require('./terminals-dK3Lrjfp.cjs');
25
+ var tmuxSocket = require('./tmuxSocket-Dg11Olx0.cjs');
26
+ var index$1 = require('./index-XeWmi_Wt.cjs');
27
27
  var node_crypto = require('node:crypto');
28
28
  var node_fs = require('node:fs');
29
29
  var axios = require('axios');
30
30
  var projectPath = require('./projectPath-C3ioB4Bu.cjs');
31
31
  var ids = require('./ids-B6ZC0HGt.cjs');
32
32
  var detectCLI = require('./detectCLI-BuYR_Qxe.cjs');
33
- var localHappyAgentAuth = require('./localHappyAgentAuth-oxhpgJOb.cjs');
33
+ var localHappyAgentAuth = require('./localHappyAgentAuth-Dxl6itKW.cjs');
34
34
  var path$1 = require('./path-B7zW-WwE.cjs');
35
35
  var oneShotPrompts = require('./oneShotPrompts-CL0dip9C.cjs');
36
- var claudeSessionFork = require('./claudeSessionFork-OffWLYgd.cjs');
37
- var codexAppServerClient = require('./codexAppServerClient-C-UwVMUN.cjs');
36
+ var claudeSessionFork = require('./claudeSessionFork--_RtwhC2.cjs');
37
+ var codexAppServerClient = require('./codexAppServerClient-C4FYS9D9.cjs');
38
38
  var codexThreadFork = require('./codexThreadFork-C6ZmcT2z.cjs');
39
- var rateLimitWindows = require('./rateLimitWindows-U4fc1-_6.cjs');
39
+ var rateLimitWindows = require('./rateLimitWindows-_KfSDJdB.cjs');
40
40
  require('chalk');
41
41
  require('node:util');
42
42
  require('os');
43
43
  require('child_process');
44
- require('./package-Dn7zZkY1.cjs');
44
+ require('./package-DdYN77UN.cjs');
45
45
  require('util');
46
46
  require('fs/promises');
47
47
  require('crypto');
@@ -486,6 +486,7 @@ function planTerminalRestore(record, facts) {
486
486
  title: record.title ?? record.attachTmux,
487
487
  manual: true,
488
488
  tags: record.tags,
489
+ ...record.projectId ? { projectId: record.projectId } : {},
489
490
  command: terminals.attachStartupCommand(matches[0].id, facts.attachSocket),
490
491
  attachTmux: record.attachTmux,
491
492
  ...recordGeometry(record)
@@ -500,6 +501,7 @@ function planTerminalRestore(record, facts) {
500
501
  title: record.title,
501
502
  manual: record.manual === true,
502
503
  tags: record.tags,
504
+ ...record.projectId ? { projectId: record.projectId } : {},
503
505
  ...resumable ? { command: `claude --resume ${record.claudeSessionId}` } : {},
504
506
  ...recordGeometry(record)
505
507
  };
@@ -6052,6 +6054,7 @@ function selectAutoRestore(candidates, opts) {
6052
6054
  terminalId: c.id,
6053
6055
  ...c.tags !== void 0 ? { tags: c.tags } : {},
6054
6056
  ...c.manual ? { manual: true } : {},
6057
+ ...c.projectId ? { projectId: c.projectId } : {},
6055
6058
  ...c.cols !== void 0 && c.rows !== void 0 ? { cols: c.cols, rows: c.rows } : {},
6056
6059
  cwd: c.cwd,
6057
6060
  title: c.title,
@@ -6101,7 +6104,7 @@ function sanitizeClosedTerminals(raw, max = CLOSED_TERMINALS_MAX) {
6101
6104
  const out = [];
6102
6105
  for (const item of raw) {
6103
6106
  if (!item || typeof item !== "object") continue;
6104
- const { id, title, cwd, mirrorSessionId, claudeSessionId, reason, closedAt, tags, manual, attachTmux } = item;
6107
+ const { id, title, cwd, mirrorSessionId, claudeSessionId, reason, closedAt, tags, manual, attachTmux, projectId } = item;
6105
6108
  if (typeof id !== "string" || id.length === 0 || typeof closedAt !== "number") continue;
6106
6109
  if (seen.has(id)) continue;
6107
6110
  seen.add(id);
@@ -6116,6 +6119,7 @@ function sanitizeClosedTerminals(raw, max = CLOSED_TERMINALS_MAX) {
6116
6119
  ...tagList !== void 0 ? { tags: tagList } : {},
6117
6120
  ...manual === true ? { manual: true } : {},
6118
6121
  ...typeof attachTmux === "string" && attachTmux ? { attachTmux } : {},
6122
+ ...mirrorProtocol.projectField(projectId),
6119
6123
  closedAt
6120
6124
  });
6121
6125
  }
@@ -6132,6 +6136,7 @@ function directTerminalItems(sessions, tmuxIds) {
6132
6136
  id: s.id,
6133
6137
  ...title ? { title } : {},
6134
6138
  tags: s.direct.tags ?? [],
6139
+ projectId: s.direct.projectId ?? null,
6135
6140
  ...s.direct.manual ? { manual: true } : {},
6136
6141
  cwd: s.direct.cwd,
6137
6142
  createdAt: s.direct.createdAt,
@@ -6879,7 +6884,7 @@ function startupInjectionArgs(tmuxSession, command) {
6879
6884
  ];
6880
6885
  }
6881
6886
  function seenInfoOf(t) {
6882
- return { title: t.title, cwd: t.cwd, tags: t.tags, manual: t.manual, attachTmux: t.attachTmux, ...seenGeometry(t.paneCols, t.paneRows) };
6887
+ return { title: t.title, cwd: t.cwd, tags: t.tags, manual: t.manual, attachTmux: t.attachTmux, ...t.projectId ? { projectId: t.projectId } : {}, ...seenGeometry(t.paneCols, t.paneRows) };
6883
6888
  }
6884
6889
  function seenGeometry(cols, rows) {
6885
6890
  return cols !== void 0 && rows !== void 0 ? { cols, rows } : {};
@@ -6899,7 +6904,9 @@ function terminalListSignature(items) {
6899
6904
  // list, or the web never learns the toggle became available.
6900
6905
  t.mirrorSessionId ?? "",
6901
6906
  t.attachTmux ?? "",
6902
- t.direct ? 1 : 0
6907
+ t.direct ? 1 : 0,
6908
+ // B-868: moving a terminal between projects must push at once.
6909
+ t.projectId ?? ""
6903
6910
  ]);
6904
6911
  return JSON.stringify(canon);
6905
6912
  }
@@ -7751,6 +7758,7 @@ class WebTerminalManager {
7751
7758
  tags: info.tags,
7752
7759
  manual: info.manual,
7753
7760
  ...info.attachTmux ? { attachTmux: info.attachTmux } : {},
7761
+ ...info.projectId ? { projectId: info.projectId } : {},
7754
7762
  ...seenGeometry(info.cols, info.rows),
7755
7763
  // Live binding first (authoritative while it exists), persisted
7756
7764
  // metadata as the fallback once the mirror has been torn down.
@@ -7806,6 +7814,7 @@ class WebTerminalManager {
7806
7814
  tags: info.tags,
7807
7815
  manual: info.manual,
7808
7816
  ...info.attachTmux ? { attachTmux: info.attachTmux } : {},
7817
+ ...info.projectId ? { projectId: info.projectId } : {},
7809
7818
  ...seenGeometry(info.cols, info.rows),
7810
7819
  mirrorSessionId: mirror?.sessionId,
7811
7820
  claudeSessionId: mirror?.claudeSessionId,
@@ -7819,6 +7828,7 @@ class WebTerminalManager {
7819
7828
  cwd: info.cwd,
7820
7829
  tags: info.tags,
7821
7830
  manual: info.manual,
7831
+ ...info.projectId ? { projectId: info.projectId } : {},
7822
7832
  ...seenGeometry(info.cols, info.rows),
7823
7833
  seenAt: info.seenAt,
7824
7834
  claudeSessionId: mirror?.claudeSessionId
@@ -8009,6 +8019,14 @@ class WebTerminalManager {
8009
8019
  { stdio: "ignore", timeout: TMUX_PROBE_TIMEOUT_MS, env }
8010
8020
  );
8011
8021
  }
8022
+ const projectId = tmuxSocket.validateTerminalProjectId(plan.projectId);
8023
+ if (projectId) {
8024
+ node_child_process.spawnSync(
8025
+ "tmux",
8026
+ tmuxSocket.tmuxArgs(["set-option", "-t", `=${name}:`, "@vh_project", projectId]),
8027
+ { stdio: "ignore", timeout: TMUX_PROBE_TIMEOUT_MS, env }
8028
+ );
8029
+ }
8012
8030
  if (plan.command) {
8013
8031
  const command = withTerminalHooks(plan.command, plan.terminalId, this.claudeVersion.current());
8014
8032
  for (const argv of startupInjectionArgs(name, command)) {
@@ -8022,7 +8040,7 @@ class WebTerminalManager {
8022
8040
  * would care about changed (see liveSnapshotChanged). */
8023
8041
  persistLiveSnapshot(live, now) {
8024
8042
  const candidate = /* @__PURE__ */ new Map();
8025
- for (const [id, info] of live) candidate.set(id, { title: info.title, cwd: info.cwd, tags: info.tags, manual: info.manual, ...info.attachTmux ? { attachTmux: info.attachTmux } : {}, ...seenGeometry(info.cols, info.rows), seenAt: now });
8043
+ for (const [id, info] of live) candidate.set(id, { title: info.title, cwd: info.cwd, tags: info.tags, manual: info.manual, ...info.attachTmux ? { attachTmux: info.attachTmux } : {}, ...info.projectId ? { projectId: info.projectId } : {}, ...seenGeometry(info.cols, info.rows), seenAt: now });
8026
8044
  if (!mirrorProtocol.liveSnapshotChanged(this.lastPersistedSnapshot, candidate)) return;
8027
8045
  this.lastPersistedSnapshot = candidate;
8028
8046
  saveLiveSnapshot(candidate);
@@ -8243,7 +8261,7 @@ class WebTerminalManager {
8243
8261
  }
8244
8262
  }
8245
8263
  if (createdNew) {
8246
- attachedTmux = this.injectIntoCreated(tmuxSession, attachTarget, opts.startupCommand, env);
8264
+ attachedTmux = this.injectIntoCreated(tmuxSession, attachTarget, opts.startupCommand, env, opts.projectId);
8247
8265
  } else if (opts.attachTmux && !attachOnly) {
8248
8266
  const stored = node_child_process.spawnSync(
8249
8267
  "tmux",
@@ -8266,7 +8284,7 @@ class WebTerminalManager {
8266
8284
  { stdio: "ignore", timeout: TMUX_CREATE_TIMEOUT_MS, env }
8267
8285
  );
8268
8286
  createdNew = retry.status === 0;
8269
- if (createdNew) attachedTmux = this.injectIntoCreated(tmuxSession, attachTarget, opts.startupCommand, env);
8287
+ if (createdNew) attachedTmux = this.injectIntoCreated(tmuxSession, attachTarget, opts.startupCommand, env, opts.projectId);
8270
8288
  }
8271
8289
  }
8272
8290
  if (!attachOnly && !createdNew) {
@@ -8345,7 +8363,8 @@ class WebTerminalManager {
8345
8363
  }
8346
8364
  }
8347
8365
  const created = new TerminalSession(id, { kind: "pty", pty: proc }, void 0, cols, rows);
8348
- created.direct = { cwd, createdAt: Date.now() };
8366
+ const createProject = tmuxSocket.validateTerminalProjectId(opts.projectId);
8367
+ created.direct = { cwd, createdAt: Date.now(), ...createProject ? { projectId: createProject } : {} };
8349
8368
  created.onTitleChange((title) => {
8350
8369
  if (created.direct && !created.direct.manual) created.direct.title = terminals.deriveAutoTitle(title, os.hostname(), created.direct.cwd);
8351
8370
  });
@@ -8393,7 +8412,14 @@ class WebTerminalManager {
8393
8412
  * records / restore and types the attach line; otherwise the ordinary
8394
8413
  * startup command runs. Returns what to echo as `attachedTmux`.
8395
8414
  */
8396
- injectIntoCreated(tmuxSession, attachTarget, startupCommand, env) {
8415
+ injectIntoCreated(tmuxSession, attachTarget, startupCommand, env, projectId) {
8416
+ const project = tmuxSocket.validateTerminalProjectId(projectId);
8417
+ if (project) {
8418
+ try {
8419
+ node_child_process.spawnSync("tmux", tmuxSocket.tmuxArgs(["set-option", "-t", `=${tmuxSession}:`, "@vh_project", project]), { stdio: "ignore", timeout: TMUX_PROBE_TIMEOUT_MS, env });
8420
+ } catch {
8421
+ }
8422
+ }
8397
8423
  if (attachTarget) {
8398
8424
  for (const a of [
8399
8425
  ["set-option", "-t", `=${tmuxSession}:`, "@vh_title", attachTarget.name],
@@ -8714,6 +8740,7 @@ class WebTerminalManager {
8714
8740
  cwd: liveDirect.direct.cwd,
8715
8741
  tags: liveDirect.direct.tags ?? [],
8716
8742
  ...liveDirect.direct.manual ? { manual: true } : {},
8743
+ ...liveDirect.direct.projectId ? { projectId: liveDirect.direct.projectId } : {},
8717
8744
  reason: "closed",
8718
8745
  closedAt: Date.now()
8719
8746
  });
@@ -8757,6 +8784,7 @@ class WebTerminalManager {
8757
8784
  tags: info.tags,
8758
8785
  manual: info.manual,
8759
8786
  ...info.attachTmux ? { attachTmux: info.attachTmux } : {},
8787
+ ...info.projectId ? { projectId: info.projectId } : {},
8760
8788
  ...seenGeometry(info.cols, info.rows),
8761
8789
  mirrorSessionId: this.mirrorResolver?.(terminalId) ?? mirror?.sessionId,
8762
8790
  claudeSessionId: mirror?.claudeSessionId,
@@ -8847,6 +8875,7 @@ class WebTerminalManager {
8847
8875
  title,
8848
8876
  // Always include [] so Web can feature-detect tag support.
8849
8877
  tags: s.tags,
8878
+ projectId: s.projectId,
8850
8879
  cwd: s.cwd,
8851
8880
  createdAt: s.created,
8852
8881
  // tmux last-activity (epoch s) → ms; optional so old daemons
@@ -9087,6 +9116,34 @@ class WebTerminalManager {
9087
9116
  return false;
9088
9117
  }
9089
9118
  }
9119
+ /** B-868: put the terminal in a Very Happy project, or take it out (null).
9120
+ * Only the id is stored (`@vh_project`); the web resolves it against the
9121
+ * account's projects. Nothing is ever injected into the terminal. */
9122
+ setProject(terminalId, projectId) {
9123
+ const direct = this.terminals.get(terminalId)?.direct;
9124
+ if (!direct && !isTmuxAvailable()) return false;
9125
+ if (!/^[a-zA-Z0-9_-]{1,64}$/.test(terminalId)) return false;
9126
+ const valid = tmuxSocket.validateTerminalProjectId(projectId);
9127
+ if (valid === void 0) return false;
9128
+ if (direct) {
9129
+ if (valid) direct.projectId = valid;
9130
+ else delete direct.projectId;
9131
+ this.kickListRefresh();
9132
+ return true;
9133
+ }
9134
+ const target = `=vh-${terminalId}:`;
9135
+ try {
9136
+ const r = node_child_process.spawnSync("tmux", tmuxSocket.tmuxArgs(valid ? ["set-option", "-t", target, "@vh_project", valid] : ["set-option", "-u", "-t", target, "@vh_project"]), {
9137
+ stdio: "ignore",
9138
+ env: ptyEnv()
9139
+ });
9140
+ if (r.status !== 0) return false;
9141
+ this.kickListRefresh();
9142
+ return true;
9143
+ } catch {
9144
+ return false;
9145
+ }
9146
+ }
9090
9147
  }
9091
9148
 
9092
9149
  const UUID_RE$4 = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
@@ -10935,7 +10992,7 @@ class ApiMachineClient {
10935
10992
  this.syncResumeSessionRpcRegistration();
10936
10993
  this.syncRestartSessionRpcRegistration();
10937
10994
  this.rpcHandlerManager.registerHandler("open-terminal", async (params) => {
10938
- const { terminalId, cols, rows, cwd, fromSeq, encStream, startupCommand, resub, attachOnly, streamMode, attachTmux } = params || {};
10995
+ const { terminalId, cols, rows, cwd, fromSeq, encStream, startupCommand, resub, attachOnly, streamMode, attachTmux, projectId } = params || {};
10939
10996
  const attach = attachTmux && typeof attachTmux === "object" && typeof attachTmux.id === "string" && typeof attachTmux.name === "string" ? { id: attachTmux.id, name: attachTmux.name } : void 0;
10940
10997
  const result = await this.webTerminal.open({
10941
10998
  terminalId,
@@ -10947,7 +11004,9 @@ class ApiMachineClient {
10947
11004
  resub,
10948
11005
  attachOnly,
10949
11006
  streamMode: streamMode === "lines" ? "lines" : void 0,
10950
- ...attach ? { attachTmux: attach } : {}
11007
+ ...attach ? { attachTmux: attach } : {},
11008
+ // B-868: create-only; validated inside open().
11009
+ ...typeof projectId === "string" ? { projectId } : {}
10951
11010
  });
10952
11011
  if (encStream) {
10953
11012
  this.encTerminals.add(result.terminalId);
@@ -11045,6 +11104,16 @@ class ApiMachineClient {
11045
11104
  }
11046
11105
  return { type: "success" };
11047
11106
  });
11107
+ this.rpcHandlerManager.registerHandler("set-terminal-project", async (params) => {
11108
+ const { terminalId, projectId } = params || {};
11109
+ if (typeof terminalId !== "string" || !terminalId || projectId === void 0) {
11110
+ throw new Error("terminalId and projectId are required");
11111
+ }
11112
+ if (!this.webTerminal.setProject(terminalId, projectId)) {
11113
+ throw new Error("Failed to set terminal project (invalid id, tmux unavailable, or session gone)");
11114
+ }
11115
+ return { type: "success" };
11116
+ });
11048
11117
  this.rpcHandlerManager.registerHandler("stop-session", (params) => {
11049
11118
  const { sessionId } = params || {};
11050
11119
  if (!sessionId) {
@@ -11558,6 +11627,8 @@ class ApiMachineClient {
11558
11627
  codexHistory: { rpcAvailable: true, detectedAt: now },
11559
11628
  // B-549 capability flag: `history-search` (same restamp discipline).
11560
11629
  historySearch: { rpcAvailable: true, detectedAt: now },
11630
+ // B-868 capability flag: `set-terminal-project` (same restamp discipline).
11631
+ terminalProjects: { rpcAvailable: true, detectedAt: now },
11561
11632
  // B-084: closed records survive daemon restarts (persisted
11562
11633
  // in closed-terminals.json), so the connect snapshot ships
11563
11634
  // them too — not just the incremental pushes.
@@ -1,8 +1,8 @@
1
1
  import { randomUUID } from 'node:crypto';
2
2
  import { writeFile, rename, unlink } from 'node:fs/promises';
3
3
  import { join, basename } from 'node:path';
4
- import { M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES } from './pushNotifications-4sNESDMv.mjs';
5
- import { e as ensurePrivateDirectory, h as hardenPrivateFile } from './configuration-C8r6uD9k.mjs';
4
+ import { M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES } from './pushNotifications-CD5-W90c.mjs';
5
+ import { e as ensurePrivateDirectory, h as hardenPrivateFile } from './configuration-BIh6P6kB.mjs';
6
6
 
7
7
  const CLAUDE_ATTACHMENT_KINDS = [
8
8
  "image/jpeg",
@@ -3,8 +3,8 @@
3
3
  var node_crypto = require('node:crypto');
4
4
  var promises = require('node:fs/promises');
5
5
  var path = require('node:path');
6
- var pushNotifications = require('./pushNotifications-DRDWUnP-.cjs');
7
- var configuration = require('./configuration-CWRKSOyj.cjs');
6
+ var pushNotifications = require('./pushNotifications-BhnrQa32.cjs');
7
+ var configuration = require('./configuration-BL_fxboH.cjs');
8
8
 
9
9
  const CLAUDE_ATTACHMENT_KINDS = [
10
10
  "image/jpeg",
@@ -1,11 +1,11 @@
1
1
  import chalk from 'chalk';
2
- import { g as readCredentials, r as readSettings, h as clearCredentials, i as clearMachineId } from './persistence-CagHeZ-f.mjs';
3
- import { a as authAndSetupMachineIfNeeded } from './auth-DVsH_a8J.mjs';
4
- import { c as configuration } from './configuration-C8r6uD9k.mjs';
2
+ import { g as readCredentials, r as readSettings, h as clearCredentials, i as clearMachineId } from './persistence-CPIj3Iha.mjs';
3
+ import { a as authAndSetupMachineIfNeeded } from './auth-Dnu0Mocz.mjs';
4
+ import { c as configuration } from './configuration-BIh6P6kB.mjs';
5
5
  import { existsSync, rmSync } from 'node:fs';
6
6
  import { createInterface } from 'node:readline';
7
- import { a as checkIfDaemonRunningAndCleanupStaleState, s as stopDaemon } from './controlClient-DYQ1g2ar.mjs';
8
- import { l as logger } from './logger-D1hb3CG8.mjs';
7
+ import { a as checkIfDaemonRunningAndCleanupStaleState, s as stopDaemon } from './controlClient-CPZkMKsH.mjs';
8
+ import { l as logger } from './logger-CahcyjlK.mjs';
9
9
  import os from 'node:os';
10
10
  import { c as credentialRelayProblem } from './authRelay-DhQhkBvX.mjs';
11
11
  import 'node:fs/promises';
@@ -13,11 +13,11 @@ import 'zod';
13
13
  import 'node:crypto';
14
14
  import 'tweetnacl';
15
15
  import 'axios';
16
- import './time-CgAwVt5R.mjs';
17
- import './browser-CWWyaf8_.mjs';
16
+ import './time-DZ7wPlsL.mjs';
17
+ import './browser-Cnk2N81e.mjs';
18
18
  import 'open';
19
19
  import 'node:path';
20
- import './package-CpmoMPuj.mjs';
20
+ import './package-DUKnh8UF.mjs';
21
21
  import 'node:util';
22
22
 
23
23
  function localMachineIdentityStatus(machineId) {
@@ -1,13 +1,13 @@
1
1
  'use strict';
2
2
 
3
3
  var chalk = require('chalk');
4
- var persistence = require('./persistence-BiyvEYaR.cjs');
5
- var auth = require('./auth-DHlbjtf7.cjs');
6
- var configuration = require('./configuration-CWRKSOyj.cjs');
4
+ var persistence = require('./persistence-CWEaFv6R.cjs');
5
+ var auth = require('./auth-ZKJNs8AK.cjs');
6
+ var configuration = require('./configuration-BL_fxboH.cjs');
7
7
  var node_fs = require('node:fs');
8
8
  var node_readline = require('node:readline');
9
- var controlClient = require('./controlClient-DyNgxNl7.cjs');
10
- var logger = require('./logger-HQ9yDb8R.cjs');
9
+ var controlClient = require('./controlClient-DMtkGpc3.cjs');
10
+ var logger = require('./logger-CtweAuKq.cjs');
11
11
  var os = require('node:os');
12
12
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
13
13
  require('node:fs/promises');
@@ -15,11 +15,11 @@ require('zod');
15
15
  require('node:crypto');
16
16
  require('tweetnacl');
17
17
  require('axios');
18
- require('./time-BqPZjTpo.cjs');
19
- require('./browser-Bm24RiFU.cjs');
18
+ require('./time-BTXLicT9.cjs');
19
+ require('./browser-B3VVAWcC.cjs');
20
20
  require('open');
21
21
  require('node:path');
22
- require('./package-Dn7zZkY1.cjs');
22
+ require('./package-DdYN77UN.cjs');
23
23
  require('node:util');
24
24
 
25
25
  function localMachineIdentityStatus(machineId) {
@@ -1,12 +1,12 @@
1
1
  import { e as encodeBase64, c as credentialRelayProblem, f as encodeBase64Url, d as decodeBase64 } from './authRelay-DhQhkBvX.mjs';
2
- import { c as configuration } from './configuration-C8r6uD9k.mjs';
2
+ import { c as configuration } from './configuration-BIh6P6kB.mjs';
3
3
  import { randomUUID, randomBytes } from 'node:crypto';
4
4
  import tweetnacl from 'tweetnacl';
5
5
  import axios from 'axios';
6
- import { d as delay } from './time-CgAwVt5R.mjs';
7
- import { g as readCredentials, m as readSettingsOutcome, u as updateSettings, w as writeCredentialsLegacy, n as writeCredentialsDataKey } from './persistence-CagHeZ-f.mjs';
8
- import { o as openBrowser } from './browser-CWWyaf8_.mjs';
9
- import { l as logger } from './logger-D1hb3CG8.mjs';
6
+ import { d as delay } from './time-DZ7wPlsL.mjs';
7
+ import { g as readCredentials, m as readSettingsOutcome, u as updateSettings, w as writeCredentialsLegacy, n as writeCredentialsDataKey } from './persistence-CPIj3Iha.mjs';
8
+ import { o as openBrowser } from './browser-Cnk2N81e.mjs';
9
+ import { l as logger } from './logger-CahcyjlK.mjs';
10
10
 
11
11
  function generateWebAuthUrl(publicKey) {
12
12
  const publicKeyBase64 = encodeBase64(publicKey, "base64url");
@@ -1,14 +1,14 @@
1
1
  'use strict';
2
2
 
3
3
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
4
- var configuration = require('./configuration-CWRKSOyj.cjs');
4
+ var configuration = require('./configuration-BL_fxboH.cjs');
5
5
  var node_crypto = require('node:crypto');
6
6
  var tweetnacl = require('tweetnacl');
7
7
  var axios = require('axios');
8
- var time = require('./time-BqPZjTpo.cjs');
9
- var persistence = require('./persistence-BiyvEYaR.cjs');
10
- var browser = require('./browser-Bm24RiFU.cjs');
11
- var logger = require('./logger-HQ9yDb8R.cjs');
8
+ var time = require('./time-BTXLicT9.cjs');
9
+ var persistence = require('./persistence-CWEaFv6R.cjs');
10
+ var browser = require('./browser-B3VVAWcC.cjs');
11
+ var logger = require('./logger-CtweAuKq.cjs');
12
12
 
13
13
  function generateWebAuthUrl(publicKey) {
14
14
  const publicKeyBase64 = authRelay.encodeBase64(publicKey, "base64url");
@@ -3,45 +3,45 @@ import { homedir } from 'node:os';
3
3
  import { readFileSync } from 'node:fs';
4
4
  import { resolve } from 'node:path';
5
5
  import { c as AUTOMATION_NAME_PATTERN, i as isAutomationRunTerminal, d as AUTOMATION_PRECHECK_MAX_TIMEOUT_MS, e as AutomationPrecheckSchema } from './index-C27JFCbe.mjs';
6
- import { c as configuration } from './configuration-C8r6uD9k.mjs';
7
- import { a as authenticatedAutomationsClient, b as automationRunIdFromEnv, i as isAutomationsUnavailable, A as AUTOMATIONS_UNAVAILABLE_MESSAGE } from './client-Cg_cuQb1.mjs';
6
+ import { c as configuration } from './configuration-BIh6P6kB.mjs';
7
+ import { a as authenticatedAutomationsClient, b as automationRunIdFromEnv, i as isAutomationsUnavailable, A as AUTOMATIONS_UNAVAILABLE_MESSAGE } from './client-BeEAF2yn.mjs';
8
8
  import { p as parseDuration, c as clipAutomationReport, A as AUTOMATION_REPORT_TEXT_LIMITS, t as triggerFromFlags, d as describeTrigger, a as describeAction } from './template-CJ8uLlD8.mjs';
9
9
  import { A as AUTOMATION_SKILL, i as installAutomationSkill } from './install-B8O1JpJH.mjs';
10
10
  import { u as updateAutomationChecked, c as createAutomationChecked } from './precheckCompat-DeEbilbr.mjs';
11
- import { s as sessionWebUrl } from './sessionOps-OmRqUFm4.mjs';
12
- import { parseEnvAssignment } from './spawn-CbfcClhj.mjs';
11
+ import { s as sessionWebUrl } from './sessionOps-fuLJNyOT.mjs';
12
+ import { parseEnvAssignment } from './spawn-C3wiREei.mjs';
13
13
  import { S as SPAWN_AGENTS, s as sanitizeSpawnPermissionMode, A as ALLOWED_SPAWN_PERMISSION_MODES } from './spawnAgents-N3jxdNJC.mjs';
14
- import { d as delay } from './time-CgAwVt5R.mjs';
14
+ import { d as delay } from './time-DZ7wPlsL.mjs';
15
15
  import 'zod';
16
16
  import '@paralleldrive/cuid2';
17
- import './package-CpmoMPuj.mjs';
17
+ import './package-DUKnh8UF.mjs';
18
18
  import 'node:fs/promises';
19
- import './persistence-CagHeZ-f.mjs';
19
+ import './persistence-CPIj3Iha.mjs';
20
20
  import './authRelay-DhQhkBvX.mjs';
21
21
  import 'node:crypto';
22
22
  import 'tweetnacl';
23
- import './logger-D1hb3CG8.mjs';
23
+ import './logger-CahcyjlK.mjs';
24
24
  import 'node:util';
25
25
  import './resources-CLP_MpK4.mjs';
26
26
  import 'axios';
27
- import './controlClient-DYQ1g2ar.mjs';
27
+ import './controlClient-CPZkMKsH.mjs';
28
28
  import './specialCommands-MXUN0wfI.mjs';
29
29
  import 'socket.io-client';
30
30
  import './backgroundTaskActivity-8PdPxrvy.mjs';
31
- import './client-CfTeXnYS.mjs';
31
+ import './client-CkiWUkm6.mjs';
32
32
  import './path-D2wdaNSk.mjs';
33
- import './claudeSessionFork-BqV6E0ep.mjs';
33
+ import './claudeSessionFork-BMMJmfxX.mjs';
34
34
  import 'node:readline';
35
- import './codexAppServerClient-aV5m-FpZ.mjs';
35
+ import './codexAppServerClient-AcMiUjlK.mjs';
36
36
  import 'node:child_process';
37
37
  import 'cross-spawn';
38
38
  import './contentLogMetadata-BlWI0egu.mjs';
39
39
  import './manager-BEsI4qt3.mjs';
40
40
  import '@anthropic-ai/sandbox-runtime';
41
- import './rateLimitWindows-4uhuwKnU.mjs';
41
+ import './rateLimitWindows-BAfkXSck.mjs';
42
42
  import './processTree-CP5IvQ2Z.mjs';
43
43
  import './codexThreadFork-CVzAqELg.mjs';
44
- import './createSessionMetadata-CZuEDo2v.mjs';
44
+ import './createSessionMetadata-DkkddlJa.mjs';
45
45
  import './projectPath-BTBIMB57.mjs';
46
46
  import 'path';
47
47
  import 'url';
@@ -5,45 +5,45 @@ var os = require('node:os');
5
5
  var node_fs = require('node:fs');
6
6
  var path = require('node:path');
7
7
  var index = require('./index-D9Hidq-g.cjs');
8
- var configuration = require('./configuration-CWRKSOyj.cjs');
9
- var client = require('./client-B9fcSMXP.cjs');
8
+ var configuration = require('./configuration-BL_fxboH.cjs');
9
+ var client = require('./client-DH_mgm2T.cjs');
10
10
  var template = require('./template-B1AORlgU.cjs');
11
11
  var install = require('./install-BOHlqewf.cjs');
12
12
  var precheckCompat = require('./precheckCompat-CWOi5c9L.cjs');
13
- var sessionOps = require('./sessionOps-JRyQhF5s.cjs');
14
- var spawn = require('./spawn-CxEl0Dyz.cjs');
13
+ var sessionOps = require('./sessionOps-flaRRzdo.cjs');
14
+ var spawn = require('./spawn-Bfw10V7R.cjs');
15
15
  var spawnAgents = require('./spawnAgents-Cm23BW-D.cjs');
16
- var time = require('./time-BqPZjTpo.cjs');
16
+ var time = require('./time-BTXLicT9.cjs');
17
17
  require('zod');
18
18
  require('@paralleldrive/cuid2');
19
- require('./package-Dn7zZkY1.cjs');
19
+ require('./package-DdYN77UN.cjs');
20
20
  require('node:fs/promises');
21
- require('./persistence-BiyvEYaR.cjs');
21
+ require('./persistence-CWEaFv6R.cjs');
22
22
  require('./authRelay-Dy1qU9td.cjs');
23
23
  require('node:crypto');
24
24
  require('tweetnacl');
25
- require('./logger-HQ9yDb8R.cjs');
25
+ require('./logger-CtweAuKq.cjs');
26
26
  require('node:util');
27
27
  require('./resources-BZ_Be0qM.cjs');
28
28
  require('axios');
29
- require('./controlClient-DyNgxNl7.cjs');
29
+ require('./controlClient-DMtkGpc3.cjs');
30
30
  require('./specialCommands-J3JFOq0J.cjs');
31
31
  require('socket.io-client');
32
32
  require('./backgroundTaskActivity-CBvUdj39.cjs');
33
- require('./client-Ckic3nxZ.cjs');
33
+ require('./client-DmO89_dS.cjs');
34
34
  require('./path-B7zW-WwE.cjs');
35
- require('./claudeSessionFork-OffWLYgd.cjs');
35
+ require('./claudeSessionFork--_RtwhC2.cjs');
36
36
  require('node:readline');
37
- require('./codexAppServerClient-C-UwVMUN.cjs');
37
+ require('./codexAppServerClient-C4FYS9D9.cjs');
38
38
  require('node:child_process');
39
39
  require('cross-spawn');
40
40
  require('./contentLogMetadata-ZSFk_NjQ.cjs');
41
41
  require('./manager-HrEj442o.cjs');
42
42
  require('@anthropic-ai/sandbox-runtime');
43
- require('./rateLimitWindows-U4fc1-_6.cjs');
43
+ require('./rateLimitWindows-_KfSDJdB.cjs');
44
44
  require('./processTree-CMHWlVse.cjs');
45
45
  require('./codexThreadFork-C6ZmcT2z.cjs');
46
- require('./createSessionMetadata-C4WN8pVK.cjs');
46
+ require('./createSessionMetadata-BWr0XT-Y.cjs');
47
47
  require('./projectPath-C3ioB4Bu.cjs');
48
48
  require('path');
49
49
  require('url');
@@ -3,9 +3,9 @@
3
3
  var node_fs = require('node:fs');
4
4
  var promises = require('node:fs/promises');
5
5
  var path = require('node:path');
6
- var configuration = require('./configuration-CWRKSOyj.cjs');
6
+ var configuration = require('./configuration-BL_fxboH.cjs');
7
7
  require('node:os');
8
- require('./package-Dn7zZkY1.cjs');
8
+ require('./package-DdYN77UN.cjs');
9
9
 
10
10
  const ASSISTANT_CLAUDE_MD = `# very-happy \u8C03\u5EA6\u4E2D\u5FC3\uFF08\u8BED\u97F3\u52A9\u624B\uFF09
11
11
 
@@ -1,9 +1,9 @@
1
1
  import { existsSync } from 'node:fs';
2
2
  import { mkdir, writeFile } from 'node:fs/promises';
3
3
  import { join } from 'node:path';
4
- import { c as configuration } from './configuration-C8r6uD9k.mjs';
4
+ import { c as configuration } from './configuration-BIh6P6kB.mjs';
5
5
  import 'node:os';
6
- import './package-CpmoMPuj.mjs';
6
+ import './package-DUKnh8UF.mjs';
7
7
 
8
8
  const ASSISTANT_CLAUDE_MD = `# very-happy \u8C03\u5EA6\u4E2D\u5FC3\uFF08\u8BED\u97F3\u52A9\u624B\uFF09
9
9
 
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var open = require('open');
4
- var logger = require('./logger-HQ9yDb8R.cjs');
4
+ var logger = require('./logger-CtweAuKq.cjs');
5
5
 
6
6
  async function openBrowser(url) {
7
7
  try {
@@ -1,5 +1,5 @@
1
1
  import open from 'open';
2
- import { l as logger } from './logger-D1hb3CG8.mjs';
2
+ import { l as logger } from './logger-CahcyjlK.mjs';
3
3
 
4
4
  async function openBrowser(url) {
5
5
  try {
@@ -4,19 +4,19 @@ var spawn = require('cross-spawn');
4
4
  var node_readline = require('node:readline');
5
5
  var node_fs = require('node:fs');
6
6
  var node_crypto = require('node:crypto');
7
- var logger = require('./logger-HQ9yDb8R.cjs');
7
+ var logger = require('./logger-CtweAuKq.cjs');
8
8
  var promptCacheTtl = require('./promptCacheTtl-B8PCzE6k.cjs');
9
9
  var path$1 = require('node:path');
10
10
  var path = require('./path-B7zW-WwE.cjs');
11
- var systemPrompt = require('./systemPrompt-HZNR9rjt.cjs');
11
+ var systemPrompt = require('./systemPrompt-NTIxM2Ss.cjs');
12
12
  var manager = require('./manager-HrEj442o.cjs');
13
13
  var contentLogMetadata = require('./contentLogMetadata-ZSFk_NjQ.cjs');
14
14
  var claudeCliPath = require('./claudeCliPath-GaP3UUz1.cjs');
15
15
  require('chalk');
16
16
  require('node:util');
17
- require('./configuration-CWRKSOyj.cjs');
17
+ require('./configuration-BL_fxboH.cjs');
18
18
  require('node:os');
19
- require('./package-Dn7zZkY1.cjs');
19
+ require('./package-DdYN77UN.cjs');
20
20
  require('node:fs/promises');
21
21
  require('./index-D9Hidq-g.cjs');
22
22
  require('zod');