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,107 +1,112 @@
|
|
|
1
|
-
import { a as authAndSetupMachineIfNeeded } from './auth-
|
|
2
|
-
import {
|
|
3
|
-
import { a as recordRunIntents, w as withoutEffort, r as registerRunIntentRpc, b as DEFAULT_CODEX_PERMISSION_MODE } from './defaultPermissionMode-
|
|
4
|
-
import { h as hashObject, s as startHappyServer, c as createProjectInjector } from './deterministicJson-
|
|
5
|
-
import { s as sharedProjectsClient } from './client-
|
|
1
|
+
import { a as authAndSetupMachineIfNeeded } from './auth-jN5dNqTO.mjs';
|
|
2
|
+
import { k as createEnvelope, w as BUILTIN_TODO_DISCOVERY, r as restoredEffort, o as readEffortIntent, Q as EFFORT_INTENT_AUTO, P as PROMPT_QUEUE_CAPABILITY, a5 as CODEX_STEER_CAPABILITY, a as PROJECT_SESSION_CAPABILITY, a6 as CODEX_COMPACT_CAPABILITY, R as RUN_INTENT_CAPABILITY, A as AGENT_PROFILE_SESSION_CAPABILITY } from './index-D1YnIih6.mjs';
|
|
3
|
+
import { a as recordRunIntents, w as withoutEffort, r as registerRunIntentRpc, b as DEFAULT_CODEX_PERMISSION_MODE } from './defaultPermissionMode-DF5AfeBb.mjs';
|
|
4
|
+
import { h as hashObject, s as startHappyServer, c as createProjectInjector } from './deterministicJson-BzX94gi3.mjs';
|
|
5
|
+
import { s as sharedProjectsClient } from './client-Bde4QVIn.mjs';
|
|
6
6
|
import { unlink } from 'node:fs/promises';
|
|
7
7
|
import { p as publishForkBackfillWhenCommitted, F as FORK_BACKFILL_CAPABILITY } from './forkBackfill-DYIjlN1Z.mjs';
|
|
8
8
|
import { randomUUID } from 'node:crypto';
|
|
9
9
|
import { createId } from '@paralleldrive/cuid2';
|
|
10
|
-
import { t as textResultPayload, d as toolResultContentText, c as connectionState, A as ApiClient } from './api-
|
|
10
|
+
import { t as textResultPayload, d as toolResultContentText, c as connectionState, A as ApiClient } from './api-DUfunY3x.mjs';
|
|
11
11
|
import { r as registerAgentAttachmentDownloads, H as HeldInput } from './heldInput-C69lA2dH.mjs';
|
|
12
|
-
import { C as CLAUDE_ATTACHMENT_KINDS, a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt } from './attachmentContent-
|
|
12
|
+
import { C as CLAUDE_ATTACHMENT_KINDS, a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt } from './attachmentContent-KNIZxwlu.mjs';
|
|
13
13
|
import { useStdout, useInput, Box, Text, render } from 'ink';
|
|
14
|
-
import { c as claimSessionOrExit, a as applyServerSnapshot, b as applyReconnectReplay, w as withoutServerSnapshot, m as mergeReconnectMetadata, t as takeAutoRestartedEvent, A as AUTO_RESTART_CAPABILITY, e as exitCursorStamp } from './sessionLock-
|
|
14
|
+
import { c as claimSessionOrExit, a as applyServerSnapshot, b as applyReconnectReplay, w as withoutServerSnapshot, m as mergeReconnectMetadata, t as takeAutoRestartedEvent, A as AUTO_RESTART_CAPABILITY, e as exitCursorStamp } from './sessionLock-B73fhgQN.mjs';
|
|
15
15
|
import React, { useState, useRef, useEffect, useCallback } from 'react';
|
|
16
|
-
import { C as CodexAppServerClient } from './codexAppServerClient-
|
|
17
|
-
import { w as wrapperRateLimitReporter } from './rateLimitReporter-
|
|
18
|
-
import { l as logger } from './logger-
|
|
19
|
-
import { B as BasePermissionHandler } from './BasePermissionHandler-
|
|
20
|
-
import { B as BaseReasoningProcessor, s as settleCodexSession } from './codexTermination-
|
|
16
|
+
import { C as CodexAppServerClient } from './codexAppServerClient-B3QJV6Ey.mjs';
|
|
17
|
+
import { w as wrapperRateLimitReporter } from './rateLimitReporter-CAz7VMw4.mjs';
|
|
18
|
+
import { l as logger } from './logger-JV7-4Q_6.mjs';
|
|
19
|
+
import { B as BasePermissionHandler } from './BasePermissionHandler-DV6UM6e9.mjs';
|
|
20
|
+
import { B as BaseReasoningProcessor, s as settleCodexSession } from './codexTermination-CaWAVQjZ.mjs';
|
|
21
21
|
import { execSync } from 'node:child_process';
|
|
22
|
-
import { r as readSettings, l as latchKeepAwake, e as evaluateWrapperIdle, a as resolveCheckMs, H as HIBERNATION_CAPABILITY } from './persistence-
|
|
23
|
-
import { g as getInitialMachineMetadata } from './machineMetadata-
|
|
24
|
-
import { c as configuration } from './configuration-
|
|
25
|
-
import { M as MessageQueue2, r as registerKillSessionHandler } from './registerKillSessionHandler-
|
|
22
|
+
import { r as readSettings, l as latchKeepAwake, e as evaluateWrapperIdle, a as resolveCheckMs, H as HIBERNATION_CAPABILITY } from './persistence-Cg4sfjQV.mjs';
|
|
23
|
+
import { g as getInitialMachineMetadata } from './machineMetadata-D5-SW9kv.mjs';
|
|
24
|
+
import { c as configuration } from './configuration-ThKBP_zY.mjs';
|
|
25
|
+
import { M as MessageQueue2, r as registerKillSessionHandler } from './registerKillSessionHandler-Bg9t45Ub.mjs';
|
|
26
26
|
import { p as projectPath } from './projectPath-BTBIMB57.mjs';
|
|
27
|
-
import { join } from 'node:path';
|
|
28
|
-
import { c as createSessionMetadata } from './createSessionMetadata-
|
|
27
|
+
import { dirname, join } from 'node:path';
|
|
28
|
+
import { c as createSessionMetadata } from './createSessionMetadata-vug4Cv8z.mjs';
|
|
29
29
|
import { M as MessageBuffer } from './sessionExitLifecycle-CzkLIgNZ.mjs';
|
|
30
|
-
import { n as notifyDaemonSessionStarted,
|
|
31
|
-
import { c as createSessionForStartup, b as HibernationExitLatch, H as HibernationProbe, a as commitHibernation } from './startupSessionCreate-
|
|
30
|
+
import { n as notifyDaemonSessionStarted, o as reportSessionEditToDaemon, c as checkDaemonHibernation } from './controlClient-Ckl8N1MS.mjs';
|
|
31
|
+
import { c as createSessionForStartup, b as HibernationExitLatch, H as HibernationProbe, a as commitHibernation } from './startupSessionCreate-DoK0IvJG.mjs';
|
|
32
32
|
import { d as decodeBase64, e as encodeBase64 } from './authRelay-DhQhkBvX.mjs';
|
|
33
|
-
import { s as setupOfflineReconnection } from './setupOfflineReconnection-
|
|
33
|
+
import { s as setupOfflineReconnection } from './setupOfflineReconnection-Bvdy-2xd.mjs';
|
|
34
34
|
import { t as trimIdent } from './trimIdent-BAjmv_TG.mjs';
|
|
35
35
|
import { a as parseSpecialCommand, c as compactCommandText, b as parseCompact } from './specialCommands-MXUN0wfI.mjs';
|
|
36
36
|
import { C as CHANGE_TITLE_INSTRUCTION } from './constants-BC4St0xd.mjs';
|
|
37
37
|
import { E as EditReportThrottle, a as extractCodexPatchPaths } from './editPaths-BVfS_FFL.mjs';
|
|
38
|
-
import {
|
|
38
|
+
import { t as takeReconnectEnv } from './reconnectEnv-DeSvHl3q.mjs';
|
|
39
|
+
import { r as readSessionBindings, w as writeSessionBinding, d as defaultSecretProbe, a as readAccounts, c as readAccountsFileV2, f as writeAccountsFile, S as SPAWN_ACCOUNT_ENV } from './store-Vej_738f.mjs';
|
|
40
|
+
import { mkdirSync, writeFileSync, chmodSync, rmSync } from 'node:fs';
|
|
41
|
+
import { a as resolveCodexAccount, r as readCodexProviders, s as syncCodexOverlay, b as baseCodexHome, c as codexAccountSwitched, d as readCodexDefaultProvider, e as codexAccountDefaultModel, f as accountModelsAsCatalog, i as isHistoryRejectedError, g as isCodexAuthRejection } from './codexAccount-NOX5pmQf.mjs';
|
|
42
|
+
import { s as shouldRecordSpawnAccount, u as unavailableNotice } from './wrapperAccount-BkufO_9g.mjs';
|
|
43
|
+
import { a as extractNoSandboxFlag, e as ensureDaemonRunning } from './ensureDaemonRunning-C6ERYK-O.mjs';
|
|
39
44
|
import 'tweetnacl';
|
|
40
45
|
import 'axios';
|
|
41
|
-
import './time-
|
|
42
|
-
import './browser-
|
|
46
|
+
import './time-Cw0liIqB.mjs';
|
|
47
|
+
import './browser-LHW2hBH8.mjs';
|
|
43
48
|
import 'open';
|
|
44
49
|
import 'zod';
|
|
45
50
|
import './prompt-QHuFx9j6.mjs';
|
|
46
|
-
import './reportProgressTool-
|
|
47
|
-
import './client-
|
|
51
|
+
import './reportProgressTool-DVru7jc_.mjs';
|
|
52
|
+
import './client-7RnI9J0W.mjs';
|
|
48
53
|
import './precheckCompat-DeEbilbr.mjs';
|
|
49
54
|
import './agentGuidance-BDYt2Qy2.mjs';
|
|
50
|
-
import 'node:fs';
|
|
51
55
|
import 'node:os';
|
|
52
56
|
import './pi-CqyoZMjI.mjs';
|
|
53
57
|
import './fileStore-5qpetZS0.mjs';
|
|
54
|
-
import './client-
|
|
58
|
+
import './client-DwbhrX6D.mjs';
|
|
55
59
|
import 'node:util';
|
|
56
|
-
import './context-
|
|
57
|
-
import './sessionOps-
|
|
60
|
+
import './context-C0EFLnOg.mjs';
|
|
61
|
+
import './sessionOps-C65Iej_C.mjs';
|
|
58
62
|
import 'socket.io-client';
|
|
59
63
|
import './backgroundTaskActivity-8PdPxrvy.mjs';
|
|
60
64
|
import './resources-CLP_MpK4.mjs';
|
|
61
|
-
import './tools-
|
|
62
|
-
import './peerTools-
|
|
65
|
+
import './tools-BR-drXZ8.mjs';
|
|
66
|
+
import './peerTools-WtRgTSqG.mjs';
|
|
63
67
|
import './ids-DU6sLx4C.mjs';
|
|
64
|
-
import './remoteSessionClient
|
|
68
|
+
import './remoteSessionClient--0vfA7I5.mjs';
|
|
65
69
|
import '@modelcontextprotocol/sdk/server/mcp.js';
|
|
66
70
|
import 'node:http';
|
|
67
71
|
import '@modelcontextprotocol/sdk/server/streamableHttp.js';
|
|
68
72
|
import './limits-DIo7rEBR.mjs';
|
|
69
|
-
import './downloadTarget-
|
|
73
|
+
import './downloadTarget-Baslc6jW.mjs';
|
|
70
74
|
import './terminals-Dlg0x3nY.mjs';
|
|
71
75
|
import './terminalTitleSuggest-CeKsX_V6.mjs';
|
|
72
76
|
import './tmuxSocket-B8Yx20sT.mjs';
|
|
73
|
-
import './bootstrap-
|
|
74
|
-
import './package-
|
|
77
|
+
import './bootstrap-B3gMpU9e.mjs';
|
|
78
|
+
import './package-Bw3H6VLn.mjs';
|
|
75
79
|
import './webPanels-B2_C2-3g.mjs';
|
|
76
|
-
import './pushNotifications-
|
|
80
|
+
import './pushNotifications-BbE-qV9I.mjs';
|
|
77
81
|
import './contentLogMetadata-BlWI0egu.mjs';
|
|
78
82
|
import './previewPath-CXN4Vag0.mjs';
|
|
79
83
|
import 'crypto';
|
|
80
|
-
import './lidState-
|
|
84
|
+
import './lidState-B6yYKjNK.mjs';
|
|
81
85
|
import 'os';
|
|
82
86
|
import 'child_process';
|
|
83
87
|
import 'node:events';
|
|
84
|
-
import './registerCommonHandlers-
|
|
88
|
+
import './registerCommonHandlers-Cj3Nl9y-.mjs';
|
|
85
89
|
import 'util';
|
|
86
90
|
import 'fs/promises';
|
|
87
91
|
import 'path';
|
|
88
92
|
import 'cross-spawn';
|
|
89
|
-
import './sync-
|
|
93
|
+
import './sync-BP6vnxVP.mjs';
|
|
90
94
|
import 'chalk';
|
|
91
95
|
import './cliUpdate-Y34VGe9Y.mjs';
|
|
92
96
|
import './processTreeSnapshot-CuLJDNC-.mjs';
|
|
93
97
|
import 'node:readline';
|
|
94
98
|
import './manager-BEsI4qt3.mjs';
|
|
95
99
|
import '@anthropic-ai/sandbox-runtime';
|
|
96
|
-
import './rateLimitWindows-
|
|
100
|
+
import './rateLimitWindows-CRARnKaI.mjs';
|
|
97
101
|
import './processTree-CP5IvQ2Z.mjs';
|
|
98
102
|
import './detectCLI-CSGMlV51.mjs';
|
|
99
103
|
import 'fs';
|
|
100
|
-
import './localHappyAgentAuth-
|
|
104
|
+
import './localHappyAgentAuth-KRlg_aI0.mjs';
|
|
101
105
|
import './fsMkdir-DumgLTzR.mjs';
|
|
102
106
|
import './types-CkqAACXx.mjs';
|
|
103
107
|
import 'url';
|
|
104
|
-
import './
|
|
108
|
+
import './claudeAccountEnv-BL1pR_37.mjs';
|
|
109
|
+
import './spawnHappyCLI-CnMwzjWX.mjs';
|
|
105
110
|
import './doctorReadiness-C208SMN9.mjs';
|
|
106
111
|
|
|
107
112
|
function getStartedSubagents(state) {
|
|
@@ -1183,7 +1188,8 @@ async function resumeExistingThread(opts) {
|
|
|
1183
1188
|
const resumedThread = await opts.client.resumeThread({
|
|
1184
1189
|
threadId: opts.threadId,
|
|
1185
1190
|
cwd: opts.cwd,
|
|
1186
|
-
mcpServers: opts.mcpServers
|
|
1191
|
+
mcpServers: opts.mcpServers,
|
|
1192
|
+
...opts.model ? { model: opts.model } : {}
|
|
1187
1193
|
});
|
|
1188
1194
|
opts.session.updateMetadata((currentMetadata) => ({
|
|
1189
1195
|
...currentMetadata,
|
|
@@ -1461,6 +1467,70 @@ function codexPublishablePermissionMode(mode) {
|
|
|
1461
1467
|
return typeof mode === "string" && CODEX_REMOTE_PERMISSION_MODES.includes(mode) ? mode : null;
|
|
1462
1468
|
}
|
|
1463
1469
|
|
|
1470
|
+
const MACHINE_CODEX_ACCOUNT = { profile: null, overrides: { env: {} }, unavailable: false, notices: [], cleanup: () => {
|
|
1471
|
+
} };
|
|
1472
|
+
function loadCodexWrapperAccount(happyHome, sessionId, spawnAccountId, env = process.env, now = Date.now()) {
|
|
1473
|
+
let bindings = readSessionBindings(happyHome);
|
|
1474
|
+
if (shouldRecordSpawnAccount(spawnAccountId, sessionId in bindings)) {
|
|
1475
|
+
writeSessionBinding(happyHome, sessionId, { account: spawnAccountId });
|
|
1476
|
+
bindings = { ...bindings, [sessionId]: { account: spawnAccountId } };
|
|
1477
|
+
}
|
|
1478
|
+
const probe = defaultSecretProbe(env);
|
|
1479
|
+
const resolution = resolveCodexAccount(sessionId, {
|
|
1480
|
+
home: happyHome,
|
|
1481
|
+
accounts: readAccounts(happyHome),
|
|
1482
|
+
bindings,
|
|
1483
|
+
providers: readCodexProviders(env),
|
|
1484
|
+
fileReadable: probe.fileReadable,
|
|
1485
|
+
env,
|
|
1486
|
+
nodePath: process.execPath,
|
|
1487
|
+
envKeyCopyPath: (id) => join(happyHome, "tmp", "accounts", `key-${process.pid}-${id}`)
|
|
1488
|
+
});
|
|
1489
|
+
if (resolution.kind === "machine") return MACHINE_CODEX_ACCOUNT;
|
|
1490
|
+
let cleanup = () => {
|
|
1491
|
+
};
|
|
1492
|
+
if (resolution.kind === "active" && resolution.envKeyCopy) {
|
|
1493
|
+
const { name, path } = resolution.envKeyCopy;
|
|
1494
|
+
mkdirSync(dirname(path), { recursive: true, mode: 448 });
|
|
1495
|
+
writeFileSync(path, (env[name] ?? "").trim() + "\n", { mode: 384 });
|
|
1496
|
+
chmodSync(path, 384);
|
|
1497
|
+
cleanup = () => rmSync(path, { force: true });
|
|
1498
|
+
}
|
|
1499
|
+
for (const key of resolution.unset) delete env[key];
|
|
1500
|
+
if (resolution.kind === "active" && resolution.envKeyCopy) delete env[resolution.envKeyCopy.name];
|
|
1501
|
+
if (resolution.kind === "unavailable") {
|
|
1502
|
+
return { profile: resolution.profile, overrides: { env: {} }, unavailable: true, notices: [unavailableNotice(resolution.profile)], cleanup };
|
|
1503
|
+
}
|
|
1504
|
+
const overrides = { env: {}, modelProvider: resolution.modelProvider, ...resolution.config ? { config: resolution.config } : {} };
|
|
1505
|
+
if (resolution.codexHome) {
|
|
1506
|
+
syncCodexOverlay(resolution.codexHome, baseCodexHome(env), now);
|
|
1507
|
+
overrides.env.CODEX_HOME = resolution.codexHome;
|
|
1508
|
+
}
|
|
1509
|
+
return {
|
|
1510
|
+
profile: resolution.profile,
|
|
1511
|
+
overrides,
|
|
1512
|
+
...resolution.pinnedModel ? { pinnedModel: resolution.pinnedModel } : {},
|
|
1513
|
+
...resolution.models ? { models: resolution.models } : {},
|
|
1514
|
+
unavailable: false,
|
|
1515
|
+
notices: [],
|
|
1516
|
+
cleanup
|
|
1517
|
+
};
|
|
1518
|
+
}
|
|
1519
|
+
function markCodexAccountRejected(happyHome, accountId, now = Date.now()) {
|
|
1520
|
+
try {
|
|
1521
|
+
const file = readAccountsFileV2(happyHome);
|
|
1522
|
+
const record = file.accounts[accountId];
|
|
1523
|
+
if (!record || record.agent !== "codex") return null;
|
|
1524
|
+
const status = record.kind === "codex-chatgpt" ? "expired" : "invalid";
|
|
1525
|
+
if (record.check?.status === status) return status;
|
|
1526
|
+
record.check = { status, at: now, detail: "rejected during a session" };
|
|
1527
|
+
writeAccountsFile(happyHome, file);
|
|
1528
|
+
return status;
|
|
1529
|
+
} catch {
|
|
1530
|
+
return null;
|
|
1531
|
+
}
|
|
1532
|
+
}
|
|
1533
|
+
|
|
1464
1534
|
const DEFAULT_CODEX_MODEL = void 0;
|
|
1465
1535
|
const DEFAULT_CODEX_EFFORT = "medium";
|
|
1466
1536
|
async function runCodex(opts) {
|
|
@@ -1477,6 +1547,8 @@ async function runCodex(opts) {
|
|
|
1477
1547
|
console.error(" \x1B[36mvery-happy claude\x1B[0m\n");
|
|
1478
1548
|
process.exit(1);
|
|
1479
1549
|
}
|
|
1550
|
+
const spawnAccountId = process.env[SPAWN_ACCOUNT_ENV] || void 0;
|
|
1551
|
+
delete process.env[SPAWN_ACCOUNT_ENV];
|
|
1480
1552
|
const sessionTag = randomUUID();
|
|
1481
1553
|
connectionState.setBackend("Codex");
|
|
1482
1554
|
const api = await ApiClient.create(opts.credentials);
|
|
@@ -1505,7 +1577,7 @@ async function runCodex(opts) {
|
|
|
1505
1577
|
dangerouslySkipPermissions: initialPermissionMode === "yolo" || initialPermissionMode === "bypassPermissions",
|
|
1506
1578
|
...forkedFromSessionId ? { parentSessionId: forkedFromSessionId } : {},
|
|
1507
1579
|
...forkedFromMessageId ? { forkedFromMessageId } : {},
|
|
1508
|
-
capabilities: [PROMPT_QUEUE_CAPABILITY, FORK_BACKFILL_CAPABILITY, HIBERNATION_CAPABILITY, AUTO_RESTART_CAPABILITY, CODEX_STEER_CAPABILITY, PROJECT_SESSION_CAPABILITY, CODEX_COMPACT_CAPABILITY, RUN_INTENT_CAPABILITY]
|
|
1580
|
+
capabilities: [PROMPT_QUEUE_CAPABILITY, FORK_BACKFILL_CAPABILITY, HIBERNATION_CAPABILITY, AUTO_RESTART_CAPABILITY, CODEX_STEER_CAPABILITY, PROJECT_SESSION_CAPABILITY, CODEX_COMPACT_CAPABILITY, RUN_INTENT_CAPABILITY, AGENT_PROFILE_SESSION_CAPABILITY]
|
|
1509
1581
|
});
|
|
1510
1582
|
metadata.attachmentKinds = [...CLAUDE_ATTACHMENT_KINDS];
|
|
1511
1583
|
metadata.stickyModel = null;
|
|
@@ -1518,12 +1590,13 @@ async function runCodex(opts) {
|
|
|
1518
1590
|
const importTitle = process.env.HAPPY_IMPORT_TITLE;
|
|
1519
1591
|
if (importTitle) metadata.summary = { text: importTitle, updatedAt: Date.now() };
|
|
1520
1592
|
}
|
|
1521
|
-
const
|
|
1522
|
-
const
|
|
1523
|
-
const
|
|
1524
|
-
const
|
|
1525
|
-
const
|
|
1526
|
-
const
|
|
1593
|
+
const reconnectEnv = takeReconnectEnv();
|
|
1594
|
+
const reconnectSessionId = reconnectEnv.HAPPY_RECONNECT_SESSION_ID;
|
|
1595
|
+
const reconnectKeyBase64 = reconnectEnv.HAPPY_RECONNECT_ENCRYPTION_KEY;
|
|
1596
|
+
const reconnectVariant = reconnectEnv.HAPPY_RECONNECT_ENCRYPTION_VARIANT;
|
|
1597
|
+
const reconnectSeq = reconnectEnv.HAPPY_RECONNECT_SEQ;
|
|
1598
|
+
const reconnectMetadataVersion = reconnectEnv.HAPPY_RECONNECT_METADATA_VERSION;
|
|
1599
|
+
const reconnectAgentStateVersion = reconnectEnv.HAPPY_RECONNECT_AGENT_STATE_VERSION;
|
|
1527
1600
|
let response;
|
|
1528
1601
|
if (reconnectSessionId && reconnectKeyBase64 && reconnectVariant) {
|
|
1529
1602
|
logger.debug(`[START] Reconnecting to existing session ${reconnectSessionId}`);
|
|
@@ -1566,6 +1639,21 @@ async function runCodex(opts) {
|
|
|
1566
1639
|
}
|
|
1567
1640
|
}
|
|
1568
1641
|
const resumedEffort = reconnectSeeded && response ? restoredEffort(response.metadata, { useReportedLevel: true }) : void 0;
|
|
1642
|
+
let codexAccount = MACHINE_CODEX_ACCOUNT;
|
|
1643
|
+
if (response) {
|
|
1644
|
+
try {
|
|
1645
|
+
codexAccount = loadCodexWrapperAccount(configuration.happyHomeDir, response.id, spawnAccountId);
|
|
1646
|
+
} catch (error) {
|
|
1647
|
+
const reason = error instanceof Error ? error.message : String(error);
|
|
1648
|
+
logger.debug(`[START] B-850b account resolution failed: ${reason}`);
|
|
1649
|
+
if (spawnAccountId) {
|
|
1650
|
+
codexAccount = { ...MACHINE_CODEX_ACCOUNT, profile: { id: spawnAccountId, label: spawnAccountId, kind: "unknown", status: "unavailable", reason: "error" }, unavailable: true, notices: [`Account "${spawnAccountId}" could not be loaded: ${reason}`] };
|
|
1651
|
+
}
|
|
1652
|
+
}
|
|
1653
|
+
}
|
|
1654
|
+
const accountSwitched = !!reconnectSessionId && reconnectSeeded && !!response && codexAccountSwitched(response.metadata?.agentProfile, codexAccount.profile);
|
|
1655
|
+
if (accountSwitched && !codexAccount.profile) codexAccount = { ...codexAccount, overrides: { env: {}, modelProvider: readCodexDefaultProvider() } };
|
|
1656
|
+
logger.debug(`[START] B-850b account: ${codexAccount.profile ? `${codexAccount.profile.id} ${codexAccount.profile.kind} ${codexAccount.profile.status}` : "machine login"}${accountSwitched ? " (switched)" : ""}`);
|
|
1569
1657
|
let session;
|
|
1570
1658
|
let permissionHandler;
|
|
1571
1659
|
let client;
|
|
@@ -1594,6 +1682,25 @@ async function runCodex(opts) {
|
|
|
1594
1682
|
if (!wakingFromHibernation) void session.cancelUndeliveredQueuedInputs(reconnectReplay ? { maxSeq: reconnectReplay.seq } : void 0);
|
|
1595
1683
|
session.updateMetadata((meta) => mergeReconnectMetadata(meta, metadata, Date.now()));
|
|
1596
1684
|
}
|
|
1685
|
+
session.updateMetadata((current) => ({
|
|
1686
|
+
...current,
|
|
1687
|
+
agentProfile: codexAccount.profile,
|
|
1688
|
+
...accountSwitched ? { stickyModel: null, modelIntent: null } : {}
|
|
1689
|
+
}));
|
|
1690
|
+
for (const notice of codexAccount.notices) {
|
|
1691
|
+
session.sendSessionEvent({ type: "message", message: notice, kind: codexAccount.unavailable ? "agent-profile-unavailable" : "agent-profile-warning" });
|
|
1692
|
+
}
|
|
1693
|
+
let historyRejectionReported = false;
|
|
1694
|
+
const noteAccountFailure = (text) => {
|
|
1695
|
+
if (!codexAccount.profile || codexAccount.unavailable) return;
|
|
1696
|
+
if (accountSwitched && !historyRejectionReported && isHistoryRejectedError(text)) {
|
|
1697
|
+
historyRejectionReported = true;
|
|
1698
|
+
session.sendSessionEvent({ type: "message", message: `This conversation's history cannot continue on account "${codexAccount.profile.label}". Start a new session on it, or switch back to the previous account.`, kind: "agent-profile-history-rejected" });
|
|
1699
|
+
} else if (isCodexAuthRejection(text)) {
|
|
1700
|
+
const marked = markCodexAccountRejected(configuration.happyHomeDir, codexAccount.profile.id);
|
|
1701
|
+
if (marked) session.sendSessionEvent({ type: "message", message: `Account "${codexAccount.profile.label}" was rejected (${marked}). Sign in again or switch accounts.`, kind: "agent-profile-auth-failed" });
|
|
1702
|
+
}
|
|
1703
|
+
};
|
|
1597
1704
|
if (response) {
|
|
1598
1705
|
try {
|
|
1599
1706
|
logger.debug(`[START] Reporting session ${response.id} to daemon`);
|
|
@@ -1686,6 +1793,11 @@ async function runCodex(opts) {
|
|
|
1686
1793
|
};
|
|
1687
1794
|
let userMessageDelivery = Promise.resolve();
|
|
1688
1795
|
session.onUserMessage((message) => {
|
|
1796
|
+
if (codexAccount.unavailable && codexAccount.profile) {
|
|
1797
|
+
if (message.localKey) session.sendQueueCancelReason([message.localKey], "failed");
|
|
1798
|
+
session.sendSessionEvent({ type: "message", message: codexAccount.notices[0] ?? `Account "${codexAccount.profile.label}" is unavailable.`, kind: "agent-profile-unavailable" });
|
|
1799
|
+
return;
|
|
1800
|
+
}
|
|
1689
1801
|
const downloads = session.drainAttachmentsForUserMessage();
|
|
1690
1802
|
userMessageDelivery = userMessageDelivery.then(async () => {
|
|
1691
1803
|
const attachments = await downloads;
|
|
@@ -1950,6 +2062,7 @@ async function runCodex(opts) {
|
|
|
1950
2062
|
process.stdin.setEncoding("utf8");
|
|
1951
2063
|
}
|
|
1952
2064
|
client = new CodexAppServerClient(sandboxConfig);
|
|
2065
|
+
client.setAccountOverrides(codexAccount.overrides);
|
|
1953
2066
|
const idleRelease = new CodexIdleReleaseTimer({
|
|
1954
2067
|
delayMs: resolveCodexIdleReleaseMs(process.env[CODEX_IDLE_RELEASE_ENV]),
|
|
1955
2068
|
isIdle: () => shouldReleaseIdleCodex({
|
|
@@ -2019,6 +2132,7 @@ async function runCodex(opts) {
|
|
|
2019
2132
|
if (failure) {
|
|
2020
2133
|
messageBuffer.addMessage(`Task failed: ${failure}`, "status");
|
|
2021
2134
|
session.sendSessionEvent({ type: "message", message: `Codex error: ${failure}` });
|
|
2135
|
+
noteAccountFailure(failure);
|
|
2022
2136
|
} else {
|
|
2023
2137
|
messageBuffer.addMessage("Task completed", "status");
|
|
2024
2138
|
}
|
|
@@ -2027,6 +2141,7 @@ async function runCodex(opts) {
|
|
|
2027
2141
|
if (failure) {
|
|
2028
2142
|
messageBuffer.addMessage(`Turn aborted: ${failure}`, "status");
|
|
2029
2143
|
session.sendSessionEvent({ type: "message", message: `Codex error: ${failure}` });
|
|
2144
|
+
noteAccountFailure(failure);
|
|
2030
2145
|
} else {
|
|
2031
2146
|
messageBuffer.addMessage("Turn aborted", "status");
|
|
2032
2147
|
}
|
|
@@ -2133,6 +2248,11 @@ async function runCodex(opts) {
|
|
|
2133
2248
|
logger.debug("[Codex] config/read unavailable", safeCodexErrorMetadata(error));
|
|
2134
2249
|
}
|
|
2135
2250
|
machineDefaultModel = configured?.model ?? discoveredModels.find((model) => model.isDefault)?.model;
|
|
2251
|
+
const accountDefault = codexAccountDefaultModel(codexAccount, configured?.model ?? null, discoveredModels);
|
|
2252
|
+
if (codexAccount.profile && !codexAccount.unavailable) {
|
|
2253
|
+
machineDefaultModel = accountDefault;
|
|
2254
|
+
if (codexAccount.models?.length) discoveredModels = accountModelsAsCatalog(codexAccount.models, discoveredModels);
|
|
2255
|
+
}
|
|
2136
2256
|
if (discoveredModels.length > 0 || configured) {
|
|
2137
2257
|
session.updateMetadata((metadata2) => ({
|
|
2138
2258
|
...metadata2,
|
|
@@ -2145,22 +2265,30 @@ async function runCodex(opts) {
|
|
|
2145
2265
|
defaultReasoningEffort: model.defaultReasoningEffort
|
|
2146
2266
|
}))
|
|
2147
2267
|
} : {},
|
|
2148
|
-
defaultModelCode: configured?.model ?? discoveredModels.find((model) => model.isDefault)?.model,
|
|
2149
|
-
...configured ? { configuredModel: configured.model } : {}
|
|
2268
|
+
defaultModelCode: codexAccount.profile && !codexAccount.unavailable ? accountDefault : configured?.model ?? discoveredModels.find((model) => model.isDefault)?.model,
|
|
2269
|
+
...configured ? { configuredModel: codexAccount.profile && !codexAccount.unavailable ? accountDefault ?? null : configured.model } : {}
|
|
2150
2270
|
}));
|
|
2151
2271
|
}
|
|
2152
2272
|
} catch (error) {
|
|
2153
2273
|
logger.debug("[Codex] Model discovery unavailable; using compatibility fallback", safeCodexErrorMetadata(error));
|
|
2154
2274
|
}
|
|
2155
|
-
if (opts.resumeThreadId) {
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
|
|
2162
|
-
|
|
2163
|
-
|
|
2275
|
+
if (opts.resumeThreadId && !codexAccount.unavailable) {
|
|
2276
|
+
try {
|
|
2277
|
+
await resumeExistingThread({
|
|
2278
|
+
client,
|
|
2279
|
+
session,
|
|
2280
|
+
messageBuffer,
|
|
2281
|
+
threadId: opts.resumeThreadId,
|
|
2282
|
+
cwd: process.cwd(),
|
|
2283
|
+
mcpServers,
|
|
2284
|
+
// B-850b: after an account switch the thread moves to the
|
|
2285
|
+
// new account's model (its old one is sticky otherwise).
|
|
2286
|
+
...accountSwitched && machineDefaultModel ? { model: machineDefaultModel } : {}
|
|
2287
|
+
});
|
|
2288
|
+
} catch (error) {
|
|
2289
|
+
noteAccountFailure(error instanceof Error ? error.message : String(error));
|
|
2290
|
+
throw error;
|
|
2291
|
+
}
|
|
2164
2292
|
first = false;
|
|
2165
2293
|
appendSystemPromptInjected = true;
|
|
2166
2294
|
}
|
|
@@ -2356,7 +2484,10 @@ async function runCodex(opts) {
|
|
|
2356
2484
|
}
|
|
2357
2485
|
if (!client.hasActiveThread()) {
|
|
2358
2486
|
const startedThread = await client.startThread({
|
|
2359
|
-
|
|
2487
|
+
// B-850b: a new thread on an account starts on the account's
|
|
2488
|
+
// model — Codex would otherwise pick config.toml's, which
|
|
2489
|
+
// belongs to the machine's own provider.
|
|
2490
|
+
model: turnModel ?? (codexAccount.profile && !codexAccount.unavailable ? machineDefaultModel : void 0),
|
|
2360
2491
|
cwd: process.cwd(),
|
|
2361
2492
|
approvalPolicy: executionPolicy.approvalPolicy,
|
|
2362
2493
|
sandbox: executionPolicy.sandbox,
|
|
@@ -2411,6 +2542,7 @@ async function runCodex(opts) {
|
|
|
2411
2542
|
if (reason) {
|
|
2412
2543
|
messageBuffer.addMessage(`Task failed: ${reason}`, "status");
|
|
2413
2544
|
session.sendSessionEvent({ type: "message", message: `Codex error: ${reason}` });
|
|
2545
|
+
noteAccountFailure(reason);
|
|
2414
2546
|
} else {
|
|
2415
2547
|
const tail = codexStderrTailOf(error);
|
|
2416
2548
|
messageBuffer.addMessage("Process exited unexpectedly", "status");
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var node_crypto = require('node:crypto');
|
|
4
|
-
var logger = require('./logger-
|
|
4
|
+
var logger = require('./logger-CX3x2eI4.cjs');
|
|
5
5
|
var sessionExitLifecycle = require('./sessionExitLifecycle-DFltxXU8.cjs');
|
|
6
6
|
|
|
7
7
|
class BaseReasoningProcessor {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { randomUUID } from 'node:crypto';
|
|
2
|
-
import { l as logger } from './logger-
|
|
2
|
+
import { l as logger } from './logger-JV7-4Q_6.mjs';
|
|
3
3
|
import { O as OFFLINE_EXIT_STAMP_TIMEOUT_MS } from './sessionExitLifecycle-CzkLIgNZ.mjs';
|
|
4
4
|
|
|
5
5
|
class BaseReasoningProcessor {
|
|
@@ -4,15 +4,15 @@ var require$$0 = require('fs');
|
|
|
4
4
|
var require$$1 = require('path');
|
|
5
5
|
var os = require('os');
|
|
6
6
|
var child_process = require('child_process');
|
|
7
|
-
var logger = require('./logger-
|
|
7
|
+
var logger = require('./logger-CX3x2eI4.cjs');
|
|
8
8
|
var constants = require('./constants-VJ0N6WuG.cjs');
|
|
9
9
|
require('chalk');
|
|
10
10
|
require('node:util');
|
|
11
|
-
require('./configuration-
|
|
11
|
+
require('./configuration-BBK0rmmj.cjs');
|
|
12
12
|
require('node:fs');
|
|
13
13
|
require('node:os');
|
|
14
14
|
require('node:path');
|
|
15
|
-
require('./package-
|
|
15
|
+
require('./package-uzlvxa5S.cjs');
|
|
16
16
|
require('node:fs/promises');
|
|
17
17
|
require('./trimIdent-4gvk9Wk6.cjs');
|
|
18
18
|
|
|
@@ -2,15 +2,15 @@ import { existsSync, readFileSync, mkdirSync, writeFileSync } from 'fs';
|
|
|
2
2
|
import { join } from 'path';
|
|
3
3
|
import { homedir } from 'os';
|
|
4
4
|
import { execSync } from 'child_process';
|
|
5
|
-
import { l as logger } from './logger-
|
|
5
|
+
import { l as logger } from './logger-JV7-4Q_6.mjs';
|
|
6
6
|
import { D as DEFAULT_GEMINI_MODEL, G as GEMINI_MODEL_ENV } from './constants-BC4St0xd.mjs';
|
|
7
7
|
import 'chalk';
|
|
8
8
|
import 'node:util';
|
|
9
|
-
import './configuration-
|
|
9
|
+
import './configuration-ThKBP_zY.mjs';
|
|
10
10
|
import 'node:fs';
|
|
11
11
|
import 'node:os';
|
|
12
12
|
import 'node:path';
|
|
13
|
-
import './package-
|
|
13
|
+
import './package-Bw3H6VLn.mjs';
|
|
14
14
|
import 'node:fs/promises';
|
|
15
15
|
import './trimIdent-BAjmv_TG.mjs';
|
|
16
16
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var node_fs = require('node:fs');
|
|
4
4
|
var os = require('node:os');
|
|
5
5
|
var path = require('node:path');
|
|
6
|
-
var _package = require('./package-
|
|
6
|
+
var _package = require('./package-uzlvxa5S.cjs');
|
|
7
7
|
var promises = require('node:fs/promises');
|
|
8
8
|
|
|
9
9
|
const PRIVATE_DIRECTORY_MODE = 448;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { mkdirSync, chmodSync, readdirSync, statSync, appendFileSync, writeFileSync, existsSync, readFileSync } from 'node:fs';
|
|
2
2
|
import { homedir } from 'node:os';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
|
-
import { p as packageJson } from './package-
|
|
4
|
+
import { p as packageJson } from './package-Bw3H6VLn.mjs';
|
|
5
5
|
import { mkdir, chmod, writeFile } from 'node:fs/promises';
|
|
6
6
|
|
|
7
7
|
const PRIVATE_DIRECTORY_MODE = 448;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { homedir } from 'os';
|
|
3
3
|
import { join } from 'path';
|
|
4
|
-
import { b as readCredentialsForConfiguredRelay } from './persistence-
|
|
5
|
-
import { A as ApiClient } from './api-
|
|
6
|
-
import { f as ensurePrivateDirectorySync, w as writePrivateFileSync } from './configuration-
|
|
4
|
+
import { b as readCredentialsForConfiguredRelay } from './persistence-Cg4sfjQV.mjs';
|
|
5
|
+
import { A as ApiClient } from './api-DUfunY3x.mjs';
|
|
6
|
+
import { f as ensurePrivateDirectorySync, w as writePrivateFileSync } from './configuration-ThKBP_zY.mjs';
|
|
7
7
|
import { createServer } from 'http';
|
|
8
8
|
import { randomBytes, createHash } from 'crypto';
|
|
9
|
-
import { o as openBrowser } from './browser-
|
|
9
|
+
import { o as openBrowser } from './browser-LHW2hBH8.mjs';
|
|
10
10
|
import { exec } from 'child_process';
|
|
11
11
|
import { promisify } from 'util';
|
|
12
12
|
import 'node:fs/promises';
|
|
@@ -15,29 +15,29 @@ import 'zod';
|
|
|
15
15
|
import './authRelay-DhQhkBvX.mjs';
|
|
16
16
|
import 'node:crypto';
|
|
17
17
|
import 'tweetnacl';
|
|
18
|
-
import './logger-
|
|
18
|
+
import './logger-JV7-4Q_6.mjs';
|
|
19
19
|
import 'node:util';
|
|
20
20
|
import 'node:path';
|
|
21
21
|
import 'axios';
|
|
22
|
-
import './lidState-
|
|
22
|
+
import './lidState-B6yYKjNK.mjs';
|
|
23
23
|
import 'node:events';
|
|
24
24
|
import 'socket.io-client';
|
|
25
|
-
import './pushNotifications-
|
|
26
|
-
import './index-
|
|
25
|
+
import './pushNotifications-BbE-qV9I.mjs';
|
|
26
|
+
import './index-D1YnIih6.mjs';
|
|
27
27
|
import '@paralleldrive/cuid2';
|
|
28
28
|
import './contentLogMetadata-BlWI0egu.mjs';
|
|
29
29
|
import './limits-DIo7rEBR.mjs';
|
|
30
|
-
import './time-
|
|
31
|
-
import './registerCommonHandlers-
|
|
30
|
+
import './time-Cw0liIqB.mjs';
|
|
31
|
+
import './registerCommonHandlers-Cj3Nl9y-.mjs';
|
|
32
32
|
import 'fs/promises';
|
|
33
33
|
import 'cross-spawn';
|
|
34
34
|
import './projectPath-BTBIMB57.mjs';
|
|
35
35
|
import 'url';
|
|
36
|
-
import './sync-
|
|
36
|
+
import './sync-BP6vnxVP.mjs';
|
|
37
37
|
import './backgroundTaskActivity-8PdPxrvy.mjs';
|
|
38
|
-
import './controlClient-
|
|
38
|
+
import './controlClient-Ckl8N1MS.mjs';
|
|
39
39
|
import 'node:os';
|
|
40
|
-
import './package-
|
|
40
|
+
import './package-Bw3H6VLn.mjs';
|
|
41
41
|
import 'open';
|
|
42
42
|
|
|
43
43
|
const CLIENT_ID$2 = "app_EMoamEEZ73f0CkXaXp7hrann";
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
var chalk = require('chalk');
|
|
4
4
|
var os = require('os');
|
|
5
5
|
var require$$1 = require('path');
|
|
6
|
-
var persistence = require('./persistence-
|
|
7
|
-
var api = require('./api-
|
|
8
|
-
var configuration = require('./configuration-
|
|
6
|
+
var persistence = require('./persistence-CsmAgN-C.cjs');
|
|
7
|
+
var api = require('./api-CBE_a88I.cjs');
|
|
8
|
+
var configuration = require('./configuration-BBK0rmmj.cjs');
|
|
9
9
|
var http = require('http');
|
|
10
10
|
var require$$3 = require('crypto');
|
|
11
|
-
var browser = require('./browser-
|
|
11
|
+
var browser = require('./browser-v1pdPP1E.cjs');
|
|
12
12
|
var child_process = require('child_process');
|
|
13
13
|
var util = require('util');
|
|
14
14
|
require('node:fs/promises');
|
|
@@ -17,29 +17,29 @@ require('zod');
|
|
|
17
17
|
require('./authRelay-Dy1qU9td.cjs');
|
|
18
18
|
require('node:crypto');
|
|
19
19
|
require('tweetnacl');
|
|
20
|
-
require('./logger-
|
|
20
|
+
require('./logger-CX3x2eI4.cjs');
|
|
21
21
|
require('node:util');
|
|
22
22
|
require('node:path');
|
|
23
23
|
require('axios');
|
|
24
|
-
require('./lidState-
|
|
24
|
+
require('./lidState-B_v6qgfE.cjs');
|
|
25
25
|
require('node:events');
|
|
26
26
|
require('socket.io-client');
|
|
27
|
-
require('./pushNotifications-
|
|
28
|
-
require('./index-
|
|
27
|
+
require('./pushNotifications-BCg7YAiu.cjs');
|
|
28
|
+
require('./index-BUFrKZeQ.cjs');
|
|
29
29
|
require('@paralleldrive/cuid2');
|
|
30
30
|
require('./contentLogMetadata-ZSFk_NjQ.cjs');
|
|
31
31
|
require('./limits-C-a7gr04.cjs');
|
|
32
|
-
require('./time-
|
|
33
|
-
require('./registerCommonHandlers-
|
|
32
|
+
require('./time-BTLcO8jp.cjs');
|
|
33
|
+
require('./registerCommonHandlers-CZGmrPbT.cjs');
|
|
34
34
|
require('fs/promises');
|
|
35
35
|
require('cross-spawn');
|
|
36
36
|
require('./projectPath-C3ioB4Bu.cjs');
|
|
37
37
|
require('url');
|
|
38
|
-
require('./sync-
|
|
38
|
+
require('./sync-WYBwkJvG.cjs');
|
|
39
39
|
require('./backgroundTaskActivity-CBvUdj39.cjs');
|
|
40
|
-
require('./controlClient-
|
|
40
|
+
require('./controlClient-DwWTns3A.cjs');
|
|
41
41
|
require('node:os');
|
|
42
|
-
require('./package-
|
|
42
|
+
require('./package-uzlvxa5S.cjs');
|
|
43
43
|
require('open');
|
|
44
44
|
|
|
45
45
|
const CLIENT_ID$2 = "app_EMoamEEZ73f0CkXaXp7hrann";
|
|
@@ -3,7 +3,7 @@ import { constants } from 'node:fs';
|
|
|
3
3
|
import { isAbsolute, join, dirname } from 'node:path';
|
|
4
4
|
import { randomUUID } from 'node:crypto';
|
|
5
5
|
import { z } from 'zod';
|
|
6
|
-
import { n as normalizeHttpEndpoint, c as configuration } from './configuration-
|
|
6
|
+
import { n as normalizeHttpEndpoint, c as configuration } from './configuration-ThKBP_zY.mjs';
|
|
7
7
|
|
|
8
8
|
const TeamScopeSchema = z.object({
|
|
9
9
|
serverUrl: z.string(),
|
|
@@ -5,7 +5,7 @@ var node_fs = require('node:fs');
|
|
|
5
5
|
var path = require('node:path');
|
|
6
6
|
var node_crypto = require('node:crypto');
|
|
7
7
|
var z = require('zod');
|
|
8
|
-
var configuration = require('./configuration-
|
|
8
|
+
var configuration = require('./configuration-BBK0rmmj.cjs');
|
|
9
9
|
|
|
10
10
|
const TeamScopeSchema = z.z.object({
|
|
11
11
|
serverUrl: z.z.string(),
|