very-happy-cli 0.2.180 → 0.2.181
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-DfRDtMcG.cjs → AcpBackend-CgHb_ya5.cjs} +3 -3
- package/dist/{AcpBackend-B8Zi30Zh.mjs → AcpBackend-DZGCSuXF.mjs} +3 -3
- package/dist/{AcpSessionManager-CASKOnOj.cjs → AcpSessionManager-CacC2EVn.cjs} +1 -1
- package/dist/{AcpSessionManager-i8Rab0xT.mjs → AcpSessionManager-DwuPzWBh.mjs} +1 -1
- package/dist/{BasePermissionHandler-BlM_tfej.cjs → BasePermissionHandler-DCP8ZEB4.cjs} +1 -1
- package/dist/{BasePermissionHandler-26fKbRCm.mjs → BasePermissionHandler-Uo-GUjbb.mjs} +1 -1
- package/dist/{acpSessionResume-B9l54P-X.mjs → acpSessionResume-9OLTD6kT.mjs} +1 -1
- package/dist/{acpSessionResume-CR5pmgVo.cjs → acpSessionResume-BaVMD80f.cjs} +1 -1
- package/dist/{agentHome-CmGy0NWv.mjs → agentHome-B1BsKeqD.mjs} +4 -4
- package/dist/{agentHome-C7Sb7-Tz.cjs → agentHome-BtUmGcPX.cjs} +4 -4
- package/dist/{api-DM7b1OKj.cjs → api-COHFAkb_.cjs} +10 -10
- package/dist/{api-Hov8p7CA.mjs → api-Dr3wXL_7.mjs} +10 -10
- package/dist/{apiMachine-CwGEhQDT.mjs → apiMachine-CHEzPQdS.mjs} +54 -32
- package/dist/{apiMachine-DkGRj-Ai.cjs → apiMachine-D8H7CXaz.cjs} +55 -33
- package/dist/{attachmentContent-CIn4iPEk.mjs → attachmentContent-1YwtKgWl.mjs} +2 -2
- package/dist/{attachmentContent-CEm13_gF.cjs → attachmentContent-mIhbtRKl.cjs} +2 -2
- package/dist/{auth-rggxMpEE.mjs → auth-CbZkcMAb.mjs} +8 -8
- package/dist/{auth-CBXnm-Mj.cjs → auth-CgQP7d0q.cjs} +5 -5
- package/dist/{auth-BG1DY0gj.mjs → auth-DZsthtSk.mjs} +5 -5
- package/dist/{auth-Dawj7pP5.cjs → auth-Fg8fLadK.cjs} +8 -8
- package/dist/{auto-CbYOfoPS.cjs → auto-BB7kqSh5.cjs} +18 -18
- package/dist/{auto-CXXLXGeL.mjs → auto-_T-Ud-z5.mjs} +18 -18
- package/dist/{bootstrap-Dt5I1SOl.mjs → bootstrap-B6EkZh4u.mjs} +2 -2
- package/dist/{bootstrap-DoA7okld.cjs → bootstrap-CYtOtbi7.cjs} +2 -2
- package/dist/{browser-DUNetFT4.mjs → browser-C2qhUHSE.mjs} +1 -1
- package/dist/{browser-DZ6qRtfH.cjs → browser-DjNNQQk2.cjs} +1 -1
- package/dist/{claudeLocal-OHWQigCl.mjs → claudeLocal-BAFjWhZ8.mjs} +6 -6
- package/dist/{claudeLocal--DNyMOSv.cjs → claudeLocal-O_w7-fBh.cjs} +6 -6
- package/dist/{claudeLocalLauncher-BStvfa7M.mjs → claudeLocalLauncher-CWn30LZR.mjs} +11 -11
- package/dist/{claudeLocalLauncher-BhvPbcyH.cjs → claudeLocalLauncher-Df3zg1q0.cjs} +11 -11
- package/dist/{claudeSessionFork-GAVWhiKG.mjs → claudeSessionFork-2ZkSTOGn.mjs} +1 -1
- package/dist/{claudeSessionFork-Be16vzGc.cjs → claudeSessionFork-pwcKqB-e.cjs} +1 -1
- package/dist/{client-Ca5Pcgy_.mjs → client-BKyU66lg.mjs} +2 -2
- package/dist/{client-D_loZ9IK.cjs → client-CUO3ItoB.cjs} +34 -8
- package/dist/{client-CnB7kRCT.mjs → client-CXOnzuOy.mjs} +2 -2
- package/dist/{client-DJplzPjD.cjs → client-DWs6k041.cjs} +2 -2
- package/dist/{client-BWjaHKtj.cjs → client-D_U2VjO3.cjs} +2 -2
- package/dist/{client-D4uPb1uu.mjs → client-DsQcxVUV.mjs} +34 -9
- package/dist/codex/happyMcpStdioBridge.cjs +17 -17
- package/dist/codex/happyMcpStdioBridge.mjs +17 -17
- package/dist/{codexAppServerClient-PE-12AsW.cjs → codexAppServerClient-BRX3JZ_5.cjs} +3 -3
- package/dist/{codexAppServerClient-CO4G6OS4.mjs → codexAppServerClient-C3JO3pwM.mjs} +3 -3
- package/dist/{codexCommand-B_xUH79E.mjs → codexCommand-BZIAAqKS.mjs} +47 -45
- package/dist/{codexCommand-BNoD1t1C.cjs → codexCommand-dKOc5iQl.cjs} +47 -45
- package/dist/{codexTermination-BmBbizFK.cjs → codexTermination-BVR9HeVI.cjs} +1 -1
- package/dist/{codexTermination-Dx48ma6e.mjs → codexTermination-ztFkwHrG.mjs} +1 -1
- package/dist/{config-DSu0Blos.mjs → config-NbHjx8ge.mjs} +3 -3
- package/dist/{config-CtwEUxUP.cjs → config-cftYxLC7.cjs} +3 -3
- package/dist/{configuration-PxzEJumr.mjs → configuration-BPrfb17M.mjs} +1 -1
- package/dist/{configuration-CYO-kPOS.cjs → configuration-C8JgseHy.cjs} +1 -1
- package/dist/{connect-Dq7wndzR.cjs → connect-Br8VMrK1.cjs} +13 -13
- package/dist/{connect-BQrg3TB6.mjs → connect-CLD1ai0k.mjs} +13 -13
- package/dist/{context-6TP-iz_c.cjs → context-D1lgQTJC.cjs} +1 -1
- package/dist/{context-CJGRRGWW.mjs → context-_YGq8xdH.mjs} +1 -1
- package/dist/{controlClient-DoeYovwP.mjs → controlClient-CkNpT5zS.mjs} +3 -3
- package/dist/{controlClient-Bqv5v5OM.cjs → controlClient-D68Zj7Q-.cjs} +3 -3
- package/dist/{createSessionMetadata-DDIChCx8.mjs → createSessionMetadata-3WAj3_xl.mjs} +2 -2
- package/dist/{createSessionMetadata-xz767pcG.cjs → createSessionMetadata-DNIbKLHg.cjs} +2 -2
- package/dist/{defaultPermissionMode-PkZGsQDk.cjs → defaultPermissionMode-BmvjP32v.cjs} +2 -2
- package/dist/{defaultPermissionMode-i5KzdK09.mjs → defaultPermissionMode-DXMznl8v.mjs} +2 -2
- package/dist/{deterministicJson-xqA6DaOm.cjs → deterministicJson-BS7D7URE.cjs} +87 -22
- package/dist/{deterministicJson-CTEJDqtS.mjs → deterministicJson-BcBIKKf1.mjs} +87 -24
- package/dist/{doctor-BrgSlfXn.cjs → doctor-Be7zC0AF.cjs} +8 -7
- package/dist/{doctor-IctjVh9T.mjs → doctor-CoOaPq6w.mjs} +8 -8
- package/dist/{downloadTarget-jbOz1egC.mjs → downloadTarget-CeaAXdJj.mjs} +6 -6
- package/dist/{downloadTarget-CEb9che-.cjs → downloadTarget-LyOiucn_.cjs} +6 -6
- package/dist/{ensureDaemonRunning-b1e8LCSM.mjs → ensureDaemonRunning--98j7-17.mjs} +5 -5
- package/dist/{ensureDaemonRunning-D-HyjGIX.cjs → ensureDaemonRunning-B8z37VKD.cjs} +5 -5
- package/dist/fileStore-5qpetZS0.mjs +146 -0
- package/dist/fileStore-7qhnbs6N.cjs +152 -0
- package/dist/{handleResumeCommand-BvWVuRwH.cjs → handleResumeCommand-BFZlrFVH.cjs} +5 -5
- package/dist/{handleResumeCommand-DpaZvm2c.mjs → handleResumeCommand-gO8I4keP.mjs} +5 -5
- package/dist/{index-B2p2Mut7.cjs → index-B5PXbZjW.cjs} +77 -60
- package/dist/{index-F2UejqYs.cjs → index-BRMq9gOe.cjs} +3 -3
- package/dist/{index-C64Ufj4D.cjs → index-BkluinoS.cjs} +4 -4
- package/dist/{index-Bsvbgh9e.mjs → index-CO0n9ue6.mjs} +4 -4
- package/dist/{index-C6Vn5Eac.mjs → index-CeRXrGnH.mjs} +39 -6
- package/dist/{index-Dv0Q48P3.cjs → index-Df2eHm3O.cjs} +40 -6
- package/dist/{index-BUNnpGFF.mjs → index-DneHoQXf.mjs} +78 -61
- package/dist/{index-CMf5VbzG.mjs → index-WUj3954m.mjs} +4 -4
- package/dist/{index-wCbtF4BK.mjs → index-hQ8LP1C2.mjs} +3 -3
- package/dist/{index-DmTlDRSL.cjs → index-jF2t3ACW.cjs} +4 -4
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{install-BX3lv3NO.mjs → install-D0inLCv-.mjs} +1 -1
- package/dist/{install-BXvf2E3o.cjs → install-D2NCbeJ-.cjs} +1 -1
- package/dist/{install-CdzSV7qO.mjs → install-DkYFiVK4.mjs} +3 -3
- package/dist/{install-C0ANcEAW.cjs → install-FqkSUjPC.cjs} +3 -3
- package/dist/lib.cjs +12 -12
- package/dist/lib.d.cts +39 -1
- package/dist/lib.d.mts +39 -1
- package/dist/lib.mjs +12 -12
- package/dist/{lidState-bBrmaQd2.mjs → lidState-DghbfRbr.mjs} +1 -1
- package/dist/{lidState-DWGnm2H4.cjs → lidState-x8cJ8J_9.cjs} +1 -1
- package/dist/{localHappyAgentAuth-DZHQnIW9.cjs → localHappyAgentAuth-DZ2kb9uq.cjs} +1 -1
- package/dist/{localHappyAgentAuth-Dn1jYDpt.mjs → localHappyAgentAuth-IKmeRpuQ.mjs} +1 -1
- package/dist/{logger-CphW5nUE.cjs → logger-DgBwUSgS.cjs} +2 -2
- package/dist/{logger-BUngm5Xg.mjs → logger-LFr8iPgl.mjs} +2 -2
- package/dist/{machineMetadata-BXN_bKU3.mjs → machineMetadata-BglCsfvf.mjs} +11 -4
- package/dist/{machineMetadata-BQm9YTcI.cjs → machineMetadata-DB03ez4K.cjs} +11 -3
- package/dist/{main-B2UV51nK.cjs → main-YQ-Vkakw.cjs} +45 -45
- package/dist/{main-DGkdYfEq.mjs → main-_1LSzlLv.mjs} +45 -45
- package/dist/{mcp-BFvAEIRz.cjs → mcp-BIY80jSc.cjs} +14 -14
- package/dist/{mcp-CbTtbs0f.mjs → mcp-Csj-mT5Y.mjs} +14 -14
- package/dist/{mirrorProtocol-HKPivs5o.cjs → mirrorProtocol-BphKIAK9.cjs} +16 -153
- package/dist/{mirrorProtocol-BR4luBC0.mjs → mirrorProtocol-CAxOMBkb.mjs} +19 -151
- package/dist/{package-7Ld1YMhh.mjs → package-DYGwlmXl.mjs} +8 -8
- package/dist/{package-KhLqBDX9.cjs → package-NoD8QOOM.cjs} +8 -8
- package/dist/{panels-C7IVqpJk.mjs → panels-B8zRm7_d.mjs} +5 -5
- package/dist/{panels-Njf6GelF.cjs → panels-DYEc1NyQ.cjs} +5 -5
- package/dist/{peerTools-BOlDRyhi.mjs → peerTools-CK3JYu1k.mjs} +5 -5
- package/dist/{peerTools-DQNlrcqM.cjs → peerTools-CP-x-Peu.cjs} +5 -5
- package/dist/{persistence-9BMYspxG.cjs → persistence-BY-D00wT.cjs} +2 -2
- package/dist/{persistence-BFUOHW5h.mjs → persistence-D2Djrf7t.mjs} +2 -2
- package/dist/pi-CqyoZMjI.mjs +380 -0
- package/dist/pi-DlsrPCTa.cjs +400 -0
- package/dist/{piRunnerArgs-H2pgpA5z.mjs → piRunnerArgs-IZLoL7TG.mjs} +1 -1
- package/dist/{piRunnerArgs-DGaq6VYM.cjs → piRunnerArgs-gxLYIZH4.cjs} +1 -1
- package/dist/{piRuntime-CdN0JAsa.mjs → piRuntime-D7Y4oHVL.mjs} +2 -2
- package/dist/{piRuntime-CT5xv_3h.cjs → piRuntime-o5L8uX-W.cjs} +2 -2
- package/dist/{piTerminal-0FBtXTHK.cjs → piTerminal-C_-JDkLN.cjs} +17 -17
- package/dist/{piTerminal-C4m9YXAV.mjs → piTerminal-Kphx8Uhw.mjs} +17 -17
- package/dist/{prompt-lgF9IE82.cjs → prompt-Bof2aQkI.cjs} +7 -2
- package/dist/{prompt-BOouDaTM.mjs → prompt-QHuFx9j6.mjs} +7 -2
- package/dist/{pushNotifications-DI92havG.cjs → pushNotifications-BXoOSq_G.cjs} +10 -4
- package/dist/{pushNotifications-DCiBEVeC.mjs → pushNotifications-DXGIhE-A.mjs} +10 -4
- package/dist/{query-ywZbQUzR.mjs → query-CcA6DVZK.mjs} +1 -1
- package/dist/{query-BETKBrnz.cjs → query-CdCxzuaB.cjs} +1 -1
- package/dist/{rateLimitWindows-YRIYVdo4.cjs → rateLimitWindows-OpAmdOtC.cjs} +1 -1
- package/dist/{rateLimitWindows-BkfuUB1a.mjs → rateLimitWindows-ZtHZHe-l.mjs} +1 -1
- package/dist/{registerCommonHandlers-C7a_dUWs.cjs → registerCommonHandlers-CRjBoJLK.cjs} +2 -2
- package/dist/{registerCommonHandlers-CTkCvjxt.mjs → registerCommonHandlers-DF6bdDtd.mjs} +2 -2
- package/dist/{registerKillSessionHandler-CIsvBrVe.cjs → registerKillSessionHandler-7fOm6ooh.cjs} +6 -6
- package/dist/{registerKillSessionHandler-CaqqRYq6.mjs → registerKillSessionHandler-DDCKL3wf.mjs} +6 -6
- package/dist/{remoteSessionClient-PP-mOKmw.mjs → remoteSessionClient-B2POSKFT.mjs} +5 -5
- package/dist/{remoteSessionClient-D843fkzL.cjs → remoteSessionClient-CFCn42bs.cjs} +5 -5
- package/dist/{reportProgressTool-ZOCNjWHr.mjs → reportProgressTool-tPxEvh6x.mjs} +4 -4
- package/dist/{reportProgressTool-14AXr959.cjs → reportProgressTool-th4trcET.cjs} +4 -4
- package/dist/{resources-CvIlkzpP.cjs → resources-BPyN59Iv.cjs} +23 -2
- package/dist/{resources-y9jfyO-_.mjs → resources-CH1iP6Cv.mjs} +22 -3
- package/dist/{run-CAOCYYfT.cjs → run-C_FumCQk.cjs} +618 -594
- package/dist/{run-Dajw2E5j.mjs → run-cKQBbVi4.mjs} +554 -530
- package/dist/{runClaude-C6oxWYbp.mjs → runClaude-CYnM6krL.mjs} +22 -22
- package/dist/{runClaude-CRRKt-tm.cjs → runClaude-z_2YC_aa.cjs} +22 -22
- package/dist/{runClaudeDeps-B1ysqTvx.cjs → runClaudeDeps-CLubzWnA.cjs} +43 -41
- package/dist/{runClaudeDeps-BcZ68cX3.mjs → runClaudeDeps-duS06Pb4.mjs} +48 -46
- package/dist/{runGemini-D7yKc4wD.mjs → runGemini-C_Pc2EhH.mjs} +37 -35
- package/dist/{runGemini-DtKFXqf-.cjs → runGemini-vEoXV6qT.cjs} +37 -35
- package/dist/{runOpenClaw-Cq29mryb.cjs → runOpenClaw-CXJCtMgB.cjs} +18 -18
- package/dist/{runOpenClaw-C8ilyLP9.mjs → runOpenClaw-Cxun1qLC.mjs} +18 -18
- package/dist/{sandbox-gIj-EuF4.cjs → sandbox-CO46H2tK.cjs} +4 -4
- package/dist/{sandbox-CbCutma4.mjs → sandbox-CsvPnTmz.mjs} +4 -4
- package/dist/{selfCheck-BTGBVthv.cjs → selfCheck-DIr7Gc0i.cjs} +36 -36
- package/dist/selfCheck-NamtBHVB.mjs +85 -0
- package/dist/{send-YZRMQvMJ.mjs → send-DMoFg6F1.mjs} +8 -8
- package/dist/{send-CZf5lLw_.cjs → send-X2mfVEyr.cjs} +8 -8
- package/dist/{server-CknFq6xG.cjs → server-BwTEdbkr.cjs} +6 -6
- package/dist/{server-BqwXRzFZ.mjs → server-CkqQ0sRH.mjs} +4 -4
- package/dist/{sessionLock-DRZUcKHT.cjs → sessionLock-CdIRJlHH.cjs} +3 -3
- package/dist/{sessionLock-nBXdJxJm.mjs → sessionLock-JIfwCqMk.mjs} +3 -3
- package/dist/{sessionOps-BrGiU9-s.cjs → sessionOps-DVA-00nR.cjs} +4 -4
- package/dist/{sessionOps-C58iDeD5.mjs → sessionOps-DqlftXxe.mjs} +4 -4
- package/dist/{sessionScanner-Bm57LEXe.mjs → sessionScanner-BI0Vo1xT.mjs} +3 -3
- package/dist/{sessionScanner-CaO8bLaG.cjs → sessionScanner-BMwgGAhY.cjs} +3 -3
- package/dist/{sessions-BXyBHo8n.mjs → sessions-D6IimX7b.mjs} +10 -10
- package/dist/{sessions-uzqPCc37.cjs → sessions-DjgEcHaT.cjs} +10 -10
- package/dist/{setupOfflineReconnection-DvvVX3TB.cjs → setupOfflineReconnection-CjuCiKY3.cjs} +2 -2
- package/dist/{setupOfflineReconnection-1Qlek3wl.mjs → setupOfflineReconnection-DgJK_4m1.mjs} +2 -2
- package/dist/{spawn-vn93PhYL.mjs → spawn-Dvzy-tzc.mjs} +14 -14
- package/dist/{spawn-DBkodJEO.cjs → spawn-rhF28shY.cjs} +14 -14
- package/dist/{spawnAgents-CgPMWexP.mjs → spawnAgents-CCnlq-FI.mjs} +1 -1
- package/dist/{spawnAgents-DLNMlhWJ.cjs → spawnAgents-iwuqrgR9.cjs} +1 -1
- package/dist/{spawnHappyCLI-DnUZv0X2.cjs → spawnHappyCLI-DnKmIsEt.cjs} +1 -1
- package/dist/{spawnHappyCLI-BjFZc_7V.mjs → spawnHappyCLI-Dq3LLXLb.mjs} +1 -1
- package/dist/{specialCommands-D3ND9bdg.mjs → specialCommands-CcyZ1hGA.mjs} +3 -3
- package/dist/{specialCommands-BRufxlqe.cjs → specialCommands-Zwr2C6A2.cjs} +3 -3
- package/dist/{startFileWatcher-DXJ7yB5v.mjs → startFileWatcher-4thXDK9d.mjs} +1 -1
- package/dist/{startFileWatcher-D9cYzZOq.cjs → startFileWatcher-K6hJSyiR.cjs} +1 -1
- package/dist/{startupSessionCreate-uZ6BM0ty.mjs → startupSessionCreate-BfByJ16A.mjs} +1 -1
- package/dist/{startupSessionCreate-kdr3m1uX.cjs → startupSessionCreate-CKEbq0tL.cjs} +1 -1
- package/dist/{streamRelay-Dy6amlzx.cjs → streamRelay-Gy8Xfnon.cjs} +1 -1
- package/dist/{streamRelay-DnMCMMfV.mjs → streamRelay-LcDvyEjK.mjs} +1 -1
- package/dist/{sync-Bn-idAoy.cjs → sync-1hQ5KHpL.cjs} +1 -1
- package/dist/{sync-BvVhDO40.mjs → sync-DO-2PU45.mjs} +1 -1
- package/dist/{systemPrompt-CIZcJuJF.mjs → systemPrompt-BctLfMZs.mjs} +3 -3
- package/dist/{systemPrompt-DlyEk35T.cjs → systemPrompt-Dj7pgkMK.cjs} +3 -3
- package/dist/{teams-DLY3B5yi.mjs → teams-Bu8YeOoF.mjs} +8 -8
- package/dist/{teams-BLeRpDxv.cjs → teams-uQxUlyyz.cjs} +8 -8
- package/dist/{time-D3ETL7Jb.mjs → time-BcoJaG8E.mjs} +1 -1
- package/dist/{time-Cjv0zxQO.cjs → time-nqa9shu8.cjs} +1 -1
- package/dist/{titleGenerator-Cgp5ihFb.cjs → titleGenerator-D09XyYYG.cjs} +2 -2
- package/dist/{titleGenerator-Uzbd4utr.mjs → titleGenerator-D5r06bhf.mjs} +1 -1
- package/dist/{todo-pOMcEECE.cjs → todo-CCOnL7pT.cjs} +6 -6
- package/dist/{todo-C9Ga-oEM.mjs → todo-D1q8146q.mjs} +6 -6
- package/dist/{tools-Cho7iIWf.mjs → tools-D2E--n1x.mjs} +3 -3
- package/dist/{tools-BL7Byl_x.cjs → tools-DiCXnAC5.cjs} +3 -3
- package/dist/{uninstall-CbayEVoV.cjs → uninstall-BrNwwwSD.cjs} +3 -3
- package/dist/{uninstall-CvZHVY9C.mjs → uninstall-CtwXi1Rt.mjs} +3 -3
- package/package.json +8 -8
- package/dist/selfCheck-Smt-5Xiq.mjs +0 -85
|
@@ -445,7 +445,8 @@ const TeamActionSchema = z$1.discriminatedUnion("type", [
|
|
|
445
445
|
z$1.object({ type: z$1.literal("reconcile-operation"), operationId: id$2, claimId: id$2, note: z$1.string().trim().min(1).max(4e3) }),
|
|
446
446
|
// B-689: owner asks the execution computer to run a failed/uncertain operation again.
|
|
447
447
|
z$1.object({ type: z$1.literal("retry-operation"), operationId: id$2, claimId: id$2 }),
|
|
448
|
-
|
|
448
|
+
/** B-730: `transfer` = the owner confirmed moving a session that is bound in another live team (Web adopt); without it the server answers `session_in_other_team`. An old server strips it. */
|
|
449
|
+
z$1.object({ type: z$1.literal("join"), name: id$2, sessionId: id$2, botId: id$2.optional(), transfer: z$1.literal(true).optional() }),
|
|
449
450
|
z$1.object({ type: z$1.literal("delegate"), goal: text$1, acceptance: z$1.array(text$1).min(1).max(32), parentTaskId: id$2.optional(), assigneeBotId: id$2.optional(), botName: id$2.optional(), directory: z$1.string().min(1).max(4096).optional(), assistant: TeamAssistantSchema.optional(), model: TeamModelSchema.optional() }),
|
|
450
451
|
z$1.object({ type: z$1.literal("message"), taskId: id$2, body: text$1, recipientBotId: id$2.optional() }),
|
|
451
452
|
z$1.object({ type: z$1.literal("submit"), taskId: id$2, attemptId: id$2, goalVersion: z$1.number().int().positive(), result: text$1 }),
|
|
@@ -460,7 +461,18 @@ const TeamActionSchema = z$1.discriminatedUnion("type", [
|
|
|
460
461
|
z$1.object({ type: z$1.literal("message-delivered"), messageId: id$2, recipientBotId: id$2, generation: z$1.number().int().positive(), sessionId: id$2 })
|
|
461
462
|
]);
|
|
462
463
|
z$1.object({ requestId: id$2, action: TeamActionSchema });
|
|
463
|
-
z$1.object({
|
|
464
|
+
const TeamProjectChoiceSchema = z$1.object({
|
|
465
|
+
projectId: id$2.optional(),
|
|
466
|
+
inheritFromSessionId: id$2.optional(),
|
|
467
|
+
create: z$1.boolean().optional(),
|
|
468
|
+
directory: z$1.string().min(1).max(4096).optional()
|
|
469
|
+
});
|
|
470
|
+
z$1.object({ name: id$2, machineId: id$2, requestId: id$2.optional(), launch: TeamLaunchSchema.optional(), project: TeamProjectChoiceSchema.optional(), sessionId: id$2.optional(), transfer: z$1.literal(true).optional() });
|
|
471
|
+
z$1.object({
|
|
472
|
+
projectId: id$2.nullable().optional(),
|
|
473
|
+
create: z$1.boolean().optional(),
|
|
474
|
+
requestId: id$2.optional()
|
|
475
|
+
}).refine((v) => v.projectId !== void 0 !== (v.create === true), "exactly one of projectId / create");
|
|
464
476
|
const id$1 = z$1.string().min(1).max(128);
|
|
465
477
|
const text = z$1.string().min(1).max(32e3);
|
|
466
478
|
const AUTOMATION_NAME_PATTERN = /^[a-z0-9][a-z0-9-_.]{0,63}$/;
|
|
@@ -1003,11 +1015,17 @@ For edit/status/delete, a conflict means the version changed. Read the task and
|
|
|
1003
1015
|
Restricted team workers cannot use account-wide Todo credentials. Ask the user or supervising session to perform the account operation; do not clear scope variables or seek another credential to bypass that boundary.
|
|
1004
1016
|
`;
|
|
1005
1017
|
const BUILTIN_TODO_DISCOVERY = "For the user\u2019s Very Happy My todos, run `very-happy todo skill` to read the official skill, then use its CLI commands. Do not confuse account todos with your execution plan; restricted team workers must not bypass their scope.";
|
|
1006
|
-
|
|
1018
|
+
z$1.object({
|
|
1007
1019
|
source: z$1.literal("pi"),
|
|
1008
1020
|
tokens: z$1.number().finite().nonnegative().nullable(),
|
|
1009
1021
|
contextWindow: z$1.number().finite().positive(),
|
|
1010
|
-
updatedAt: z$1.number().finite().nonnegative()
|
|
1022
|
+
updatedAt: z$1.number().finite().nonnegative(),
|
|
1023
|
+
/** 'configured' (the harness's own model entry) | 'inferred' (same model id in a known table) | 'unknown' (harness default). Absent = older CLI → configured. */
|
|
1024
|
+
windowSource: z$1.string().nullable().optional(),
|
|
1025
|
+
/** Model id the snapshot was measured on (lets the web consult its own table when the window is unknown). */
|
|
1026
|
+
model: z$1.string().nullable().optional(),
|
|
1027
|
+
/** When the harness last compacted; tokens stay null until the next answer measures the new context. */
|
|
1028
|
+
compactedAt: z$1.number().finite().nonnegative().nullable().optional()
|
|
1011
1029
|
});
|
|
1012
1030
|
const AgentVersionsSchema = z$1.object({
|
|
1013
1031
|
checkedAt: z$1.number(),
|
|
@@ -1022,12 +1040,27 @@ const AgentVersionsSchema = z$1.object({
|
|
|
1022
1040
|
const AGENT_VERSION_SOURCES = [
|
|
1023
1041
|
{ id: "claude", label: "Claude Code", command: "claude", package: "@anthropic-ai/claude-code", docs: "https://code.claude.com/docs/en/setup" },
|
|
1024
1042
|
{ id: "codex", label: "Codex", command: "codex", package: "@openai/codex", docs: "https://github.com/openai/codex#installation-and-usage" },
|
|
1025
|
-
|
|
1043
|
+
// B-719: @mariozechner/pi-coding-agent is deprecated at 0.73.1 ("use @earendil-works/pi-coding-agent"),
|
|
1044
|
+
// so comparing against it reported every newer pi as current.
|
|
1045
|
+
{ id: "pi", label: "Pi", command: "pi", package: "@earendil-works/pi-coding-agent", docs: "https://github.com/earendil-works/pi" },
|
|
1026
1046
|
{ id: "gemini", label: "Gemini CLI", command: "gemini", package: "@google/gemini-cli", docs: "https://github.com/google-gemini/gemini-cli#installation" },
|
|
1027
1047
|
{ id: "opencode", label: "OpenCode", command: "opencode", package: "opencode-ai", docs: "https://opencode.ai/docs/" },
|
|
1028
1048
|
{ id: "openclaw", label: "OpenClaw", command: "openclaw", package: "openclaw", docs: "https://docs.openclaw.ai/install/updating" },
|
|
1029
1049
|
{ id: "claude-sdk", label: "Claude Agent SDK", command: null, package: "@anthropic-ai/claude-agent-sdk", docs: "https://github.com/anthropics/claude-agent-sdk-typescript" }
|
|
1030
1050
|
];
|
|
1051
|
+
const HARNESS_INSTALL_IDS = ["claude", "codex", "gemini", "pi"];
|
|
1052
|
+
function isHarnessInstallId(value) {
|
|
1053
|
+
return typeof value === "string" && HARNESS_INSTALL_IDS.includes(value);
|
|
1054
|
+
}
|
|
1055
|
+
const HARNESS_INSTALL_CAPABILITY_VERSION = 1;
|
|
1056
|
+
z$1.object({
|
|
1057
|
+
harness: z$1.string(),
|
|
1058
|
+
state: z$1.string(),
|
|
1059
|
+
// 'installing' | 'installed' | 'failed' (open: older Web shows unknown states as failed)
|
|
1060
|
+
detail: z$1.string().optional(),
|
|
1061
|
+
startedAt: z$1.number(),
|
|
1062
|
+
at: z$1.number()
|
|
1063
|
+
});
|
|
1031
1064
|
const CLAUDE_OPUS_55_MODEL = "claude-opus-5-5";
|
|
1032
1065
|
const CLAUDE_OPUS_55_CAPABILITY = "claude-opus-5-5-v1";
|
|
1033
1066
|
function supportsClaudeOpus55(metadata) {
|
|
@@ -1105,4 +1138,4 @@ const ServerMigrateNoticeSchema = z$1.object({
|
|
|
1105
1138
|
issuedAt: z$1.number().int().positive()
|
|
1106
1139
|
});
|
|
1107
1140
|
|
|
1108
|
-
export { AUTOMATION_NAME_PATTERN as A, BUILTIN_TODO_SKILL as B,
|
|
1141
|
+
export { AUTOMATION_NAME_PATTERN as A, BUILTIN_TODO_SKILL as B, CODEX_STEER_CAPABILITY as C, AUTOMATION_CLAIM_MAX_RUNS as D, AUTOMATION_DAEMON_CAPABILITY_PRECHECK as E, AUTOMATION_DEFAULT_LEASE_MS as F, HARNESS_INSTALL_CAPABILITY_VERSION as H, PROMPT_QUEUE_CAPABILITY as P, ReleaseDrainNoticeSchema as R, STREAM_DELTA_MAX_CHARS as S, PROJECT_SESSION_CAPABILITY as a, AUTOMATION_PRECHECK_MAX_TIMEOUT_MS as b, AutomationPrecheckSchema as c, createEnvelope as d, createBuiltinTodoClient as e, BUILTIN_TODO_DISCOVERY as f, getAgentCodeDefaults as g, isClaudeOpus55Model as h, isAutomationRunTerminal as i, supportsClaudeOpus55 as j, AutomationNameSchema as k, AutomationConcurrencySchema as l, AutomationActionSchema as m, normalizeAgentKey as n, AutomationTriggerSchema as o, AgentVersionsSchema as p, PI_STEER_CAPABILITY as q, AGENT_VERSION_SOURCES as r, streamKeyOf as s, RelayAssignmentResponseSchema as t, RelayCandidatesResponseSchema as u, ServerMigrateNoticeSchema as v, isHarnessInstallId as w, AUTOMATION_SUMMARY_MAX_CHARS as x, AUTOMATION_PRECHECK_OUTPUT_MAX_CHARS as y, AUTOMATION_PRECHECK_DEFAULT_TIMEOUT_MS as z };
|
|
@@ -465,7 +465,8 @@ const TeamActionSchema = z.z.discriminatedUnion("type", [
|
|
|
465
465
|
z.z.object({ type: z.z.literal("reconcile-operation"), operationId: id$2, claimId: id$2, note: z.z.string().trim().min(1).max(4e3) }),
|
|
466
466
|
// B-689: owner asks the execution computer to run a failed/uncertain operation again.
|
|
467
467
|
z.z.object({ type: z.z.literal("retry-operation"), operationId: id$2, claimId: id$2 }),
|
|
468
|
-
|
|
468
|
+
/** B-730: `transfer` = the owner confirmed moving a session that is bound in another live team (Web adopt); without it the server answers `session_in_other_team`. An old server strips it. */
|
|
469
|
+
z.z.object({ type: z.z.literal("join"), name: id$2, sessionId: id$2, botId: id$2.optional(), transfer: z.z.literal(true).optional() }),
|
|
469
470
|
z.z.object({ type: z.z.literal("delegate"), goal: text$1, acceptance: z.z.array(text$1).min(1).max(32), parentTaskId: id$2.optional(), assigneeBotId: id$2.optional(), botName: id$2.optional(), directory: z.z.string().min(1).max(4096).optional(), assistant: TeamAssistantSchema.optional(), model: TeamModelSchema.optional() }),
|
|
470
471
|
z.z.object({ type: z.z.literal("message"), taskId: id$2, body: text$1, recipientBotId: id$2.optional() }),
|
|
471
472
|
z.z.object({ type: z.z.literal("submit"), taskId: id$2, attemptId: id$2, goalVersion: z.z.number().int().positive(), result: text$1 }),
|
|
@@ -480,7 +481,18 @@ const TeamActionSchema = z.z.discriminatedUnion("type", [
|
|
|
480
481
|
z.z.object({ type: z.z.literal("message-delivered"), messageId: id$2, recipientBotId: id$2, generation: z.z.number().int().positive(), sessionId: id$2 })
|
|
481
482
|
]);
|
|
482
483
|
z.z.object({ requestId: id$2, action: TeamActionSchema });
|
|
483
|
-
z.z.object({
|
|
484
|
+
const TeamProjectChoiceSchema = z.z.object({
|
|
485
|
+
projectId: id$2.optional(),
|
|
486
|
+
inheritFromSessionId: id$2.optional(),
|
|
487
|
+
create: z.z.boolean().optional(),
|
|
488
|
+
directory: z.z.string().min(1).max(4096).optional()
|
|
489
|
+
});
|
|
490
|
+
z.z.object({ name: id$2, machineId: id$2, requestId: id$2.optional(), launch: TeamLaunchSchema.optional(), project: TeamProjectChoiceSchema.optional(), sessionId: id$2.optional(), transfer: z.z.literal(true).optional() });
|
|
491
|
+
z.z.object({
|
|
492
|
+
projectId: id$2.nullable().optional(),
|
|
493
|
+
create: z.z.boolean().optional(),
|
|
494
|
+
requestId: id$2.optional()
|
|
495
|
+
}).refine((v) => v.projectId !== void 0 !== (v.create === true), "exactly one of projectId / create");
|
|
484
496
|
const id$1 = z.z.string().min(1).max(128);
|
|
485
497
|
const text = z.z.string().min(1).max(32e3);
|
|
486
498
|
const AUTOMATION_NAME_PATTERN = /^[a-z0-9][a-z0-9-_.]{0,63}$/;
|
|
@@ -1023,11 +1035,17 @@ For edit/status/delete, a conflict means the version changed. Read the task and
|
|
|
1023
1035
|
Restricted team workers cannot use account-wide Todo credentials. Ask the user or supervising session to perform the account operation; do not clear scope variables or seek another credential to bypass that boundary.
|
|
1024
1036
|
`;
|
|
1025
1037
|
const BUILTIN_TODO_DISCOVERY = "For the user\u2019s Very Happy My todos, run `very-happy todo skill` to read the official skill, then use its CLI commands. Do not confuse account todos with your execution plan; restricted team workers must not bypass their scope.";
|
|
1026
|
-
|
|
1038
|
+
z.z.object({
|
|
1027
1039
|
source: z.z.literal("pi"),
|
|
1028
1040
|
tokens: z.z.number().finite().nonnegative().nullable(),
|
|
1029
1041
|
contextWindow: z.z.number().finite().positive(),
|
|
1030
|
-
updatedAt: z.z.number().finite().nonnegative()
|
|
1042
|
+
updatedAt: z.z.number().finite().nonnegative(),
|
|
1043
|
+
/** 'configured' (the harness's own model entry) | 'inferred' (same model id in a known table) | 'unknown' (harness default). Absent = older CLI → configured. */
|
|
1044
|
+
windowSource: z.z.string().nullable().optional(),
|
|
1045
|
+
/** Model id the snapshot was measured on (lets the web consult its own table when the window is unknown). */
|
|
1046
|
+
model: z.z.string().nullable().optional(),
|
|
1047
|
+
/** When the harness last compacted; tokens stay null until the next answer measures the new context. */
|
|
1048
|
+
compactedAt: z.z.number().finite().nonnegative().nullable().optional()
|
|
1031
1049
|
});
|
|
1032
1050
|
const AgentVersionsSchema = z.z.object({
|
|
1033
1051
|
checkedAt: z.z.number(),
|
|
@@ -1042,12 +1060,27 @@ const AgentVersionsSchema = z.z.object({
|
|
|
1042
1060
|
const AGENT_VERSION_SOURCES = [
|
|
1043
1061
|
{ id: "claude", label: "Claude Code", command: "claude", package: "@anthropic-ai/claude-code", docs: "https://code.claude.com/docs/en/setup" },
|
|
1044
1062
|
{ id: "codex", label: "Codex", command: "codex", package: "@openai/codex", docs: "https://github.com/openai/codex#installation-and-usage" },
|
|
1045
|
-
|
|
1063
|
+
// B-719: @mariozechner/pi-coding-agent is deprecated at 0.73.1 ("use @earendil-works/pi-coding-agent"),
|
|
1064
|
+
// so comparing against it reported every newer pi as current.
|
|
1065
|
+
{ id: "pi", label: "Pi", command: "pi", package: "@earendil-works/pi-coding-agent", docs: "https://github.com/earendil-works/pi" },
|
|
1046
1066
|
{ id: "gemini", label: "Gemini CLI", command: "gemini", package: "@google/gemini-cli", docs: "https://github.com/google-gemini/gemini-cli#installation" },
|
|
1047
1067
|
{ id: "opencode", label: "OpenCode", command: "opencode", package: "opencode-ai", docs: "https://opencode.ai/docs/" },
|
|
1048
1068
|
{ id: "openclaw", label: "OpenClaw", command: "openclaw", package: "openclaw", docs: "https://docs.openclaw.ai/install/updating" },
|
|
1049
1069
|
{ id: "claude-sdk", label: "Claude Agent SDK", command: null, package: "@anthropic-ai/claude-agent-sdk", docs: "https://github.com/anthropics/claude-agent-sdk-typescript" }
|
|
1050
1070
|
];
|
|
1071
|
+
const HARNESS_INSTALL_IDS = ["claude", "codex", "gemini", "pi"];
|
|
1072
|
+
function isHarnessInstallId(value) {
|
|
1073
|
+
return typeof value === "string" && HARNESS_INSTALL_IDS.includes(value);
|
|
1074
|
+
}
|
|
1075
|
+
const HARNESS_INSTALL_CAPABILITY_VERSION = 1;
|
|
1076
|
+
z.z.object({
|
|
1077
|
+
harness: z.z.string(),
|
|
1078
|
+
state: z.z.string(),
|
|
1079
|
+
// 'installing' | 'installed' | 'failed' (open: older Web shows unknown states as failed)
|
|
1080
|
+
detail: z.z.string().optional(),
|
|
1081
|
+
startedAt: z.z.number(),
|
|
1082
|
+
at: z.z.number()
|
|
1083
|
+
});
|
|
1051
1084
|
const CLAUDE_OPUS_55_MODEL = "claude-opus-5-5";
|
|
1052
1085
|
const CLAUDE_OPUS_55_CAPABILITY = "claude-opus-5-5-v1";
|
|
1053
1086
|
function supportsClaudeOpus55(metadata) {
|
|
@@ -1143,7 +1176,7 @@ exports.AutomationTriggerSchema = AutomationTriggerSchema;
|
|
|
1143
1176
|
exports.BUILTIN_TODO_DISCOVERY = BUILTIN_TODO_DISCOVERY;
|
|
1144
1177
|
exports.BUILTIN_TODO_SKILL = BUILTIN_TODO_SKILL;
|
|
1145
1178
|
exports.CODEX_STEER_CAPABILITY = CODEX_STEER_CAPABILITY;
|
|
1146
|
-
exports.
|
|
1179
|
+
exports.HARNESS_INSTALL_CAPABILITY_VERSION = HARNESS_INSTALL_CAPABILITY_VERSION;
|
|
1147
1180
|
exports.PI_STEER_CAPABILITY = PI_STEER_CAPABILITY;
|
|
1148
1181
|
exports.PROJECT_SESSION_CAPABILITY = PROJECT_SESSION_CAPABILITY;
|
|
1149
1182
|
exports.PROMPT_QUEUE_CAPABILITY = PROMPT_QUEUE_CAPABILITY;
|
|
@@ -1157,6 +1190,7 @@ exports.createEnvelope = createEnvelope;
|
|
|
1157
1190
|
exports.getAgentCodeDefaults = getAgentCodeDefaults;
|
|
1158
1191
|
exports.isAutomationRunTerminal = isAutomationRunTerminal;
|
|
1159
1192
|
exports.isClaudeOpus55Model = isClaudeOpus55Model;
|
|
1193
|
+
exports.isHarnessInstallId = isHarnessInstallId;
|
|
1160
1194
|
exports.normalizeAgentKey = normalizeAgentKey;
|
|
1161
1195
|
exports.streamKeyOf = streamKeyOf;
|
|
1162
1196
|
exports.supportsClaudeOpus55 = supportsClaudeOpus55;
|
|
@@ -1,90 +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 { q as PI_STEER_CAPABILITY, f as BUILTIN_TODO_DISCOVERY, P as PROMPT_QUEUE_CAPABILITY, a as PROJECT_SESSION_CAPABILITY } from './index-
|
|
1
|
+
import { D as DefaultTransport, A as AcpBackend, i as isAgentExitError, a as acpNoticeMessage } from './AcpBackend-DZGCSuXF.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-DZGCSuXF.mjs';
|
|
3
|
+
import { l as logger } from './logger-LFr8iPgl.mjs';
|
|
4
|
+
import { A as AcpSessionManager } from './AcpSessionManager-DwuPzWBh.mjs';
|
|
5
|
+
import { q as PI_STEER_CAPABILITY, f as BUILTIN_TODO_DISCOVERY, P as PROMPT_QUEUE_CAPABILITY, a as PROJECT_SESSION_CAPABILITY } from './index-CeRXrGnH.mjs';
|
|
6
|
+
import { h as hashObject, s as startHappyServer, r as readPiModelsJson, a as resolvePiContextUsage, c as createProjectInjector } from './deterministicJson-BcBIKKf1.mjs';
|
|
6
7
|
import { r as registerAgentAttachmentDownloads } from './agentAttachments-M_B5qEF2.mjs';
|
|
7
|
-
import { c as configuration } from './configuration-
|
|
8
|
-
import { a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt, C as CLAUDE_ATTACHMENT_KINDS } from './attachmentContent-
|
|
9
|
-
import { p as preparePiTeamsRuntime } from './piRuntime-
|
|
8
|
+
import { c as configuration } from './configuration-BPrfb17M.mjs';
|
|
9
|
+
import { a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt, C as CLAUDE_ATTACHMENT_KINDS } from './attachmentContent-1YwtKgWl.mjs';
|
|
10
|
+
import { p as preparePiTeamsRuntime } from './piRuntime-D7Y4oHVL.mjs';
|
|
10
11
|
import { randomUUID } from 'node:crypto';
|
|
11
12
|
import { join } from 'node:path';
|
|
12
|
-
import { c as connectionState, A as ApiClient } from './api-
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import { n as notifyDaemonSessionStarted, j as reportSessionEditToDaemon } from './controlClient-DoeYovwP.mjs';
|
|
13
|
+
import { c as connectionState, A as ApiClient } from './api-Dr3wXL_7.mjs';
|
|
14
|
+
import { s as sharedProjectsClient } from './client-BKyU66lg.mjs';
|
|
15
|
+
import { M as MessageQueue2, r as registerKillSessionHandler } from './registerKillSessionHandler-DDCKL3wf.mjs';
|
|
16
|
+
import { r as readSettings } from './persistence-D2Djrf7t.mjs';
|
|
17
|
+
import { g as getInitialMachineMetadata } from './machineMetadata-BglCsfvf.mjs';
|
|
18
|
+
import { c as createSessionMetadata } from './createSessionMetadata-3WAj3_xl.mjs';
|
|
19
|
+
import { s as setupOfflineReconnection } from './setupOfflineReconnection-DgJK_4m1.mjs';
|
|
20
|
+
import { c as createSessionForStartup } from './startupSessionCreate-BfByJ16A.mjs';
|
|
21
|
+
import { n as notifyDaemonSessionStarted, j as reportSessionEditToDaemon } from './controlClient-CkNpT5zS.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-JIfwCqMk.mjs';
|
|
24
|
+
import { r as readAcpReconnectEnv, n as normalizeAcpPermissionMode, p as piRestartNotice, w as writeSessionModeFile, a as removeSessionModeFile } from './acpSessionResume-9OLTD6kT.mjs';
|
|
25
|
+
import { S as StreamRelay } from './streamRelay-LcDvyEjK.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-Uo-GUjbb.mjs';
|
|
28
|
+
import { T as TitleGenerator } from './titleGenerator-D5r06bhf.mjs';
|
|
29
29
|
import { E as EditReportThrottle, e as extractAcpEditPaths } from './editPaths-BVfS_FFL.mjs';
|
|
30
30
|
import 'node:child_process';
|
|
31
31
|
import '@agentclientprotocol/sdk';
|
|
32
|
-
import './time-
|
|
32
|
+
import './time-BcoJaG8E.mjs';
|
|
33
33
|
import './contentLogMetadata-BlWI0egu.mjs';
|
|
34
34
|
import './processTree-CP5IvQ2Z.mjs';
|
|
35
|
-
import './package-
|
|
35
|
+
import './package-DYGwlmXl.mjs';
|
|
36
36
|
import 'chalk';
|
|
37
37
|
import 'node:util';
|
|
38
38
|
import 'node:fs';
|
|
39
39
|
import '@paralleldrive/cuid2';
|
|
40
40
|
import 'zod';
|
|
41
|
+
import './prompt-QHuFx9j6.mjs';
|
|
42
|
+
import './reportProgressTool-tPxEvh6x.mjs';
|
|
43
|
+
import './client-CXOnzuOy.mjs';
|
|
44
|
+
import './precheckCompat-DeEbilbr.mjs';
|
|
45
|
+
import './agentGuidance-BDYt2Qy2.mjs';
|
|
46
|
+
import './trimIdent-BAjmv_TG.mjs';
|
|
41
47
|
import 'node:os';
|
|
48
|
+
import './pi-CqyoZMjI.mjs';
|
|
49
|
+
import './fileStore-5qpetZS0.mjs';
|
|
42
50
|
import 'node:fs/promises';
|
|
43
|
-
import './
|
|
51
|
+
import './client-DsQcxVUV.mjs';
|
|
52
|
+
import './context-_YGq8xdH.mjs';
|
|
53
|
+
import './sessionOps-DqlftXxe.mjs';
|
|
44
54
|
import 'axios';
|
|
45
|
-
import './resources-y9jfyO-_.mjs';
|
|
46
|
-
import './lidState-bBrmaQd2.mjs';
|
|
47
|
-
import 'os';
|
|
48
|
-
import 'child_process';
|
|
49
|
-
import 'node:events';
|
|
50
55
|
import 'socket.io-client';
|
|
51
|
-
import './limits-DIo7rEBR.mjs';
|
|
52
|
-
import './registerCommonHandlers-CTkCvjxt.mjs';
|
|
53
|
-
import 'util';
|
|
54
|
-
import 'fs/promises';
|
|
55
|
-
import 'crypto';
|
|
56
|
-
import 'path';
|
|
57
|
-
import 'cross-spawn';
|
|
58
|
-
import './sync-BvVhDO40.mjs';
|
|
59
56
|
import './backgroundTaskActivity-8PdPxrvy.mjs';
|
|
60
|
-
import './
|
|
61
|
-
import './
|
|
62
|
-
import './
|
|
63
|
-
import './precheckCompat-DeEbilbr.mjs';
|
|
64
|
-
import './agentGuidance-BDYt2Qy2.mjs';
|
|
65
|
-
import './trimIdent-BAjmv_TG.mjs';
|
|
66
|
-
import './client-D4uPb1uu.mjs';
|
|
67
|
-
import './context-CJGRRGWW.mjs';
|
|
68
|
-
import './sessionOps-C58iDeD5.mjs';
|
|
69
|
-
import './tools-Cho7iIWf.mjs';
|
|
70
|
-
import './peerTools-BOlDRyhi.mjs';
|
|
57
|
+
import './resources-CH1iP6Cv.mjs';
|
|
58
|
+
import './tools-D2E--n1x.mjs';
|
|
59
|
+
import './peerTools-CK3JYu1k.mjs';
|
|
71
60
|
import './ids-DU6sLx4C.mjs';
|
|
72
|
-
import './remoteSessionClient-
|
|
61
|
+
import './remoteSessionClient-B2POSKFT.mjs';
|
|
73
62
|
import '@modelcontextprotocol/sdk/server/mcp.js';
|
|
74
63
|
import 'node:http';
|
|
75
64
|
import '@modelcontextprotocol/sdk/server/streamableHttp.js';
|
|
76
|
-
import './
|
|
65
|
+
import './limits-DIo7rEBR.mjs';
|
|
66
|
+
import './downloadTarget-CeaAXdJj.mjs';
|
|
77
67
|
import './terminals-Dlg0x3nY.mjs';
|
|
78
68
|
import './terminalTitleSuggest-CeKsX_V6.mjs';
|
|
79
69
|
import './tmuxSocket-B8Yx20sT.mjs';
|
|
80
|
-
import './bootstrap-
|
|
70
|
+
import './bootstrap-B6EkZh4u.mjs';
|
|
81
71
|
import './webPanels-B2_C2-3g.mjs';
|
|
72
|
+
import './pushNotifications-DXGIhE-A.mjs';
|
|
82
73
|
import './previewPath-CXN4Vag0.mjs';
|
|
74
|
+
import 'crypto';
|
|
75
|
+
import './lidState-DghbfRbr.mjs';
|
|
76
|
+
import 'os';
|
|
77
|
+
import 'child_process';
|
|
78
|
+
import 'node:events';
|
|
79
|
+
import './registerCommonHandlers-DF6bdDtd.mjs';
|
|
80
|
+
import 'util';
|
|
81
|
+
import 'fs/promises';
|
|
82
|
+
import 'path';
|
|
83
|
+
import 'cross-spawn';
|
|
84
|
+
import './sync-DO-2PU45.mjs';
|
|
83
85
|
import 'tweetnacl';
|
|
84
86
|
import './types-CkqAACXx.mjs';
|
|
85
87
|
import './detectCLI-CSGMlV51.mjs';
|
|
86
88
|
import 'fs';
|
|
87
|
-
import './localHappyAgentAuth-
|
|
89
|
+
import './localHappyAgentAuth-IKmeRpuQ.mjs';
|
|
88
90
|
import './processTreeSnapshot-CuLJDNC-.mjs';
|
|
89
91
|
import 'url';
|
|
90
92
|
import 'node:module';
|
|
@@ -104,6 +106,18 @@ function createAcpBackend(options) {
|
|
|
104
106
|
return new AcpBackend(backendOptions);
|
|
105
107
|
}
|
|
106
108
|
|
|
109
|
+
const SLASH_COMMAND = /^\/[A-Za-z][A-Za-z0-9_.:-]*(?:\s|$)/;
|
|
110
|
+
function isAgentSlashCommand(message) {
|
|
111
|
+
return typeof message === "string" && SLASH_COMMAND.test(message.trimStart());
|
|
112
|
+
}
|
|
113
|
+
async function buildAcpPrompt(message, opts) {
|
|
114
|
+
if (isAgentSlashCommand(message)) return { prompt: message, slashCommand: true };
|
|
115
|
+
const projected = await opts.decorate(message);
|
|
116
|
+
return { prompt: opts.todoNoteSent ? projected : `${projected}
|
|
117
|
+
|
|
118
|
+
${opts.todoNote}`, slashCommand: false };
|
|
119
|
+
}
|
|
120
|
+
|
|
107
121
|
const MAX_DETAIL_CHARS = 400;
|
|
108
122
|
function detailOf(error) {
|
|
109
123
|
if (error instanceof Error) return error.message;
|
|
@@ -910,8 +924,10 @@ async function runAcp(opts) {
|
|
|
910
924
|
assistant: isAssistantVariant,
|
|
911
925
|
...piSteer ? { piSteer } : {},
|
|
912
926
|
push: { sendAttention: (input) => api.push().sendAttention(input) },
|
|
913
|
-
|
|
914
|
-
|
|
927
|
+
// B-727: pi's report is resolved against models.json (pi's 128k default ≠ a configured window).
|
|
928
|
+
...opts.agentName === "pi" ? { onContextUsage: (report) => {
|
|
929
|
+
const modelsJson = readPiModelsJson();
|
|
930
|
+
session.updateAgentState((state2) => ({ ...state2, contextUsage: resolvePiContextUsage(report, modelsJson, state2.contextUsage, Date.now()) }));
|
|
915
931
|
} } : {}
|
|
916
932
|
});
|
|
917
933
|
if (opts.agentName === "pi") session.updateAgentState((state2) => ({ ...state2, contextUsage: null }));
|
|
@@ -1454,10 +1470,11 @@ async function runAcp(opts) {
|
|
|
1454
1470
|
if (typeof batch.mode.effort === "string") {
|
|
1455
1471
|
await switchEffortIfRequested(batch.mode.effort, modelChanged);
|
|
1456
1472
|
}
|
|
1457
|
-
const
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1473
|
+
const { prompt, slashCommand } = await buildAcpPrompt(batch.message, {
|
|
1474
|
+
todoNoteSent: todoDiscoverySent,
|
|
1475
|
+
todoNote: BUILTIN_TODO_DISCOVERY,
|
|
1476
|
+
decorate: (m) => projectInjector.decorate(m)
|
|
1477
|
+
});
|
|
1461
1478
|
const attachments = batch.attachments ?? [];
|
|
1462
1479
|
const staged = attachments.length ? await stageClaudeAttachments(attachments, {
|
|
1463
1480
|
happyHomeDir: configuration.happyHomeDir,
|
|
@@ -1470,7 +1487,7 @@ ${BUILTIN_TODO_DISCOVERY}`;
|
|
|
1470
1487
|
} finally {
|
|
1471
1488
|
promptInFlight = false;
|
|
1472
1489
|
}
|
|
1473
|
-
todoDiscoverySent = true;
|
|
1490
|
+
if (!slashCommand) todoDiscoverySent = true;
|
|
1474
1491
|
const stopReason = outcome && typeof outcome === "object" ? outcome.stopReason : void 0;
|
|
1475
1492
|
if (stopReason === "error") {
|
|
1476
1493
|
throw new Error("the turn ended with an error reported by the agent");
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { q as query } from './query-
|
|
1
|
+
import { q as query } from './query-CcA6DVZK.mjs';
|
|
2
2
|
export { AbortError } from '@anthropic-ai/claude-agent-sdk';
|
|
3
3
|
import './smallFastModel-BLNgMrwR.mjs';
|
|
4
|
-
import './logger-
|
|
4
|
+
import './logger-LFr8iPgl.mjs';
|
|
5
5
|
import 'chalk';
|
|
6
6
|
import 'node:util';
|
|
7
|
-
import './configuration-
|
|
7
|
+
import './configuration-BPrfb17M.mjs';
|
|
8
8
|
import 'node:fs';
|
|
9
9
|
import 'node:os';
|
|
10
10
|
import 'node:path';
|
|
11
|
-
import './package-
|
|
11
|
+
import './package-DYGwlmXl.mjs';
|
|
12
12
|
import 'node:fs/promises';
|
|
13
13
|
import './processTreeSnapshot-CuLJDNC-.mjs';
|
|
14
14
|
import 'node:child_process';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { p as packageJson } from './package-
|
|
1
|
+
import { p as packageJson } from './package-DYGwlmXl.mjs';
|
|
2
2
|
import module$1 from 'node:module';
|
|
3
3
|
import { existsSync } from 'node:fs';
|
|
4
4
|
import { readdir, rm } from 'node:fs/promises';
|
|
@@ -57,10 +57,10 @@ async function pruneStaleCompileCaches(happyHomeDir, cliVersion) {
|
|
|
57
57
|
async function run(args) {
|
|
58
58
|
enableCompileCacheIfPossible(packageJson.version);
|
|
59
59
|
if (isStandaloneVersionRequest(args) || isSelfCheckRequest(args)) {
|
|
60
|
-
const { selfCheckMain } = await import('./selfCheck-
|
|
60
|
+
const { selfCheckMain } = await import('./selfCheck-NamtBHVB.mjs');
|
|
61
61
|
process.exit(await selfCheckMain({ verbose: isSelfCheckRequest(args) }));
|
|
62
62
|
}
|
|
63
|
-
const { main } = await import('./main-
|
|
63
|
+
const { main } = await import('./main-_1LSzlLv.mjs');
|
|
64
64
|
await main();
|
|
65
65
|
}
|
|
66
66
|
void run(process.argv.slice(2));
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var query = require('./query-
|
|
3
|
+
var query = require('./query-CdCxzuaB.cjs');
|
|
4
4
|
var claudeAgentSdk = require('@anthropic-ai/claude-agent-sdk');
|
|
5
5
|
require('./smallFastModel-D_uxGMo3.cjs');
|
|
6
|
-
require('./logger-
|
|
6
|
+
require('./logger-DgBwUSgS.cjs');
|
|
7
7
|
require('chalk');
|
|
8
8
|
require('node:util');
|
|
9
|
-
require('./configuration-
|
|
9
|
+
require('./configuration-C8JgseHy.cjs');
|
|
10
10
|
require('node:fs');
|
|
11
11
|
require('node:os');
|
|
12
12
|
require('node:path');
|
|
13
|
-
require('./package-
|
|
13
|
+
require('./package-NoD8QOOM.cjs');
|
|
14
14
|
require('node:fs/promises');
|
|
15
15
|
require('./processTreeSnapshot-mDbnuojn.cjs');
|
|
16
16
|
require('node:child_process');
|
package/dist/index.cjs
CHANGED
package/dist/index.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createHash, randomUUID } from 'node:crypto';
|
|
2
2
|
import { unlink, rmdir, mkdir, lstat, readFile, writeFile, rename } from 'node:fs/promises';
|
|
3
3
|
import { join, resolve, dirname } from 'node:path';
|
|
4
|
-
import { T as TEAM_SKILL } from './resources-
|
|
4
|
+
import { T as TEAM_SKILL } from './resources-CH1iP6Cv.mjs';
|
|
5
5
|
|
|
6
6
|
const AUTOMATION_SKILL = `---
|
|
7
7
|
name: very-happy-automations
|
|
@@ -3,7 +3,7 @@
|
|
|
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 resources = require('./resources-
|
|
6
|
+
var resources = require('./resources-BPyN59Iv.cjs');
|
|
7
7
|
|
|
8
8
|
const AUTOMATION_SKILL = `---
|
|
9
9
|
name: very-happy-automations
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { l as logger } from './logger-
|
|
1
|
+
import { l as logger } from './logger-LFr8iPgl.mjs';
|
|
2
2
|
import { existsSync, writeFileSync, chmodSync } from 'fs';
|
|
3
3
|
import { execSync } from 'child_process';
|
|
4
4
|
import { t as trimIdent } from './trimIdent-BAjmv_TG.mjs';
|
|
5
5
|
import os from 'os';
|
|
6
6
|
import 'chalk';
|
|
7
7
|
import 'node:util';
|
|
8
|
-
import './configuration-
|
|
8
|
+
import './configuration-BPrfb17M.mjs';
|
|
9
9
|
import 'node:fs';
|
|
10
10
|
import 'node:os';
|
|
11
11
|
import 'node:path';
|
|
12
|
-
import './package-
|
|
12
|
+
import './package-DYGwlmXl.mjs';
|
|
13
13
|
import 'node:fs/promises';
|
|
14
14
|
|
|
15
15
|
const PLIST_LABEL = "com.happy-cli.daemon";
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var logger = require('./logger-
|
|
3
|
+
var logger = require('./logger-DgBwUSgS.cjs');
|
|
4
4
|
var require$$0 = require('fs');
|
|
5
5
|
var child_process = require('child_process');
|
|
6
6
|
var trimIdent = require('./trimIdent-4gvk9Wk6.cjs');
|
|
7
7
|
var os = require('os');
|
|
8
8
|
require('chalk');
|
|
9
9
|
require('node:util');
|
|
10
|
-
require('./configuration-
|
|
10
|
+
require('./configuration-C8JgseHy.cjs');
|
|
11
11
|
require('node:fs');
|
|
12
12
|
require('node:os');
|
|
13
13
|
require('node:path');
|
|
14
|
-
require('./package-
|
|
14
|
+
require('./package-NoD8QOOM.cjs');
|
|
15
15
|
require('node:fs/promises');
|
|
16
16
|
|
|
17
17
|
const PLIST_LABEL = "com.happy-cli.daemon";
|
package/dist/lib.cjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var api = require('./api-
|
|
4
|
-
var logger = require('./logger-
|
|
5
|
-
var configuration = require('./configuration-
|
|
3
|
+
var api = require('./api-COHFAkb_.cjs');
|
|
4
|
+
var logger = require('./logger-DgBwUSgS.cjs');
|
|
5
|
+
var configuration = require('./configuration-C8JgseHy.cjs');
|
|
6
6
|
var types = require('./types-CRS-srZK.cjs');
|
|
7
7
|
require('axios');
|
|
8
|
-
require('./lidState-
|
|
8
|
+
require('./lidState-x8cJ8J_9.cjs');
|
|
9
9
|
require('./authRelay-Dy1qU9td.cjs');
|
|
10
10
|
require('node:crypto');
|
|
11
11
|
require('tweetnacl');
|
|
@@ -13,14 +13,14 @@ require('os');
|
|
|
13
13
|
require('child_process');
|
|
14
14
|
require('node:events');
|
|
15
15
|
require('socket.io-client');
|
|
16
|
-
require('./pushNotifications-
|
|
16
|
+
require('./pushNotifications-BXoOSq_G.cjs');
|
|
17
17
|
require('zod');
|
|
18
|
-
require('./index-
|
|
18
|
+
require('./index-Df2eHm3O.cjs');
|
|
19
19
|
require('@paralleldrive/cuid2');
|
|
20
20
|
require('./contentLogMetadata-ZSFk_NjQ.cjs');
|
|
21
21
|
require('./limits-C-a7gr04.cjs');
|
|
22
|
-
require('./time-
|
|
23
|
-
require('./registerCommonHandlers-
|
|
22
|
+
require('./time-nqa9shu8.cjs');
|
|
23
|
+
require('./registerCommonHandlers-CRjBoJLK.cjs');
|
|
24
24
|
require('util');
|
|
25
25
|
require('fs/promises');
|
|
26
26
|
require('crypto');
|
|
@@ -28,17 +28,17 @@ require('path');
|
|
|
28
28
|
require('cross-spawn');
|
|
29
29
|
require('./projectPath-C3ioB4Bu.cjs');
|
|
30
30
|
require('url');
|
|
31
|
-
require('./sync-
|
|
31
|
+
require('./sync-1hQ5KHpL.cjs');
|
|
32
32
|
require('./backgroundTaskActivity-CBvUdj39.cjs');
|
|
33
|
-
require('./controlClient-
|
|
34
|
-
require('./persistence-
|
|
33
|
+
require('./controlClient-D68Zj7Q-.cjs');
|
|
34
|
+
require('./persistence-BY-D00wT.cjs');
|
|
35
35
|
require('node:fs/promises');
|
|
36
36
|
require('node:fs');
|
|
37
37
|
require('chalk');
|
|
38
38
|
require('node:util');
|
|
39
39
|
require('node:path');
|
|
40
40
|
require('node:os');
|
|
41
|
-
require('./package-
|
|
41
|
+
require('./package-NoD8QOOM.cjs');
|
|
42
42
|
|
|
43
43
|
|
|
44
44
|
|