very-happy-cli 0.2.187 → 0.2.188
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-C4Emg-H3.mjs → AcpBackend-2loP7MpF.mjs} +3 -3
- package/dist/{AcpBackend-B2-ReWTo.cjs → AcpBackend-B8AYkp5n.cjs} +3 -3
- package/dist/{AcpSessionManager-Nard_zFS.mjs → AcpSessionManager-C17doAoR.mjs} +2 -2
- package/dist/{AcpSessionManager-DR4-oZCz.cjs → AcpSessionManager-CLqo9R9Y.cjs} +2 -2
- package/dist/{BasePermissionHandler-CZ19WzsP.cjs → BasePermissionHandler-C8UEcFz0.cjs} +1 -1
- package/dist/{BasePermissionHandler-Bk9DmVZH.mjs → BasePermissionHandler-CrfyUmqO.mjs} +1 -1
- package/dist/{acpSessionResume-DPSfMe7r.mjs → acpSessionResume-F705a1cF.mjs} +1 -1
- package/dist/{acpSessionResume-Hto_b8MK.cjs → acpSessionResume-OuYlLGxL.cjs} +1 -1
- package/dist/{agentHome-4-odnrAk.mjs → agentHome-Dc7LYF3d.mjs} +4 -4
- package/dist/{agentHome-Mveyfa24.cjs → agentHome-DsKHJ_Sf.cjs} +4 -4
- package/dist/{api-DVEzYcoy.cjs → api-BOqjYd5r.cjs} +10 -10
- package/dist/{api-cVvbFZVK.mjs → api-DNKa7kVy.mjs} +10 -10
- package/dist/{apiMachine-Bd1C_JN6.cjs → apiMachine--rcPpMmt.cjs} +14 -14
- package/dist/{apiMachine-M7qY1izH.mjs → apiMachine-Di1G9ECW.mjs} +14 -14
- package/dist/{attachmentContent-D8hViGiA.cjs → attachmentContent-BFRMLong.cjs} +2 -2
- package/dist/{attachmentContent-NNF-Eo4O.mjs → attachmentContent-C9S4ekAz.mjs} +2 -2
- package/dist/{auth-BCHL8Fx5.mjs → auth-BNhhk2Fr.mjs} +5 -5
- package/dist/{auth-CKNEKwEV.mjs → auth-Bzwo_vOM.mjs} +8 -8
- package/dist/{auth-BHw8be0X.cjs → auth-CQtfznF0.cjs} +8 -8
- package/dist/{auth-b_1h0677.cjs → auth-CXmI92aj.cjs} +5 -5
- package/dist/{auto-D716QYa3.mjs → auto-DHYOLnXB.mjs} +17 -17
- package/dist/{auto-Da4rCLal.cjs → auto-DXLdaX5O.cjs} +17 -17
- package/dist/{bootstrap-CndcegDb.mjs → bootstrap-Di38SnpN.mjs} +2 -2
- package/dist/{bootstrap-j2RuoHVy.cjs → bootstrap-eJ1l7VYl.cjs} +2 -2
- package/dist/{browser-CLsM513o.mjs → browser-6Cg7G6bb.mjs} +1 -1
- package/dist/{browser-DIYTnD_T.cjs → browser-D3uBFRQu.cjs} +1 -1
- package/dist/{claudeLocal-C_uUbEO_.cjs → claudeLocal-BBaE4QF_.cjs} +5 -5
- package/dist/{claudeLocal-3HbTx7K-.mjs → claudeLocal-CqaEs-81.mjs} +5 -5
- package/dist/{claudeLocalLauncher-DXh2chq3.mjs → claudeLocalLauncher-BDUPxtsI.mjs} +10 -10
- package/dist/{claudeLocalLauncher-BxWouVYk.cjs → claudeLocalLauncher-wPxKtH_P.cjs} +10 -10
- package/dist/{claudeSessionFork-CsU96yXX.cjs → claudeSessionFork-CmY25Fl3.cjs} +1 -1
- package/dist/{claudeSessionFork-B4olbwfj.mjs → claudeSessionFork-DzWFzj9m.mjs} +1 -1
- package/dist/{client-CCy72Phz.cjs → client-C2HcMqRF.cjs} +4 -4
- package/dist/{client-C8w9aQYe.mjs → client-DWws_aQK.mjs} +2 -2
- package/dist/{client-Zqg7DXHl.mjs → client-DcDE6Ifk.mjs} +2 -2
- package/dist/{client-CWSfPlGD.cjs → client-DmY03OZZ.cjs} +2 -2
- package/dist/{client-q1aNOKgy.cjs → client-agH03Irm.cjs} +2 -2
- package/dist/{client-D8p1YjVt.mjs → client-qJ0y8fus.mjs} +4 -4
- package/dist/codex/happyMcpStdioBridge.cjs +16 -16
- package/dist/codex/happyMcpStdioBridge.mjs +16 -16
- package/dist/{codexAppServerClient-Csc-XsRV.mjs → codexAppServerClient-DgE99i7X.mjs} +39 -5
- package/dist/{codexAppServerClient-g8npaIU9.cjs → codexAppServerClient-DwzC8LR0.cjs} +39 -5
- package/dist/{codexCommand-BV8pTAtv.cjs → codexCommand-1vFEA1KT.cjs} +117 -59
- package/dist/{codexCommand-BS-foS_R.mjs → codexCommand-DUSVzbKh.mjs} +114 -56
- package/dist/{codexTermination-lOO15mt2.mjs → codexTermination-Bybovr2z.mjs} +1 -1
- package/dist/{codexTermination-B5WgZAWO.cjs → codexTermination-DuDPyBRR.cjs} +1 -1
- package/dist/{config-Ba5ufl-D.mjs → config-BrzZ0O-6.mjs} +3 -3
- package/dist/{config-BOnZRJIG.cjs → config-C4xOL5bH.cjs} +3 -3
- package/dist/{configuration-8EAa2X9P.mjs → configuration-BZHpFD7K.mjs} +1 -1
- package/dist/{configuration-CAfdO4IC.cjs → configuration-DyPW9mVa.cjs} +1 -1
- package/dist/{connect-BHWHNe54.mjs → connect-Cw_INlj8.mjs} +13 -13
- package/dist/{connect-2hWuvxRM.cjs → connect-DurKwMEo.cjs} +13 -13
- package/dist/{context-BtCz06PX.cjs → context-2xDvjkQp.cjs} +1 -1
- package/dist/{context-B-jybQhf.mjs → context-t7YV0aZc.mjs} +1 -1
- package/dist/{controlClient-O-vf2MkJ.mjs → controlClient-Bw56NIrj.mjs} +4 -4
- package/dist/{controlClient-mH9AxBwT.cjs → controlClient-DvFaPsg6.cjs} +3 -3
- package/dist/{createSessionMetadata-HlzlfP0U.mjs → createSessionMetadata-Dn5BkLfU.mjs} +2 -2
- package/dist/{createSessionMetadata-Bcn7b8QB.cjs → createSessionMetadata-Dpg6bV6f.cjs} +2 -2
- package/dist/{defaultPermissionMode-BPDeX4S8.mjs → defaultPermissionMode-DMTnlccv.mjs} +2 -2
- package/dist/{defaultPermissionMode-BN3PdltF.cjs → defaultPermissionMode-Dlm0q1m0.cjs} +2 -2
- package/dist/{deterministicJson-CruOxFA6.mjs → deterministicJson-CsRckxVq.mjs} +13 -13
- package/dist/{deterministicJson-D9pZQhU9.cjs → deterministicJson-D0BrV1FD.cjs} +13 -13
- package/dist/{doctor-BNhLBBTK.mjs → doctor-B4HQiW6j.mjs} +7 -7
- package/dist/{doctor-lHD1YZH6.cjs → doctor-CYe4d9kU.cjs} +7 -7
- package/dist/{downloadTarget-BhkQxTa8.cjs → downloadTarget-CuhBVvuC.cjs} +6 -6
- package/dist/{downloadTarget-ByTxs_N5.mjs → downloadTarget-tYMV_VHo.mjs} +6 -6
- package/dist/{ensureDaemonRunning-BiCK6RiS.cjs → ensureDaemonRunning-Ce3BlWiR.cjs} +5 -5
- package/dist/{ensureDaemonRunning-Cv0AMaHK.mjs → ensureDaemonRunning-DVtIG9z7.mjs} +5 -5
- package/dist/{handleResumeCommand-Cy_KW0LN.mjs → handleResumeCommand-BU1uMNyv.mjs} +5 -5
- package/dist/{handleResumeCommand-WB4VDeKk.cjs → handleResumeCommand-CLxsmAW0.cjs} +5 -5
- package/dist/{index-BpSpw6jG.mjs → index-B1OxWiNG.mjs} +3 -3
- package/dist/{index-BumVulwx.cjs → index-BOe6dKnL.cjs} +215 -18
- package/dist/{index-lWXWV0H2.mjs → index-CVHRt3SS.mjs} +4 -4
- package/dist/{index-CdOz1uDl.mjs → index-ChX0eVXw.mjs} +91 -45
- package/dist/{index-CVMbboXv.mjs → index-DDz0Ftoy.mjs} +4 -4
- package/dist/{index-B44ft-m4.cjs → index-DG1kGjkF.cjs} +92 -46
- package/dist/{index-BpWESchl.cjs → index-DoXbGEAi.cjs} +3 -3
- package/dist/{index-Bcp-PEGc.cjs → index-KwuXqLwe.cjs} +4 -4
- package/dist/{index-B9f1vKcC.mjs → index-WKyN-bNy.mjs} +212 -17
- package/dist/{index-Vtcax4oD.cjs → index-wWJJAQRk.cjs} +4 -4
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{install-mK93DJ6L.mjs → install-CMa_FOWu.mjs} +3 -3
- package/dist/{install-DdRVv9IS.cjs → install-cAYvHxXR.cjs} +3 -3
- package/dist/lib.cjs +12 -12
- package/dist/lib.d.cts +6 -0
- package/dist/lib.d.mts +6 -0
- package/dist/lib.mjs +12 -12
- package/dist/{lidState-LtdUCXi-.mjs → lidState-D-lsD1FS.mjs} +1 -1
- package/dist/{lidState-XyjQaZtU.cjs → lidState-d1vgQ3n7.cjs} +1 -1
- package/dist/{localHappyAgentAuth-C9Aj_wGD.cjs → localHappyAgentAuth-DucSnCg3.cjs} +1 -1
- package/dist/{localHappyAgentAuth-DqFE0Adr.mjs → localHappyAgentAuth-wvDp-nGj.mjs} +1 -1
- package/dist/{logger-BILSzq2s.cjs → logger-C3vZG6Q0.cjs} +2 -2
- package/dist/{logger-SAU4uSs4.mjs → logger-RpzJ4d8V.mjs} +2 -2
- package/dist/{machineMetadata-C5TgUTpD.cjs → machineMetadata-CAvFq1Jg.cjs} +3 -3
- package/dist/{machineMetadata-ZVnihOuL.mjs → machineMetadata-CiQ2_1Mq.mjs} +3 -3
- package/dist/{main-CVfx_-l7.cjs → main-ChpYcFZi.cjs} +46 -46
- package/dist/{main-BjOHtX8u.mjs → main-IPhaImjm.mjs} +46 -46
- package/dist/{mcp-By9XK193.cjs → mcp-2xF232hL.cjs} +15 -15
- package/dist/{mcp-CWVr7KbQ.mjs → mcp-CWnMvju6.mjs} +15 -15
- package/dist/{mirrorProtocol-C0wyaesn.cjs → mirrorProtocol-CVzPObON.cjs} +3 -3
- package/dist/{mirrorProtocol-BI6XbokT.mjs → mirrorProtocol-Dr7fNq8V.mjs} +3 -3
- package/dist/{package-BMBwnCn3.mjs → package-CwB8rFJt.mjs} +7 -7
- package/dist/{package-Bbfq2KR7.cjs → package-Gnf_935w.cjs} +7 -7
- package/dist/{panels-rQmysHlY.cjs → panels-DTlTsndU.cjs} +5 -5
- package/dist/{panels-CbIUwV6q.mjs → panels-L1mSkC-y.mjs} +5 -5
- package/dist/{peerTools-CyruQrOo.mjs → peerTools-2_8Bw9PU.mjs} +5 -5
- package/dist/{peerTools-CZfiq_Dx.cjs → peerTools-C1E5cQ86.cjs} +5 -5
- package/dist/{persistence-C7T3HYjq.mjs → persistence-Bn4qEbDg.mjs} +2 -2
- package/dist/{persistence-DPeSC0SK.cjs → persistence-CqtjFiD1.cjs} +2 -2
- package/dist/{piRunnerArgs-DAq8vIpP.cjs → piRunnerArgs-BI8yQRBZ.cjs} +1 -1
- package/dist/{piRunnerArgs-CsWompo8.mjs → piRunnerArgs-DWBb63W9.mjs} +1 -1
- package/dist/{piRuntime-CFqlQFoz.cjs → piRuntime--mQ43MSM.cjs} +1 -1
- package/dist/{piRuntime-Dxd8Gfun.mjs → piRuntime-Do8oqbm3.mjs} +1 -1
- package/dist/{piTerminal-DHG3Kzve.cjs → piTerminal-BzcvLFsP.cjs} +17 -17
- package/dist/{piTerminal-BssuKDtJ.mjs → piTerminal-GC1KHTYQ.mjs} +17 -17
- package/dist/{pushNotifications-Bi72c41d.mjs → pushNotifications-BThg4nVd.mjs} +3 -3
- package/dist/{pushNotifications-CsSyhnHu.cjs → pushNotifications-Bb-QSqXw.cjs} +3 -3
- package/dist/{query-Cuef299f.cjs → query-Bz3pocKH.cjs} +1 -1
- package/dist/{query-BQOwsKS1.mjs → query-CkgIJ_Dy.mjs} +1 -1
- package/dist/{specialCommands-35KxDNE8.cjs → rateLimitReporter-BkHyvLru.cjs} +3 -55
- package/dist/{specialCommands-CTtmGCCf.mjs → rateLimitReporter-Iw4k3Bbr.mjs} +4 -55
- package/dist/{rateLimitWindows-bfwC81Z-.cjs → rateLimitWindows-Bm_dcQGW.cjs} +1 -1
- package/dist/{rateLimitWindows-B6IAWYN5.mjs → rateLimitWindows-CQ4tIQnx.mjs} +1 -1
- package/dist/{registerCommonHandlers-CQC04iF3.cjs → registerCommonHandlers-CIs6H2DV.cjs} +2 -2
- package/dist/{registerCommonHandlers-qzb6TQqo.mjs → registerCommonHandlers-CaWl9ll1.mjs} +2 -2
- package/dist/{remoteSessionClient-DffolBcQ.cjs → remoteSessionClient-DgUMfPW4.cjs} +5 -5
- package/dist/{remoteSessionClient-D3XhN_sd.mjs → remoteSessionClient-uPj7omsw.mjs} +5 -5
- package/dist/{reportProgressTool-BieTXE_R.cjs → reportProgressTool-CaJ8EwLq.cjs} +3 -3
- package/dist/{reportProgressTool-irHR-XEW.mjs → reportProgressTool-DUEq3xAL.mjs} +3 -3
- package/dist/{run-DCUaxe2S.mjs → run-DTUJBD6p.mjs} +35 -35
- package/dist/{run-Ck_WA6Nj.cjs → run-DyyGMqND.cjs} +35 -35
- package/dist/{runClaude-BUGku2Qp.cjs → runClaude-8JDaPoGQ.cjs} +22 -22
- package/dist/{runClaude-BryAvfNV.mjs → runClaude-DTNvIz2J.mjs} +22 -22
- package/dist/{runClaudeDeps-Dbk1VrOW.cjs → runClaudeDeps-BeLo5zss.cjs} +82 -53
- package/dist/{runClaudeDeps-BZkWM9_u.mjs → runClaudeDeps-CgGkgg7e.mjs} +84 -54
- package/dist/{runGemini-B6AZ2bv0.cjs → runGemini-BSOdU563.cjs} +54 -50
- package/dist/{runGemini-DT379gpi.mjs → runGemini-eU8UOzfc.mjs} +52 -48
- package/dist/{runOpenClaw-eBUYlIVJ.cjs → runOpenClaw-CYyFoGRZ.cjs} +30 -26
- package/dist/{runOpenClaw-Bpp9mkyO.mjs → runOpenClaw-D8RZiA1e.mjs} +28 -24
- package/dist/{sandbox-Bv4H1P6u.cjs → sandbox-C8zfNX-4.cjs} +4 -4
- package/dist/{sandbox-Z8TM9eUg.mjs → sandbox-DlPahdhl.mjs} +4 -4
- package/dist/selfCheck-4bcdHPFQ.mjs +86 -0
- package/dist/{selfCheck--1k2Ptf6.cjs → selfCheck-D28nvuPJ.cjs} +37 -37
- package/dist/{send-BG4KYe6f.cjs → send-C58kX4qz.cjs} +8 -8
- package/dist/{send-CKTovWuQ.mjs → send-DBpv-1eh.mjs} +8 -8
- package/dist/{server-BTNwH-sA.cjs → server-I_CETZzn.cjs} +6 -6
- package/dist/{server-DLpXtoiZ.mjs → server-J5K6pOox.mjs} +4 -4
- package/dist/{sessionLock-DhzB5ZI9.mjs → sessionLock-C7Wg1RVd.mjs} +3 -3
- package/dist/{sessionLock-Cf6RlgfF.cjs → sessionLock-DjE7O0LS.cjs} +3 -3
- package/dist/{sessionOps-CiFjBCMa.mjs → sessionOps-CYjMT7Ad.mjs} +4 -4
- package/dist/{sessionOps-R52JWMnX.cjs → sessionOps-DGMpl9NB.cjs} +4 -4
- package/dist/{sessionProvider-LATn-lZL.cjs → sessionProvider-DVtxrOuM.cjs} +5 -5
- package/dist/{sessionProvider-f2tUhwBc.mjs → sessionProvider-TLiFn9kD.mjs} +5 -5
- package/dist/{sessionScanner-DRzZtGtu.cjs → sessionScanner-BZ1ZSn6I.cjs} +3 -3
- package/dist/{sessionScanner-lS1puA5H.mjs → sessionScanner-CknV1IlN.mjs} +3 -3
- package/dist/{sessions-DGd8Fin6.cjs → sessions-CTkBKs5U.cjs} +10 -10
- package/dist/{sessions-D01nnjOE.mjs → sessions-DU4bxkap.mjs} +10 -10
- package/dist/{setupOfflineReconnection-Ds7ywGwR.cjs → setupOfflineReconnection-CQHNuP_0.cjs} +2 -2
- package/dist/{setupOfflineReconnection-UApZjcU5.mjs → setupOfflineReconnection-DaOXnGuH.mjs} +2 -2
- package/dist/{spawn-CT3g4p8A.cjs → spawn-C0wZc03S.cjs} +67 -25
- package/dist/{spawn-ct8aSMA8.mjs → spawn-DdnYTtQe.mjs} +67 -26
- package/dist/{spawnAgents-DsJSyLDl.cjs → spawnAgents-BjyU78Ue.cjs} +21 -9
- package/dist/{spawnAgents-f2q31uUV.mjs → spawnAgents-D-7wMw-a.mjs} +21 -10
- package/dist/{spawnHappyCLI-DedrWByd.cjs → spawnHappyCLI-BJUd974I.cjs} +1 -1
- package/dist/{spawnHappyCLI-Dp05fHcp.mjs → spawnHappyCLI-CnyyJk74.mjs} +1 -1
- package/dist/{registerKillSessionHandler-BraKB5Ks.cjs → specialCommands-BsvSoDhC.cjs} +91 -6
- package/dist/{registerKillSessionHandler-DMPrrNKX.mjs → specialCommands-DHU7TNeK.mjs} +88 -7
- package/dist/{startFileWatcher-BLdxJdgu.mjs → startFileWatcher-CpO5Mwbr.mjs} +1 -1
- package/dist/{startFileWatcher-72w11DP_.cjs → startFileWatcher-DBboREco.cjs} +1 -1
- package/dist/{startupSessionCreate-CJFR_Zom.mjs → startupSessionCreate-BgaVuvQp.mjs} +1 -1
- package/dist/{startupSessionCreate-Cy4J4-Ep.cjs → startupSessionCreate-C1u2dtz8.cjs} +1 -1
- package/dist/{streamRelay-B3FloUTT.mjs → streamRelay-CqBynIon.mjs} +1 -1
- package/dist/{streamRelay-Cn_uGG6m.cjs → streamRelay-D9a4cBEa.cjs} +1 -1
- package/dist/{sync-lxDpbIh3.cjs → sync-6HFRJP1h.cjs} +1 -1
- package/dist/{sync-BWX1OVQi.mjs → sync-I8NYmycF.mjs} +1 -1
- package/dist/{systemPrompt-0DqWPGY6.cjs → systemPrompt-BDWj5QSL.cjs} +2 -2
- package/dist/{systemPrompt-BIilbjt_.mjs → systemPrompt-C1RSY_60.mjs} +2 -2
- package/dist/{teams-CvpB8Rdm.mjs → teams-GpLFbXXE.mjs} +7 -7
- package/dist/{teams-CImmJLlM.cjs → teams-eUD7ymif.cjs} +7 -7
- package/dist/{template-DPsqlHJQ.cjs → template-17HATY_Y.cjs} +1 -1
- package/dist/{template-DuKZw-Sz.mjs → template-CEK8MEjo.mjs} +1 -1
- package/dist/{time-BbQJi3Eh.cjs → time-BAJRbB6U.cjs} +1 -1
- package/dist/{time-DjS5me2q.mjs → time-umG7yHkb.mjs} +1 -1
- package/dist/{titleGenerator-CGdBp5lQ.mjs → titleGenerator-dmFlxkRs.mjs} +1 -1
- package/dist/{titleGenerator-CfJme6ep.cjs → titleGenerator-iqb2jOF1.cjs} +2 -2
- package/dist/{todo-BxfUKwTM.mjs → todo-CT4AJ3sH.mjs} +6 -6
- package/dist/{todo-rN20m9lT.cjs → todo-DsR7WnQS.cjs} +6 -6
- package/dist/{tools-kGtSjG8h.cjs → tools-30E66QL_.cjs} +1 -1
- package/dist/{tools-B_W7xJNh.mjs → tools-BOWazSD6.mjs} +1 -1
- package/dist/{uninstall-CBQsxEmD.cjs → uninstall-BtTc9hHa.cjs} +3 -3
- package/dist/{uninstall-DUjvgLlg.mjs → uninstall-DImXs6VZ.mjs} +3 -3
- package/package.json +7 -7
- package/dist/selfCheck-DIGghfQz.mjs +0 -86
|
@@ -23,6 +23,7 @@ function _interopNamespaceDefault(e) {
|
|
|
23
23
|
var z__namespace = /*#__PURE__*/_interopNamespaceDefault(z);
|
|
24
24
|
|
|
25
25
|
const CODEX_STEER_CAPABILITY = "codex-steer-v1";
|
|
26
|
+
const CODEX_COMPACT_CAPABILITY = "codex-compact-v1";
|
|
26
27
|
const PI_STEER_CAPABILITY = "pi-steer-v1";
|
|
27
28
|
const sessionRoleSchema = z__namespace.enum(["user", "agent"]);
|
|
28
29
|
const sessionTextEventSchema = z__namespace.object({
|
|
@@ -1014,9 +1015,9 @@ function createBuiltinTodoClient(credentials, options2) {
|
|
|
1014
1015
|
throw new BuiltinTodoError("order-collision", "These Todos share an order that cannot safely be changed");
|
|
1015
1016
|
}
|
|
1016
1017
|
}
|
|
1017
|
-
const
|
|
1018
|
-
const nextRecord = { ...record, order: recordOrder, updatedAt };
|
|
1019
|
-
const nextNeighbor = { ...neighbor, order: neighborOrder, updatedAt };
|
|
1018
|
+
const updatedAt2 = Date.now();
|
|
1019
|
+
const nextRecord = { ...record, order: recordOrder, updatedAt: updatedAt2 };
|
|
1020
|
+
const nextNeighbor = { ...neighbor, order: neighborOrder, updatedAt: updatedAt2 };
|
|
1020
1021
|
const versions = await mutate([mutation(record, nextRecord), mutation(neighbor, nextNeighbor)]);
|
|
1021
1022
|
return [{ ...nextRecord, version: versions[0] }, { ...nextNeighbor, version: versions[1] }];
|
|
1022
1023
|
}
|
|
@@ -1106,24 +1107,218 @@ z.z.object({
|
|
|
1106
1107
|
startedAt: z.z.number(),
|
|
1107
1108
|
at: z.z.number()
|
|
1108
1109
|
});
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1110
|
+
var version = 1;
|
|
1111
|
+
var updatedAt = "2026-10-30";
|
|
1112
|
+
var agents = {
|
|
1113
|
+
claude: {
|
|
1114
|
+
tier: "opus",
|
|
1115
|
+
pattern: "^claude-opus-(\\d+)(?:-(\\d{1,2}))?$",
|
|
1116
|
+
models: [
|
|
1117
|
+
{
|
|
1118
|
+
model: "claude-opus-5-5",
|
|
1119
|
+
label: "Opus 5.5",
|
|
1120
|
+
requires: {
|
|
1121
|
+
capability: "claude-opus-5-5-v1",
|
|
1122
|
+
cliVersion: "0.2.149"
|
|
1123
|
+
}
|
|
1124
|
+
}
|
|
1125
|
+
]
|
|
1126
|
+
},
|
|
1127
|
+
codex: {
|
|
1128
|
+
tier: "sol",
|
|
1129
|
+
pattern: "^gpt-(\\d+)(?:\\.(\\d+))?-sol$",
|
|
1130
|
+
models: [
|
|
1131
|
+
{
|
|
1132
|
+
model: "gpt-6.1-sol",
|
|
1133
|
+
label: "gpt-6.1-sol",
|
|
1134
|
+
requires: {
|
|
1135
|
+
agentVersion: "0.160.0"
|
|
1136
|
+
}
|
|
1137
|
+
},
|
|
1138
|
+
{
|
|
1139
|
+
model: "gpt-6-sol",
|
|
1140
|
+
label: "gpt-6-sol",
|
|
1141
|
+
requires: {
|
|
1142
|
+
agentVersion: "0.157.0"
|
|
1143
|
+
}
|
|
1144
|
+
},
|
|
1145
|
+
{
|
|
1146
|
+
model: "gpt-5.6-sol",
|
|
1147
|
+
label: "gpt-5.6-sol",
|
|
1148
|
+
requires: {
|
|
1149
|
+
agentVersion: "0.150.0"
|
|
1150
|
+
}
|
|
1151
|
+
}
|
|
1152
|
+
]
|
|
1153
|
+
},
|
|
1154
|
+
gemini: {
|
|
1155
|
+
tier: "pro",
|
|
1156
|
+
pattern: "^gemini-(\\d+)(?:\\.(\\d+))?-pro(?:-preview)?$",
|
|
1157
|
+
models: [
|
|
1158
|
+
{
|
|
1159
|
+
model: "gemini-3.1-pro-preview",
|
|
1160
|
+
label: "gemini 3.1 pro"
|
|
1161
|
+
},
|
|
1162
|
+
{
|
|
1163
|
+
model: "gemini-2.5-pro",
|
|
1164
|
+
label: "gemini 2.5 pro"
|
|
1165
|
+
}
|
|
1166
|
+
]
|
|
1167
|
+
}
|
|
1168
|
+
};
|
|
1169
|
+
var bundledLatestModels = {
|
|
1170
|
+
version,
|
|
1171
|
+
updatedAt,
|
|
1172
|
+
agents
|
|
1173
|
+
};
|
|
1174
|
+
const LATEST_MODEL_MODE = "latest";
|
|
1175
|
+
function isLatestModelMode(model) {
|
|
1176
|
+
return model === LATEST_MODEL_MODE;
|
|
1177
|
+
}
|
|
1178
|
+
const LATEST_MODEL_AGENTS = ["claude", "codex", "gemini"];
|
|
1179
|
+
const LatestModelEntrySchema = z.z.object({
|
|
1180
|
+
model: z.z.string().min(1),
|
|
1181
|
+
label: z.z.string().optional(),
|
|
1182
|
+
/** What a machine/wrapper must have to run it. Absent = nothing provable
|
|
1183
|
+
* without the session's own catalog. */
|
|
1184
|
+
requires: z.z.object({
|
|
1185
|
+
/** Wrapper capability (session metadata.capabilities) — AGENTS.md rule 14. */
|
|
1186
|
+
capability: z.z.string().optional(),
|
|
1187
|
+
/** very-happy-cli version that first advertises `capability`; only used
|
|
1188
|
+
* before a session exists (launcher label). */
|
|
1189
|
+
cliVersion: z.z.string().optional(),
|
|
1190
|
+
/** First agent CLI (codex) whose bundled `model/list` carries the model. */
|
|
1191
|
+
agentVersion: z.z.string().optional()
|
|
1192
|
+
}).optional()
|
|
1193
|
+
});
|
|
1194
|
+
const LatestModelTierSchema = z.z.object({
|
|
1195
|
+
tier: z.z.string(),
|
|
1196
|
+
/** Regex source matching every id of the tier; its capture groups are the
|
|
1197
|
+
* version (`claude-opus-5-5` → 5,5; `gpt-6.1-sol` → 6.1). */
|
|
1198
|
+
pattern: z.z.string(),
|
|
1199
|
+
/** Known models of the tier, newest first. */
|
|
1200
|
+
models: z.z.array(LatestModelEntrySchema)
|
|
1201
|
+
});
|
|
1202
|
+
const LatestModelTableSchema = z.z.object({
|
|
1203
|
+
version: z.z.number(),
|
|
1204
|
+
updatedAt: z.z.string().optional(),
|
|
1205
|
+
agents: z.z.object({
|
|
1206
|
+
claude: LatestModelTierSchema.optional(),
|
|
1207
|
+
codex: LatestModelTierSchema.optional(),
|
|
1208
|
+
gemini: LatestModelTierSchema.optional()
|
|
1209
|
+
}).passthrough()
|
|
1210
|
+
}).passthrough();
|
|
1211
|
+
z.z.object({
|
|
1212
|
+
table: LatestModelTableSchema,
|
|
1213
|
+
source: z.z.enum(["bundled", "configured"])
|
|
1214
|
+
});
|
|
1215
|
+
const BUNDLED_LATEST_MODELS = LatestModelTableSchema.parse(bundledLatestModels);
|
|
1216
|
+
const MACHINE_CONFIG_AGENTS = ["codex", "gemini"];
|
|
1217
|
+
function compilePattern(source) {
|
|
1218
|
+
try {
|
|
1219
|
+
return new RegExp(source);
|
|
1220
|
+
} catch {
|
|
1221
|
+
return null;
|
|
1222
|
+
}
|
|
1223
|
+
}
|
|
1224
|
+
function tierVersion(tier, model) {
|
|
1225
|
+
const match = compilePattern(tier.pattern)?.exec(model);
|
|
1226
|
+
if (!match) return null;
|
|
1227
|
+
return match.slice(1).filter((part) => part !== void 0).map((part) => Number(part));
|
|
1113
1228
|
}
|
|
1114
|
-
function
|
|
1115
|
-
|
|
1229
|
+
function compareTierVersions(a, b) {
|
|
1230
|
+
for (let i = 0; i < Math.max(a.length, b.length); i++) {
|
|
1231
|
+
const diff = (a[i] ?? 0) - (b[i] ?? 0);
|
|
1232
|
+
if (diff !== 0) return diff;
|
|
1233
|
+
}
|
|
1234
|
+
return 0;
|
|
1235
|
+
}
|
|
1236
|
+
function catalogTierIds(tier, catalog) {
|
|
1237
|
+
const ids = /* @__PURE__ */ new Map();
|
|
1238
|
+
for (const entry of catalog ?? []) {
|
|
1239
|
+
for (const id2 of [entry.resolvedModel, entry.code]) {
|
|
1240
|
+
if (typeof id2 === "string" && tierVersion(tier, id2) && !ids.has(id2)) {
|
|
1241
|
+
ids.set(id2, entry.code === id2 && entry.value ? entry.value : id2);
|
|
1242
|
+
}
|
|
1243
|
+
}
|
|
1244
|
+
}
|
|
1245
|
+
return ids;
|
|
1246
|
+
}
|
|
1247
|
+
function entryRunnable(entry, ctx, catalogIds) {
|
|
1248
|
+
if (catalogIds.has(entry.model)) return true;
|
|
1249
|
+
const requires = entry.requires;
|
|
1250
|
+
{
|
|
1251
|
+
return !!requires?.capability && (ctx.capabilities ?? []).includes(requires.capability);
|
|
1252
|
+
}
|
|
1253
|
+
}
|
|
1254
|
+
function getLatestModelTier(table, agent) {
|
|
1255
|
+
if (agent !== "claude" && agent !== "codex" && agent !== "gemini") return null;
|
|
1256
|
+
const tier = table?.agents?.[agent] ?? BUNDLED_LATEST_MODELS.agents[agent];
|
|
1257
|
+
return tier && compilePattern(tier.pattern) ? tier : BUNDLED_LATEST_MODELS.agents[agent] ?? null;
|
|
1258
|
+
}
|
|
1259
|
+
function resolveLatestModel(table, agent, ctx) {
|
|
1260
|
+
const tier = getLatestModelTier(table, agent);
|
|
1261
|
+
if (!tier) return { model: null, newest: null, label: null, limited: false, configured: null };
|
|
1262
|
+
const catalogIds = catalogTierIds(tier, ctx.catalog);
|
|
1263
|
+
const labels = /* @__PURE__ */ new Map();
|
|
1264
|
+
const known = [];
|
|
1265
|
+
const runnable = [];
|
|
1266
|
+
for (const entry of tier.models) {
|
|
1267
|
+
if (!tierVersion(tier, entry.model)) continue;
|
|
1268
|
+
labels.set(entry.model, entry.label ?? entry.model);
|
|
1269
|
+
known.push(entry.model);
|
|
1270
|
+
if (entryRunnable(entry, ctx, catalogIds)) runnable.push(entry.model);
|
|
1271
|
+
}
|
|
1272
|
+
for (const [id2, label] of catalogIds) {
|
|
1273
|
+
if (!labels.has(id2)) labels.set(id2, label);
|
|
1274
|
+
known.push(id2);
|
|
1275
|
+
runnable.push(id2);
|
|
1276
|
+
}
|
|
1277
|
+
const newestOf = (ids) => {
|
|
1278
|
+
let best = null;
|
|
1279
|
+
for (const id2 of ids) {
|
|
1280
|
+
const version2 = tierVersion(tier, id2);
|
|
1281
|
+
if (!best || compareTierVersions(version2, best.version) > 0) best = { id: id2, version: version2 };
|
|
1282
|
+
}
|
|
1283
|
+
return best?.id ?? null;
|
|
1284
|
+
};
|
|
1285
|
+
const newest = newestOf(known);
|
|
1286
|
+
if (MACHINE_CONFIG_AGENTS.includes(agent ?? "")) {
|
|
1287
|
+
const configured = typeof ctx.configuredModel === "string" && ctx.configuredModel.trim() ? ctx.configuredModel.trim() : null;
|
|
1288
|
+
if (configured || ctx.configuredModel === void 0) {
|
|
1289
|
+
return { model: null, newest, label: configured, limited: false, configured };
|
|
1290
|
+
}
|
|
1291
|
+
}
|
|
1292
|
+
const model = newestOf(runnable);
|
|
1293
|
+
const sameVersion = model !== null && newest !== null && compareTierVersions(tierVersion(tier, model), tierVersion(tier, newest)) === 0;
|
|
1294
|
+
return {
|
|
1295
|
+
model,
|
|
1296
|
+
newest,
|
|
1297
|
+
label: model ? labels.get(model) ?? model : null,
|
|
1298
|
+
limited: newest !== null && !sameVersion,
|
|
1299
|
+
configured: null
|
|
1300
|
+
};
|
|
1301
|
+
}
|
|
1302
|
+
function parseLatestModelTable(value) {
|
|
1303
|
+
const parsed = LatestModelTableSchema.safeParse(value);
|
|
1304
|
+
if (!parsed.success) return null;
|
|
1305
|
+
for (const agent of LATEST_MODEL_AGENTS) {
|
|
1306
|
+
const tier = parsed.data.agents[agent];
|
|
1307
|
+
if (tier && !compilePattern(tier.pattern)) return null;
|
|
1308
|
+
}
|
|
1309
|
+
return parsed.data;
|
|
1116
1310
|
}
|
|
1117
1311
|
const AGENT_CODE_DEFAULTS = {
|
|
1118
1312
|
// The Claude UI key for YOLO is `bypassPermissions`; the CLI also accepts
|
|
1119
1313
|
// `yolo` and maps it to the Claude SDK's bypass mode.
|
|
1120
|
-
// model
|
|
1121
|
-
//
|
|
1122
|
-
//
|
|
1123
|
-
//
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1314
|
+
// model: `latest` (B-844) = the newest model of the agent's tier that the
|
|
1315
|
+
// session's wrapper can run, resolved at send time (modelLatest.ts) and
|
|
1316
|
+
// never sent as is. Today: Claude → claude-opus-5-5 (pinned id, not the
|
|
1317
|
+
// `opus` alias), Codex → gpt-6.1-sol on Codex >= 0.160, Gemini → the
|
|
1318
|
+
// newest pro its session catalog lists. effort null = don't send effort.
|
|
1319
|
+
claude: { permissionMode: "bypassPermissions", modelMode: LATEST_MODEL_MODE, effortLevel: null },
|
|
1320
|
+
codex: { permissionMode: "yolo", modelMode: LATEST_MODEL_MODE, effortLevel: "medium" },
|
|
1321
|
+
gemini: { permissionMode: "default", modelMode: LATEST_MODEL_MODE, effortLevel: null },
|
|
1127
1322
|
openclaw: { permissionMode: "default", modelMode: "default", effortLevel: null },
|
|
1128
1323
|
// pi: the runner keeps Claude's permission vocabulary (B-350 — HAPPY_PERMISSION_MODE +
|
|
1129
1324
|
// session-modes file, enforced by the pi-side gate; `bypassPermissions` = auto-allow every
|
|
@@ -1490,6 +1685,7 @@ exports.AutomationPrecheckSchema = AutomationPrecheckSchema;
|
|
|
1490
1685
|
exports.AutomationTriggerSchema = AutomationTriggerSchema;
|
|
1491
1686
|
exports.BUILTIN_TODO_DISCOVERY = BUILTIN_TODO_DISCOVERY;
|
|
1492
1687
|
exports.BUILTIN_TODO_SKILL = BUILTIN_TODO_SKILL;
|
|
1688
|
+
exports.CODEX_COMPACT_CAPABILITY = CODEX_COMPACT_CAPABILITY;
|
|
1493
1689
|
exports.CODEX_STEER_CAPABILITY = CODEX_STEER_CAPABILITY;
|
|
1494
1690
|
exports.HARNESS_INSTALL_CAPABILITY_VERSION = HARNESS_INSTALL_CAPABILITY_VERSION;
|
|
1495
1691
|
exports.OwnerBoardListInputSchema = OwnerBoardListInputSchema;
|
|
@@ -1509,11 +1705,12 @@ exports.createEnvelope = createEnvelope;
|
|
|
1509
1705
|
exports.getAgentCodeDefaults = getAgentCodeDefaults;
|
|
1510
1706
|
exports.isAttentionBoardLocalId = isAttentionBoardLocalId;
|
|
1511
1707
|
exports.isAutomationRunTerminal = isAutomationRunTerminal;
|
|
1512
|
-
exports.isClaudeOpus55Model = isClaudeOpus55Model;
|
|
1513
1708
|
exports.isHarnessInstallId = isHarnessInstallId;
|
|
1514
1709
|
exports.isInsideTeamWorktree = isInsideTeamWorktree;
|
|
1710
|
+
exports.isLatestModelMode = isLatestModelMode;
|
|
1515
1711
|
exports.normalizeAgentKey = normalizeAgentKey;
|
|
1516
1712
|
exports.ownerBoardPostToRest = ownerBoardPostToRest;
|
|
1713
|
+
exports.parseLatestModelTable = parseLatestModelTable;
|
|
1517
1714
|
exports.rebaseTeamWorktreePath = rebaseTeamWorktreePath;
|
|
1715
|
+
exports.resolveLatestModel = resolveLatestModel;
|
|
1518
1716
|
exports.streamKeyOf = streamKeyOf;
|
|
1519
|
-
exports.supportsClaudeOpus55 = supportsClaudeOpus55;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { statSync, readdirSync } from 'node:fs';
|
|
2
2
|
import { homedir } from 'node:os';
|
|
3
|
-
import { l as logger } from './logger-
|
|
4
|
-
import { r as readSettings } from './persistence-
|
|
3
|
+
import { l as logger } from './logger-RpzJ4d8V.mjs';
|
|
4
|
+
import { r as readSettings } from './persistence-Bn4qEbDg.mjs';
|
|
5
5
|
import { d as describeAgentHome, C as CLAUDE_CONFIG_DIR_ENV, a as CODEX_HOME_ENV, f as findClaudeConversation, b as agentHomeCandidates, c as findCodexThread, r as resolveAgentHomes, A as AGENT_HOME_ENV_NAMES, g as agentHomeEnv, p as probeLoginShellEnv } from './loginShellEnv-Dw8M7tkI.mjs';
|
|
6
6
|
export { h as claudeConversationPath, i as claudeProjectDirName, j as codexRolloutFileMatches, e as expandHomePath } from './loginShellEnv-Dw8M7tkI.mjs';
|
|
7
7
|
import 'chalk';
|
|
8
8
|
import 'node:util';
|
|
9
|
-
import './configuration-
|
|
9
|
+
import './configuration-BZHpFD7K.mjs';
|
|
10
10
|
import 'node:path';
|
|
11
|
-
import './package-
|
|
11
|
+
import './package-CwB8rFJt.mjs';
|
|
12
12
|
import 'node:fs/promises';
|
|
13
13
|
import 'zod';
|
|
14
14
|
import './authRelay-DhQhkBvX.mjs';
|
|
@@ -1,92 +1,92 @@
|
|
|
1
|
-
import { D as DefaultTransport, A as AcpBackend, i as isAgentExitError, a as acpNoticeMessage } from './AcpBackend-
|
|
2
|
-
export { b as DEFAULT_IDLE_TIMEOUT_MS, c as DEFAULT_TOOL_CALL_TIMEOUT_MS, e as extractErrorDetail, f as formatDuration, d as formatDurationMinutes, h as handleAgentMessageChunk, g as handleAgentThoughtChunk, j as handleLegacyMessageChunk, k as handlePlanUpdate, l as handleThinkingUpdate, m as handleToolCall, n as handleToolCallUpdate, p as parseArgsFromContent } from './AcpBackend-
|
|
3
|
-
import { l as logger } from './logger-
|
|
4
|
-
import { A as AcpSessionManager } from './AcpSessionManager-
|
|
5
|
-
import {
|
|
6
|
-
import { h as hashObject, s as startHappyServer, r as readPiModelsJson, a as resolvePiContextUsage, c as createProjectInjector } from './deterministicJson-
|
|
1
|
+
import { D as DefaultTransport, A as AcpBackend, i as isAgentExitError, a as acpNoticeMessage } from './AcpBackend-2loP7MpF.mjs';
|
|
2
|
+
export { b as DEFAULT_IDLE_TIMEOUT_MS, c as DEFAULT_TOOL_CALL_TIMEOUT_MS, e as extractErrorDetail, f as formatDuration, d as formatDurationMinutes, h as handleAgentMessageChunk, g as handleAgentThoughtChunk, j as handleLegacyMessageChunk, k as handlePlanUpdate, l as handleThinkingUpdate, m as handleToolCall, n as handleToolCallUpdate, p as parseArgsFromContent } from './AcpBackend-2loP7MpF.mjs';
|
|
3
|
+
import { l as logger } from './logger-RpzJ4d8V.mjs';
|
|
4
|
+
import { A as AcpSessionManager } from './AcpSessionManager-C17doAoR.mjs';
|
|
5
|
+
import { w as PI_STEER_CAPABILITY, j as BUILTIN_TODO_DISCOVERY, P as PROMPT_QUEUE_CAPABILITY, a as PROJECT_SESSION_CAPABILITY } from './index-WKyN-bNy.mjs';
|
|
6
|
+
import { h as hashObject, s as startHappyServer, r as readPiModelsJson, a as resolvePiContextUsage, c as createProjectInjector } from './deterministicJson-CsRckxVq.mjs';
|
|
7
|
+
import { c as compactCommandText, C as COMPACT_UNSUPPORTED_NOTICE, M as MessageQueue2, r as registerKillSessionHandler } from './specialCommands-DHU7TNeK.mjs';
|
|
7
8
|
import { r as registerAgentAttachmentDownloads } from './agentAttachments-M_B5qEF2.mjs';
|
|
8
|
-
import { c as configuration } from './configuration-
|
|
9
|
-
import { a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt, C as CLAUDE_ATTACHMENT_KINDS } from './attachmentContent-
|
|
10
|
-
import { p as preparePiTeamsRuntime } from './piRuntime-
|
|
9
|
+
import { c as configuration } from './configuration-BZHpFD7K.mjs';
|
|
10
|
+
import { a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt, C as CLAUDE_ATTACHMENT_KINDS } from './attachmentContent-C9S4ekAz.mjs';
|
|
11
|
+
import { p as preparePiTeamsRuntime } from './piRuntime-Do8oqbm3.mjs';
|
|
11
12
|
import { randomUUID } from 'node:crypto';
|
|
12
13
|
import { join } from 'node:path';
|
|
13
|
-
import { c as connectionState, A as ApiClient } from './api-
|
|
14
|
-
import { s as sharedProjectsClient } from './client-
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import { n as notifyDaemonSessionStarted, k as reportSessionEditToDaemon } from './controlClient-O-vf2MkJ.mjs';
|
|
14
|
+
import { c as connectionState, A as ApiClient } from './api-DNKa7kVy.mjs';
|
|
15
|
+
import { s as sharedProjectsClient } from './client-DWws_aQK.mjs';
|
|
16
|
+
import { r as readSettings } from './persistence-Bn4qEbDg.mjs';
|
|
17
|
+
import { g as getInitialMachineMetadata } from './machineMetadata-CiQ2_1Mq.mjs';
|
|
18
|
+
import { c as createSessionMetadata } from './createSessionMetadata-Dn5BkLfU.mjs';
|
|
19
|
+
import { s as setupOfflineReconnection } from './setupOfflineReconnection-DaOXnGuH.mjs';
|
|
20
|
+
import { c as createSessionForStartup } from './startupSessionCreate-BgaVuvQp.mjs';
|
|
21
|
+
import { n as notifyDaemonSessionStarted, k as reportSessionEditToDaemon } from './controlClient-Bw56NIrj.mjs';
|
|
22
22
|
import { d as decodeBase64, e as encodeBase64 } from './authRelay-DhQhkBvX.mjs';
|
|
23
|
-
import { c as claimSessionOrExit, a as applyServerSnapshot, w as withoutServerSnapshot, m as mergeReconnectMetadata } from './sessionLock-
|
|
24
|
-
import { r as readAcpReconnectEnv, n as normalizeAcpPermissionMode, p as piRestartNotice, w as writeSessionModeFile, a as removeSessionModeFile } from './acpSessionResume-
|
|
25
|
-
import { S as StreamRelay } from './streamRelay-
|
|
23
|
+
import { c as claimSessionOrExit, a as applyServerSnapshot, w as withoutServerSnapshot, m as mergeReconnectMetadata } from './sessionLock-C7Wg1RVd.mjs';
|
|
24
|
+
import { r as readAcpReconnectEnv, n as normalizeAcpPermissionMode, p as piRestartNotice, w as writeSessionModeFile, a as removeSessionModeFile } from './acpSessionResume-F705a1cF.mjs';
|
|
25
|
+
import { S as StreamRelay } from './streamRelay-CqBynIon.mjs';
|
|
26
26
|
import { p as projectPath } from './projectPath-BTBIMB57.mjs';
|
|
27
|
-
import { B as BasePermissionHandler } from './BasePermissionHandler-
|
|
28
|
-
import { T as TitleGenerator } from './titleGenerator-
|
|
27
|
+
import { B as BasePermissionHandler } from './BasePermissionHandler-CrfyUmqO.mjs';
|
|
28
|
+
import { T as TitleGenerator } from './titleGenerator-dmFlxkRs.mjs';
|
|
29
29
|
import { E as EditReportThrottle, e as extractAcpEditPaths } from './editPaths-BVfS_FFL.mjs';
|
|
30
|
+
import { readFileSync } from 'node:fs';
|
|
31
|
+
import { homedir } from 'node:os';
|
|
30
32
|
import 'node:child_process';
|
|
31
33
|
import '@agentclientprotocol/sdk';
|
|
32
|
-
import './time-
|
|
34
|
+
import './time-umG7yHkb.mjs';
|
|
33
35
|
import './contentLogMetadata-BlWI0egu.mjs';
|
|
34
36
|
import './processTree-CP5IvQ2Z.mjs';
|
|
35
|
-
import './package-
|
|
37
|
+
import './package-CwB8rFJt.mjs';
|
|
36
38
|
import 'chalk';
|
|
37
39
|
import 'node:util';
|
|
38
|
-
import 'node:fs';
|
|
39
40
|
import '@paralleldrive/cuid2';
|
|
40
41
|
import 'zod';
|
|
41
42
|
import './prompt-QHuFx9j6.mjs';
|
|
42
|
-
import './reportProgressTool-
|
|
43
|
-
import './client-
|
|
43
|
+
import './reportProgressTool-DUEq3xAL.mjs';
|
|
44
|
+
import './client-DcDE6Ifk.mjs';
|
|
44
45
|
import './precheckCompat-DeEbilbr.mjs';
|
|
45
46
|
import './agentGuidance-BDYt2Qy2.mjs';
|
|
46
47
|
import './trimIdent-BAjmv_TG.mjs';
|
|
47
|
-
import 'node:os';
|
|
48
48
|
import './pi-CqyoZMjI.mjs';
|
|
49
49
|
import './fileStore-5qpetZS0.mjs';
|
|
50
50
|
import 'node:fs/promises';
|
|
51
|
-
import './client-
|
|
52
|
-
import './context-
|
|
53
|
-
import './sessionOps-
|
|
51
|
+
import './client-qJ0y8fus.mjs';
|
|
52
|
+
import './context-t7YV0aZc.mjs';
|
|
53
|
+
import './sessionOps-CYjMT7Ad.mjs';
|
|
54
54
|
import 'axios';
|
|
55
55
|
import 'socket.io-client';
|
|
56
56
|
import './backgroundTaskActivity-8PdPxrvy.mjs';
|
|
57
57
|
import './resources-CLP_MpK4.mjs';
|
|
58
|
-
import './tools-
|
|
59
|
-
import './peerTools-
|
|
58
|
+
import './tools-BOWazSD6.mjs';
|
|
59
|
+
import './peerTools-2_8Bw9PU.mjs';
|
|
60
60
|
import './ids-DU6sLx4C.mjs';
|
|
61
|
-
import './remoteSessionClient-
|
|
61
|
+
import './remoteSessionClient-uPj7omsw.mjs';
|
|
62
62
|
import '@modelcontextprotocol/sdk/server/mcp.js';
|
|
63
63
|
import 'node:http';
|
|
64
64
|
import '@modelcontextprotocol/sdk/server/streamableHttp.js';
|
|
65
65
|
import './limits-DIo7rEBR.mjs';
|
|
66
|
-
import './downloadTarget-
|
|
66
|
+
import './downloadTarget-tYMV_VHo.mjs';
|
|
67
67
|
import './terminals-Dlg0x3nY.mjs';
|
|
68
68
|
import './terminalTitleSuggest-CeKsX_V6.mjs';
|
|
69
69
|
import './tmuxSocket-B8Yx20sT.mjs';
|
|
70
|
-
import './bootstrap-
|
|
70
|
+
import './bootstrap-Di38SnpN.mjs';
|
|
71
71
|
import './webPanels-B2_C2-3g.mjs';
|
|
72
|
-
import './pushNotifications-
|
|
72
|
+
import './pushNotifications-BThg4nVd.mjs';
|
|
73
73
|
import './previewPath-CXN4Vag0.mjs';
|
|
74
74
|
import 'crypto';
|
|
75
|
-
import './lidState-LtdUCXi-.mjs';
|
|
76
|
-
import 'os';
|
|
77
|
-
import 'child_process';
|
|
78
75
|
import 'node:events';
|
|
79
|
-
import '
|
|
76
|
+
import 'tweetnacl';
|
|
77
|
+
import './registerCommonHandlers-CaWl9ll1.mjs';
|
|
78
|
+
import 'child_process';
|
|
80
79
|
import 'util';
|
|
81
80
|
import 'fs/promises';
|
|
82
81
|
import 'path';
|
|
83
82
|
import 'cross-spawn';
|
|
84
|
-
import '
|
|
85
|
-
import 'tweetnacl';
|
|
83
|
+
import 'os';
|
|
86
84
|
import './types-CkqAACXx.mjs';
|
|
85
|
+
import './lidState-D-lsD1FS.mjs';
|
|
86
|
+
import './sync-I8NYmycF.mjs';
|
|
87
87
|
import './detectCLI-CSGMlV51.mjs';
|
|
88
88
|
import 'fs';
|
|
89
|
-
import './localHappyAgentAuth-
|
|
89
|
+
import './localHappyAgentAuth-wvDp-nGj.mjs';
|
|
90
90
|
import './fsMkdir-DumgLTzR.mjs';
|
|
91
91
|
import './processTreeSnapshot-CuLJDNC-.mjs';
|
|
92
92
|
import 'url';
|
|
@@ -118,6 +118,16 @@ async function buildAcpPrompt(message, opts) {
|
|
|
118
118
|
|
|
119
119
|
${opts.todoNote}`, slashCommand: false };
|
|
120
120
|
}
|
|
121
|
+
function routeAcpUserText(text, advertisedCommands) {
|
|
122
|
+
const compact = compactCommandText(text);
|
|
123
|
+
if (compact !== null) {
|
|
124
|
+
if (advertisedCommands && advertisedCommands.length > 0 && !advertisedCommands.includes("compact")) {
|
|
125
|
+
return { kind: "unsupported", notice: COMPACT_UNSUPPORTED_NOTICE };
|
|
126
|
+
}
|
|
127
|
+
return { kind: "command", text: compact };
|
|
128
|
+
}
|
|
129
|
+
return isAgentSlashCommand(text) ? { kind: "command", text } : { kind: "prompt", text };
|
|
130
|
+
}
|
|
121
131
|
|
|
122
132
|
const MAX_DETAIL_CHARS = 400;
|
|
123
133
|
function detailOf(error) {
|
|
@@ -422,6 +432,26 @@ function mergeAcpSessionConfigIntoMetadata(metadata, snapshot) {
|
|
|
422
432
|
return next;
|
|
423
433
|
}
|
|
424
434
|
|
|
435
|
+
function readGeminiConfiguredModel(opts = {}) {
|
|
436
|
+
const env = opts.env ?? process.env;
|
|
437
|
+
const fromEnv = env.GEMINI_MODEL?.trim();
|
|
438
|
+
if (fromEnv) return fromEnv;
|
|
439
|
+
const read = opts.readFile ?? ((path) => readFileSync(path, "utf8"));
|
|
440
|
+
const home = env.GEMINI_CLI_HOME?.trim() || opts.home || homedir();
|
|
441
|
+
for (const file of [join(opts.cwd ?? process.cwd(), ".gemini", "settings.json"), join(home, ".gemini", "settings.json")]) {
|
|
442
|
+
let parsed;
|
|
443
|
+
try {
|
|
444
|
+
parsed = JSON.parse(read(file));
|
|
445
|
+
} catch {
|
|
446
|
+
continue;
|
|
447
|
+
}
|
|
448
|
+
const model = parsed?.model;
|
|
449
|
+
const name = typeof model === "string" ? model : model?.name;
|
|
450
|
+
if (typeof name === "string" && name.trim()) return name.trim();
|
|
451
|
+
}
|
|
452
|
+
return null;
|
|
453
|
+
}
|
|
454
|
+
|
|
425
455
|
const ACP_EVENT_PREVIEW_CHARS = 240;
|
|
426
456
|
const ACP_RAW_PREVIEW_CHARS = 2e3;
|
|
427
457
|
const ACP_COLOR_RESET = "\x1B[0m";
|
|
@@ -796,6 +826,7 @@ async function runAcp(opts) {
|
|
|
796
826
|
capabilities: [PROMPT_QUEUE_CAPABILITY, PROJECT_SESSION_CAPABILITY]
|
|
797
827
|
});
|
|
798
828
|
metadata.attachmentKinds = [];
|
|
829
|
+
if (opts.agentName === "gemini") metadata.configuredModel = readGeminiConfiguredModel();
|
|
799
830
|
const reconnect = readAcpReconnectEnv(process.env);
|
|
800
831
|
let response;
|
|
801
832
|
if (reconnect) {
|
|
@@ -894,6 +925,7 @@ async function runAcp(opts) {
|
|
|
894
925
|
let legacyModes = null;
|
|
895
926
|
let legacyModels = null;
|
|
896
927
|
let sawSlashCommands = false;
|
|
928
|
+
let agentCommands = null;
|
|
897
929
|
let sawModes = false;
|
|
898
930
|
let sawModels = false;
|
|
899
931
|
const initialPermissionMode = opts.permissionMode ?? resumedPermissionMode ?? "default";
|
|
@@ -1146,6 +1178,7 @@ async function runAcp(opts) {
|
|
|
1146
1178
|
const commands = msg.payload;
|
|
1147
1179
|
const commandNames = commands.map((c) => c.name);
|
|
1148
1180
|
sawSlashCommands = commands.length > 0;
|
|
1181
|
+
agentCommands = commandNames;
|
|
1149
1182
|
if (verbose) {
|
|
1150
1183
|
logAcp("muted", `Outgoing slash commands from ${opts.agentName} (${commands.length}):`);
|
|
1151
1184
|
for (const command of commands) {
|
|
@@ -1318,6 +1351,19 @@ async function runAcp(opts) {
|
|
|
1318
1351
|
if (message.meta && Object.prototype.hasOwnProperty.call(message.meta, "effort")) {
|
|
1319
1352
|
currentEffort = message.meta.effort ?? null;
|
|
1320
1353
|
}
|
|
1354
|
+
const route = routeAcpUserText(message.content.text, agentCommands);
|
|
1355
|
+
if (route.kind === "unsupported") {
|
|
1356
|
+
session.sendSessionEvent({ type: "message", message: route.notice });
|
|
1357
|
+
return;
|
|
1358
|
+
}
|
|
1359
|
+
if (route.kind === "command") {
|
|
1360
|
+
messageQueue.pushIsolate(route.text, {
|
|
1361
|
+
permissionMode: currentPermissionMode,
|
|
1362
|
+
model: currentModel,
|
|
1363
|
+
effort: currentEffort
|
|
1364
|
+
}, attachments, message.localKey);
|
|
1365
|
+
return;
|
|
1366
|
+
}
|
|
1321
1367
|
if (message.meta?.delivery === "steer" && piSteer?.ready && thinking && !attachments?.length) {
|
|
1322
1368
|
if (await piSteer.offer(message.content.text, PI_STEER_OFFER_TIMEOUT_MS)) {
|
|
1323
1369
|
logger.debug(`[${opts.agentName}] User message steered into the running turn`);
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { q as query } from './query-
|
|
1
|
+
import { q as query } from './query-CkgIJ_Dy.mjs';
|
|
2
2
|
export { AbortError } from '@anthropic-ai/claude-agent-sdk';
|
|
3
3
|
import './promptCacheTtl-Ce0TVbrx.mjs';
|
|
4
4
|
import 'node:fs';
|
|
5
5
|
import 'node:os';
|
|
6
6
|
import 'node:path';
|
|
7
|
-
import './logger-
|
|
7
|
+
import './logger-RpzJ4d8V.mjs';
|
|
8
8
|
import 'chalk';
|
|
9
9
|
import 'node:util';
|
|
10
|
-
import './configuration-
|
|
11
|
-
import './package-
|
|
10
|
+
import './configuration-BZHpFD7K.mjs';
|
|
11
|
+
import './package-CwB8rFJt.mjs';
|
|
12
12
|
import 'node:fs/promises';
|
|
13
13
|
import './processTreeSnapshot-CuLJDNC-.mjs';
|
|
14
14
|
import 'node:child_process';
|