very-happy-cli 0.2.191 → 0.2.193
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.
- package/dist/{AcpBackend-CCy_9AfR.mjs → AcpBackend-B4PwjqHt.mjs} +3 -3
- package/dist/{AcpBackend-DgrIc1vH.cjs → AcpBackend-DtJCgftG.cjs} +3 -3
- package/dist/{AcpSessionManager-CQnxx7gD.mjs → AcpSessionManager-BzKWgkdP.mjs} +2 -2
- package/dist/{AcpSessionManager-DVOzCD3P.cjs → AcpSessionManager-D4qshX_H.cjs} +2 -2
- package/dist/{BasePermissionHandler-C9Ag7yvs.cjs → BasePermissionHandler-5iG-cvA2.cjs} +1 -1
- package/dist/{BasePermissionHandler-DYLN6Ec9.mjs → BasePermissionHandler-DV6UM6e9.mjs} +1 -1
- package/dist/account-Dco_nGT4.mjs +297 -0
- package/dist/account-DvpA60oU.cjs +302 -0
- package/dist/accountService-Cd7bnkfd.mjs +916 -0
- package/dist/accountService-CuUSJDhP.cjs +921 -0
- package/dist/{acpSessionResume-TvP_4Zq2.cjs → acpSessionResume-Bk9mjXZ9.cjs} +1 -1
- package/dist/{acpSessionResume-Bi7pA1n_.mjs → acpSessionResume-TQwN9ZZE.mjs} +1 -1
- package/dist/{agentHome-DGv105SR.mjs → agentHome-Bep8semY.mjs} +4 -4
- package/dist/{agentHome-DNUKJWOY.cjs → agentHome-c2dlgcw1.cjs} +4 -4
- package/dist/{api-BBxZ7y2z.cjs → api-CBE_a88I.cjs} +10 -10
- package/dist/{api-jfeMRg5R.mjs → api-DUfunY3x.mjs} +10 -10
- package/dist/{apiMachine-DqyjKBZG.cjs → apiMachine-BqtG0IWm.cjs} +83 -27
- package/dist/{apiMachine-DRJ7y-BB.mjs → apiMachine-CU_bw5nV.mjs} +78 -22
- package/dist/{attachmentContent-BO2njyza.cjs → attachmentContent-B3AzuYqk.cjs} +2 -2
- package/dist/{attachmentContent-Dm_RIs5L.mjs → attachmentContent-KNIZxwlu.mjs} +2 -2
- package/dist/{auth-BYDtjVNb.mjs → auth-CZ7pKS-j.mjs} +8 -8
- package/dist/{auth-DnxoVkkf.cjs → auth-DCjxpI6Z.cjs} +5 -5
- package/dist/{auth-DLR3ksCF.cjs → auth-SJ_dPw7H.cjs} +8 -8
- package/dist/{auth-DC6rg8lJ.mjs → auth-jN5dNqTO.mjs} +5 -5
- package/dist/{auto-CwO0u8hB.cjs → auto-B_59RYH1.cjs} +23 -21
- package/dist/{auto-D5Jhukq1.mjs → auto-DC0Sq-qB.mjs} +23 -21
- package/dist/{bootstrap-rLaL3kTa.mjs → bootstrap-B3gMpU9e.mjs} +2 -2
- package/dist/{bootstrap-sly4qPPY.cjs → bootstrap-CoJu9VnB.cjs} +2 -2
- package/dist/{browser-CHpVgyni.mjs → browser-LHW2hBH8.mjs} +1 -1
- package/dist/{browser-BTgZ9d4i.cjs → browser-v1pdPP1E.cjs} +1 -1
- package/dist/claudeAccountEnv-BL1pR_37.mjs +133 -0
- package/dist/claudeAccountEnv-CEX_EMZr.cjs +138 -0
- package/dist/{claudeLocal-Bgb5GGsq.mjs → claudeLocal-BZUgA5G2.mjs} +5 -5
- package/dist/{claudeLocal-1vuTFcL8.cjs → claudeLocal-BrzM2RBI.cjs} +5 -5
- package/dist/{claudeLocalLauncher-T7EfT68h.mjs → claudeLocalLauncher-A0AQyHFi.mjs} +10 -10
- package/dist/{claudeLocalLauncher-DOsL6HFY.cjs → claudeLocalLauncher-XAMpXUM7.cjs} +10 -10
- package/dist/{claudeSessionFork-Cko4SaVi.cjs → claudeSessionFork-Mhn2fYe_.cjs} +1 -1
- package/dist/{claudeSessionFork-CPvi6yDX.mjs → claudeSessionFork-_GwIlmMB.mjs} +1 -1
- package/dist/{client-BXD66ZF5.mjs → client-7RnI9J0W.mjs} +2 -2
- package/dist/{client-Bi20Ka0h.mjs → client-Bde4QVIn.mjs} +4 -2
- package/dist/{client-C5-C0t2a.cjs → client-CJr8Pjwm.cjs} +4 -2
- package/dist/{client-BscskEBk.cjs → client-D2GWkd-T.cjs} +2 -2
- package/dist/{client-C-OdTbrU.cjs → client-DLlnmAPL.cjs} +4 -4
- package/dist/{client-Bh1aUPh-.mjs → client-DwbhrX6D.mjs} +4 -4
- package/dist/codex/happyMcpStdioBridge.cjs +16 -16
- package/dist/codex/happyMcpStdioBridge.mjs +16 -16
- package/dist/codexAccount-BDQjRbtI.cjs +1028 -0
- package/dist/codexAccount-NOX5pmQf.mjs +1015 -0
- package/dist/{codexAppServerClient-DXhAf6i-.mjs → codexAppServerClient-B3QJV6Ey.mjs} +18 -7
- package/dist/{codexAppServerClient-DKXeikEe.cjs → codexAppServerClient-DWEsZUC4.cjs} +18 -7
- package/dist/{codexCommand-DvbbpYBS.cjs → codexCommand-Bg8AmxVm.cjs} +195 -63
- package/dist/{codexCommand-CIaOiiOj.mjs → codexCommand-D1xlj4sT.mjs} +196 -64
- package/dist/{codexTermination-BszWfyk5.cjs → codexTermination-ByX9GcEJ.cjs} +1 -1
- package/dist/{codexTermination-BcQdEDaw.mjs → codexTermination-CaWAVQjZ.mjs} +1 -1
- package/dist/{config-Di3Cf6js.cjs → config-B2GGbiTv.cjs} +3 -3
- package/dist/{config-OCEcVVK1.mjs → config-C2XYEwXz.mjs} +3 -3
- package/dist/{configuration-DfPBa-9d.cjs → configuration-BBK0rmmj.cjs} +1 -1
- package/dist/{configuration-ECqXu34R.mjs → configuration-ThKBP_zY.mjs} +1 -1
- package/dist/{connect-BTfAUhk8.mjs → connect-BirnCl9q.mjs} +13 -13
- package/dist/{connect-BPQRuOw5.cjs → connect-C3tZs_NC.cjs} +13 -13
- package/dist/{context-CfgTFpCB.mjs → context-C0EFLnOg.mjs} +1 -1
- package/dist/{context-Co7hUaW-.cjs → context-wDp0aZBK.cjs} +1 -1
- package/dist/{controlClient-ClI7A0qE.mjs → controlClient-Ckl8N1MS.mjs} +14 -5
- package/dist/{controlClient-C13_pSKG.cjs → controlClient-DwWTns3A.cjs} +15 -4
- package/dist/{createSessionMetadata-Cf78KHtt.cjs → createSessionMetadata-DqZ6h02H.cjs} +2 -2
- package/dist/{createSessionMetadata-B0eT_Kfj.mjs → createSessionMetadata-vug4Cv8z.mjs} +2 -2
- package/dist/daemonAccounts-CpGDY_4k.cjs +54 -0
- package/dist/daemonAccounts-DwPwKxvv.mjs +30 -0
- package/dist/{defaultPermissionMode-oqTupStc.cjs → defaultPermissionMode-BakXiqRr.cjs} +1 -1
- package/dist/{defaultPermissionMode-m6z2QVyP.mjs → defaultPermissionMode-DF5AfeBb.mjs} +1 -1
- package/dist/{deterministicJson-BtSwbsok.mjs → deterministicJson-BzX94gi3.mjs} +13 -13
- package/dist/{deterministicJson-CpFFgUL_.cjs → deterministicJson-t33SsuRC.cjs} +13 -13
- package/dist/{doctor-BEU0_1Xv.cjs → doctor-B9ug1LZb.cjs} +7 -7
- package/dist/{doctor-lsxmAK4o.mjs → doctor-C1zyOSXw.mjs} +7 -7
- package/dist/{downloadTarget-BXqXhNF7.mjs → downloadTarget-Baslc6jW.mjs} +6 -6
- package/dist/{downloadTarget-CikzJv1h.cjs → downloadTarget-T1id2Gh6.cjs} +6 -6
- package/dist/{ensureDaemonRunning-B_9WAlbU.mjs → ensureDaemonRunning-C6ERYK-O.mjs} +5 -5
- package/dist/{ensureDaemonRunning-BUuH-pbE.cjs → ensureDaemonRunning-CoAg11Zi.cjs} +5 -5
- package/dist/{handleResumeCommand-BK9XKH_l.mjs → handleResumeCommand-CrlqDuz7.mjs} +5 -5
- package/dist/{handleResumeCommand-Dj7oi2KO.cjs → handleResumeCommand-DPi-sPm7.cjs} +5 -5
- package/dist/{index-D3c7CLot.cjs → index-B1swQJUS.cjs} +4 -4
- package/dist/{index-CmZusg8Q.cjs → index-B2dJA8VG.cjs} +3 -3
- package/dist/{index-CLUHaPU8.cjs → index-BUFrKZeQ.cjs} +205 -5
- package/dist/{index-BjZnpGWX.mjs → index-BbdV2mzy.mjs} +3 -3
- package/dist/{index-BdOJOZ6J.mjs → index-BcSPg3c5.mjs} +4 -4
- package/dist/{index-CauRYQKr.cjs → index-Bkslzin5.cjs} +44 -40
- package/dist/{index-DuK9XYbZ.mjs → index-Cn73rdtQ.mjs} +4 -4
- package/dist/{index-Bq8NKSCF.mjs → index-D1YnIih6.mjs} +195 -6
- package/dist/{index-Cxso1rg4.mjs → index-fZO4nF6e.mjs} +45 -41
- package/dist/{index-Dg2NAF_-.cjs → index-rocrvOYG.cjs} +4 -4
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{install-DXllkuy0.cjs → install-CArXjPfW.cjs} +3 -3
- package/dist/{install-DTIveLOS.mjs → install-CChhyV2G.mjs} +3 -3
- package/dist/lib.cjs +12 -12
- package/dist/lib.d.cts +354 -0
- package/dist/lib.d.mts +354 -0
- package/dist/lib.mjs +12 -12
- package/dist/{lidState-CD81ryTy.mjs → lidState-B6yYKjNK.mjs} +1 -1
- package/dist/{lidState-C9_DoF9i.cjs → lidState-B_v6qgfE.cjs} +1 -1
- package/dist/{localHappyAgentAuth-Cg-m1lwm.mjs → localHappyAgentAuth-KRlg_aI0.mjs} +1 -1
- package/dist/{localHappyAgentAuth-CCjUvOfi.cjs → localHappyAgentAuth-jJH0n67S.cjs} +1 -1
- package/dist/{logger-Ct2zvaq0.cjs → logger-CX3x2eI4.cjs} +2 -2
- package/dist/{logger-GcbI0eg2.mjs → logger-JV7-4Q_6.mjs} +2 -2
- package/dist/{machineMetadata-CXRmFNOV.mjs → machineMetadata-D5-SW9kv.mjs} +3 -3
- package/dist/{machineMetadata-DDCVWb_x.cjs → machineMetadata-DhZuM0iB.cjs} +3 -3
- package/dist/{main-BHC-WIcM.cjs → main-1x1HGQEy.cjs} +92 -48
- package/dist/{main-omGr_ONk.mjs → main-CFOdXbPD.mjs} +92 -48
- package/dist/{mcp-xUzii0m8.cjs → mcp-BnKBSEh7.cjs} +18 -15
- package/dist/{mcp-D5hxmRAq.mjs → mcp-R6lMcFLO.mjs} +18 -15
- package/dist/{mirrorProtocol-Lcx20Oby.mjs → mirrorProtocol-CD4ntuZJ.mjs} +3 -3
- package/dist/{mirrorProtocol-Dfl8Ahyf.cjs → mirrorProtocol-DO-KtvAL.cjs} +3 -3
- package/dist/{package-BsUHyqWe.mjs → package-Bw3H6VLn.mjs} +7 -7
- package/dist/{package-9n7wd2dT.cjs → package-uzlvxa5S.cjs} +7 -7
- package/dist/{panels-CpEKWWbI.mjs → panels-BamhZCoZ.mjs} +5 -5
- package/dist/{panels-BfknEmt7.cjs → panels-C46FxjmH.cjs} +5 -5
- package/dist/{peerTools-CElYh-5u.cjs → peerTools-D-VNNFw-.cjs} +5 -5
- package/dist/{peerTools-CwCe6tmJ.mjs → peerTools-WtRgTSqG.mjs} +5 -5
- package/dist/{persistence-Cpw4yJs8.mjs → persistence-Cg4sfjQV.mjs} +2 -2
- package/dist/{persistence-A2NeERZJ.cjs → persistence-CsmAgN-C.cjs} +2 -2
- package/dist/{piRunnerArgs-Bqmu16He.mjs → piRunnerArgs-BbaAQvb4.mjs} +2 -2
- package/dist/{piRunnerArgs-BnFU0K73.cjs → piRunnerArgs-vnFygygF.cjs} +1 -1
- package/dist/{piRuntime-Cgn1b0OX.mjs → piRuntime-Bid7TBf5.mjs} +1 -1
- package/dist/{piRuntime-DpS9TAIs.cjs → piRuntime-C2uj5Ucx.cjs} +1 -1
- package/dist/{piTerminal-rmve-VlI.cjs → piTerminal-Ckpjfoqa.cjs} +20 -17
- package/dist/{piTerminal-BGdps8f3.mjs → piTerminal-CqxgrI13.mjs} +20 -17
- package/dist/{pushNotifications-23YSd-0l.cjs → pushNotifications-BCg7YAiu.cjs} +5 -3
- package/dist/{pushNotifications-XAM8__Pg.mjs → pushNotifications-BbE-qV9I.mjs} +5 -3
- package/dist/{query-SZcYnJoW.mjs → query-Bfr9O_62.mjs} +1 -1
- package/dist/{query-u2GX-I0C.cjs → query-vQ-HG394.cjs} +1 -1
- package/dist/{rateLimitReporter-CaTzBe3x.cjs → rateLimitReporter-BZ8x0-6-.cjs} +3 -3
- package/dist/{rateLimitReporter-COUkf446.mjs → rateLimitReporter-CAz7VMw4.mjs} +3 -3
- package/dist/{rateLimitWindows-B2Kx6L0S.cjs → rateLimitWindows-BZl6GMwQ.cjs} +1 -1
- package/dist/{rateLimitWindows-j_qQk0KY.mjs → rateLimitWindows-CRARnKaI.mjs} +1 -1
- package/dist/reconnectEnv-B31lY4nR.cjs +27 -0
- package/dist/reconnectEnv-DeSvHl3q.mjs +24 -0
- package/dist/{registerCommonHandlers-D1MiSfcB.cjs → registerCommonHandlers-CZGmrPbT.cjs} +2 -2
- package/dist/{registerCommonHandlers-DRRfinzK.mjs → registerCommonHandlers-Cj3Nl9y-.mjs} +2 -2
- package/dist/{registerKillSessionHandler-Cpug_r5C.mjs → registerKillSessionHandler-Bg9t45Ub.mjs} +6 -6
- package/dist/{registerKillSessionHandler-hvCsEn7b.cjs → registerKillSessionHandler-C3EDnW4F.cjs} +6 -6
- package/dist/{remoteSessionClient-BdnJ_n8C.mjs → remoteSessionClient--0vfA7I5.mjs} +5 -5
- package/dist/{remoteSessionClient-6ymeMVa4.cjs → remoteSessionClient-CcSP24Zq.cjs} +5 -5
- package/dist/{reportProgressTool-XgQBzxoD.mjs → reportProgressTool-DVru7jc_.mjs} +3 -3
- package/dist/{reportProgressTool-tzQLCLIw.cjs → reportProgressTool-Ddg1yVq2.cjs} +3 -3
- package/dist/{run-DYL_wuj7.cjs → run-BTrIT_jU.cjs} +347 -856
- package/dist/{run-Bt0AklUU.mjs → run-HtvH6BLi.mjs} +346 -855
- package/dist/{runClaude-C3rii_S6.mjs → runClaude-DsHTk5Bu.mjs} +62 -44
- package/dist/{runClaude-CBEpYO4S.cjs → runClaude-ipjwAHPI.cjs} +62 -44
- package/dist/{runClaudeDeps-CYuozSC6.cjs → runClaudeDeps-BKpwL6ln.cjs} +51 -42
- package/dist/{runClaudeDeps-DlVfMG4F.mjs → runClaudeDeps-BV3vpeyY.mjs} +56 -47
- package/dist/{runGemini-CEI3b90u.cjs → runGemini-B-G0_7Ab.cjs} +33 -33
- package/dist/{runGemini-DkYhRk9S.mjs → runGemini-DhjK6_Fp.mjs} +33 -33
- package/dist/{runOpenClaw-DpprWCoz.mjs → runOpenClaw-B6lawk8n.mjs} +18 -18
- package/dist/{runOpenClaw-BgjD6E4d.cjs → runOpenClaw-BHIo8tkn.cjs} +18 -18
- package/dist/{sandbox-XCDUbH72.cjs → sandbox-BAsO0ILe.cjs} +4 -4
- package/dist/{sandbox-DJ7A7lsy.mjs → sandbox-CKb7pCXg.mjs} +4 -4
- package/dist/selfCheck-CZ-t1Xzq.mjs +88 -0
- package/dist/{selfCheck-BYUDB1Uq.cjs → selfCheck-D4VvVZNi.cjs} +39 -37
- package/dist/{send-CASDBCyJ.cjs → send-Cz5m39QR.cjs} +8 -8
- package/dist/{send-Ba63huxv.mjs → send-D8ipLKMY.mjs} +8 -8
- package/dist/{server-w3W0toNd.mjs → server-CjvgT3N9.mjs} +4 -4
- package/dist/{server-cZoV9XRt.cjs → server-CySyJKPH.cjs} +6 -6
- package/dist/{sessionLock-G2PMqvsh.mjs → sessionLock-B73fhgQN.mjs} +10 -4
- package/dist/{sessionLock-BmLA2S8K.cjs → sessionLock-DdDCuNUs.cjs} +10 -3
- package/dist/{sessionOps-DPw5k8vV.mjs → sessionOps-C65Iej_C.mjs} +50 -8
- package/dist/{sessionOps-DXlTmS7J.cjs → sessionOps-XSEjIqNq.cjs} +50 -8
- package/dist/sessionProvider-CLVNkfji.mjs +110 -0
- package/dist/sessionProvider-Dgsty8z_.cjs +115 -0
- package/dist/{sessionScanner-AHjnicxi.cjs → sessionScanner-D8IVXMMH.cjs} +3 -3
- package/dist/{sessionScanner-BCXpdZJN.mjs → sessionScanner-MW1P9Pm9.mjs} +3 -3
- package/dist/{sessions-BiBXOBx0.cjs → sessions-BKz7gZqg.cjs} +10 -10
- package/dist/{sessions-Clk8MR5Y.mjs → sessions-Dtk_agUL.mjs} +10 -10
- package/dist/{setupOfflineReconnection-DI-QZGYz.mjs → setupOfflineReconnection-Bvdy-2xd.mjs} +2 -2
- package/dist/{setupOfflineReconnection-BKLfOd-i.cjs → setupOfflineReconnection-DxMiW7OV.cjs} +2 -2
- package/dist/{spawn-D5omsx1Q.cjs → spawn-DiPkJcrQ.cjs} +36 -17
- package/dist/{spawn-4tsp1uhh.mjs → spawn-Dm4xsZBX.mjs} +36 -17
- package/dist/{spawnAgents-CtkkIFHd.cjs → spawnAgents-B9olJ8xn.cjs} +1 -1
- package/dist/{spawnAgents-CjoU6ZOS.mjs → spawnAgents-I29H9nO8.mjs} +1 -1
- package/dist/{spawnHappyCLI-CF_gLi92.cjs → spawnHappyCLI-BYGOUda1.cjs} +1 -1
- package/dist/{spawnHappyCLI-CIA9Sc_5.mjs → spawnHappyCLI-CnMwzjWX.mjs} +1 -1
- package/dist/{startFileWatcher-9Stpxe7p.cjs → startFileWatcher-D14W6gn-.cjs} +1 -1
- package/dist/{startFileWatcher-CDO6fb2m.mjs → startFileWatcher-DePAY1T5.mjs} +1 -1
- package/dist/{startupSessionCreate-BtR4iYEC.mjs → startupSessionCreate-DoK0IvJG.mjs} +3 -3
- package/dist/{startupSessionCreate-CcF7rGGB.cjs → startupSessionCreate-rBHd4tc1.cjs} +3 -3
- package/dist/store-CkNa6oj4.cjs +326 -0
- package/dist/store-Vej_738f.mjs +305 -0
- package/dist/{streamRelay-BhI6jqF-.cjs → streamRelay-C0G1HOOd.cjs} +1 -1
- package/dist/{streamRelay-DMwOMTKf.mjs → streamRelay-C5U-C4GS.mjs} +1 -1
- package/dist/{sync-C0PRuTMj.mjs → sync-BP6vnxVP.mjs} +1 -1
- package/dist/{sync-Ba8N6xba.cjs → sync-WYBwkJvG.cjs} +1 -1
- package/dist/{systemPrompt-DV5IReD4.cjs → systemPrompt-BkQlCk5_.cjs} +2 -2
- package/dist/{systemPrompt-D0q8eyjy.mjs → systemPrompt-aRqBmkpw.mjs} +2 -2
- package/dist/{teams-BO3_arwM.mjs → teams-CGmC4ygu.mjs} +7 -7
- package/dist/{teams-z3Gp-KlV.cjs → teams-phbpwAGD.cjs} +7 -7
- package/dist/{template-B_5l6pkc.cjs → template-B9pLEP8v.cjs} +2 -2
- package/dist/{template-DLR_0hfj.mjs → template-CL9EvQLQ.mjs} +2 -2
- package/dist/{time-Cy0a-7YX.cjs → time-BTLcO8jp.cjs} +1 -1
- package/dist/{time-D0jvDRhn.mjs → time-Cw0liIqB.mjs} +1 -1
- package/dist/{titleGenerator-RGHWP2YL.cjs → titleGenerator-Y1_7ceJC.cjs} +17 -13
- package/dist/{titleGenerator-AGQsXskb.mjs → titleGenerator-h6TmFe-c.mjs} +16 -12
- package/dist/{todo-CzIDPLFy.cjs → todo-BxiPiCvB.cjs} +6 -6
- package/dist/{todo-BZ954vsz.mjs → todo-OKcTC_VC.mjs} +6 -6
- package/dist/{tools-Bei5i03L.mjs → tools-BR-drXZ8.mjs} +3 -2
- package/dist/{tools-B1x1j6tz.cjs → tools-CcebYtLj.cjs} +3 -2
- package/dist/{uninstall-C3cnIvz1.cjs → uninstall-CnDeCC-M.cjs} +3 -3
- package/dist/{uninstall-B4T_e3Mr.mjs → uninstall-D3stWKD2.mjs} +3 -3
- package/dist/wrapperAccount-BkufO_9g.mjs +107 -0
- package/dist/wrapperAccount-D2A4DuZy.cjs +113 -0
- package/package.json +7 -7
- package/dist/providerBinding-B-Qbx9W2.cjs +0 -140
- package/dist/providerBinding-CYubGg-Z.mjs +0 -132
- package/dist/selfCheck-C-rNljKV.mjs +0 -86
- package/dist/sessionProvider-DUn91LhJ.mjs +0 -109
- package/dist/sessionProvider-Dg691XQ4.cjs +0 -114
|
@@ -1,21 +1,23 @@
|
|
|
1
1
|
import{createRequire as _pkgrollCR}from"node:module";const require=_pkgrollCR(import.meta.url);import chalk from 'chalk';
|
|
2
|
-
import { l as logger, g as getLatestDaemonLog } from './logger-
|
|
3
|
-
import { d as readDaemonState, r as readSettings, b as readCredentialsForConfiguredRelay } from './persistence-
|
|
4
|
-
import { a as authAndSetupMachineIfNeeded } from './auth-
|
|
5
|
-
import { p as packageJson } from './package-
|
|
2
|
+
import { l as logger, g as getLatestDaemonLog } from './logger-JV7-4Q_6.mjs';
|
|
3
|
+
import { d as readDaemonState, r as readSettings, b as readCredentialsForConfiguredRelay } from './persistence-Cg4sfjQV.mjs';
|
|
4
|
+
import { a as authAndSetupMachineIfNeeded } from './auth-jN5dNqTO.mjs';
|
|
5
|
+
import { p as packageJson } from './package-Bw3H6VLn.mjs';
|
|
6
6
|
import { z } from 'zod';
|
|
7
|
-
import {
|
|
7
|
+
import { m as listDaemonSessionsWithInfo, h as stopDaemonSession, b as checkIfDaemonRunningAndCleanupStaleState, s as stopDaemon } from './controlClient-Ckl8N1MS.mjs';
|
|
8
8
|
import { S as SYSTEMD_RESTART_HINT, k as kickstartLaunchdJob } from './daemonSupervisor-BxohggqN.mjs';
|
|
9
|
-
import {
|
|
9
|
+
import { c as compareExactVersions } from './cliUpdate-Y34VGe9Y.mjs';
|
|
10
|
+
import { s as spawnHappyCLI } from './spawnHappyCLI-CnMwzjWX.mjs';
|
|
10
11
|
import { execFileSync } from 'node:child_process';
|
|
11
|
-
import { e as ensureDaemonRunning, a as extractNoSandboxFlag } from './ensureDaemonRunning-
|
|
12
|
+
import { e as ensureDaemonRunning, a as extractNoSandboxFlag } from './ensureDaemonRunning-C6ERYK-O.mjs';
|
|
12
13
|
import { p as planClaudeStartup } from './startupPlan-DFMyNgAs.mjs';
|
|
13
|
-
import { i as isStandaloneVersionRequest } from './index-
|
|
14
|
-
import { c as configuration } from './configuration-
|
|
14
|
+
import { i as isStandaloneVersionRequest } from './index-BbdV2mzy.mjs';
|
|
15
|
+
import { c as configuration } from './configuration-ThKBP_zY.mjs';
|
|
15
16
|
import { d as daemonEndpointsMatch } from './doctorReadiness-C208SMN9.mjs';
|
|
16
|
-
import {
|
|
17
|
+
import { a as parsePiRunnerArgs, m as missingPiPrerequisites, b as piSetupMessage, c as piAdapterMissingHint } from './piRunnerArgs-BbaAQvb4.mjs';
|
|
17
18
|
import { c as commandOnPath } from './detectCLI-CSGMlV51.mjs';
|
|
18
19
|
import { e as exitAfterFlush } from './exitAfterFlush-AbKNZM0N.mjs';
|
|
20
|
+
import { s as stashReconnectEnv } from './reconnectEnv-DeSvHl3q.mjs';
|
|
19
21
|
import 'node:util';
|
|
20
22
|
import 'node:fs';
|
|
21
23
|
import 'node:path';
|
|
@@ -24,8 +26,8 @@ import './authRelay-DhQhkBvX.mjs';
|
|
|
24
26
|
import 'node:crypto';
|
|
25
27
|
import 'tweetnacl';
|
|
26
28
|
import 'axios';
|
|
27
|
-
import './time-
|
|
28
|
-
import './browser-
|
|
29
|
+
import './time-Cw0liIqB.mjs';
|
|
30
|
+
import './browser-LHW2hBH8.mjs';
|
|
29
31
|
import 'open';
|
|
30
32
|
import 'node:module';
|
|
31
33
|
import 'node:os';
|
|
@@ -33,11 +35,36 @@ import 'cross-spawn';
|
|
|
33
35
|
import './projectPath-BTBIMB57.mjs';
|
|
34
36
|
import 'path';
|
|
35
37
|
import 'url';
|
|
36
|
-
import './acpSessionResume-
|
|
38
|
+
import './acpSessionResume-TQwN9ZZE.mjs';
|
|
37
39
|
import 'child_process';
|
|
38
40
|
import 'os';
|
|
39
41
|
import 'fs';
|
|
40
42
|
|
|
43
|
+
function autoRestartLabel(session, daemon, formatTime = defaultTime) {
|
|
44
|
+
const status = session.autoRestart;
|
|
45
|
+
if (status === void 0) return "auto-restart: unknown (daemon does not report it)";
|
|
46
|
+
if (status) {
|
|
47
|
+
const details = [status.reason, status.offline ? "offline" : null, status.retryAt ? `retry ${formatTime(status.retryAt)}` : null].filter((part) => !!part);
|
|
48
|
+
return `auto-restart: ${status.state}${details.length ? ` (${details.join(", ")})` : ""} \u2192 ${status.target}`;
|
|
49
|
+
}
|
|
50
|
+
const behind = !!daemon && !!session.cliVersion && (compareExactVersions(session.cliVersion, daemon.version) ?? 0) < 0;
|
|
51
|
+
if (!behind) return "current";
|
|
52
|
+
return daemon.autoRestartEnabled ? "behind (not evaluated yet)" : "behind (auto-restart off)";
|
|
53
|
+
}
|
|
54
|
+
function formatDaemonList(sessions, daemon, formatTime) {
|
|
55
|
+
const lines = [];
|
|
56
|
+
if (daemon) {
|
|
57
|
+
lines.push(`Daemon ${daemon.version} \xB7 auto-restart ${daemon.autoRestartEnabled ? "on" : "off"}${daemon.upgradePending ? ` \xB7 upgrade pending (${daemon.upgradePending}): automatic restarts wait for the new daemon` : ""}`);
|
|
58
|
+
}
|
|
59
|
+
for (const session of sessions) {
|
|
60
|
+
lines.push(` ${session.happySessionId} pid ${session.pid} cli ${session.cliVersion ?? "?"} ${autoRestartLabel(session, daemon, formatTime)}`);
|
|
61
|
+
}
|
|
62
|
+
return lines;
|
|
63
|
+
}
|
|
64
|
+
function defaultTime(ms) {
|
|
65
|
+
return new Date(ms).toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" });
|
|
66
|
+
}
|
|
67
|
+
|
|
41
68
|
const DAEMON_STOP_HELP = "Stop the daemon (tmux sessions stay alive; direct-shell terminals end)";
|
|
42
69
|
const CLAUDE_OPTIONS_HELP = `Very Happy forwards most Claude options.
|
|
43
70
|
Use Claude flags with very-happy as you would with claude. The --settings flag
|
|
@@ -62,6 +89,7 @@ function oneLine(value) {
|
|
|
62
89
|
}
|
|
63
90
|
|
|
64
91
|
async function main() {
|
|
92
|
+
stashReconnectEnv();
|
|
65
93
|
const args = process.argv.slice(2);
|
|
66
94
|
if (isStandaloneVersionRequest(args)) {
|
|
67
95
|
console.log(`very-happy version: ${packageJson.version}`);
|
|
@@ -94,32 +122,32 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
94
122
|
}
|
|
95
123
|
process.exit(0);
|
|
96
124
|
}
|
|
97
|
-
await (await import('./doctor-
|
|
125
|
+
await (await import('./doctor-C1zyOSXw.mjs').then(function (n) { return n.d; })).runDoctorCommand();
|
|
98
126
|
return;
|
|
99
127
|
} else if (subcommand === "auth") {
|
|
100
128
|
try {
|
|
101
|
-
await (await import('./auth-
|
|
129
|
+
await (await import('./auth-CZ7pKS-j.mjs')).handleAuthCommand(args.slice(1));
|
|
102
130
|
} catch (error) {
|
|
103
131
|
failCommand(error);
|
|
104
132
|
}
|
|
105
133
|
return;
|
|
106
134
|
} else if (subcommand === "connect") {
|
|
107
135
|
try {
|
|
108
|
-
await (await import('./connect-
|
|
136
|
+
await (await import('./connect-BirnCl9q.mjs')).handleConnectCommand(args.slice(1));
|
|
109
137
|
} catch (error) {
|
|
110
138
|
failCommand(error);
|
|
111
139
|
}
|
|
112
140
|
return;
|
|
113
141
|
} else if (subcommand === "sandbox") {
|
|
114
142
|
try {
|
|
115
|
-
await (await import('./sandbox-
|
|
143
|
+
await (await import('./sandbox-CKb7pCXg.mjs')).handleSandboxCommand(args.slice(1));
|
|
116
144
|
} catch (error) {
|
|
117
145
|
failCommand(error);
|
|
118
146
|
}
|
|
119
147
|
return;
|
|
120
148
|
} else if (subcommand === "server") {
|
|
121
149
|
try {
|
|
122
|
-
await (await import('./server-
|
|
150
|
+
await (await import('./server-CjvgT3N9.mjs')).handleServerCommand(args.slice(1));
|
|
123
151
|
} catch (error) {
|
|
124
152
|
failCommand(error);
|
|
125
153
|
}
|
|
@@ -151,7 +179,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
151
179
|
}
|
|
152
180
|
} else if (subcommand === "agent-home") {
|
|
153
181
|
try {
|
|
154
|
-
const { parseAgentHomeArgs, runAgentHomeCommand } = await import('./agentHome-
|
|
182
|
+
const { parseAgentHomeArgs, runAgentHomeCommand } = await import('./agentHome-Bep8semY.mjs');
|
|
155
183
|
await runAgentHomeCommand(parseAgentHomeArgs(args.slice(1)));
|
|
156
184
|
process.exit(0);
|
|
157
185
|
} catch (error) {
|
|
@@ -160,15 +188,23 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
160
188
|
}
|
|
161
189
|
} else if (subcommand === "spawn") {
|
|
162
190
|
try {
|
|
163
|
-
const { handleSpawnCommand } = await import('./spawn-
|
|
191
|
+
const { handleSpawnCommand } = await import('./spawn-Dm4xsZBX.mjs');
|
|
164
192
|
await handleSpawnCommand(args.slice(1));
|
|
165
193
|
} catch (error) {
|
|
166
194
|
failCommand(error);
|
|
167
195
|
}
|
|
168
196
|
return;
|
|
197
|
+
} else if (subcommand === "account" || subcommand === "accounts") {
|
|
198
|
+
try {
|
|
199
|
+
const { handleAccountCommand } = await import('./account-Dco_nGT4.mjs');
|
|
200
|
+
await handleAccountCommand(args.slice(1));
|
|
201
|
+
} catch (error) {
|
|
202
|
+
failCommand(error);
|
|
203
|
+
}
|
|
204
|
+
return exitAfterFlush(process.exitCode ?? 0);
|
|
169
205
|
} else if ((subcommand === "session" || subcommand === "sessions") && args[1] === "provider") {
|
|
170
206
|
try {
|
|
171
|
-
const { handleSessionProviderCommand } = await import('./sessionProvider-
|
|
207
|
+
const { handleSessionProviderCommand } = await import('./sessionProvider-CLVNkfji.mjs');
|
|
172
208
|
await handleSessionProviderCommand(args.slice(2));
|
|
173
209
|
} catch (error) {
|
|
174
210
|
failCommand(error);
|
|
@@ -176,7 +212,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
176
212
|
return exitAfterFlush(process.exitCode ?? 0);
|
|
177
213
|
} else if (subcommand === "sessions") {
|
|
178
214
|
try {
|
|
179
|
-
const { handleSessionsCommand } = await import('./sessions-
|
|
215
|
+
const { handleSessionsCommand } = await import('./sessions-Dtk_agUL.mjs');
|
|
180
216
|
await handleSessionsCommand(args.slice(1));
|
|
181
217
|
} catch (error) {
|
|
182
218
|
failCommand(error);
|
|
@@ -184,7 +220,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
184
220
|
return;
|
|
185
221
|
} else if (subcommand === "send") {
|
|
186
222
|
try {
|
|
187
|
-
const { handleSendCommand } = await import('./send-
|
|
223
|
+
const { handleSendCommand } = await import('./send-D8ipLKMY.mjs');
|
|
188
224
|
await handleSendCommand(args.slice(1));
|
|
189
225
|
} catch (error) {
|
|
190
226
|
failCommand(error);
|
|
@@ -192,14 +228,14 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
192
228
|
return;
|
|
193
229
|
} else if (subcommand === "resume") {
|
|
194
230
|
try {
|
|
195
|
-
await (await import('./handleResumeCommand-
|
|
231
|
+
await (await import('./handleResumeCommand-CrlqDuz7.mjs')).handleResumeCommand(args.slice(1));
|
|
196
232
|
} catch (error) {
|
|
197
233
|
failCommand(error);
|
|
198
234
|
}
|
|
199
235
|
return;
|
|
200
236
|
} else if (subcommand === "codex") {
|
|
201
237
|
try {
|
|
202
|
-
await (await import('./codexCommand-
|
|
238
|
+
await (await import('./codexCommand-D1xlj4sT.mjs')).handleCodexCommand(args.slice(1));
|
|
203
239
|
} catch (error) {
|
|
204
240
|
failCommand(error);
|
|
205
241
|
}
|
|
@@ -278,9 +314,9 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
278
314
|
if (geminiSubcommand === "project" && args[2] === "set" && args[3]) {
|
|
279
315
|
const projectId = args[3];
|
|
280
316
|
try {
|
|
281
|
-
const { saveGoogleCloudProjectToConfig } = await import('./config-
|
|
282
|
-
const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await import('./persistence-
|
|
283
|
-
const { ApiClient } = await import('./api-
|
|
317
|
+
const { saveGoogleCloudProjectToConfig } = await import('./config-C2XYEwXz.mjs');
|
|
318
|
+
const { readCredentialsForConfiguredRelay: readCredentialsForConfiguredRelay2 } = await import('./persistence-Cg4sfjQV.mjs').then(function (n) { return n.G; });
|
|
319
|
+
const { ApiClient } = await import('./api-DUfunY3x.mjs').then(function (n) { return n.e; });
|
|
284
320
|
let userEmail = void 0;
|
|
285
321
|
try {
|
|
286
322
|
const credentials = await readCredentialsForConfiguredRelay2();
|
|
@@ -311,7 +347,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
311
347
|
}
|
|
312
348
|
if (geminiSubcommand === "project" && args[2] === "get") {
|
|
313
349
|
try {
|
|
314
|
-
const { readGeminiLocalConfig } = await import('./config-
|
|
350
|
+
const { readGeminiLocalConfig } = await import('./config-C2XYEwXz.mjs');
|
|
315
351
|
const config = readGeminiLocalConfig();
|
|
316
352
|
if (config.googleCloudProject) {
|
|
317
353
|
console.log(`Current Google Cloud Project: ${config.googleCloudProject}`);
|
|
@@ -351,7 +387,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
351
387
|
process.exit(0);
|
|
352
388
|
}
|
|
353
389
|
try {
|
|
354
|
-
const { runGemini } = await import('./runGemini-
|
|
390
|
+
const { runGemini } = await import('./runGemini-DhjK6_Fp.mjs');
|
|
355
391
|
let startedBy = void 0;
|
|
356
392
|
for (let i = 1; i < args.length; i++) {
|
|
357
393
|
if (args[i] === "--started-by") {
|
|
@@ -370,7 +406,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
370
406
|
} else if (subcommand === "pi") {
|
|
371
407
|
if (args[1] === "--terminal") {
|
|
372
408
|
try {
|
|
373
|
-
const { runPiTerminal } = await import('./piTerminal-
|
|
409
|
+
const { runPiTerminal } = await import('./piTerminal-CqxgrI13.mjs');
|
|
374
410
|
process.exitCode = await runPiTerminal(args.slice(2));
|
|
375
411
|
} catch (error) {
|
|
376
412
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
|
|
@@ -395,7 +431,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
395
431
|
process.exit(1);
|
|
396
432
|
}
|
|
397
433
|
}
|
|
398
|
-
const { runAcp, resolveAcpAgentConfig } = await import('./index-
|
|
434
|
+
const { runAcp, resolveAcpAgentConfig } = await import('./index-fZO4nF6e.mjs');
|
|
399
435
|
const resolved = resolveAcpAgentConfig(["pi", ...parsed.passthrough]);
|
|
400
436
|
const { credentials } = await authAndSetupMachineIfNeeded();
|
|
401
437
|
await ensureDaemonRunning();
|
|
@@ -427,7 +463,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
427
463
|
return;
|
|
428
464
|
} else if (subcommand === "acp") {
|
|
429
465
|
try {
|
|
430
|
-
const { runAcp, resolveAcpAgentConfig } = await import('./index-
|
|
466
|
+
const { runAcp, resolveAcpAgentConfig } = await import('./index-fZO4nF6e.mjs');
|
|
431
467
|
let startedBy = void 0;
|
|
432
468
|
let verbose = false;
|
|
433
469
|
const acpArgs = [];
|
|
@@ -463,7 +499,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
463
499
|
return;
|
|
464
500
|
} else if (subcommand === "openclaw") {
|
|
465
501
|
try {
|
|
466
|
-
const { runOpenClaw } = await import('./runOpenClaw-
|
|
502
|
+
const { runOpenClaw } = await import('./runOpenClaw-B6lawk8n.mjs');
|
|
467
503
|
let startedBy = void 0;
|
|
468
504
|
let verbose = false;
|
|
469
505
|
let gatewayUrl;
|
|
@@ -499,14 +535,14 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
499
535
|
} else if (subcommand === "logout") {
|
|
500
536
|
console.log(chalk.yellow('Note: "very-happy logout" is deprecated. Use "very-happy auth logout" instead.\n'));
|
|
501
537
|
try {
|
|
502
|
-
await (await import('./auth-
|
|
538
|
+
await (await import('./auth-CZ7pKS-j.mjs')).handleAuthCommand(["logout"]);
|
|
503
539
|
} catch (error) {
|
|
504
540
|
failCommand(error);
|
|
505
541
|
}
|
|
506
542
|
return;
|
|
507
543
|
} else if (subcommand === "todo") {
|
|
508
544
|
try {
|
|
509
|
-
const { handleTodoCommand } = await import('./todo-
|
|
545
|
+
const { handleTodoCommand } = await import('./todo-OKcTC_VC.mjs');
|
|
510
546
|
await handleTodoCommand(args.slice(1));
|
|
511
547
|
} catch (error) {
|
|
512
548
|
console.error(JSON.stringify({ error: error instanceof Error ? error.message : "Todo command failed" }));
|
|
@@ -515,7 +551,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
515
551
|
return;
|
|
516
552
|
} else if (subcommand === "teams") {
|
|
517
553
|
try {
|
|
518
|
-
const { handleTeamsCommand } = await import('./teams-
|
|
554
|
+
const { handleTeamsCommand } = await import('./teams-CGmC4ygu.mjs');
|
|
519
555
|
await handleTeamsCommand(args.slice(1));
|
|
520
556
|
} catch (error) {
|
|
521
557
|
console.error(error instanceof Error ? error.message : "Teams command failed");
|
|
@@ -524,7 +560,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
524
560
|
return;
|
|
525
561
|
} else if (subcommand === "auto") {
|
|
526
562
|
try {
|
|
527
|
-
const { handleAutoCommand } = await import('./auto-
|
|
563
|
+
const { handleAutoCommand } = await import('./auto-DC0Sq-qB.mjs');
|
|
528
564
|
await handleAutoCommand(args.slice(1));
|
|
529
565
|
} catch (error) {
|
|
530
566
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Automation command failed");
|
|
@@ -536,7 +572,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
536
572
|
return;
|
|
537
573
|
} else if (subcommand === "mcp" && (args.length === 1 || args.length === 2 && args[1] === "--terminal-tools")) {
|
|
538
574
|
try {
|
|
539
|
-
const { handleMcpCommand } = await import('./mcp-
|
|
575
|
+
const { handleMcpCommand } = await import('./mcp-R6lMcFLO.mjs');
|
|
540
576
|
await handleMcpCommand(args[1] === "--terminal-tools");
|
|
541
577
|
} catch (error) {
|
|
542
578
|
process.stderr.write(`[very-happy mcp] Fatal: ${error instanceof Error ? error.message : String(error)}
|
|
@@ -546,7 +582,7 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
546
582
|
return;
|
|
547
583
|
} else if (subcommand === "panels" || subcommand === "attention") {
|
|
548
584
|
try {
|
|
549
|
-
const { handlePanelsCommand, handleAttentionCommand } = await import('./panels-
|
|
585
|
+
const { handlePanelsCommand, handleAttentionCommand } = await import('./panels-BamhZCoZ.mjs');
|
|
550
586
|
if (subcommand === "panels") await handlePanelsCommand(args.slice(1));
|
|
551
587
|
else await handleAttentionCommand(args.slice(1));
|
|
552
588
|
} catch (error) {
|
|
@@ -565,7 +601,11 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
565
601
|
const daemonSubcommand = args[1];
|
|
566
602
|
if (daemonSubcommand === "list") {
|
|
567
603
|
try {
|
|
568
|
-
const sessions = await
|
|
604
|
+
const { children: sessions, daemon } = await listDaemonSessionsWithInfo();
|
|
605
|
+
if (args.includes("--json")) {
|
|
606
|
+
console.log(JSON.stringify({ daemon: daemon ?? null, sessions }, null, 2));
|
|
607
|
+
return;
|
|
608
|
+
}
|
|
569
609
|
if (sessions.length === 0) {
|
|
570
610
|
console.log("No active sessions this daemon is aware of (they might have been started by a previous version of the daemon)");
|
|
571
611
|
} else {
|
|
@@ -575,6 +615,8 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
575
615
|
console.log(busy.length === 0 ? "No turn in flight on this machine (wrappers older than 0.2.139 do not report turns)." : `${busy.length} session(s) with a turn in flight: ${busy.map((s) => s.happySessionId).join(", ")}`);
|
|
576
616
|
const background = sessions.filter((s) => (s.backgroundTasks?.count ?? 0) > 0);
|
|
577
617
|
console.log(background.length === 0 ? "No background tasks in flight (wrappers older than 0.2.157 do not report them)." : `${background.length} session(s) with background tasks in flight: ${background.map((s) => `${s.happySessionId} (${s.backgroundTasks?.count})`).join(", ")}`);
|
|
618
|
+
console.log("CLI version / auto-restart per session:");
|
|
619
|
+
for (const line of formatDaemonList(sessions, daemon)) console.log(line);
|
|
578
620
|
}
|
|
579
621
|
} catch (error) {
|
|
580
622
|
console.log("No daemon running");
|
|
@@ -639,13 +681,13 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
639
681
|
}
|
|
640
682
|
process.exit(0);
|
|
641
683
|
} else if (daemonSubcommand === "start-sync") {
|
|
642
|
-
await (await import('./run-
|
|
684
|
+
await (await import('./run-HtvH6BLi.mjs')).startDaemon();
|
|
643
685
|
process.exit(0);
|
|
644
686
|
} else if (daemonSubcommand === "stop") {
|
|
645
687
|
await stopDaemon();
|
|
646
688
|
process.exit(0);
|
|
647
689
|
} else if (daemonSubcommand === "status") {
|
|
648
|
-
await (await import('./doctor-
|
|
690
|
+
await (await import('./doctor-C1zyOSXw.mjs').then(function (n) { return n.d; })).runDoctorDaemon();
|
|
649
691
|
process.exit(0);
|
|
650
692
|
} else if (daemonSubcommand === "logs") {
|
|
651
693
|
const latest = await getLatestDaemonLog();
|
|
@@ -657,14 +699,14 @@ Conversation history is preserved on the server, but in-flight tool calls are in
|
|
|
657
699
|
process.exit(0);
|
|
658
700
|
} else if (daemonSubcommand === "install") {
|
|
659
701
|
try {
|
|
660
|
-
await (await import('./install-
|
|
702
|
+
await (await import('./install-CChhyV2G.mjs')).install();
|
|
661
703
|
} catch (error) {
|
|
662
704
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
|
|
663
705
|
process.exit(1);
|
|
664
706
|
}
|
|
665
707
|
} else if (daemonSubcommand === "uninstall") {
|
|
666
708
|
try {
|
|
667
|
-
await (await import('./uninstall-
|
|
709
|
+
await (await import('./uninstall-D3stWKD2.mjs')).uninstall();
|
|
668
710
|
} catch (error) {
|
|
669
711
|
console.error(chalk.red("Error:"), error instanceof Error ? error.message : "Unknown error");
|
|
670
712
|
process.exit(1);
|
|
@@ -677,7 +719,7 @@ ${chalk.bold("Usage:")}
|
|
|
677
719
|
very-happy daemon start Start the daemon (detached)
|
|
678
720
|
very-happy daemon stop ${DAEMON_STOP_HELP}
|
|
679
721
|
very-happy daemon status Show daemon status
|
|
680
|
-
very-happy daemon list
|
|
722
|
+
very-happy daemon list [--json] List active sessions (CLI version, auto-restart status)
|
|
681
723
|
|
|
682
724
|
If you want to kill all happy related processes run
|
|
683
725
|
${chalk.cyan("very-happy doctor clean")}
|
|
@@ -775,6 +817,8 @@ ${chalk.bold("Usage:")}
|
|
|
775
817
|
very-happy sessions List, read, stop, archive, approve or deny
|
|
776
818
|
sessions and their permission requests (for
|
|
777
819
|
automation; see sessions --help)
|
|
820
|
+
very-happy account This machine's Claude accounts (subscription
|
|
821
|
+
orgs, API keys) for per-session use (see account --help)
|
|
778
822
|
very-happy codex Start Codex mode
|
|
779
823
|
very-happy gemini Start Gemini mode (ACP)
|
|
780
824
|
very-happy pi Start pi mode (ACP via the pi-acp adapter)
|
|
@@ -853,7 +897,7 @@ ${chalk.bold.cyan("Claude Code Options (from `claude --help`):")}
|
|
|
853
897
|
await ensureDaemonRunning();
|
|
854
898
|
}
|
|
855
899
|
try {
|
|
856
|
-
const { runClaude } = await import('./runClaude-
|
|
900
|
+
const { runClaude } = await import('./runClaude-DsHTk5Bu.mjs');
|
|
857
901
|
await runClaude(credentials, options);
|
|
858
902
|
} catch (error) {
|
|
859
903
|
failCommand(error);
|
|
@@ -908,7 +952,7 @@ ${chalk.bold("Examples:")}
|
|
|
908
952
|
}
|
|
909
953
|
console.log(chalk.blue("\u{1F4F1} Sending push notification..."));
|
|
910
954
|
try {
|
|
911
|
-
const { ApiClient } = await import('./api-
|
|
955
|
+
const { ApiClient } = await import('./api-DUfunY3x.mjs').then(function (n) { return n.e; });
|
|
912
956
|
const api = await ApiClient.create(credentials);
|
|
913
957
|
const notificationTitle = title || "Happy";
|
|
914
958
|
api.push().sendToAllDevices(
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var tools = require('./tools-
|
|
3
|
+
var tools = require('./tools-CcebYtLj.cjs');
|
|
4
4
|
var mcp_js = require('@modelcontextprotocol/sdk/server/mcp.js');
|
|
5
5
|
var stdio_js = require('@modelcontextprotocol/sdk/server/stdio.js');
|
|
6
6
|
var z = require('zod');
|
|
7
|
-
var controlClient = require('./controlClient-
|
|
7
|
+
var controlClient = require('./controlClient-DwWTns3A.cjs');
|
|
8
8
|
var limits = require('./limits-C-a7gr04.cjs');
|
|
9
|
-
var downloadTarget = require('./downloadTarget-
|
|
10
|
-
var logger = require('./logger-
|
|
9
|
+
var downloadTarget = require('./downloadTarget-T1id2Gh6.cjs');
|
|
10
|
+
var logger = require('./logger-CX3x2eI4.cjs');
|
|
11
11
|
var previewPath = require('./previewPath-B0rBdhy1.cjs');
|
|
12
12
|
var agentGuidance = require('./agentGuidance-BtBx2xxE.cjs');
|
|
13
13
|
require('node:fs/promises');
|
|
14
14
|
require('node:os');
|
|
15
|
-
require('./persistence-
|
|
16
|
-
require('./configuration-
|
|
15
|
+
require('./persistence-CsmAgN-C.cjs');
|
|
16
|
+
require('./configuration-BBK0rmmj.cjs');
|
|
17
17
|
require('node:crypto');
|
|
18
18
|
require('axios');
|
|
19
19
|
require('tweetnacl');
|
|
@@ -23,30 +23,33 @@ require('./terminals-B_bfC9c2.cjs');
|
|
|
23
23
|
require('node:fs');
|
|
24
24
|
require('node:path');
|
|
25
25
|
var terminalTitleSuggest = require('./terminalTitleSuggest-DhvRFX3H.cjs');
|
|
26
|
-
var titleGenerator = require('./titleGenerator-
|
|
26
|
+
var titleGenerator = require('./titleGenerator-Y1_7ceJC.cjs');
|
|
27
27
|
var terminalToolContext = require('./terminalToolContext-DoV9Gs7K.cjs');
|
|
28
|
-
require('./client-
|
|
28
|
+
require('./client-DLlnmAPL.cjs');
|
|
29
29
|
require('node:util');
|
|
30
|
-
require('./index-
|
|
30
|
+
require('./index-BUFrKZeQ.cjs');
|
|
31
31
|
require('@paralleldrive/cuid2');
|
|
32
|
-
require('./context-
|
|
33
|
-
require('./sessionOps-
|
|
32
|
+
require('./context-wDp0aZBK.cjs');
|
|
33
|
+
require('./sessionOps-XSEjIqNq.cjs');
|
|
34
34
|
require('./authRelay-Dy1qU9td.cjs');
|
|
35
|
-
require('./time-
|
|
35
|
+
require('./time-BTLcO8jp.cjs');
|
|
36
36
|
require('./specialCommands-J3JFOq0J.cjs');
|
|
37
37
|
require('./backgroundTaskActivity-CBvUdj39.cjs');
|
|
38
|
-
require('./remoteSessionClient-
|
|
38
|
+
require('./remoteSessionClient-CcSP24Zq.cjs');
|
|
39
39
|
require('./ids-B6ZC0HGt.cjs');
|
|
40
|
-
require('./bootstrap-
|
|
40
|
+
require('./bootstrap-CoJu9VnB.cjs');
|
|
41
41
|
require('chalk');
|
|
42
42
|
require('./trimIdent-4gvk9Wk6.cjs');
|
|
43
|
-
require('./package-
|
|
43
|
+
require('./package-uzlvxa5S.cjs');
|
|
44
44
|
require('./tmuxSocket-D-Xt6Vn-.cjs');
|
|
45
45
|
require('node:module');
|
|
46
46
|
require('./oneShotPrompts-CL0dip9C.cjs');
|
|
47
47
|
require('./projectPath-C3ioB4Bu.cjs');
|
|
48
48
|
require('path');
|
|
49
49
|
require('url');
|
|
50
|
+
require('./wrapperAccount-D2A4DuZy.cjs');
|
|
51
|
+
require('./claudeAccountEnv-CEX_EMZr.cjs');
|
|
52
|
+
require('./store-CkNa6oj4.cjs');
|
|
50
53
|
|
|
51
54
|
const TERMINAL_TITLE_TOOL_NAME = "change_title";
|
|
52
55
|
function resolveMcpToolSurface(env) {
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { r as registerTeamsTools } from './tools-
|
|
1
|
+
import { r as registerTeamsTools } from './tools-BR-drXZ8.mjs';
|
|
2
2
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
3
3
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
4
4
|
import { z } from 'zod';
|
|
5
|
-
import { p as pushClipboardViaDaemon, d as pushFilePreviewViaDaemon, e as setTerminalTitleViaDaemon } from './controlClient-
|
|
5
|
+
import { p as pushClipboardViaDaemon, d as pushFilePreviewViaDaemon, e as setTerminalTitleViaDaemon } from './controlClient-Ckl8N1MS.mjs';
|
|
6
6
|
import { C as CLIPBOARD_TOOL_NAME, a as CLIPBOARD_TOOL_TITLE, b as CLIPBOARD_TOOL_DESCRIPTION, c as CLIPBOARD_MAX_BYTES } from './limits-DIo7rEBR.mjs';
|
|
7
|
-
import { c as checkDownloadTarget, r as registerAssistantSessionTools } from './downloadTarget-
|
|
8
|
-
import { l as logger } from './logger-
|
|
7
|
+
import { c as checkDownloadTarget, r as registerAssistantSessionTools } from './downloadTarget-Baslc6jW.mjs';
|
|
8
|
+
import { l as logger } from './logger-JV7-4Q_6.mjs';
|
|
9
9
|
import { c as checkPreviewPath } from './previewPath-CXN4Vag0.mjs';
|
|
10
10
|
import { P as PREVIEW_TOOL_NAME, a as PREVIEW_TOOL_TITLE, b as PREVIEW_TOOL_DESCRIPTION, c as PREVIEW_DOWNLOAD_PARAM_DESCRIPTION } from './agentGuidance-BDYt2Qy2.mjs';
|
|
11
11
|
import 'node:fs/promises';
|
|
12
12
|
import 'node:os';
|
|
13
|
-
import './persistence-
|
|
14
|
-
import './configuration-
|
|
13
|
+
import './persistence-Cg4sfjQV.mjs';
|
|
14
|
+
import './configuration-ThKBP_zY.mjs';
|
|
15
15
|
import 'node:crypto';
|
|
16
16
|
import 'axios';
|
|
17
17
|
import 'tweetnacl';
|
|
@@ -21,30 +21,33 @@ import './terminals-Dlg0x3nY.mjs';
|
|
|
21
21
|
import 'node:fs';
|
|
22
22
|
import 'node:path';
|
|
23
23
|
import { b as TerminalTitleSuggestRequestSchema } from './terminalTitleSuggest-CeKsX_V6.mjs';
|
|
24
|
-
import { s as suggestTitleForPrompt } from './titleGenerator-
|
|
24
|
+
import { s as suggestTitleForPrompt } from './titleGenerator-h6TmFe-c.mjs';
|
|
25
25
|
import { r as resolveMcpTerminalId } from './terminalToolContext-CFeGeaNm.mjs';
|
|
26
|
-
import './client-
|
|
26
|
+
import './client-DwbhrX6D.mjs';
|
|
27
27
|
import 'node:util';
|
|
28
|
-
import './index-
|
|
28
|
+
import './index-D1YnIih6.mjs';
|
|
29
29
|
import '@paralleldrive/cuid2';
|
|
30
|
-
import './context-
|
|
31
|
-
import './sessionOps-
|
|
30
|
+
import './context-C0EFLnOg.mjs';
|
|
31
|
+
import './sessionOps-C65Iej_C.mjs';
|
|
32
32
|
import './authRelay-DhQhkBvX.mjs';
|
|
33
|
-
import './time-
|
|
33
|
+
import './time-Cw0liIqB.mjs';
|
|
34
34
|
import './specialCommands-MXUN0wfI.mjs';
|
|
35
35
|
import './backgroundTaskActivity-8PdPxrvy.mjs';
|
|
36
|
-
import './remoteSessionClient
|
|
36
|
+
import './remoteSessionClient--0vfA7I5.mjs';
|
|
37
37
|
import './ids-DU6sLx4C.mjs';
|
|
38
|
-
import './bootstrap-
|
|
38
|
+
import './bootstrap-B3gMpU9e.mjs';
|
|
39
39
|
import 'chalk';
|
|
40
40
|
import './trimIdent-BAjmv_TG.mjs';
|
|
41
|
-
import './package-
|
|
41
|
+
import './package-Bw3H6VLn.mjs';
|
|
42
42
|
import './tmuxSocket-B8Yx20sT.mjs';
|
|
43
43
|
import 'node:module';
|
|
44
44
|
import './oneShotPrompts-DT4p6RNd.mjs';
|
|
45
45
|
import './projectPath-BTBIMB57.mjs';
|
|
46
46
|
import 'path';
|
|
47
47
|
import 'url';
|
|
48
|
+
import './wrapperAccount-BkufO_9g.mjs';
|
|
49
|
+
import './claudeAccountEnv-BL1pR_37.mjs';
|
|
50
|
+
import './store-Vej_738f.mjs';
|
|
48
51
|
|
|
49
52
|
const TERMINAL_TITLE_TOOL_NAME = "change_title";
|
|
50
53
|
function resolveMcpToolSurface(env) {
|
|
@@ -3,9 +3,9 @@ import { createHash, randomUUID } from 'node:crypto';
|
|
|
3
3
|
import { constants, writeFileSync, chmodSync, openSync, fstatSync, closeSync, existsSync, readFileSync, renameSync, readdirSync, rmSync, lstatSync, realpathSync, statSync, mkdirSync, readSync, unlinkSync, rmdirSync } from 'node:fs';
|
|
4
4
|
import { relative, isAbsolute, sep, join, dirname, basename, resolve } from 'node:path';
|
|
5
5
|
import { realpath, lstat, stat, mkdir, copyFile, symlink, readdir } from 'node:fs/promises';
|
|
6
|
-
import { f as ensurePrivateDirectorySync, w as writePrivateFileSync } from './configuration-
|
|
7
|
-
import {
|
|
8
|
-
import { p as packageJson } from './package-
|
|
6
|
+
import { f as ensurePrivateDirectorySync, w as writePrivateFileSync } from './configuration-ThKBP_zY.mjs';
|
|
7
|
+
import { U as AGENT_VERSION_SOURCES } from './index-D1YnIih6.mjs';
|
|
8
|
+
import { p as packageJson } from './package-Bw3H6VLn.mjs';
|
|
9
9
|
|
|
10
10
|
function spawnOriginForLog(value) {
|
|
11
11
|
if (!value || typeof value !== "object") return void 0;
|
|
@@ -5,9 +5,9 @@ var node_crypto = require('node:crypto');
|
|
|
5
5
|
var node_fs = require('node:fs');
|
|
6
6
|
var path = require('node:path');
|
|
7
7
|
var promises = require('node:fs/promises');
|
|
8
|
-
var configuration = require('./configuration-
|
|
9
|
-
var index = require('./index-
|
|
10
|
-
var _package = require('./package-
|
|
8
|
+
var configuration = require('./configuration-BBK0rmmj.cjs');
|
|
9
|
+
var index = require('./index-BUFrKZeQ.cjs');
|
|
10
|
+
var _package = require('./package-uzlvxa5S.cjs');
|
|
11
11
|
|
|
12
12
|
function spawnOriginForLog(value) {
|
|
13
13
|
if (!value || typeof value !== "object") return void 0;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
var name = "very-happy-cli";
|
|
2
|
-
var version = "0.2.
|
|
2
|
+
var version = "0.2.193";
|
|
3
3
|
var description = "Remote multi-agent workspace CLI with deep Claude integration, native terminal streaming, and self-hosting.";
|
|
4
4
|
var author = "Kirill Dubovitskiy";
|
|
5
5
|
var contributors = [
|
|
@@ -116,12 +116,12 @@ var dependencies = {
|
|
|
116
116
|
zod: "^4.6.7"
|
|
117
117
|
};
|
|
118
118
|
var optionalDependencies = {
|
|
119
|
-
"very-happy-tools-arm64-darwin": "0.2.
|
|
120
|
-
"very-happy-tools-x64-darwin": "0.2.
|
|
121
|
-
"very-happy-tools-arm64-linux": "0.2.
|
|
122
|
-
"very-happy-tools-x64-linux": "0.2.
|
|
123
|
-
"very-happy-tools-arm64-win32": "0.2.
|
|
124
|
-
"very-happy-tools-x64-win32": "0.2.
|
|
119
|
+
"very-happy-tools-arm64-darwin": "0.2.193",
|
|
120
|
+
"very-happy-tools-x64-darwin": "0.2.193",
|
|
121
|
+
"very-happy-tools-arm64-linux": "0.2.193",
|
|
122
|
+
"very-happy-tools-x64-linux": "0.2.193",
|
|
123
|
+
"very-happy-tools-arm64-win32": "0.2.193",
|
|
124
|
+
"very-happy-tools-x64-win32": "0.2.193"
|
|
125
125
|
};
|
|
126
126
|
var devDependencies = {
|
|
127
127
|
"@slopus/happy-wire": "workspace:*",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var name = "very-happy-cli";
|
|
4
|
-
var version = "0.2.
|
|
4
|
+
var version = "0.2.193";
|
|
5
5
|
var description = "Remote multi-agent workspace CLI with deep Claude integration, native terminal streaming, and self-hosting.";
|
|
6
6
|
var author = "Kirill Dubovitskiy";
|
|
7
7
|
var contributors = [
|
|
@@ -118,12 +118,12 @@ var dependencies = {
|
|
|
118
118
|
zod: "^4.6.7"
|
|
119
119
|
};
|
|
120
120
|
var optionalDependencies = {
|
|
121
|
-
"very-happy-tools-arm64-darwin": "0.2.
|
|
122
|
-
"very-happy-tools-x64-darwin": "0.2.
|
|
123
|
-
"very-happy-tools-arm64-linux": "0.2.
|
|
124
|
-
"very-happy-tools-x64-linux": "0.2.
|
|
125
|
-
"very-happy-tools-arm64-win32": "0.2.
|
|
126
|
-
"very-happy-tools-x64-win32": "0.2.
|
|
121
|
+
"very-happy-tools-arm64-darwin": "0.2.193",
|
|
122
|
+
"very-happy-tools-x64-darwin": "0.2.193",
|
|
123
|
+
"very-happy-tools-arm64-linux": "0.2.193",
|
|
124
|
+
"very-happy-tools-x64-linux": "0.2.193",
|
|
125
|
+
"very-happy-tools-arm64-win32": "0.2.193",
|
|
126
|
+
"very-happy-tools-x64-win32": "0.2.193"
|
|
127
127
|
};
|
|
128
128
|
var devDependencies = {
|
|
129
129
|
"@slopus/happy-wire": "workspace:*",
|