very-happy-cli 0.2.192 → 0.2.194
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-CGHTDJd9.mjs → AcpBackend-C3Kx0QJb.mjs} +3 -3
- package/dist/{AcpBackend-BQO4ShOy.cjs → AcpBackend-DJzsue14.cjs} +3 -3
- package/dist/{AcpSessionManager-LlUMmcpB.cjs → AcpSessionManager-Bc3iafB1.cjs} +2 -2
- package/dist/{AcpSessionManager-G0xD6Jbq.mjs → AcpSessionManager-SteuoqMY.mjs} +2 -2
- package/dist/{BasePermissionHandler-BmTIg376.mjs → BasePermissionHandler-D2pNcAXn.mjs} +1 -1
- package/dist/{BasePermissionHandler-N6Ip3tFt.cjs → BasePermissionHandler-DKzNFVCh.cjs} +1 -1
- package/dist/{account-DtaouikP.cjs → account-ByVjlvFj.cjs} +84 -27
- package/dist/{account-CCVT-HO_.mjs → account-DC2YyU24.mjs} +84 -27
- package/dist/{accountService-Dd9uqde2.mjs → accountService-Cd7bnkfd.mjs} +369 -19
- package/dist/{accountService-Bddy0zwL.cjs → accountService-CuUSJDhP.cjs} +369 -19
- package/dist/{acpSessionResume-BWEUxNtC.mjs → acpSessionResume-B6VClxKQ.mjs} +1 -1
- package/dist/{acpSessionResume-BnHDk5eD.cjs → acpSessionResume-DHHgbNnk.cjs} +1 -1
- package/dist/{agentHome-B0VnjkZW.mjs → agentHome-9caXwo7k.mjs} +4 -4
- package/dist/{agentHome-CqQ29YY7.cjs → agentHome-Bov1aHYS.cjs} +4 -4
- package/dist/{api-_LeBScjg.mjs → api-aE60mNjs.mjs} +10 -10
- package/dist/{api-hMDsC6Wg.cjs → api-wYwQCJml.cjs} +10 -10
- package/dist/{apiMachine-CgRldeJ6.mjs → apiMachine-CvNB38Xg.mjs} +36 -19
- package/dist/{apiMachine-CqW2m6Zr.cjs → apiMachine-DwaqfM9Q.cjs} +36 -19
- package/dist/{attachmentContent-CyptLIfq.mjs → attachmentContent-C2ymY_-w.mjs} +2 -2
- package/dist/{attachmentContent-BEeT2J5n.cjs → attachmentContent-DB8ZsxGE.cjs} +2 -2
- package/dist/{auth-CFQikywl.mjs → auth-BYtmGgE1.mjs} +8 -8
- package/dist/{auth-CA1OClsW.cjs → auth-Bce0Zk3q.cjs} +8 -8
- package/dist/{auth-DL8_J9vu.mjs → auth-CWO6cQ4G.mjs} +5 -5
- package/dist/{auth-C9NvNHhL.cjs → auth-boIcb7iq.cjs} +5 -5
- package/dist/{auto-uQOxlxLp.cjs → auto-AaggdihK.cjs} +24 -22
- package/dist/{auto-CKI05w1D.mjs → auto-B-kopWQx.mjs} +24 -22
- package/dist/{bootstrap-DaZ0Np7X.mjs → bootstrap-CiWwfHB2.mjs} +2 -2
- package/dist/{bootstrap-DsZGc69k.cjs → bootstrap-kywZ0tvD.cjs} +2 -2
- package/dist/{browser-BUIaSHK2.mjs → browser-CFfZM3yg.mjs} +1 -1
- package/dist/{browser-Ft0ASDm7.cjs → browser-Do2MFdq6.cjs} +1 -1
- package/dist/{claudeAccountEnv-ON24i0qv.mjs → claudeAccountEnv-BL1pR_37.mjs} +2 -1
- package/dist/{claudeAccountEnv-BOBpJ3k8.cjs → claudeAccountEnv-CEX_EMZr.cjs} +2 -1
- package/dist/{claudeLocal-B1ZVtryl.mjs → claudeLocal-B47NjZfB.mjs} +5 -5
- package/dist/{claudeLocal-BMf9t4Fa.cjs → claudeLocal-DLd8ogcH.cjs} +5 -5
- package/dist/{claudeLocalLauncher-Bp8bqF4y.mjs → claudeLocalLauncher-5DDuHpCD.mjs} +10 -10
- package/dist/{claudeLocalLauncher-C8TeJcfF.cjs → claudeLocalLauncher-D_UTQ4o_.cjs} +10 -10
- package/dist/{claudeSessionFork-YiktY55n.cjs → claudeSessionFork-4g6-Sk3Q.cjs} +104 -38
- package/dist/{claudeSessionFork-8AA47z8Y.mjs → claudeSessionFork-BrJTncNL.mjs} +105 -40
- package/dist/{client-Crh8_cNx.cjs → client-BIg2LPVx.cjs} +2 -2
- package/dist/{client-CFHZfh9x.cjs → client-BfDga3xi.cjs} +4 -4
- package/dist/{client-Bm4oKvW7.mjs → client-Cbxr9VUE.mjs} +4 -2
- package/dist/{client-D8XROyZc.cjs → client-CsfPUxLy.cjs} +4 -2
- package/dist/{client-BmPaBnDK.mjs → client-DS5JEsHs.mjs} +4 -4
- package/dist/{client-Cxlp_D4I.mjs → client-OjYRPhZs.mjs} +2 -2
- 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-q8GHQhyC.cjs → codexAppServerClient-Bj5vN7sb.cjs} +18 -7
- package/dist/{codexAppServerClient-BWJbLCQn.mjs → codexAppServerClient-HKAm8f_D.mjs} +18 -7
- package/dist/{codexCommand-BfXfRQr4.mjs → codexCommand-655pR6CR.mjs} +188 -58
- package/dist/{codexCommand-BgpGg-Zy.cjs → codexCommand-DtbDjHZp.cjs} +187 -57
- package/dist/{codexTermination-CVUF0X75.cjs → codexTermination-CX_FHKT5.cjs} +1 -1
- package/dist/{codexTermination-s9fd1gkA.mjs → codexTermination-DxLR-bb5.mjs} +1 -1
- package/dist/{codexThreadFork-5kwoKjMu.cjs → codexThreadFork-C6ZmcT2z.cjs} +22 -1
- package/dist/{codexThreadFork-DobPd19R.mjs → codexThreadFork-CVzAqELg.mjs} +22 -2
- package/dist/{config-BF8XgLyc.mjs → config-CIvXVGlP.mjs} +3 -3
- package/dist/{config-BAjyTyYp.cjs → config-Cv-A-Bw0.cjs} +3 -3
- package/dist/{configuration-CXEVKAyF.cjs → configuration-2Pbg3a0H.cjs} +1 -1
- package/dist/{configuration-IhRiLDVe.mjs → configuration-rTcdHkhE.mjs} +1 -1
- package/dist/{connect-LZh1gr08.mjs → connect-B9Bl68PF.mjs} +13 -13
- package/dist/{connect-rCS56arw.cjs → connect-BAYNAE8A.cjs} +13 -13
- package/dist/{context-DO6F5YwH.mjs → context-C7QarZMk.mjs} +1 -1
- package/dist/{context-3_S_mWz9.cjs → context-CLTyu_tQ.cjs} +1 -1
- package/dist/{controlClient-8ILulwjc.mjs → controlClient-BIdGnYBo.mjs} +3 -3
- package/dist/{controlClient-j7p5p3_7.cjs → controlClient-CIqHL07h.cjs} +3 -3
- package/dist/{createSessionMetadata-DwdD_uVo.cjs → createSessionMetadata-BHjzRzPc.cjs} +2 -2
- package/dist/{createSessionMetadata-oyaTZm1b.mjs → createSessionMetadata-PrN-dT7K.mjs} +2 -2
- package/dist/{daemonAccounts-BCjDgoNt.cjs → daemonAccounts-CpGDY_4k.cjs} +4 -1
- package/dist/{daemonAccounts-BJgt6IJe.mjs → daemonAccounts-DwPwKxvv.mjs} +5 -2
- package/dist/{defaultPermissionMode-BFShzF55.cjs → defaultPermissionMode-BakXiqRr.cjs} +1 -1
- package/dist/{defaultPermissionMode-Lt3PUCwY.mjs → defaultPermissionMode-DF5AfeBb.mjs} +1 -1
- package/dist/{deterministicJson-Dfp-7wUZ.mjs → deterministicJson-DFwJ57jR.mjs} +13 -13
- package/dist/{deterministicJson-DUN0v3St.cjs → deterministicJson-ZBFn1jtS.cjs} +13 -13
- package/dist/{doctor-B_UwMcVT.mjs → doctor-CFYpAXvt.mjs} +7 -7
- package/dist/{doctor-FgUYTbAT.cjs → doctor-yyM-zii7.cjs} +7 -7
- package/dist/{downloadTarget-C0d6jRx-.mjs → downloadTarget-CVPBZMnY.mjs} +6 -6
- package/dist/{downloadTarget-BrrQEDxg.cjs → downloadTarget-DlmqPQp9.cjs} +6 -6
- package/dist/{ensureDaemonRunning-KUMFfIil.mjs → ensureDaemonRunning-B6Y-CMWe.mjs} +5 -5
- package/dist/{ensureDaemonRunning-Cq4FYI5Q.cjs → ensureDaemonRunning-D2ny0yon.cjs} +5 -5
- package/dist/{handleResumeCommand-Cl9GIL5F.cjs → handleResumeCommand-D-mGugcu.cjs} +5 -5
- package/dist/{handleResumeCommand-BGhVo3QH.mjs → handleResumeCommand-DlrDcV5B.mjs} +5 -5
- package/dist/{index-CQ_hLLCj.cjs → index-2Fcq3AGX.cjs} +3 -3
- package/dist/{index-CRipkiqo.cjs → index-5c33fqLQ.cjs} +4 -4
- package/dist/{index-JQDyJ3Li.mjs → index-BJsenPFp.mjs} +3 -3
- package/dist/{index-BzAYnYct.cjs → index-BUFrKZeQ.cjs} +198 -108
- package/dist/{index-D8ODb0_U.cjs → index-BWvmUCQF.cjs} +42 -42
- package/dist/{index-v5EmjT8l.mjs → index-Bi3dVJ0S.mjs} +4 -4
- package/dist/{index-CZaLMmPC.cjs → index-CPkSLWP_.cjs} +4 -4
- package/dist/{index-DYD3GM1m.mjs → index-D1YnIih6.mjs} +195 -109
- package/dist/{index-BjXjMhGY.mjs → index-DEN6vfEY.mjs} +4 -4
- package/dist/{index-Ca1Tt96A.mjs → index-DuDD9khO.mjs} +43 -43
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{install-ClUA9tbC.cjs → install-BOA4nEbm.cjs} +3 -3
- package/dist/{install-D6EHRtAN.mjs → install-BVYL-wSO.mjs} +3 -3
- package/dist/lib.cjs +12 -12
- package/dist/lib.d.cts +97 -25
- package/dist/lib.d.mts +97 -25
- package/dist/lib.mjs +12 -12
- package/dist/{lidState-DqoN7zH4.cjs → lidState-DYeb7Wud.cjs} +1 -1
- package/dist/{lidState-CZOXXdzv.mjs → lidState-zy20u7T3.mjs} +1 -1
- package/dist/{localHappyAgentAuth-YHxDZ4x4.mjs → localHappyAgentAuth-CBsX08VJ.mjs} +1 -1
- package/dist/{localHappyAgentAuth-BnGCpHRX.cjs → localHappyAgentAuth-CScN2McN.cjs} +1 -1
- package/dist/{logger-8su64lqR.cjs → logger-CepF8C5Z.cjs} +2 -2
- package/dist/{logger-Fd_rNvgd.mjs → logger-SGCwRIV5.mjs} +2 -2
- package/dist/{machineMetadata-1HIIC7Bc.mjs → machineMetadata-ClJfd7ay.mjs} +3 -3
- package/dist/{machineMetadata-DYXt3p6u.cjs → machineMetadata-ObK4hjF0.cjs} +3 -3
- package/dist/{main-BI6GIzUL.mjs → main-C7ZcZVBY.mjs} +47 -47
- package/dist/{main-C_GrcYkn.cjs → main-mhXOpUV7.cjs} +47 -47
- package/dist/{mcp-XGoxywno.mjs → mcp-BuCpkYTY.mjs} +18 -18
- package/dist/{mcp-BycIv9oQ.cjs → mcp-Zz7m0j8A.cjs} +18 -18
- package/dist/{mirrorProtocol-DXT3rv7T.mjs → mirrorProtocol-B0H9UTBM.mjs} +3 -3
- package/dist/{mirrorProtocol-DVnB8EO8.cjs → mirrorProtocol-IhICxf0K.cjs} +3 -3
- package/dist/{package-iuLlSiSF.cjs → package-C7WgesIw.cjs} +7 -7
- package/dist/{package-6KkRAops.mjs → package-Q_ELj5DL.mjs} +7 -7
- package/dist/{panels-B5Di2zb2.mjs → panels-Cm69UXgE.mjs} +5 -5
- package/dist/{panels-0C89q0Tu.cjs → panels-yyxpwZnk.cjs} +5 -5
- package/dist/{peerTools-CANTX_mG.cjs → peerTools-BcZAbqBL.cjs} +5 -5
- package/dist/{peerTools-CKJ-IDM4.mjs → peerTools-DUg9RduG.mjs} +5 -5
- package/dist/{persistence-B4ttN-fR.cjs → persistence-D0gNvqXe.cjs} +2 -2
- package/dist/{persistence-DWcHe035.mjs → persistence-mr4Y484W.mjs} +2 -2
- package/dist/{piRunnerArgs-Bl5GpBoN.mjs → piRunnerArgs-CGjpl4iF.mjs} +1 -1
- package/dist/{piRunnerArgs-BOkfxyak.cjs → piRunnerArgs-DK_DDkYW.cjs} +1 -1
- package/dist/{piRuntime-DzrIiZU8.cjs → piRuntime-CtZRNOEb.cjs} +1 -1
- package/dist/{piRuntime-BhwxzdQf.mjs → piRuntime-HUA19wG8.mjs} +1 -1
- package/dist/{piTerminal-DnA2CbGr.mjs → piTerminal-Bgy1W9mA.mjs} +20 -20
- package/dist/{piTerminal-BdS7ol7v.cjs → piTerminal-D9OPouek.cjs} +20 -20
- package/dist/{pushNotifications-BqFoLye2.cjs → pushNotifications-CH0XVPQe.cjs} +3 -3
- package/dist/{pushNotifications-DkQ0yvFs.mjs → pushNotifications-DjEl8G0a.mjs} +3 -3
- package/dist/{query-BQ4br3yn.cjs → query-Df3WhSA0.cjs} +1 -1
- package/dist/{query-BRJYSkb1.mjs → query-DmIo5OXf.mjs} +1 -1
- package/dist/{rateLimitReporter-BRbYkmuP.mjs → rateLimitReporter-B_PZClib.mjs} +3 -3
- package/dist/{rateLimitReporter-DK5SQuCc.cjs → rateLimitReporter-M_IKRRS7.cjs} +3 -3
- package/dist/{rateLimitWindows-DBfiuYeg.cjs → rateLimitWindows-B9PERFm1.cjs} +1 -1
- package/dist/{rateLimitWindows-Da5AR-4u.mjs → rateLimitWindows-a2yE3kCv.mjs} +1 -1
- package/dist/{registerCommonHandlers-yQ7Ru-l0.mjs → registerCommonHandlers-CND00Dpj.mjs} +2 -2
- package/dist/{registerCommonHandlers-m6pxxf2J.cjs → registerCommonHandlers-D4uXC0he.cjs} +2 -2
- package/dist/{registerKillSessionHandler-BDNpi7YO.mjs → registerKillSessionHandler-CwyHwm_n.mjs} +6 -6
- package/dist/{registerKillSessionHandler-BAOIa_Fs.cjs → registerKillSessionHandler-DQKsD9CW.cjs} +6 -6
- package/dist/{remoteSessionClient-iJMXRN_D.cjs → remoteSessionClient-DOWgca08.cjs} +5 -5
- package/dist/{remoteSessionClient-CZ7aaNgj.mjs → remoteSessionClient-mIr_9OL_.mjs} +5 -5
- package/dist/{reportProgressTool-DpFs7pSe.cjs → reportProgressTool-BLw2_Ohi.cjs} +3 -3
- package/dist/{reportProgressTool-DfQhPu0s.mjs → reportProgressTool-DTKlUlHv.mjs} +3 -3
- package/dist/{run-p-xp1_HY.cjs → run-1V6DLzTY.cjs} +178 -847
- package/dist/{run-CwN28mcj.mjs → run-bfxXYL5N.mjs} +176 -845
- package/dist/{runClaude-DRKtAGTm.mjs → runClaude-BgvDhl2p.mjs} +25 -25
- package/dist/{runClaude-D6U1Z575.cjs → runClaude-DuFgZZwO.cjs} +25 -25
- package/dist/{runClaudeDeps-BheVcIlD.mjs → runClaudeDeps-CX7GtH7O.mjs} +46 -46
- package/dist/{runClaudeDeps-Dkofokgb.cjs → runClaudeDeps-DeVinBmE.cjs} +41 -41
- package/dist/{runGemini-owbvhFbi.mjs → runGemini-Cd27u-7R.mjs} +33 -33
- package/dist/{runGemini-C8q3YCc0.cjs → runGemini-DiYSk3s1.cjs} +33 -33
- package/dist/{runOpenClaw-Dky3-mjO.mjs → runOpenClaw-CWkkfRSo.mjs} +18 -18
- package/dist/{runOpenClaw-DGeN66-t.cjs → runOpenClaw-DyQnBzpy.cjs} +18 -18
- package/dist/{sandbox-D2CPyoCA.cjs → sandbox-BAXXYewR.cjs} +4 -4
- package/dist/{sandbox-sq_wy9Gl.mjs → sandbox-C35zDrkc.mjs} +4 -4
- package/dist/selfCheck-DKMF0Dyu.mjs +88 -0
- package/dist/{selfCheck-BgLvQKSt.cjs → selfCheck-R71q-x7u.cjs} +39 -39
- package/dist/{send-Cd10YhXh.cjs → send-3Wa9th3D.cjs} +8 -8
- package/dist/{send-K9vg-8t-.mjs → send-DiSaR5Bk.mjs} +8 -8
- package/dist/{server-DRrV64r0.cjs → server-BJu2bFBy.cjs} +6 -6
- package/dist/{server-De4W1zuK.mjs → server-BxMJxaE6.mjs} +4 -4
- package/dist/{sessionLock-BDtSzzKS.cjs → sessionLock-BJ1ngLgm.cjs} +3 -3
- package/dist/{sessionLock-Dl6i7IgA.mjs → sessionLock-dbi4JPhP.mjs} +3 -3
- package/dist/{sessionOps-DvnEH4PL.cjs → sessionOps-BUlpeaUe.cjs} +50 -8
- package/dist/{sessionOps-gU88-W9F.mjs → sessionOps-C9wRmCBg.mjs} +51 -9
- package/dist/{sessionProvider-CKcIo7KO.mjs → sessionProvider-BEHfI5gs.mjs} +11 -9
- package/dist/{sessionProvider-CbSZeZrl.cjs → sessionProvider-DYD6JepE.cjs} +11 -9
- package/dist/{sessionScanner-7RtcCeyD.cjs → sessionScanner-BwbjEoSf.cjs} +3 -3
- package/dist/{sessionScanner-DR32uSby.mjs → sessionScanner-CFITViIZ.mjs} +3 -3
- package/dist/{sessions-BvuMjgvJ.cjs → sessions-C-wBd0fN.cjs} +10 -10
- package/dist/{sessions-DTt2Eguk.mjs → sessions-wOcO2X-k.mjs} +10 -10
- package/dist/{setupOfflineReconnection-DduOsw6p.cjs → setupOfflineReconnection-Bd6XsWhA.cjs} +2 -2
- package/dist/{setupOfflineReconnection-BGnvhRfb.mjs → setupOfflineReconnection-BrljmbqX.mjs} +2 -2
- package/dist/{spawn-CL3cUc7b.mjs → spawn-BPioepNz.mjs} +66 -22
- package/dist/{spawn-DMB6rRPA.cjs → spawn-Crprnq9Z.cjs} +66 -22
- package/dist/{spawnAgents-CClb7buD.cjs → spawnAgents-B9olJ8xn.cjs} +1 -1
- package/dist/{spawnAgents-CRMfOJhh.mjs → spawnAgents-I29H9nO8.mjs} +1 -1
- package/dist/{spawnHappyCLI-Cj_6IICe.mjs → spawnHappyCLI-BA1bTIiO.mjs} +1 -1
- package/dist/{spawnHappyCLI-DJdhX_Qx.cjs → spawnHappyCLI-C0XAWy8V.cjs} +1 -1
- package/dist/{startFileWatcher-DikVa8kg.mjs → startFileWatcher-COCEjNT8.mjs} +1 -1
- package/dist/{startFileWatcher-LnOmVW6H.cjs → startFileWatcher-Ca5izs24.cjs} +1 -1
- package/dist/{startupSessionCreate-CDdaLaMq.mjs → startupSessionCreate-BnEPBxsJ.mjs} +3 -3
- package/dist/{startupSessionCreate-B3ND-917.cjs → startupSessionCreate-Cmg1gkKS.cjs} +3 -3
- package/dist/{store-DV__wCvP.cjs → store-CkNa6oj4.cjs} +46 -9
- package/dist/{store--XN-7MS0.mjs → store-Vej_738f.mjs} +46 -10
- package/dist/{streamRelay-DFdOaLOn.cjs → streamRelay-C0G1HOOd.cjs} +1 -1
- package/dist/{streamRelay-sABnxEXq.mjs → streamRelay-C5U-C4GS.mjs} +1 -1
- package/dist/{sync-_2lsZ1U2.cjs → sync-BfrnSdL1.cjs} +1 -1
- package/dist/{sync-JoEZKRo8.mjs → sync-DVcNkv8e.mjs} +1 -1
- package/dist/{systemPrompt-Zq4HyrZ5.mjs → systemPrompt-BxZebU75.mjs} +2 -2
- package/dist/{systemPrompt-CJEvNCuW.cjs → systemPrompt-Os5ca7pu.cjs} +2 -2
- package/dist/{teams-BNZafnrT.cjs → teams--pv0QFMA.cjs} +7 -7
- package/dist/{teams-qz4LqKJ2.mjs → teams-CNB3DE_n.mjs} +7 -7
- package/dist/{template-LgvBbOna.cjs → template-B9pLEP8v.cjs} +2 -2
- package/dist/{template-CJ8BWSsc.mjs → template-CL9EvQLQ.mjs} +2 -2
- package/dist/{time-bzmet4s5.mjs → time-0Ru4clBD.mjs} +1 -1
- package/dist/{time-CaUlWSNJ.cjs → time-Da5GIiCa.cjs} +1 -1
- package/dist/{titleGenerator-BuIIu_JP.cjs → titleGenerator-9xIXHA5K.cjs} +3 -3
- package/dist/{titleGenerator-CbTtJ_1D.mjs → titleGenerator-CaCzpYyA.mjs} +2 -2
- package/dist/{todo-DIrVF_Ak.mjs → todo-CZXHl2Lg.mjs} +6 -6
- package/dist/{todo-CQ_BTf9C.cjs → todo-DUY_J3l_.cjs} +6 -6
- package/dist/{tools-cLOjBvPn.mjs → tools-DqA2Jt2R.mjs} +3 -2
- package/dist/{tools-BnmmFZji.cjs → tools-hPD2Hvei.cjs} +3 -2
- package/dist/{uninstall-C5OuW6dE.mjs → uninstall-CjMzELYw.mjs} +3 -3
- package/dist/{uninstall-uEEGKB84.cjs → uninstall-rTvdpRLt.cjs} +3 -3
- package/dist/{wrapperAccount-DXlD3bsO.mjs → wrapperAccount-BkufO_9g.mjs} +5 -4
- package/dist/{wrapperAccount-DzoGqS2b.cjs → wrapperAccount-D2A4DuZy.cjs} +6 -3
- package/package.json +7 -7
- package/dist/selfCheck-vkfrgQ7X.mjs +0 -88
|
@@ -1,45 +1,45 @@
|
|
|
1
1
|
import { io } from 'socket.io-client';
|
|
2
2
|
import { a as webPanelsSignature } from './webPanels-B2_C2-3g.mjs';
|
|
3
|
-
import { l as logger } from './logger-
|
|
4
|
-
import { R as RpcHandlerManager, i as isRateQuotaCode, p as pauseForRateQuota, s as socketConnectGuard, c as connectGuarded, a as answerSocketRequest, e as shouldReconnect, d as describeSocketAckDrop } from './lidState-
|
|
5
|
-
import { i as isClaudeSessionId, s as stableVersion, a as sanitizeTagList, p as pickMirrorForTerminal, l as liveSnapshotChanged, b as sanitizeLiveSnapshot, c as serializeLiveSnapshot, r as registerWorktreeHandlers, d as configureWorktreeService, e as summarizeSpawnSessionForLog, f as parseMirrorSendParams } from './mirrorProtocol-
|
|
6
|
-
import { c as configuration } from './configuration-
|
|
3
|
+
import { l as logger } from './logger-SGCwRIV5.mjs';
|
|
4
|
+
import { R as RpcHandlerManager, i as isRateQuotaCode, p as pauseForRateQuota, s as socketConnectGuard, c as connectGuarded, a as answerSocketRequest, e as shouldReconnect, d as describeSocketAckDrop } from './lidState-zy20u7T3.mjs';
|
|
5
|
+
import { i as isClaudeSessionId, s as stableVersion, a as sanitizeTagList, p as pickMirrorForTerminal, l as liveSnapshotChanged, b as sanitizeLiveSnapshot, c as serializeLiveSnapshot, r as registerWorktreeHandlers, d as configureWorktreeService, e as summarizeSpawnSessionForLog, f as parseMirrorSendParams } from './mirrorProtocol-B0H9UTBM.mjs';
|
|
6
|
+
import { c as configuration } from './configuration-rTcdHkhE.mjs';
|
|
7
7
|
import { w as withCurrentCliUpdateState } from './cliUpdate-Y34VGe9Y.mjs';
|
|
8
|
-
import { r as registerCommonHandlers } from './registerCommonHandlers-
|
|
8
|
+
import { r as registerCommonHandlers } from './registerCommonHandlers-CND00Dpj.mjs';
|
|
9
9
|
import { stat, readdir, lstat, open, readFile, rm, mkdir, chmod, writeFile, rename } from 'node:fs/promises';
|
|
10
10
|
import { join, isAbsolute, resolve } from 'node:path';
|
|
11
11
|
import os, { homedir } from 'node:os';
|
|
12
12
|
import { f as fsMkdir } from './fsMkdir-DumgLTzR.mjs';
|
|
13
13
|
import { spawn, execFile, spawnSync } from 'node:child_process';
|
|
14
|
-
import { r as readSettings, c as readPersistedSessions, p as readTrackedClaudeSessionIds, q as readTrackedCodexThreadIds } from './persistence-
|
|
14
|
+
import { r as readSettings, c as readPersistedSessions, p as readTrackedClaudeSessionIds, q as readTrackedCodexThreadIds } from './persistence-mr4Y484W.mjs';
|
|
15
15
|
import { M as ModelConfigError } from './fileStore-5qpetZS0.mjs';
|
|
16
|
-
import {
|
|
17
|
-
import { a as AccountError } from './accountService-
|
|
16
|
+
import { a7 as AGENT_PROFILE_RPC, a8 as RelayCandidatesResponseSchema, a4 as RelayAssignmentResponseSchema, a3 as ReleaseDrainNoticeSchema } from './index-D1YnIih6.mjs';
|
|
17
|
+
import { a as AccountError } from './accountService-Cd7bnkfd.mjs';
|
|
18
18
|
import { e as encodeBase64, g as encrypt, h as decrypt, d as decodeBase64 } from './authRelay-DhQhkBvX.mjs';
|
|
19
19
|
import { p as prepareClipboardText, d as prepareClipboardHistoryText } from './limits-DIo7rEBR.mjs';
|
|
20
|
-
import { b as backoff, d as delay } from './time-
|
|
20
|
+
import { b as backoff, d as delay } from './time-0Ru4clBD.mjs';
|
|
21
21
|
import * as pty from 'node-pty';
|
|
22
22
|
import { a as attachStartupCommand, v as validateTerminalTags, d as deriveAutoTitle, T as TMUX_SESSION_ID_RE, i as isSafeTmuxSessionName, b as isVhSessionName, U as USER_SESSIONS_FORMAT, p as parseUserSessions, L as LIST_SESSIONS_FORMAT, c as parseSessionListLine, e as LIST_FIELD_SEP, s as sendToVhTerminal } from './terminals-Dlg0x3nY.mjs';
|
|
23
23
|
import { t as tmuxArgs, V as VH_TMUX_SOCKET_ENV, a as scrubTmuxClientEnv } from './tmuxSocket-B8Yx20sT.mjs';
|
|
24
|
-
import { locateClaudeConversation, refreshAgentHomes } from './index-
|
|
24
|
+
import { locateClaudeConversation, refreshAgentHomes } from './index-Bi3dVJ0S.mjs';
|
|
25
25
|
import { randomBytes } from 'node:crypto';
|
|
26
26
|
import { readdirSync, unlinkSync, existsSync, mkdirSync, writeFileSync, readFileSync, statSync, chmodSync, renameSync, rmSync, accessSync, constants } from 'node:fs';
|
|
27
27
|
import axios from 'axios';
|
|
28
28
|
import { p as projectPath } from './projectPath-BTBIMB57.mjs';
|
|
29
29
|
import { a as isValidTerminalId } from './ids-DU6sLx4C.mjs';
|
|
30
30
|
import { d as detectCLIAvailability } from './detectCLI-CSGMlV51.mjs';
|
|
31
|
-
import { d as detectResumeSupport } from './localHappyAgentAuth-
|
|
31
|
+
import { d as detectResumeSupport } from './localHappyAgentAuth-CBsX08VJ.mjs';
|
|
32
32
|
import { g as getProjectPath, a as getClaudeProjectsRoot } from './path-D2wdaNSk.mjs';
|
|
33
33
|
import { i as isVeryHappyOneShotPrompt } from './oneShotPrompts-DT4p6RNd.mjs';
|
|
34
|
-
import { f as forkSession, F as ForkSourceMissingError, d as discardForkedSession, l as listClaudeRewindPoints,
|
|
35
|
-
import { C as CodexAppServerClient } from './codexAppServerClient-
|
|
36
|
-
import { f as forkCodexThread, C as CodexForkRewindPointNotFoundError, l as listCodexRewindPoints,
|
|
37
|
-
import { p as planRateLimitWrite, m as mergeRateLimitReports } from './rateLimitWindows-
|
|
34
|
+
import { f as forkSession, F as ForkSourceMissingError, d as discardForkedSession, l as listClaudeRewindPoints, b as forkAndTruncateSession, c as ForkTruncateUuidNotFoundError, e as forkBeforeUserMessage, a as forkCompletedTurns } from './claudeSessionFork-BrJTncNL.mjs';
|
|
35
|
+
import { C as CodexAppServerClient } from './codexAppServerClient-HKAm8f_D.mjs';
|
|
36
|
+
import { f as forkCodexThread, C as CodexForkRewindPointNotFoundError, l as listCodexRewindPoints, b as forkCodexBeforeUserMessage, a as forkCodexCompletedTurns } from './codexThreadFork-CVzAqELg.mjs';
|
|
37
|
+
import { p as planRateLimitWrite, m as mergeRateLimitReports } from './rateLimitWindows-a2yE3kCv.mjs';
|
|
38
38
|
import 'chalk';
|
|
39
39
|
import 'node:util';
|
|
40
40
|
import 'os';
|
|
41
41
|
import 'child_process';
|
|
42
|
-
import './package-
|
|
42
|
+
import './package-Q_ELj5DL.mjs';
|
|
43
43
|
import 'util';
|
|
44
44
|
import 'fs/promises';
|
|
45
45
|
import 'crypto';
|
|
@@ -47,14 +47,15 @@ import 'path';
|
|
|
47
47
|
import 'cross-spawn';
|
|
48
48
|
import 'zod';
|
|
49
49
|
import '@paralleldrive/cuid2';
|
|
50
|
-
import './claudeAccountEnv-
|
|
51
|
-
import './store
|
|
50
|
+
import './claudeAccountEnv-BL1pR_37.mjs';
|
|
51
|
+
import './store-Vej_738f.mjs';
|
|
52
|
+
import './codexAccount-NOX5pmQf.mjs';
|
|
53
|
+
import 'node:readline';
|
|
52
54
|
import 'tweetnacl';
|
|
53
55
|
import './terminalTitleSuggest-CeKsX_V6.mjs';
|
|
54
56
|
import './loginShellEnv-Dw8M7tkI.mjs';
|
|
55
57
|
import 'url';
|
|
56
58
|
import 'fs';
|
|
57
|
-
import 'node:readline';
|
|
58
59
|
import './contentLogMetadata-BlWI0egu.mjs';
|
|
59
60
|
import './manager-BEsI4qt3.mjs';
|
|
60
61
|
import '@anthropic-ai/sandbox-runtime';
|
|
@@ -11222,6 +11223,22 @@ class ApiMachineClient {
|
|
|
11222
11223
|
cutBeforeItemId
|
|
11223
11224
|
}));
|
|
11224
11225
|
});
|
|
11226
|
+
this.rpcHandlerManager.registerHandler("claude-fork-completed-turns", async (params) => {
|
|
11227
|
+
const directory = requireNonEmptyString(params?.directory, "directory");
|
|
11228
|
+
const claudeSessionId = requireNonEmptyString(params?.claudeSessionId, "claudeSessionId");
|
|
11229
|
+
if (!UUID_RE.test(claudeSessionId)) throw new Error("claudeSessionId must be a valid UUID");
|
|
11230
|
+
try {
|
|
11231
|
+
return { type: "success", ...await forkCompletedTurns(getProjectPath(directory), claudeSessionId) };
|
|
11232
|
+
} catch (error) {
|
|
11233
|
+
if (error instanceof ForkSourceMissingError) throw new Error("Claude session file not found on this machine");
|
|
11234
|
+
throw error;
|
|
11235
|
+
}
|
|
11236
|
+
});
|
|
11237
|
+
this.rpcHandlerManager.registerHandler("codex-fork-completed-turns", async (params) => {
|
|
11238
|
+
const directory = requireNonEmptyString(params?.directory, "directory");
|
|
11239
|
+
const codexThreadId = requireNonEmptyString(params?.codexThreadId, "codexThreadId");
|
|
11240
|
+
return withCodexAppServerClient((client) => forkCodexCompletedTurns(client, { threadId: codexThreadId, cwd: directory }));
|
|
11241
|
+
});
|
|
11225
11242
|
this.rpcHandlerManager.registerHandler("stop-daemon", () => {
|
|
11226
11243
|
logger.debug("[API MACHINE] Received stop-daemon RPC request");
|
|
11227
11244
|
setTimeout(() => {
|
|
@@ -2,46 +2,46 @@
|
|
|
2
2
|
|
|
3
3
|
var socket_ioClient = require('socket.io-client');
|
|
4
4
|
var webPanels = require('./webPanels-FCgFKvVe.cjs');
|
|
5
|
-
var logger = require('./logger-
|
|
6
|
-
var lidState = require('./lidState-
|
|
7
|
-
var mirrorProtocol = require('./mirrorProtocol-
|
|
8
|
-
var configuration = require('./configuration-
|
|
5
|
+
var logger = require('./logger-CepF8C5Z.cjs');
|
|
6
|
+
var lidState = require('./lidState-DYeb7Wud.cjs');
|
|
7
|
+
var mirrorProtocol = require('./mirrorProtocol-IhICxf0K.cjs');
|
|
8
|
+
var configuration = require('./configuration-2Pbg3a0H.cjs');
|
|
9
9
|
var cliUpdate = require('./cliUpdate-DsKXPFYp.cjs');
|
|
10
|
-
var registerCommonHandlers = require('./registerCommonHandlers-
|
|
10
|
+
var registerCommonHandlers = require('./registerCommonHandlers-D4uXC0he.cjs');
|
|
11
11
|
var promises = require('node:fs/promises');
|
|
12
12
|
var path = require('node:path');
|
|
13
13
|
var os = require('node:os');
|
|
14
14
|
var fsMkdir = require('./fsMkdir-0K3yENml.cjs');
|
|
15
15
|
var node_child_process = require('node:child_process');
|
|
16
|
-
var persistence = require('./persistence-
|
|
16
|
+
var persistence = require('./persistence-D0gNvqXe.cjs');
|
|
17
17
|
var fileStore = require('./fileStore-7qhnbs6N.cjs');
|
|
18
|
-
var index = require('./index-
|
|
19
|
-
var accountService = require('./accountService-
|
|
18
|
+
var index = require('./index-BUFrKZeQ.cjs');
|
|
19
|
+
var accountService = require('./accountService-CuUSJDhP.cjs');
|
|
20
20
|
var authRelay = require('./authRelay-Dy1qU9td.cjs');
|
|
21
21
|
var limits = require('./limits-C-a7gr04.cjs');
|
|
22
|
-
var time = require('./time-
|
|
22
|
+
var time = require('./time-Da5GIiCa.cjs');
|
|
23
23
|
var pty = require('node-pty');
|
|
24
24
|
var terminals = require('./terminals-B_bfC9c2.cjs');
|
|
25
25
|
var tmuxSocket = require('./tmuxSocket-D-Xt6Vn-.cjs');
|
|
26
|
-
var index$1 = require('./index-
|
|
26
|
+
var index$1 = require('./index-CPkSLWP_.cjs');
|
|
27
27
|
var node_crypto = require('node:crypto');
|
|
28
28
|
var node_fs = require('node:fs');
|
|
29
29
|
var axios = require('axios');
|
|
30
30
|
var projectPath = require('./projectPath-C3ioB4Bu.cjs');
|
|
31
31
|
var ids = require('./ids-B6ZC0HGt.cjs');
|
|
32
32
|
var detectCLI = require('./detectCLI-BuYR_Qxe.cjs');
|
|
33
|
-
var localHappyAgentAuth = require('./localHappyAgentAuth-
|
|
33
|
+
var localHappyAgentAuth = require('./localHappyAgentAuth-CScN2McN.cjs');
|
|
34
34
|
var path$1 = require('./path-B7zW-WwE.cjs');
|
|
35
35
|
var oneShotPrompts = require('./oneShotPrompts-CL0dip9C.cjs');
|
|
36
|
-
var claudeSessionFork = require('./claudeSessionFork-
|
|
37
|
-
var codexAppServerClient = require('./codexAppServerClient-
|
|
38
|
-
var codexThreadFork = require('./codexThreadFork-
|
|
39
|
-
var rateLimitWindows = require('./rateLimitWindows-
|
|
36
|
+
var claudeSessionFork = require('./claudeSessionFork-4g6-Sk3Q.cjs');
|
|
37
|
+
var codexAppServerClient = require('./codexAppServerClient-Bj5vN7sb.cjs');
|
|
38
|
+
var codexThreadFork = require('./codexThreadFork-C6ZmcT2z.cjs');
|
|
39
|
+
var rateLimitWindows = require('./rateLimitWindows-B9PERFm1.cjs');
|
|
40
40
|
require('chalk');
|
|
41
41
|
require('node:util');
|
|
42
42
|
require('os');
|
|
43
43
|
require('child_process');
|
|
44
|
-
require('./package-
|
|
44
|
+
require('./package-C7WgesIw.cjs');
|
|
45
45
|
require('util');
|
|
46
46
|
require('fs/promises');
|
|
47
47
|
require('crypto');
|
|
@@ -49,14 +49,15 @@ require('path');
|
|
|
49
49
|
require('cross-spawn');
|
|
50
50
|
require('zod');
|
|
51
51
|
require('@paralleldrive/cuid2');
|
|
52
|
-
require('./claudeAccountEnv-
|
|
53
|
-
require('./store-
|
|
52
|
+
require('./claudeAccountEnv-CEX_EMZr.cjs');
|
|
53
|
+
require('./store-CkNa6oj4.cjs');
|
|
54
|
+
require('./codexAccount-BDQjRbtI.cjs');
|
|
55
|
+
require('node:readline');
|
|
54
56
|
require('tweetnacl');
|
|
55
57
|
require('./terminalTitleSuggest-DhvRFX3H.cjs');
|
|
56
58
|
require('./loginShellEnv-BkuYtExZ.cjs');
|
|
57
59
|
require('url');
|
|
58
60
|
require('fs');
|
|
59
|
-
require('node:readline');
|
|
60
61
|
require('./contentLogMetadata-ZSFk_NjQ.cjs');
|
|
61
62
|
require('./manager-HrEj442o.cjs');
|
|
62
63
|
require('@anthropic-ai/sandbox-runtime');
|
|
@@ -11243,6 +11244,22 @@ class ApiMachineClient {
|
|
|
11243
11244
|
cutBeforeItemId
|
|
11244
11245
|
}));
|
|
11245
11246
|
});
|
|
11247
|
+
this.rpcHandlerManager.registerHandler("claude-fork-completed-turns", async (params) => {
|
|
11248
|
+
const directory = requireNonEmptyString(params?.directory, "directory");
|
|
11249
|
+
const claudeSessionId = requireNonEmptyString(params?.claudeSessionId, "claudeSessionId");
|
|
11250
|
+
if (!UUID_RE.test(claudeSessionId)) throw new Error("claudeSessionId must be a valid UUID");
|
|
11251
|
+
try {
|
|
11252
|
+
return { type: "success", ...await claudeSessionFork.forkCompletedTurns(path$1.getProjectPath(directory), claudeSessionId) };
|
|
11253
|
+
} catch (error) {
|
|
11254
|
+
if (error instanceof claudeSessionFork.ForkSourceMissingError) throw new Error("Claude session file not found on this machine");
|
|
11255
|
+
throw error;
|
|
11256
|
+
}
|
|
11257
|
+
});
|
|
11258
|
+
this.rpcHandlerManager.registerHandler("codex-fork-completed-turns", async (params) => {
|
|
11259
|
+
const directory = requireNonEmptyString(params?.directory, "directory");
|
|
11260
|
+
const codexThreadId = requireNonEmptyString(params?.codexThreadId, "codexThreadId");
|
|
11261
|
+
return withCodexAppServerClient((client) => codexThreadFork.forkCodexCompletedTurns(client, { threadId: codexThreadId, cwd: directory }));
|
|
11262
|
+
});
|
|
11246
11263
|
this.rpcHandlerManager.registerHandler("stop-daemon", () => {
|
|
11247
11264
|
logger.logger.debug("[API MACHINE] Received stop-daemon RPC request");
|
|
11248
11265
|
setTimeout(() => {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { randomUUID } from 'node:crypto';
|
|
2
2
|
import { writeFile, rename, unlink } from 'node:fs/promises';
|
|
3
3
|
import { join, basename } from 'node:path';
|
|
4
|
-
import { M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES } from './pushNotifications-
|
|
5
|
-
import { e as ensurePrivateDirectory, h as hardenPrivateFile } from './configuration-
|
|
4
|
+
import { M as MAX_CHAT_ATTACHMENT_SOURCE_BYTES } from './pushNotifications-DjEl8G0a.mjs';
|
|
5
|
+
import { e as ensurePrivateDirectory, h as hardenPrivateFile } from './configuration-rTcdHkhE.mjs';
|
|
6
6
|
|
|
7
7
|
const CLAUDE_ATTACHMENT_KINDS = [
|
|
8
8
|
"image/jpeg",
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
var node_crypto = require('node:crypto');
|
|
4
4
|
var promises = require('node:fs/promises');
|
|
5
5
|
var path = require('node:path');
|
|
6
|
-
var pushNotifications = require('./pushNotifications-
|
|
7
|
-
var configuration = require('./configuration-
|
|
6
|
+
var pushNotifications = require('./pushNotifications-CH0XVPQe.cjs');
|
|
7
|
+
var configuration = require('./configuration-2Pbg3a0H.cjs');
|
|
8
8
|
|
|
9
9
|
const CLAUDE_ATTACHMENT_KINDS = [
|
|
10
10
|
"image/jpeg",
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
-
import { g as readCredentials, r as readSettings, h as clearCredentials, i as clearMachineId } from './persistence-
|
|
3
|
-
import { a as authAndSetupMachineIfNeeded } from './auth-
|
|
4
|
-
import { c as configuration } from './configuration-
|
|
2
|
+
import { g as readCredentials, r as readSettings, h as clearCredentials, i as clearMachineId } from './persistence-mr4Y484W.mjs';
|
|
3
|
+
import { a as authAndSetupMachineIfNeeded } from './auth-CWO6cQ4G.mjs';
|
|
4
|
+
import { c as configuration } from './configuration-rTcdHkhE.mjs';
|
|
5
5
|
import { existsSync, rmSync } from 'node:fs';
|
|
6
6
|
import { createInterface } from 'node:readline';
|
|
7
|
-
import { b as checkIfDaemonRunningAndCleanupStaleState, s as stopDaemon } from './controlClient-
|
|
8
|
-
import { l as logger } from './logger-
|
|
7
|
+
import { b as checkIfDaemonRunningAndCleanupStaleState, s as stopDaemon } from './controlClient-BIdGnYBo.mjs';
|
|
8
|
+
import { l as logger } from './logger-SGCwRIV5.mjs';
|
|
9
9
|
import os from 'node:os';
|
|
10
10
|
import { c as credentialRelayProblem } from './authRelay-DhQhkBvX.mjs';
|
|
11
11
|
import 'node:fs/promises';
|
|
@@ -13,11 +13,11 @@ import 'zod';
|
|
|
13
13
|
import 'node:crypto';
|
|
14
14
|
import 'tweetnacl';
|
|
15
15
|
import 'axios';
|
|
16
|
-
import './time-
|
|
17
|
-
import './browser-
|
|
16
|
+
import './time-0Ru4clBD.mjs';
|
|
17
|
+
import './browser-CFfZM3yg.mjs';
|
|
18
18
|
import 'open';
|
|
19
19
|
import 'node:path';
|
|
20
|
-
import './package-
|
|
20
|
+
import './package-Q_ELj5DL.mjs';
|
|
21
21
|
import 'node:util';
|
|
22
22
|
|
|
23
23
|
function localMachineIdentityStatus(machineId) {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var chalk = require('chalk');
|
|
4
|
-
var persistence = require('./persistence-
|
|
5
|
-
var auth = require('./auth-
|
|
6
|
-
var configuration = require('./configuration-
|
|
4
|
+
var persistence = require('./persistence-D0gNvqXe.cjs');
|
|
5
|
+
var auth = require('./auth-boIcb7iq.cjs');
|
|
6
|
+
var configuration = require('./configuration-2Pbg3a0H.cjs');
|
|
7
7
|
var node_fs = require('node:fs');
|
|
8
8
|
var node_readline = require('node:readline');
|
|
9
|
-
var controlClient = require('./controlClient-
|
|
10
|
-
var logger = require('./logger-
|
|
9
|
+
var controlClient = require('./controlClient-CIqHL07h.cjs');
|
|
10
|
+
var logger = require('./logger-CepF8C5Z.cjs');
|
|
11
11
|
var os = require('node:os');
|
|
12
12
|
var authRelay = require('./authRelay-Dy1qU9td.cjs');
|
|
13
13
|
require('node:fs/promises');
|
|
@@ -15,11 +15,11 @@ require('zod');
|
|
|
15
15
|
require('node:crypto');
|
|
16
16
|
require('tweetnacl');
|
|
17
17
|
require('axios');
|
|
18
|
-
require('./time-
|
|
19
|
-
require('./browser-
|
|
18
|
+
require('./time-Da5GIiCa.cjs');
|
|
19
|
+
require('./browser-Do2MFdq6.cjs');
|
|
20
20
|
require('open');
|
|
21
21
|
require('node:path');
|
|
22
|
-
require('./package-
|
|
22
|
+
require('./package-C7WgesIw.cjs');
|
|
23
23
|
require('node:util');
|
|
24
24
|
|
|
25
25
|
function localMachineIdentityStatus(machineId) {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { e as encodeBase64, c as credentialRelayProblem, f as encodeBase64Url, d as decodeBase64 } from './authRelay-DhQhkBvX.mjs';
|
|
2
|
-
import { c as configuration } from './configuration-
|
|
2
|
+
import { c as configuration } from './configuration-rTcdHkhE.mjs';
|
|
3
3
|
import { randomUUID, randomBytes } from 'node:crypto';
|
|
4
4
|
import tweetnacl from 'tweetnacl';
|
|
5
5
|
import axios from 'axios';
|
|
6
|
-
import { d as delay } from './time-
|
|
7
|
-
import { g as readCredentials, m as readSettingsOutcome, u as updateSettings, w as writeCredentialsLegacy, n as writeCredentialsDataKey } from './persistence-
|
|
8
|
-
import { o as openBrowser } from './browser-
|
|
9
|
-
import { l as logger } from './logger-
|
|
6
|
+
import { d as delay } from './time-0Ru4clBD.mjs';
|
|
7
|
+
import { g as readCredentials, m as readSettingsOutcome, u as updateSettings, w as writeCredentialsLegacy, n as writeCredentialsDataKey } from './persistence-mr4Y484W.mjs';
|
|
8
|
+
import { o as openBrowser } from './browser-CFfZM3yg.mjs';
|
|
9
|
+
import { l as logger } from './logger-SGCwRIV5.mjs';
|
|
10
10
|
|
|
11
11
|
function generateWebAuthUrl(publicKey) {
|
|
12
12
|
const publicKeyBase64 = encodeBase64(publicKey, "base64url");
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var authRelay = require('./authRelay-Dy1qU9td.cjs');
|
|
4
|
-
var configuration = require('./configuration-
|
|
4
|
+
var configuration = require('./configuration-2Pbg3a0H.cjs');
|
|
5
5
|
var node_crypto = require('node:crypto');
|
|
6
6
|
var tweetnacl = require('tweetnacl');
|
|
7
7
|
var axios = require('axios');
|
|
8
|
-
var time = require('./time-
|
|
9
|
-
var persistence = require('./persistence-
|
|
10
|
-
var browser = require('./browser-
|
|
11
|
-
var logger = require('./logger-
|
|
8
|
+
var time = require('./time-Da5GIiCa.cjs');
|
|
9
|
+
var persistence = require('./persistence-D0gNvqXe.cjs');
|
|
10
|
+
var browser = require('./browser-Do2MFdq6.cjs');
|
|
11
|
+
var logger = require('./logger-CepF8C5Z.cjs');
|
|
12
12
|
|
|
13
13
|
function generateWebAuthUrl(publicKey) {
|
|
14
14
|
const publicKeyBase64 = authRelay.encodeBase64(publicKey, "base64url");
|
|
@@ -4,53 +4,53 @@ var chalk = require('chalk');
|
|
|
4
4
|
var os = require('node:os');
|
|
5
5
|
var node_fs = require('node:fs');
|
|
6
6
|
var path = require('node:path');
|
|
7
|
-
var index = require('./index-
|
|
8
|
-
var configuration = require('./configuration-
|
|
9
|
-
var client = require('./client-
|
|
10
|
-
var template = require('./template-
|
|
7
|
+
var index = require('./index-BUFrKZeQ.cjs');
|
|
8
|
+
var configuration = require('./configuration-2Pbg3a0H.cjs');
|
|
9
|
+
var client = require('./client-BIg2LPVx.cjs');
|
|
10
|
+
var template = require('./template-B9pLEP8v.cjs');
|
|
11
11
|
var install = require('./install-BOHlqewf.cjs');
|
|
12
12
|
var precheckCompat = require('./precheckCompat-CWOi5c9L.cjs');
|
|
13
|
-
var sessionOps = require('./sessionOps-
|
|
14
|
-
var spawn = require('./spawn-
|
|
15
|
-
var spawnAgents = require('./spawnAgents-
|
|
16
|
-
var time = require('./time-
|
|
13
|
+
var sessionOps = require('./sessionOps-BUlpeaUe.cjs');
|
|
14
|
+
var spawn = require('./spawn-Crprnq9Z.cjs');
|
|
15
|
+
var spawnAgents = require('./spawnAgents-B9olJ8xn.cjs');
|
|
16
|
+
var time = require('./time-Da5GIiCa.cjs');
|
|
17
17
|
require('zod');
|
|
18
18
|
require('@paralleldrive/cuid2');
|
|
19
|
-
require('./package-
|
|
19
|
+
require('./package-C7WgesIw.cjs');
|
|
20
20
|
require('node:fs/promises');
|
|
21
|
-
require('./persistence-
|
|
21
|
+
require('./persistence-D0gNvqXe.cjs');
|
|
22
22
|
require('./authRelay-Dy1qU9td.cjs');
|
|
23
23
|
require('node:crypto');
|
|
24
24
|
require('tweetnacl');
|
|
25
|
-
require('./logger-
|
|
25
|
+
require('./logger-CepF8C5Z.cjs');
|
|
26
26
|
require('node:util');
|
|
27
27
|
require('./resources-BZ_Be0qM.cjs');
|
|
28
28
|
require('axios');
|
|
29
|
-
require('./controlClient-
|
|
29
|
+
require('./controlClient-CIqHL07h.cjs');
|
|
30
30
|
require('./specialCommands-J3JFOq0J.cjs');
|
|
31
31
|
require('socket.io-client');
|
|
32
32
|
require('./backgroundTaskActivity-CBvUdj39.cjs');
|
|
33
|
-
require('./client-
|
|
33
|
+
require('./client-CsfPUxLy.cjs');
|
|
34
34
|
require('./path-B7zW-WwE.cjs');
|
|
35
|
-
require('./claudeSessionFork-
|
|
35
|
+
require('./claudeSessionFork-4g6-Sk3Q.cjs');
|
|
36
36
|
require('node:readline');
|
|
37
|
-
require('./codexAppServerClient-
|
|
37
|
+
require('./codexAppServerClient-Bj5vN7sb.cjs');
|
|
38
38
|
require('node:child_process');
|
|
39
39
|
require('cross-spawn');
|
|
40
40
|
require('./contentLogMetadata-ZSFk_NjQ.cjs');
|
|
41
41
|
require('./manager-HrEj442o.cjs');
|
|
42
42
|
require('@anthropic-ai/sandbox-runtime');
|
|
43
|
-
require('./rateLimitWindows-
|
|
43
|
+
require('./rateLimitWindows-B9PERFm1.cjs');
|
|
44
44
|
require('./processTree-CMHWlVse.cjs');
|
|
45
|
-
require('./codexThreadFork-
|
|
46
|
-
require('./createSessionMetadata-
|
|
45
|
+
require('./codexThreadFork-C6ZmcT2z.cjs');
|
|
46
|
+
require('./createSessionMetadata-BHjzRzPc.cjs');
|
|
47
47
|
require('./projectPath-C3ioB4Bu.cjs');
|
|
48
48
|
require('path');
|
|
49
49
|
require('url');
|
|
50
50
|
require('./forkBackfill-8eLDeS73.cjs');
|
|
51
51
|
|
|
52
52
|
const AUTO_ACTIONS = ["list", "show", "create", "edit", "pause", "resume", "rm", "run", "fire", "runs", "cancel", "ack", "report", "skill", "install", "uninstall", "help"];
|
|
53
|
-
const VALUE_FLAGS = ["--name", "--rename", "--description", "--machine", "--cron", "--tz", "--every", "--at", "--spawn-dir", "--prompt", "--prompt-file", "--agent", "--model", "--permission-mode", "--sticky-key", "--send-session", "--cwd", "--env", "--timeout", "--concurrency", "--max-runtime", "--payload", "--payload-json", "--payload-file", "--dedupe-key", "--status", "--limit", "--run", "--summary", "--error", "--attention", "--host", "--home", "--precheck-shell", "--precheck-argv", "--precheck-cwd", "--precheck-timeout"];
|
|
53
|
+
const VALUE_FLAGS = ["--name", "--rename", "--description", "--machine", "--cron", "--tz", "--every", "--at", "--spawn-dir", "--prompt", "--prompt-file", "--agent", "--model", "--permission-mode", "--sticky-key", "--account", "--send-session", "--cwd", "--env", "--timeout", "--concurrency", "--max-runtime", "--payload", "--payload-json", "--payload-file", "--dedupe-key", "--status", "--limit", "--run", "--summary", "--error", "--attention", "--host", "--home", "--precheck-shell", "--precheck-argv", "--precheck-cwd", "--precheck-timeout"];
|
|
54
54
|
const BOOL_FLAGS = ["--manual", "--script", "--worktree", "--paused", "--wait", "--json", "--apply", "--all-machines", "--all", "--attention", "--precheck-output", "--no-precheck", "--help", "-h"];
|
|
55
55
|
function parseAutoArgs(args) {
|
|
56
56
|
const command = { action: "help", flags: {}, env: [], bools: /* @__PURE__ */ new Set(), argv: [] };
|
|
@@ -113,7 +113,7 @@ function actionFromCommand(command, current) {
|
|
|
113
113
|
const kinds = [flags["--spawn-dir"] !== void 0, flags["--send-session"] !== void 0, bools.has("--script")].filter(Boolean).length;
|
|
114
114
|
if (kinds > 1) throw new Error("Use only one of --spawn-dir, --send-session, --script");
|
|
115
115
|
const prompt = readPrompt(flags);
|
|
116
|
-
const spawnOnly = ["--agent", "--model", "--permission-mode", "--sticky-key"].filter((flag) => flags[flag] !== void 0).concat(bools.has("--worktree") ? ["--worktree"] : []);
|
|
116
|
+
const spawnOnly = ["--agent", "--model", "--permission-mode", "--sticky-key", "--account"].filter((flag) => flags[flag] !== void 0).concat(bools.has("--worktree") ? ["--worktree"] : []);
|
|
117
117
|
const scriptOnly = ["--cwd", "--timeout"].filter((flag) => flags[flag] !== void 0).concat(command.env.length ? ["--env"] : []);
|
|
118
118
|
if (kinds === 0) {
|
|
119
119
|
if (!current) {
|
|
@@ -201,7 +201,9 @@ function spawnDetails(command) {
|
|
|
201
201
|
...flags["--model"] !== void 0 ? { model: flags["--model"] } : {},
|
|
202
202
|
...flags["--permission-mode"] !== void 0 ? { permissionMode: flags["--permission-mode"] } : {},
|
|
203
203
|
...bools.has("--worktree") ? { worktree: true } : {},
|
|
204
|
-
...flags["--sticky-key"] !== void 0 ? { sticky: { key: flags["--sticky-key"] } } : {}
|
|
204
|
+
...flags["--sticky-key"] !== void 0 ? { sticky: { key: flags["--sticky-key"] } } : {},
|
|
205
|
+
// B-850d: an account of the automation's machine (`very-happy account list`), or `machine` = machine login.
|
|
206
|
+
...flags["--account"] !== void 0 ? { agentProfile: flags["--account"] === "machine" ? null : { id: flags["--account"] } } : {}
|
|
205
207
|
};
|
|
206
208
|
}
|
|
207
209
|
const AUTO_HELP = `${chalk.bold("very-happy auto")} - account-level automations: cron / interval / one-shot / manual triggers that spawn a session, continue a sticky session, or run a script on a machine
|
|
@@ -229,7 +231,7 @@ ${chalk.bold("Trigger (one):")}
|
|
|
229
231
|
${chalk.bold("Action (one):")}
|
|
230
232
|
--spawn-dir <dir> --prompt <text>|--prompt-file <file>
|
|
231
233
|
[--agent claude|codex|pi|gemini|openclaw] [--model <id>] [--permission-mode <m>]
|
|
232
|
-
[--worktree] [--sticky-key <template>]
|
|
234
|
+
[--worktree] [--sticky-key <template>] [--account <id>|machine]
|
|
233
235
|
--send-session <id> --prompt <text>|--prompt-file <file>
|
|
234
236
|
--script -- <argv\u2026> [--cwd <dir>] [--env K=V]... [--timeout <dur>]
|
|
235
237
|
|
|
@@ -2,53 +2,53 @@ import chalk from 'chalk';
|
|
|
2
2
|
import { homedir } from 'node:os';
|
|
3
3
|
import { readFileSync } from 'node:fs';
|
|
4
4
|
import { resolve } from 'node:path';
|
|
5
|
-
import { c as AUTOMATION_NAME_PATTERN, i as isAutomationRunTerminal, d as AUTOMATION_PRECHECK_MAX_TIMEOUT_MS, e as AutomationPrecheckSchema } from './index-
|
|
6
|
-
import { c as configuration } from './configuration-
|
|
7
|
-
import { a as authenticatedAutomationsClient, b as automationRunIdFromEnv, i as isAutomationsUnavailable, A as AUTOMATIONS_UNAVAILABLE_MESSAGE } from './client-
|
|
8
|
-
import { p as parseDuration, c as clipAutomationReport, A as AUTOMATION_REPORT_TEXT_LIMITS, t as triggerFromFlags, d as describeTrigger, a as describeAction } from './template-
|
|
5
|
+
import { c as AUTOMATION_NAME_PATTERN, i as isAutomationRunTerminal, d as AUTOMATION_PRECHECK_MAX_TIMEOUT_MS, e as AutomationPrecheckSchema } from './index-D1YnIih6.mjs';
|
|
6
|
+
import { c as configuration } from './configuration-rTcdHkhE.mjs';
|
|
7
|
+
import { a as authenticatedAutomationsClient, b as automationRunIdFromEnv, i as isAutomationsUnavailable, A as AUTOMATIONS_UNAVAILABLE_MESSAGE } from './client-OjYRPhZs.mjs';
|
|
8
|
+
import { p as parseDuration, c as clipAutomationReport, A as AUTOMATION_REPORT_TEXT_LIMITS, t as triggerFromFlags, d as describeTrigger, a as describeAction } from './template-CL9EvQLQ.mjs';
|
|
9
9
|
import { A as AUTOMATION_SKILL, i as installAutomationSkill } from './install-B8O1JpJH.mjs';
|
|
10
10
|
import { u as updateAutomationChecked, c as createAutomationChecked } from './precheckCompat-DeEbilbr.mjs';
|
|
11
|
-
import { s as sessionWebUrl } from './sessionOps-
|
|
12
|
-
import { parseEnvAssignment } from './spawn-
|
|
13
|
-
import { S as SPAWN_AGENTS, s as sanitizeSpawnPermissionMode, A as ALLOWED_SPAWN_PERMISSION_MODES } from './spawnAgents-
|
|
14
|
-
import { d as delay } from './time-
|
|
11
|
+
import { s as sessionWebUrl } from './sessionOps-C9wRmCBg.mjs';
|
|
12
|
+
import { parseEnvAssignment } from './spawn-BPioepNz.mjs';
|
|
13
|
+
import { S as SPAWN_AGENTS, s as sanitizeSpawnPermissionMode, A as ALLOWED_SPAWN_PERMISSION_MODES } from './spawnAgents-I29H9nO8.mjs';
|
|
14
|
+
import { d as delay } from './time-0Ru4clBD.mjs';
|
|
15
15
|
import 'zod';
|
|
16
16
|
import '@paralleldrive/cuid2';
|
|
17
|
-
import './package-
|
|
17
|
+
import './package-Q_ELj5DL.mjs';
|
|
18
18
|
import 'node:fs/promises';
|
|
19
|
-
import './persistence-
|
|
19
|
+
import './persistence-mr4Y484W.mjs';
|
|
20
20
|
import './authRelay-DhQhkBvX.mjs';
|
|
21
21
|
import 'node:crypto';
|
|
22
22
|
import 'tweetnacl';
|
|
23
|
-
import './logger-
|
|
23
|
+
import './logger-SGCwRIV5.mjs';
|
|
24
24
|
import 'node:util';
|
|
25
25
|
import './resources-CLP_MpK4.mjs';
|
|
26
26
|
import 'axios';
|
|
27
|
-
import './controlClient-
|
|
27
|
+
import './controlClient-BIdGnYBo.mjs';
|
|
28
28
|
import './specialCommands-MXUN0wfI.mjs';
|
|
29
29
|
import 'socket.io-client';
|
|
30
30
|
import './backgroundTaskActivity-8PdPxrvy.mjs';
|
|
31
|
-
import './client-
|
|
31
|
+
import './client-Cbxr9VUE.mjs';
|
|
32
32
|
import './path-D2wdaNSk.mjs';
|
|
33
|
-
import './claudeSessionFork-
|
|
33
|
+
import './claudeSessionFork-BrJTncNL.mjs';
|
|
34
34
|
import 'node:readline';
|
|
35
|
-
import './codexAppServerClient-
|
|
35
|
+
import './codexAppServerClient-HKAm8f_D.mjs';
|
|
36
36
|
import 'node:child_process';
|
|
37
37
|
import 'cross-spawn';
|
|
38
38
|
import './contentLogMetadata-BlWI0egu.mjs';
|
|
39
39
|
import './manager-BEsI4qt3.mjs';
|
|
40
40
|
import '@anthropic-ai/sandbox-runtime';
|
|
41
|
-
import './rateLimitWindows-
|
|
41
|
+
import './rateLimitWindows-a2yE3kCv.mjs';
|
|
42
42
|
import './processTree-CP5IvQ2Z.mjs';
|
|
43
|
-
import './codexThreadFork-
|
|
44
|
-
import './createSessionMetadata-
|
|
43
|
+
import './codexThreadFork-CVzAqELg.mjs';
|
|
44
|
+
import './createSessionMetadata-PrN-dT7K.mjs';
|
|
45
45
|
import './projectPath-BTBIMB57.mjs';
|
|
46
46
|
import 'path';
|
|
47
47
|
import 'url';
|
|
48
48
|
import './forkBackfill-DYIjlN1Z.mjs';
|
|
49
49
|
|
|
50
50
|
const AUTO_ACTIONS = ["list", "show", "create", "edit", "pause", "resume", "rm", "run", "fire", "runs", "cancel", "ack", "report", "skill", "install", "uninstall", "help"];
|
|
51
|
-
const VALUE_FLAGS = ["--name", "--rename", "--description", "--machine", "--cron", "--tz", "--every", "--at", "--spawn-dir", "--prompt", "--prompt-file", "--agent", "--model", "--permission-mode", "--sticky-key", "--send-session", "--cwd", "--env", "--timeout", "--concurrency", "--max-runtime", "--payload", "--payload-json", "--payload-file", "--dedupe-key", "--status", "--limit", "--run", "--summary", "--error", "--attention", "--host", "--home", "--precheck-shell", "--precheck-argv", "--precheck-cwd", "--precheck-timeout"];
|
|
51
|
+
const VALUE_FLAGS = ["--name", "--rename", "--description", "--machine", "--cron", "--tz", "--every", "--at", "--spawn-dir", "--prompt", "--prompt-file", "--agent", "--model", "--permission-mode", "--sticky-key", "--account", "--send-session", "--cwd", "--env", "--timeout", "--concurrency", "--max-runtime", "--payload", "--payload-json", "--payload-file", "--dedupe-key", "--status", "--limit", "--run", "--summary", "--error", "--attention", "--host", "--home", "--precheck-shell", "--precheck-argv", "--precheck-cwd", "--precheck-timeout"];
|
|
52
52
|
const BOOL_FLAGS = ["--manual", "--script", "--worktree", "--paused", "--wait", "--json", "--apply", "--all-machines", "--all", "--attention", "--precheck-output", "--no-precheck", "--help", "-h"];
|
|
53
53
|
function parseAutoArgs(args) {
|
|
54
54
|
const command = { action: "help", flags: {}, env: [], bools: /* @__PURE__ */ new Set(), argv: [] };
|
|
@@ -111,7 +111,7 @@ function actionFromCommand(command, current) {
|
|
|
111
111
|
const kinds = [flags["--spawn-dir"] !== void 0, flags["--send-session"] !== void 0, bools.has("--script")].filter(Boolean).length;
|
|
112
112
|
if (kinds > 1) throw new Error("Use only one of --spawn-dir, --send-session, --script");
|
|
113
113
|
const prompt = readPrompt(flags);
|
|
114
|
-
const spawnOnly = ["--agent", "--model", "--permission-mode", "--sticky-key"].filter((flag) => flags[flag] !== void 0).concat(bools.has("--worktree") ? ["--worktree"] : []);
|
|
114
|
+
const spawnOnly = ["--agent", "--model", "--permission-mode", "--sticky-key", "--account"].filter((flag) => flags[flag] !== void 0).concat(bools.has("--worktree") ? ["--worktree"] : []);
|
|
115
115
|
const scriptOnly = ["--cwd", "--timeout"].filter((flag) => flags[flag] !== void 0).concat(command.env.length ? ["--env"] : []);
|
|
116
116
|
if (kinds === 0) {
|
|
117
117
|
if (!current) {
|
|
@@ -199,7 +199,9 @@ function spawnDetails(command) {
|
|
|
199
199
|
...flags["--model"] !== void 0 ? { model: flags["--model"] } : {},
|
|
200
200
|
...flags["--permission-mode"] !== void 0 ? { permissionMode: flags["--permission-mode"] } : {},
|
|
201
201
|
...bools.has("--worktree") ? { worktree: true } : {},
|
|
202
|
-
...flags["--sticky-key"] !== void 0 ? { sticky: { key: flags["--sticky-key"] } } : {}
|
|
202
|
+
...flags["--sticky-key"] !== void 0 ? { sticky: { key: flags["--sticky-key"] } } : {},
|
|
203
|
+
// B-850d: an account of the automation's machine (`very-happy account list`), or `machine` = machine login.
|
|
204
|
+
...flags["--account"] !== void 0 ? { agentProfile: flags["--account"] === "machine" ? null : { id: flags["--account"] } } : {}
|
|
203
205
|
};
|
|
204
206
|
}
|
|
205
207
|
const AUTO_HELP = `${chalk.bold("very-happy auto")} - account-level automations: cron / interval / one-shot / manual triggers that spawn a session, continue a sticky session, or run a script on a machine
|
|
@@ -227,7 +229,7 @@ ${chalk.bold("Trigger (one):")}
|
|
|
227
229
|
${chalk.bold("Action (one):")}
|
|
228
230
|
--spawn-dir <dir> --prompt <text>|--prompt-file <file>
|
|
229
231
|
[--agent claude|codex|pi|gemini|openclaw] [--model <id>] [--permission-mode <m>]
|
|
230
|
-
[--worktree] [--sticky-key <template>]
|
|
232
|
+
[--worktree] [--sticky-key <template>] [--account <id>|machine]
|
|
231
233
|
--send-session <id> --prompt <text>|--prompt-file <file>
|
|
232
234
|
--script -- <argv\u2026> [--cwd <dir>] [--env K=V]... [--timeout <dur>]
|
|
233
235
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { existsSync } from 'node:fs';
|
|
2
2
|
import { mkdir, writeFile } from 'node:fs/promises';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
|
-
import { c as configuration } from './configuration-
|
|
4
|
+
import { c as configuration } from './configuration-rTcdHkhE.mjs';
|
|
5
5
|
import 'node:os';
|
|
6
|
-
import './package-
|
|
6
|
+
import './package-Q_ELj5DL.mjs';
|
|
7
7
|
|
|
8
8
|
const ASSISTANT_CLAUDE_MD = `# very-happy \u8C03\u5EA6\u4E2D\u5FC3\uFF08\u8BED\u97F3\u52A9\u624B\uFF09
|
|
9
9
|
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
var node_fs = require('node:fs');
|
|
4
4
|
var promises = require('node:fs/promises');
|
|
5
5
|
var path = require('node:path');
|
|
6
|
-
var configuration = require('./configuration-
|
|
6
|
+
var configuration = require('./configuration-2Pbg3a0H.cjs');
|
|
7
7
|
require('node:os');
|
|
8
|
-
require('./package-
|
|
8
|
+
require('./package-C7WgesIw.cjs');
|
|
9
9
|
|
|
10
10
|
const ASSISTANT_CLAUDE_MD = `# very-happy \u8C03\u5EA6\u4E2D\u5FC3\uFF08\u8BED\u97F3\u52A9\u624B\uFF09
|
|
11
11
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { b as accountSecretPath, e as expandHome } from './store
|
|
1
|
+
import { b as accountSecretPath, e as expandHome } from './store-Vej_738f.mjs';
|
|
2
2
|
|
|
3
3
|
const ACCOUNT_STRIPPED_ENV_KEYS = [
|
|
4
4
|
"ANTHROPIC_API_KEY",
|
|
@@ -65,6 +65,7 @@ function resolveClaudeAccount(sessionId, deps) {
|
|
|
65
65
|
const record = deps.accounts.accounts[id];
|
|
66
66
|
if (!record) return unavailable(id, id, "unknown", "missing");
|
|
67
67
|
const { label, kind } = record;
|
|
68
|
+
if (record.agent !== "claude") return unavailable(id, label, kind, "agent-mismatch");
|
|
68
69
|
if (kind === "claude-subscription") {
|
|
69
70
|
const path = accountSecretPath(deps.home, id);
|
|
70
71
|
if (!deps.fileReadable(path)) return unavailable(id, label, kind, "missing-secret");
|