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
package/dist/lib.d.cts CHANGED
@@ -606,6 +606,7 @@ declare const DaemonStateSchema: z$1.ZodObject<{
606
606
  id: z$1.ZodString;
607
607
  title: z$1.ZodOptional<z$1.ZodString>;
608
608
  tags: z$1.ZodOptional<z$1.ZodArray<z$1.ZodString>>;
609
+ projectId: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodString>>;
609
610
  cwd: z$1.ZodOptional<z$1.ZodString>;
610
611
  createdAt: z$1.ZodOptional<z$1.ZodNumber>;
611
612
  activityAt: z$1.ZodOptional<z$1.ZodNumber>;
@@ -637,6 +638,7 @@ declare const DaemonStateSchema: z$1.ZodObject<{
637
638
  tags: z$1.ZodOptional<z$1.ZodArray<z$1.ZodString>>;
638
639
  manual: z$1.ZodOptional<z$1.ZodBoolean>;
639
640
  attachTmux: z$1.ZodOptional<z$1.ZodString>;
641
+ projectId: z$1.ZodOptional<z$1.ZodString>;
640
642
  closedAt: z$1.ZodNumber;
641
643
  }, z$1.core.$strip>>>;
642
644
  terminalRestore: z$1.ZodOptional<z$1.ZodObject<{
@@ -660,6 +662,10 @@ declare const DaemonStateSchema: z$1.ZodObject<{
660
662
  rpcAvailable: z$1.ZodBoolean;
661
663
  detectedAt: z$1.ZodNumber;
662
664
  }, z$1.core.$strip>>;
665
+ terminalProjects: z$1.ZodOptional<z$1.ZodObject<{
666
+ rpcAvailable: z$1.ZodBoolean;
667
+ detectedAt: z$1.ZodNumber;
668
+ }, z$1.core.$strip>>;
663
669
  terminalHost: z$1.ZodOptional<z$1.ZodObject<{
664
670
  tmuxAvailable: z$1.ZodBoolean;
665
671
  tmuxVersion: z$1.ZodOptional<z$1.ZodString>;
@@ -2231,6 +2237,9 @@ interface TerminalListItem {
2231
2237
  title?: string;
2232
2238
  /** Always present in new daemon output; optional for old persisted state. */
2233
2239
  tags?: string[];
2240
+ /** B-868: the Very Happy project (`@vh_project`); new daemons always send
2241
+ * it, null = none. Ownership and display only — nothing is injected. */
2242
+ projectId?: string | null;
2234
2243
  cwd?: string;
2235
2244
  createdAt?: number;
2236
2245
  activityAt?: number;
package/dist/lib.d.mts CHANGED
@@ -606,6 +606,7 @@ declare const DaemonStateSchema: z$1.ZodObject<{
606
606
  id: z$1.ZodString;
607
607
  title: z$1.ZodOptional<z$1.ZodString>;
608
608
  tags: z$1.ZodOptional<z$1.ZodArray<z$1.ZodString>>;
609
+ projectId: z$1.ZodOptional<z$1.ZodNullable<z$1.ZodString>>;
609
610
  cwd: z$1.ZodOptional<z$1.ZodString>;
610
611
  createdAt: z$1.ZodOptional<z$1.ZodNumber>;
611
612
  activityAt: z$1.ZodOptional<z$1.ZodNumber>;
@@ -637,6 +638,7 @@ declare const DaemonStateSchema: z$1.ZodObject<{
637
638
  tags: z$1.ZodOptional<z$1.ZodArray<z$1.ZodString>>;
638
639
  manual: z$1.ZodOptional<z$1.ZodBoolean>;
639
640
  attachTmux: z$1.ZodOptional<z$1.ZodString>;
641
+ projectId: z$1.ZodOptional<z$1.ZodString>;
640
642
  closedAt: z$1.ZodNumber;
641
643
  }, z$1.core.$strip>>>;
642
644
  terminalRestore: z$1.ZodOptional<z$1.ZodObject<{
@@ -660,6 +662,10 @@ declare const DaemonStateSchema: z$1.ZodObject<{
660
662
  rpcAvailable: z$1.ZodBoolean;
661
663
  detectedAt: z$1.ZodNumber;
662
664
  }, z$1.core.$strip>>;
665
+ terminalProjects: z$1.ZodOptional<z$1.ZodObject<{
666
+ rpcAvailable: z$1.ZodBoolean;
667
+ detectedAt: z$1.ZodNumber;
668
+ }, z$1.core.$strip>>;
663
669
  terminalHost: z$1.ZodOptional<z$1.ZodObject<{
664
670
  tmuxAvailable: z$1.ZodBoolean;
665
671
  tmuxVersion: z$1.ZodOptional<z$1.ZodString>;
@@ -2231,6 +2237,9 @@ interface TerminalListItem {
2231
2237
  title?: string;
2232
2238
  /** Always present in new daemon output; optional for old persisted state. */
2233
2239
  tags?: string[];
2240
+ /** B-868: the Very Happy project (`@vh_project`); new daemons always send
2241
+ * it, null = none. Ownership and display only — nothing is injected. */
2242
+ projectId?: string | null;
2234
2243
  cwd?: string;
2235
2244
  createdAt?: number;
2236
2245
  activityAt?: number;
package/dist/lib.mjs CHANGED
@@ -1,15 +1,15 @@
1
- export { A as ApiClient, a as ApiSessionClient } from './api-CiNezCys.mjs';
2
- export { l as logger } from './logger-D1hb3CG8.mjs';
3
- export { c as configuration } from './configuration-C8r6uD9k.mjs';
1
+ export { A as ApiClient, a as ApiSessionClient } from './api-Do7MUIrP.mjs';
2
+ export { l as logger } from './logger-CahcyjlK.mjs';
3
+ export { c as configuration } from './configuration-BIh6P6kB.mjs';
4
4
  export { R as RawJSONLinesSchema } from './types-CkqAACXx.mjs';
5
5
  import 'axios';
6
- import './pushNotifications-4sNESDMv.mjs';
6
+ import './pushNotifications-CD5-W90c.mjs';
7
7
  import 'node:crypto';
8
8
  import 'zod';
9
9
  import './index-C27JFCbe.mjs';
10
10
  import '@paralleldrive/cuid2';
11
11
  import './contentLogMetadata-BlWI0egu.mjs';
12
- import './lidState-BflRFw38.mjs';
12
+ import './lidState-nbXgabCS.mjs';
13
13
  import './authRelay-DhQhkBvX.mjs';
14
14
  import 'tweetnacl';
15
15
  import 'os';
@@ -17,8 +17,8 @@ import 'child_process';
17
17
  import 'node:events';
18
18
  import 'socket.io-client';
19
19
  import './limits-DIo7rEBR.mjs';
20
- import './time-CgAwVt5R.mjs';
21
- import './registerCommonHandlers-PTJ8TBj9.mjs';
20
+ import './time-DZ7wPlsL.mjs';
21
+ import './registerCommonHandlers-Anq6Ma1d.mjs';
22
22
  import 'util';
23
23
  import 'fs/promises';
24
24
  import 'crypto';
@@ -26,14 +26,14 @@ import 'path';
26
26
  import 'cross-spawn';
27
27
  import './projectPath-BTBIMB57.mjs';
28
28
  import 'url';
29
- import './sync-DtzoF9sw.mjs';
29
+ import './sync-CHU9HM9N.mjs';
30
30
  import './backgroundTaskActivity-8PdPxrvy.mjs';
31
- import './controlClient-DYQ1g2ar.mjs';
32
- import './persistence-CagHeZ-f.mjs';
31
+ import './controlClient-CPZkMKsH.mjs';
32
+ import './persistence-CPIj3Iha.mjs';
33
33
  import 'node:fs/promises';
34
34
  import 'node:fs';
35
35
  import 'chalk';
36
36
  import 'node:util';
37
37
  import 'node:path';
38
38
  import 'node:os';
39
- import './package-CpmoMPuj.mjs';
39
+ import './package-DUKnh8UF.mjs';
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var logger = require('./logger-HQ9yDb8R.cjs');
3
+ var logger = require('./logger-CtweAuKq.cjs');
4
4
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
5
5
  var os = require('os');
6
6
  var child_process = require('child_process');
@@ -1,4 +1,4 @@
1
- import { l as logger } from './logger-D1hb3CG8.mjs';
1
+ import { l as logger } from './logger-CahcyjlK.mjs';
2
2
  import { e as encodeBase64, g as encrypt, h as decrypt, d as decodeBase64 } from './authRelay-DhQhkBvX.mjs';
3
3
  import os from 'os';
4
4
  import { execSync } from 'child_process';
@@ -4,7 +4,7 @@ import { join } from 'node:path';
4
4
  import tweetnacl from 'tweetnacl';
5
5
  import { z } from 'zod';
6
6
  import { c as credentialRelayProblem, d as decodeBase64 } from './authRelay-DhQhkBvX.mjs';
7
- import { c as configuration } from './configuration-C8r6uD9k.mjs';
7
+ import { c as configuration } from './configuration-BIh6P6kB.mjs';
8
8
 
9
9
  const AgentCredentialsSchema = z.object({
10
10
  token: z.string().min(1),
@@ -6,7 +6,7 @@ var path = require('node:path');
6
6
  var tweetnacl = require('tweetnacl');
7
7
  var z = require('zod');
8
8
  var authRelay = require('./authRelay-Dy1qU9td.cjs');
9
- var configuration = require('./configuration-CWRKSOyj.cjs');
9
+ var configuration = require('./configuration-BL_fxboH.cjs');
10
10
 
11
11
  const AgentCredentialsSchema = z.z.object({
12
12
  token: z.z.string().min(1),
@@ -1,6 +1,6 @@
1
1
  import chalk from 'chalk';
2
2
  import { inspect } from 'node:util';
3
- import { d as appendPrivateFileSync, c as configuration } from './configuration-C8r6uD9k.mjs';
3
+ import { d as appendPrivateFileSync, c as configuration } from './configuration-BIh6P6kB.mjs';
4
4
  import { existsSync, readdirSync, statSync } from 'node:fs';
5
5
  import { join, basename } from 'node:path';
6
6
 
@@ -236,7 +236,7 @@ async function listDaemonLogFiles(limit = 50) {
236
236
  return { file, path: fullPath, modified: stats.mtime };
237
237
  }).sort((a, b) => b.modified.getTime() - a.modified.getTime());
238
238
  try {
239
- const { readDaemonState } = await import('./persistence-CagHeZ-f.mjs').then(function (n) { return n.G; });
239
+ const { readDaemonState } = await import('./persistence-CPIj3Iha.mjs').then(function (n) { return n.G; });
240
240
  const state = await readDaemonState();
241
241
  if (!state) {
242
242
  return logs;
@@ -2,7 +2,7 @@
2
2
 
3
3
  var chalk = require('chalk');
4
4
  var node_util = require('node:util');
5
- var configuration = require('./configuration-CWRKSOyj.cjs');
5
+ var configuration = require('./configuration-BL_fxboH.cjs');
6
6
  var node_fs = require('node:fs');
7
7
  var path = require('node:path');
8
8
 
@@ -238,7 +238,7 @@ async function listDaemonLogFiles(limit = 50) {
238
238
  return { file, path: fullPath, modified: stats.mtime };
239
239
  }).sort((a, b) => b.modified.getTime() - a.modified.getTime());
240
240
  try {
241
- const { readDaemonState } = await Promise.resolve().then(function () { return require('./persistence-BiyvEYaR.cjs'); }).then(function (n) { return n.persistence; });
241
+ const { readDaemonState } = await Promise.resolve().then(function () { return require('./persistence-CWEaFv6R.cjs'); }).then(function (n) { return n.persistence; });
242
242
  const state = await readDaemonState();
243
243
  if (!state) {
244
244
  return logs;
@@ -1,9 +1,9 @@
1
1
  import os from 'node:os';
2
- import { p as packageJson } from './package-CpmoMPuj.mjs';
3
- import { c as configuration } from './configuration-C8r6uD9k.mjs';
2
+ import { p as packageJson } from './package-DUKnh8UF.mjs';
3
+ import { c as configuration } from './configuration-BIh6P6kB.mjs';
4
4
  import { p as projectPath } from './projectPath-BTBIMB57.mjs';
5
5
  import { d as detectCLIAvailability } from './detectCLI-CSGMlV51.mjs';
6
- import { d as detectResumeSupport } from './localHappyAgentAuth-BAK_nqMG.mjs';
6
+ import { d as detectResumeSupport } from './localHappyAgentAuth-BupJnMMB.mjs';
7
7
  import { F as FS_MKDIR_CAPABILITY_VERSION } from './fsMkdir-DumgLTzR.mjs';
8
8
 
9
9
  const TEAM_RETRY_CAPABILITY_VERSION = 2;
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
3
  var os = require('node:os');
4
- var _package = require('./package-Dn7zZkY1.cjs');
5
- var configuration = require('./configuration-CWRKSOyj.cjs');
4
+ var _package = require('./package-DdYN77UN.cjs');
5
+ var configuration = require('./configuration-BL_fxboH.cjs');
6
6
  var projectPath = require('./projectPath-C3ioB4Bu.cjs');
7
7
  var detectCLI = require('./detectCLI-BuYR_Qxe.cjs');
8
- var localHappyAgentAuth = require('./localHappyAgentAuth-oxhpgJOb.cjs');
8
+ var localHappyAgentAuth = require('./localHappyAgentAuth-Dxl6itKW.cjs');
9
9
  var fsMkdir = require('./fsMkdir-0K3yENml.cjs');
10
10
 
11
11
  const TEAM_RETRY_CAPABILITY_VERSION = 2;
@@ -1,22 +1,22 @@
1
1
  'use strict';
2
2
 
3
3
  var chalk = require('chalk');
4
- var logger = require('./logger-HQ9yDb8R.cjs');
5
- var persistence = require('./persistence-BiyvEYaR.cjs');
6
- var auth = require('./auth-DHlbjtf7.cjs');
7
- var _package = require('./package-Dn7zZkY1.cjs');
4
+ var logger = require('./logger-CtweAuKq.cjs');
5
+ var persistence = require('./persistence-CWEaFv6R.cjs');
6
+ var auth = require('./auth-ZKJNs8AK.cjs');
7
+ var _package = require('./package-DdYN77UN.cjs');
8
8
  var z = require('zod');
9
- var controlClient = require('./controlClient-DyNgxNl7.cjs');
9
+ var controlClient = require('./controlClient-DMtkGpc3.cjs');
10
10
  var daemonSupervisor = require('./daemonSupervisor-alqGPANc.cjs');
11
11
  var cliUpdate = require('./cliUpdate-DsKXPFYp.cjs');
12
- var spawnHappyCLI = require('./spawnHappyCLI-CHSlXWUe.cjs');
12
+ var spawnHappyCLI = require('./spawnHappyCLI-D4_Ij_BB.cjs');
13
13
  var node_child_process = require('node:child_process');
14
- var ensureDaemonRunning = require('./ensureDaemonRunning-Bq-n6xTt.cjs');
14
+ var ensureDaemonRunning = require('./ensureDaemonRunning-pg-EYmG0.cjs');
15
15
  var startupPlan = require('./startupPlan-BLMbfQIH.cjs');
16
- var index = require('./index-CnY74Dae.cjs');
17
- var configuration = require('./configuration-CWRKSOyj.cjs');
16
+ var index = require('./index-DgnbOqH_.cjs');
17
+ var configuration = require('./configuration-BL_fxboH.cjs');
18
18
  var doctorReadiness = require('./doctorReadiness-Dl6yRQCy.cjs');
19
- var piRunnerArgs = require('./piRunnerArgs-kTaNYd23.cjs');
19
+ var piRunnerArgs = require('./piRunnerArgs-Aqs-zKLm.cjs');
20
20
  var detectCLI = require('./detectCLI-BuYR_Qxe.cjs');
21
21
  var exitAfterFlush = require('./exitAfterFlush-DIT_sIxR.cjs');
22
22
  var reconnectEnv = require('./reconnectEnv-B31lY4nR.cjs');
@@ -28,8 +28,8 @@ require('./authRelay-Dy1qU9td.cjs');
28
28
  require('node:crypto');
29
29
  require('tweetnacl');
30
30
  require('axios');
31
- require('./time-BqPZjTpo.cjs');
32
- require('./browser-Bm24RiFU.cjs');
31
+ require('./time-BTXLicT9.cjs');
32
+ require('./browser-B3VVAWcC.cjs');
33
33
  require('open');
34
34
  require('node:module');
35
35
  require('node:os');
@@ -37,7 +37,7 @@ require('cross-spawn');
37
37
  require('./projectPath-C3ioB4Bu.cjs');
38
38
  require('path');
39
39
  require('url');
40
- require('./acpSessionResume-B01oHWDS.cjs');
40
+ require('./acpSessionResume-CfEw8L26.cjs');
41
41
  require('child_process');
42
42
  require('os');
43
43
  require('fs');
@@ -124,32 +124,32 @@ Conversation history is preserved on the server, but in-flight tool calls are in
124
124
  }
125
125
  process.exit(0);
126
126
  }
127
- await (await Promise.resolve().then(function () { return require('./doctor-0gLGzwz6.cjs'); }).then(function (n) { return n.doctor; })).runDoctorCommand();
127
+ await (await Promise.resolve().then(function () { return require('./doctor-DHK-5Hxm.cjs'); }).then(function (n) { return n.doctor; })).runDoctorCommand();
128
128
  return;
129
129
  } else if (subcommand === "auth") {
130
130
  try {
131
- await (await Promise.resolve().then(function () { return require('./auth-tlMcvk2Y.cjs'); })).handleAuthCommand(args.slice(1));
131
+ await (await Promise.resolve().then(function () { return require('./auth-BhM0lHLA.cjs'); })).handleAuthCommand(args.slice(1));
132
132
  } catch (error) {
133
133
  failCommand(error);
134
134
  }
135
135
  return;
136
136
  } else if (subcommand === "connect") {
137
137
  try {
138
- await (await Promise.resolve().then(function () { return require('./connect-DALX1hGB.cjs'); })).handleConnectCommand(args.slice(1));
138
+ await (await Promise.resolve().then(function () { return require('./connect-Bi7cRXtj.cjs'); })).handleConnectCommand(args.slice(1));
139
139
  } catch (error) {
140
140
  failCommand(error);
141
141
  }
142
142
  return;
143
143
  } else if (subcommand === "sandbox") {
144
144
  try {
145
- await (await Promise.resolve().then(function () { return require('./sandbox-UGF68GrE.cjs'); })).handleSandboxCommand(args.slice(1));
145
+ await (await Promise.resolve().then(function () { return require('./sandbox-D9xs3oeT.cjs'); })).handleSandboxCommand(args.slice(1));
146
146
  } catch (error) {
147
147
  failCommand(error);
148
148
  }
149
149
  return;
150
150
  } else if (subcommand === "server") {
151
151
  try {
152
- await (await Promise.resolve().then(function () { return require('./server-BPgVv-BG.cjs'); })).handleServerCommand(args.slice(1));
152
+ await (await Promise.resolve().then(function () { return require('./server-XgEG5D8c.cjs'); })).handleServerCommand(args.slice(1));
153
153
  } catch (error) {
154
154
  failCommand(error);
155
155
  }
@@ -181,7 +181,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
181
181
  }
182
182
  } else if (subcommand === "agent-home") {
183
183
  try {
184
- const { parseAgentHomeArgs, runAgentHomeCommand } = await Promise.resolve().then(function () { return require('./agentHome-BulDO_1K.cjs'); });
184
+ const { parseAgentHomeArgs, runAgentHomeCommand } = await Promise.resolve().then(function () { return require('./agentHome-CBYL4J4Q.cjs'); });
185
185
  await runAgentHomeCommand(parseAgentHomeArgs(args.slice(1)));
186
186
  process.exit(0);
187
187
  } catch (error) {
@@ -190,7 +190,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
190
190
  }
191
191
  } else if (subcommand === "spawn") {
192
192
  try {
193
- const { handleSpawnCommand } = await Promise.resolve().then(function () { return require('./spawn-CxEl0Dyz.cjs'); });
193
+ const { handleSpawnCommand } = await Promise.resolve().then(function () { return require('./spawn-Bfw10V7R.cjs'); });
194
194
  await handleSpawnCommand(args.slice(1));
195
195
  } catch (error) {
196
196
  failCommand(error);
@@ -198,7 +198,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
198
198
  return;
199
199
  } else if (subcommand === "account" || subcommand === "accounts") {
200
200
  try {
201
- const { handleAccountCommand } = await Promise.resolve().then(function () { return require('./account-DOil1Hn8.cjs'); });
201
+ const { handleAccountCommand } = await Promise.resolve().then(function () { return require('./account-Bexqa-vj.cjs'); });
202
202
  await handleAccountCommand(args.slice(1));
203
203
  } catch (error) {
204
204
  failCommand(error);
@@ -206,7 +206,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
206
206
  return exitAfterFlush.exitAfterFlush(process.exitCode ?? 0);
207
207
  } else if ((subcommand === "session" || subcommand === "sessions") && args[1] === "provider") {
208
208
  try {
209
- const { handleSessionProviderCommand } = await Promise.resolve().then(function () { return require('./sessionProvider-BpscgwwC.cjs'); });
209
+ const { handleSessionProviderCommand } = await Promise.resolve().then(function () { return require('./sessionProvider-DlWrak_l.cjs'); });
210
210
  await handleSessionProviderCommand(args.slice(2));
211
211
  } catch (error) {
212
212
  failCommand(error);
@@ -214,7 +214,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
214
214
  return exitAfterFlush.exitAfterFlush(process.exitCode ?? 0);
215
215
  } else if (subcommand === "sessions") {
216
216
  try {
217
- const { handleSessionsCommand } = await Promise.resolve().then(function () { return require('./sessions-7iyjxti9.cjs'); });
217
+ const { handleSessionsCommand } = await Promise.resolve().then(function () { return require('./sessions-Cr0jIQ9r.cjs'); });
218
218
  await handleSessionsCommand(args.slice(1));
219
219
  } catch (error) {
220
220
  failCommand(error);
@@ -222,7 +222,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
222
222
  return;
223
223
  } else if (subcommand === "send") {
224
224
  try {
225
- const { handleSendCommand } = await Promise.resolve().then(function () { return require('./send-CVSht9s_.cjs'); });
225
+ const { handleSendCommand } = await Promise.resolve().then(function () { return require('./send-CgIeqwqq.cjs'); });
226
226
  await handleSendCommand(args.slice(1));
227
227
  } catch (error) {
228
228
  failCommand(error);
@@ -230,14 +230,14 @@ Conversation history is preserved on the server, but in-flight tool calls are in
230
230
  return;
231
231
  } else if (subcommand === "resume") {
232
232
  try {
233
- await (await Promise.resolve().then(function () { return require('./handleResumeCommand-muSrYA5y.cjs'); })).handleResumeCommand(args.slice(1));
233
+ await (await Promise.resolve().then(function () { return require('./handleResumeCommand-CMLpVjkl.cjs'); })).handleResumeCommand(args.slice(1));
234
234
  } catch (error) {
235
235
  failCommand(error);
236
236
  }
237
237
  return;
238
238
  } else if (subcommand === "codex") {
239
239
  try {
240
- await (await Promise.resolve().then(function () { return require('./codexCommand-5nWT7F8A.cjs'); })).handleCodexCommand(args.slice(1));
240
+ await (await Promise.resolve().then(function () { return require('./codexCommand-BkF16_aL.cjs'); })).handleCodexCommand(args.slice(1));
241
241
  } catch (error) {
242
242
  failCommand(error);
243
243
  }
@@ -316,9 +316,9 @@ Conversation history is preserved on the server, but in-flight tool calls are in
316
316
  if (geminiSubcommand === "project" && args[2] === "set" && args[3]) {
317
317
  const projectId = args[3];
318
318
  try {
319
- const { saveGoogleCloudProjectToConfig } = await Promise.resolve().then(function () { return require('./config-B7YtrHi0.cjs'); });
320
- const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await Promise.resolve().then(function () { return require('./persistence-BiyvEYaR.cjs'); }).then(function (n) { return n.persistence; });
321
- const { ApiClient } = await Promise.resolve().then(function () { return require('./api-fuwEEEkT.cjs'); }).then(function (n) { return n.api; });
319
+ const { saveGoogleCloudProjectToConfig } = await Promise.resolve().then(function () { return require('./config-BklFo_Cs.cjs'); });
320
+ const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await Promise.resolve().then(function () { return require('./persistence-CWEaFv6R.cjs'); }).then(function (n) { return n.persistence; });
321
+ const { ApiClient } = await Promise.resolve().then(function () { return require('./api-CB3tLbbj.cjs'); }).then(function (n) { return n.api; });
322
322
  let userEmail = void 0;
323
323
  try {
324
324
  const credentials = await readCredentialsForConfiguredRelay2();
@@ -349,7 +349,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
349
349
  }
350
350
  if (geminiSubcommand === "project" && args[2] === "get") {
351
351
  try {
352
- const { readGeminiLocalConfig } = await Promise.resolve().then(function () { return require('./config-B7YtrHi0.cjs'); });
352
+ const { readGeminiLocalConfig } = await Promise.resolve().then(function () { return require('./config-BklFo_Cs.cjs'); });
353
353
  const config = readGeminiLocalConfig();
354
354
  if (config.googleCloudProject) {
355
355
  console.log(`Current Google Cloud Project: ${config.googleCloudProject}`);
@@ -389,7 +389,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
389
389
  process.exit(0);
390
390
  }
391
391
  try {
392
- const { runGemini } = await Promise.resolve().then(function () { return require('./runGemini-Da_d-2kV.cjs'); });
392
+ const { runGemini } = await Promise.resolve().then(function () { return require('./runGemini-Dob7MFa2.cjs'); });
393
393
  let startedBy = void 0;
394
394
  for (let i = 1; i < args.length; i++) {
395
395
  if (args[i] === "--started-by") {
@@ -408,7 +408,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
408
408
  } else if (subcommand === "pi") {
409
409
  if (args[1] === "--terminal") {
410
410
  try {
411
- const { runPiTerminal } = await Promise.resolve().then(function () { return require('./piTerminal-WPUtDJAV.cjs'); });
411
+ const { runPiTerminal } = await Promise.resolve().then(function () { return require('./piTerminal-DFzQb38E.cjs'); });
412
412
  process.exitCode = await runPiTerminal(args.slice(2));
413
413
  } catch (error) {
414
414
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
@@ -433,7 +433,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
433
433
  process.exit(1);
434
434
  }
435
435
  }
436
- const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-Dt_YE-zw.cjs'); });
436
+ const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-sXThJ-ic.cjs'); });
437
437
  const resolved = resolveAcpAgentConfig(["pi", ...parsed.passthrough]);
438
438
  const { credentials } = await auth.authAndSetupMachineIfNeeded();
439
439
  await ensureDaemonRunning.ensureDaemonRunning();
@@ -465,7 +465,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
465
465
  return;
466
466
  } else if (subcommand === "acp") {
467
467
  try {
468
- const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-Dt_YE-zw.cjs'); });
468
+ const { runAcp, resolveAcpAgentConfig } = await Promise.resolve().then(function () { return require('./index-sXThJ-ic.cjs'); });
469
469
  let startedBy = void 0;
470
470
  let verbose = false;
471
471
  const acpArgs = [];
@@ -501,7 +501,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
501
501
  return;
502
502
  } else if (subcommand === "openclaw") {
503
503
  try {
504
- const { runOpenClaw } = await Promise.resolve().then(function () { return require('./runOpenClaw-af5qDNU0.cjs'); });
504
+ const { runOpenClaw } = await Promise.resolve().then(function () { return require('./runOpenClaw-B-BGCcbD.cjs'); });
505
505
  let startedBy = void 0;
506
506
  let verbose = false;
507
507
  let gatewayUrl;
@@ -537,14 +537,14 @@ Conversation history is preserved on the server, but in-flight tool calls are in
537
537
  } else if (subcommand === "logout") {
538
538
  console.log(chalk.yellow('Note: "very-happy logout" is deprecated. Use "very-happy auth logout" instead.\n'));
539
539
  try {
540
- await (await Promise.resolve().then(function () { return require('./auth-tlMcvk2Y.cjs'); })).handleAuthCommand(["logout"]);
540
+ await (await Promise.resolve().then(function () { return require('./auth-BhM0lHLA.cjs'); })).handleAuthCommand(["logout"]);
541
541
  } catch (error) {
542
542
  failCommand(error);
543
543
  }
544
544
  return;
545
545
  } else if (subcommand === "todo") {
546
546
  try {
547
- const { handleTodoCommand } = await Promise.resolve().then(function () { return require('./todo-vCzaIwNp.cjs'); });
547
+ const { handleTodoCommand } = await Promise.resolve().then(function () { return require('./todo-CqD6H2Bt.cjs'); });
548
548
  await handleTodoCommand(args.slice(1));
549
549
  } catch (error) {
550
550
  console.error(JSON.stringify({ error: error instanceof Error ? error.message : "Todo command failed" }));
@@ -553,7 +553,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
553
553
  return;
554
554
  } else if (subcommand === "teams") {
555
555
  try {
556
- const { handleTeamsCommand } = await Promise.resolve().then(function () { return require('./teams-fFX-L_ms.cjs'); });
556
+ const { handleTeamsCommand } = await Promise.resolve().then(function () { return require('./teams-CqoSWbrQ.cjs'); });
557
557
  await handleTeamsCommand(args.slice(1));
558
558
  } catch (error) {
559
559
  console.error(error instanceof Error ? error.message : "Teams command failed");
@@ -562,7 +562,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
562
562
  return;
563
563
  } else if (subcommand === "auto") {
564
564
  try {
565
- const { handleAutoCommand } = await Promise.resolve().then(function () { return require('./auto-DNAa8xDZ.cjs'); });
565
+ const { handleAutoCommand } = await Promise.resolve().then(function () { return require('./auto-eimPZ4gm.cjs'); });
566
566
  await handleAutoCommand(args.slice(1));
567
567
  } catch (error) {
568
568
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Automation command failed");
@@ -574,7 +574,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
574
574
  return;
575
575
  } else if (subcommand === "mcp" && (args.length === 1 || args.length === 2 && args[1] === "--terminal-tools")) {
576
576
  try {
577
- const { handleMcpCommand } = await Promise.resolve().then(function () { return require('./mcp-D3yzLkh8.cjs'); });
577
+ const { handleMcpCommand } = await Promise.resolve().then(function () { return require('./mcp-BOS5msHd.cjs'); });
578
578
  await handleMcpCommand(args[1] === "--terminal-tools");
579
579
  } catch (error) {
580
580
  process.stderr.write(`[very-happy mcp] Fatal: ${error instanceof Error ? error.message : String(error)}
@@ -584,7 +584,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
584
584
  return;
585
585
  } else if (subcommand === "panels" || subcommand === "attention") {
586
586
  try {
587
- const { handlePanelsCommand, handleAttentionCommand } = await Promise.resolve().then(function () { return require('./panels-D59PlNoD.cjs'); });
587
+ const { handlePanelsCommand, handleAttentionCommand } = await Promise.resolve().then(function () { return require('./panels-DZZTavkP.cjs'); });
588
588
  if (subcommand === "panels") await handlePanelsCommand(args.slice(1));
589
589
  else await handleAttentionCommand(args.slice(1));
590
590
  } catch (error) {
@@ -683,13 +683,13 @@ Conversation history is preserved on the server, but in-flight tool calls are in
683
683
  }
684
684
  process.exit(0);
685
685
  } else if (daemonSubcommand === "start-sync") {
686
- await (await Promise.resolve().then(function () { return require('./run-D2SlfZPP.cjs'); })).startDaemon();
686
+ await (await Promise.resolve().then(function () { return require('./run-D0nDSvGo.cjs'); })).startDaemon();
687
687
  process.exit(0);
688
688
  } else if (daemonSubcommand === "stop") {
689
689
  await controlClient.stopDaemon();
690
690
  process.exit(0);
691
691
  } else if (daemonSubcommand === "status") {
692
- await (await Promise.resolve().then(function () { return require('./doctor-0gLGzwz6.cjs'); }).then(function (n) { return n.doctor; })).runDoctorDaemon();
692
+ await (await Promise.resolve().then(function () { return require('./doctor-DHK-5Hxm.cjs'); }).then(function (n) { return n.doctor; })).runDoctorDaemon();
693
693
  process.exit(0);
694
694
  } else if (daemonSubcommand === "logs") {
695
695
  const latest = await logger.getLatestDaemonLog();
@@ -701,14 +701,14 @@ Conversation history is preserved on the server, but in-flight tool calls are in
701
701
  process.exit(0);
702
702
  } else if (daemonSubcommand === "install") {
703
703
  try {
704
- await (await Promise.resolve().then(function () { return require('./install-BlW2kkPl.cjs'); })).install();
704
+ await (await Promise.resolve().then(function () { return require('./install-Cyb1ZsOO.cjs'); })).install();
705
705
  } catch (error) {
706
706
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
707
707
  process.exit(1);
708
708
  }
709
709
  } else if (daemonSubcommand === "uninstall") {
710
710
  try {
711
- await (await Promise.resolve().then(function () { return require('./uninstall-CIvThBvI.cjs'); })).uninstall();
711
+ await (await Promise.resolve().then(function () { return require('./uninstall-DHdOrwHT.cjs'); })).uninstall();
712
712
  } catch (error) {
713
713
  console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
714
714
  process.exit(1);
@@ -899,7 +899,7 @@ ${chalk.bold.cyan("Claude Code Options (from `claude --help`):")}
899
899
  await ensureDaemonRunning.ensureDaemonRunning();
900
900
  }
901
901
  try {
902
- const { runClaude } = await Promise.resolve().then(function () { return require('./runClaude-BE-5GgIZ.cjs'); });
902
+ const { runClaude } = await Promise.resolve().then(function () { return require('./runClaude-DHHDBtKG.cjs'); });
903
903
  await runClaude(credentials, options);
904
904
  } catch (error) {
905
905
  failCommand(error);
@@ -954,7 +954,7 @@ ${chalk.bold("Examples:")}
954
954
  }
955
955
  console.log(chalk.blue("\u{1F4F1} Sending push notification..."));
956
956
  try {
957
- const { ApiClient } = await Promise.resolve().then(function () { return require('./api-fuwEEEkT.cjs'); }).then(function (n) { return n.api; });
957
+ const { ApiClient } = await Promise.resolve().then(function () { return require('./api-CB3tLbbj.cjs'); }).then(function (n) { return n.api; });
958
958
  const api = await ApiClient.create(credentials);
959
959
  const notificationTitle = title || "Happy";
960
960
  api.push().sendToAllDevices(