very-happy-cli 0.2.165 → 0.2.166
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/README.md +1 -1
- package/dist/{AcpBackend-DCfNt9bD.cjs → AcpBackend-20VHOXwb.cjs} +3 -3
- package/dist/{AcpBackend-C11FnVw5.mjs → AcpBackend-tRWk7yi7.mjs} +3 -3
- package/dist/{AcpSessionManager-BQnDJvct.mjs → AcpSessionManager-B7FIrsys.mjs} +1 -1
- package/dist/{AcpSessionManager-9yN2iH4b.cjs → AcpSessionManager-Zf00QnlL.cjs} +1 -1
- package/dist/{BasePermissionHandler-CwJ48yiB.mjs → BasePermissionHandler-CDCLIrZJ.mjs} +1 -1
- package/dist/{BasePermissionHandler-BwQHxl6M.cjs → BasePermissionHandler-COKc4pmt.cjs} +1 -1
- package/dist/{BaseReasoningProcessor-ClF2g1qz.mjs → BaseReasoningProcessor-BDVKvooR.mjs} +1 -1
- package/dist/{BaseReasoningProcessor-81lf_M8G.cjs → BaseReasoningProcessor-DAGQdkNp.cjs} +1 -1
- package/dist/{agentGuidance-CQuNlNx8.mjs → agentGuidance-BDYt2Qy2.mjs} +4 -2
- package/dist/{agentGuidance-B5NATuFa.cjs → agentGuidance-BtBx2xxE.cjs} +4 -1
- package/dist/{agentHome-DvR176E5.mjs → agentHome-2IbIjKCa.mjs} +4 -4
- package/dist/{agentHome-D3Nn82kI.cjs → agentHome-KVWj6nCl.cjs} +4 -4
- package/dist/{api-DTVPUE7g.mjs → api-Cmz3XS4P.mjs} +14 -12
- package/dist/{api-AzdzTKFs.cjs → api-DnNL5fLw.cjs} +14 -12
- package/dist/{apiMachine-BQ-b4Lu3.mjs → apiMachine-B6ySCFe0.mjs} +2137 -65
- package/dist/{apiMachine-B_cJldfa.cjs → apiMachine-DeoQ8QbZ.cjs} +2134 -62
- package/dist/{attachmentContent-dzIs-wis.mjs → attachmentContent-CTXapi-_.mjs} +2 -2
- package/dist/{attachmentContent-muDCe4Gy.cjs → attachmentContent-DPWxHgX4.cjs} +2 -2
- package/dist/{attachmentLimits-eJZ4ZBjF.cjs → attachmentLimits-BfgKV5iE.cjs} +28 -2
- package/dist/{attachmentLimits-B8nzhw-i.mjs → attachmentLimits-C1PCCM79.mjs} +28 -2
- package/dist/{auth-Jtmvh1w4.mjs → auth-BMaBjRAj.mjs} +8 -8
- package/dist/{auth-DtP-B4gf.cjs → auth-D4-eQz85.cjs} +8 -8
- package/dist/{auth-CfLd3phE.cjs → auth-ietHtvwu.cjs} +5 -5
- package/dist/{auth-BY5ujhGn.mjs → auth-pzWIFdOD.mjs} +5 -5
- package/dist/{auto-DjWfR1UB.mjs → auto-DL75Dx3I.mjs} +83 -21
- package/dist/{auto-ClNnbSoF.cjs → auto-DOWTQDPa.cjs} +84 -20
- package/dist/{bootstrap-B1dMZA-u.cjs → bootstrap-BpXIc2wn.cjs} +2 -2
- package/dist/{bootstrap-D_ExGrY2.mjs → bootstrap-XE8A7Ut2.mjs} +2 -2
- package/dist/{browser-_gV7tcPs.cjs → browser-CcG8GLRV.cjs} +1 -1
- package/dist/{browser-mwzpOmcw.mjs → browser-DDFi1T8C.mjs} +1 -1
- package/dist/{claudeLocal-G5UmJ81F.cjs → claudeLocal-DXBXwIOG.cjs} +6 -6
- package/dist/{claudeLocal-BeHToEK5.mjs → claudeLocal-DmM5Oyhv.mjs} +6 -6
- package/dist/{claudeLocalLauncher-B4y2BsmO.cjs → claudeLocalLauncher-C41Y6Kp4.cjs} +14 -11
- package/dist/{claudeLocalLauncher-Cq6bqAT4.mjs → claudeLocalLauncher-Cs4eUC3P.mjs} +14 -11
- package/dist/{claudeSessionFork-CokUhS4r.mjs → claudeSessionFork-BdLnc2Hv.mjs} +1 -1
- package/dist/{claudeSessionFork-CDJq_b9r.cjs → claudeSessionFork-Cs0I3eGI.cjs} +1 -1
- package/dist/{client-BwaWdlCm.mjs → client-CbK33y_s.mjs} +3 -3
- package/dist/{client-uN9d6Git.cjs → client-DJ0kX_8M.cjs} +2 -2
- package/dist/{client-CJZKBZCE.mjs → client-GjTnsq6F.mjs} +2 -2
- package/dist/{client-Do7cGPEq.cjs → client-JISJx2f-.cjs} +3 -3
- package/dist/codex/happyMcpStdioBridge.cjs +23 -18
- package/dist/codex/happyMcpStdioBridge.mjs +22 -17
- package/dist/{codexAppServerClient-BuSdeUxT.cjs → codexAppServerClient-BTjn2ZCZ.cjs} +46 -2
- package/dist/{codexAppServerClient-B0QaMQsC.mjs → codexAppServerClient-CldXEojt.mjs} +47 -3
- package/dist/{codexCommand-YdYmykAR.cjs → codexCommand-BpD0N1F7.cjs} +71 -51
- package/dist/{codexCommand-C3gdjMAw.mjs → codexCommand-DjMU-Ijf.mjs} +71 -51
- package/dist/{config-CGCIFRCN.mjs → config-DjSJKatx.mjs} +3 -3
- package/dist/{config-ChoHFnfO.cjs → config-DuLL0Ppe.cjs} +3 -3
- package/dist/{configuration-BE61XNsg.cjs → configuration-B0cb3xA3.cjs} +1 -1
- package/dist/{configuration-L1qcGTFM.mjs → configuration-D2v3puap.mjs} +1 -1
- package/dist/{connect-D5IKfcfd.cjs → connect-B7JWEzyg.cjs} +13 -13
- package/dist/{connect-CFD0Em6a.mjs → connect-CnNNyM9I.mjs} +13 -13
- package/dist/{context-3WVw8qPz.cjs → context-BFUpYT39.cjs} +1 -1
- package/dist/{context-DaCCB4cm.mjs → context-DjfqLWzE.mjs} +1 -1
- package/dist/{controlClient-Ci7HTMII.mjs → controlClient-BMUJfUeF.mjs} +13 -6
- package/dist/{controlClient-RWTlQA4_.cjs → controlClient-CmnHGcyl.cjs} +13 -5
- package/dist/{createSessionMetadata-CWR-AB2A.mjs → createSessionMetadata-DU0bCg2m.mjs} +2 -2
- package/dist/{createSessionMetadata-CPGTztXP.cjs → createSessionMetadata-DbfRBhRu.cjs} +2 -2
- package/dist/{deterministicJson-BBwG-Ase.mjs → deterministicJson-D-WPUrZb.mjs} +36 -52
- package/dist/{deterministicJson-C4Jo2RWy.cjs → deterministicJson-Dp3TVyap.cjs} +41 -59
- package/dist/{doctor-CAC6qY9Z.mjs → doctor-BlXXyQ1L.mjs} +6 -6
- package/dist/{doctor-ZOQLE5AH.cjs → doctor-CkJmdPbi.cjs} +6 -6
- package/dist/{assistantTools-BsrG3PD-.cjs → downloadTarget-CiQqRIc-.cjs} +44 -6
- package/dist/{assistantTools-DPGga5lM.mjs → downloadTarget-DjSwMHun.mjs} +45 -8
- package/dist/{ensureDaemonRunning-b1pvEFcS.mjs → ensureDaemonRunning-CAQag1zE.mjs} +5 -5
- package/dist/{ensureDaemonRunning-mIgX2vnc.cjs → ensureDaemonRunning-C_aIOhgG.cjs} +5 -5
- package/dist/{handleResumeCommand-DGNhbv-3.cjs → handleResumeCommand-6KzBGDnl.cjs} +5 -5
- package/dist/{handleResumeCommand-CTGbZkCL.mjs → handleResumeCommand-Ci7wacT-.mjs} +5 -5
- package/dist/{index-vVWpCoTr.mjs → index-B0HEEYGh.mjs} +22 -5
- package/dist/{index-DqlyNgt4.cjs → index-C9hI8a10.cjs} +26 -4
- package/dist/{index-BzIxE0Eu.cjs → index-CaFCAlX8.cjs} +3 -3
- package/dist/{index-DrSPR59N.cjs → index-DBmNwMX9.cjs} +39 -38
- package/dist/{index-DIodyAqF.cjs → index-DEKIgZUo.cjs} +4 -4
- package/dist/{index-Diu6HdWH.mjs → index-DQplgo0W.mjs} +4 -4
- package/dist/{index-BgzjPv07.mjs → index-HQsigW_J.mjs} +3 -3
- package/dist/{index-DjtBengz.mjs → index-WGCT6SSV.mjs} +40 -39
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{install-BO_W7VhL.mjs → install-BdvKiOQw.mjs} +2 -0
- package/dist/{install-DrUQk2DJ.cjs → install-CejEiRGW.cjs} +3 -3
- package/dist/{install-Cs5qAPrB.cjs → install-Cf6AFSWC.cjs} +2 -0
- package/dist/{install-Cp_aB-NQ.mjs → install-oJUvsFu9.mjs} +3 -3
- package/dist/lib.cjs +12 -12
- package/dist/lib.d.cts +55 -2
- package/dist/lib.d.mts +55 -2
- package/dist/lib.mjs +12 -12
- package/dist/{lidState-BLHLmhwd.mjs → lidState-BfximpjX.mjs} +1 -1
- package/dist/{lidState-z9ekRpZu.cjs → lidState-D8BmnJV1.cjs} +1 -1
- package/dist/{localHappyAgentAuth-BWvmc_Hg.mjs → localHappyAgentAuth-Ct1aXwqd.mjs} +1 -1
- package/dist/{localHappyAgentAuth-BCx0y1qW.cjs → localHappyAgentAuth-d7B6S_o7.cjs} +1 -1
- package/dist/{logger-CknSVkIe.mjs → logger-BpQcwNnt.mjs} +2 -2
- package/dist/{logger-D0hkk7Vo.cjs → logger-JTcJU-uL.cjs} +2 -2
- package/dist/{machineMetadata-BDCYOXQg.cjs → machineMetadata-BBg_Njw3.cjs} +3 -3
- package/dist/{machineMetadata-Cj1DoFot.mjs → machineMetadata-CBdxABeI.mjs} +3 -3
- package/dist/{main-CKUfkVG_.mjs → main-B5b1gA3K.mjs} +44 -44
- package/dist/{main-COAPGIso.cjs → main-C16fOGgn.cjs} +44 -44
- package/dist/{mcp-BILnw4si.cjs → mcp-BnNiBBax.cjs} +24 -19
- package/dist/{mcp-DeYUfpo8.mjs → mcp-DGNWgVdv.mjs} +23 -18
- package/dist/{mirrorProtocol-BUtmg1ws.cjs → mirrorProtocol-BEGk2--0.cjs} +80 -0
- package/dist/{mirrorProtocol-BNLtoWjO.mjs → mirrorProtocol-h5WHpdhh.mjs} +79 -1
- package/dist/{package-VIUXrYZ1.mjs → package-BqwrPxL0.mjs} +7 -7
- package/dist/{package-UkmvSFsg.cjs → package-C1XvUQFy.cjs} +7 -7
- package/dist/{peerTools-SWITnkqz.mjs → peerTools-CeCe-3lk.mjs} +4 -4
- package/dist/{peerTools-CttfOxti.cjs → peerTools-DPvbcs8V.cjs} +4 -4
- package/dist/{persistence-C6ztVW1W.cjs → persistence-2Xp_o6x6.cjs} +3 -3
- package/dist/{persistence-DujtUH94.mjs → persistence-B9LmhAE2.mjs} +3 -3
- package/dist/{piRunnerArgs-BVJHIjlk.mjs → piRunnerArgs-7FaTyNOq.mjs} +1 -1
- package/dist/{piRunnerArgs-tBQg6xDw.cjs → piRunnerArgs-DI29dDNo.cjs} +1 -1
- package/dist/{piRuntime-DKFA8u8t.mjs → piRuntime-0qEK5AqE.mjs} +1 -1
- package/dist/{piRuntime-DZzjF9It.cjs → piRuntime-R8XVChxK.cjs} +1 -1
- package/dist/{piTerminal-t5pQHCPT.cjs → piTerminal-Ccj0KNPr.cjs} +17 -17
- package/dist/{piTerminal-BTSaFlpV.mjs → piTerminal-zcQKc8Sp.mjs} +17 -17
- package/dist/precheckCompat-CWOi5c9L.cjs +29 -0
- package/dist/precheckCompat-DeEbilbr.mjs +26 -0
- package/dist/rateLimitWindows-C2Jk3Ih7.cjs +258 -0
- package/dist/rateLimitWindows-Dhfhbtqu.mjs +248 -0
- package/dist/{registerCommonHandlers--8ds2auE.cjs → registerCommonHandlers-Aha_KfM3.cjs} +2 -2
- package/dist/{registerCommonHandlers-BR0J4g64.mjs → registerCommonHandlers-DdfGsFbM.mjs} +2 -2
- package/dist/{registerKillSessionHandler-CI23l8aJ.cjs → registerKillSessionHandler-CjitOpUA.cjs} +6 -6
- package/dist/{registerKillSessionHandler-Czz0tdki.mjs → registerKillSessionHandler-DboQlGcH.mjs} +6 -6
- package/dist/{remoteSessionClient-DCAUHgPz.mjs → remoteSessionClient-B2DtWuNP.mjs} +5 -5
- package/dist/{remoteSessionClient-BAkIwM2S.cjs → remoteSessionClient-BwI8rpQw.cjs} +5 -5
- package/dist/{tools-mWqsE6ji.cjs → reportProgressTool-B-Rcy0s3.cjs} +73 -9
- package/dist/{tools-BVRoGcQH.mjs → reportProgressTool-DnAD8wOa.mjs} +67 -10
- package/dist/{run-CkKujjn8.cjs → run-Bh66Xs40.cjs} +268 -118
- package/dist/{run-B75qm2I6.mjs → run-DPEwJpQR.mjs} +266 -116
- package/dist/{runClaude-B1T9DLLi.cjs → runClaude-C-lJdAKD.cjs} +25 -20
- package/dist/{runClaude-aBfBweec.mjs → runClaude-DLr_nBzw.mjs} +25 -20
- package/dist/{runClaudeDeps-BOrPP4J1.mjs → runClaudeDeps-C7JV7nXG.mjs} +47 -37
- package/dist/{runClaudeDeps-BGjNGfuZ.cjs → runClaudeDeps-vWWLod7J.cjs} +44 -35
- package/dist/{runGemini-BuAA_OQb.cjs → runGemini-o-CUSayc.cjs} +42 -35
- package/dist/{runGemini-a-V7JE-J.mjs → runGemini-tH6sLw-G.mjs} +42 -35
- package/dist/{runOpenClaw-DUSwXg1A.mjs → runOpenClaw-C5DZvVhn.mjs} +18 -18
- package/dist/{runOpenClaw-BBVffIh9.cjs → runOpenClaw-D24f35l0.cjs} +18 -18
- package/dist/{sandbox-Brb_5wzc.mjs → sandbox-BaL1aslA.mjs} +4 -4
- package/dist/{sandbox-Fd2G5yaq.cjs → sandbox-TJZJ6ngw.cjs} +4 -4
- package/dist/selfCheck-DPi4lqme.mjs +84 -0
- package/dist/{selfCheck-NuJKMInJ.cjs → selfCheck-Dugi0Nk_.cjs} +34 -34
- package/dist/{send-4dgHKC3u.cjs → send-CkWOSYmU.cjs} +8 -8
- package/dist/{send-DEQJiq_x.mjs → send-DDcJ3ayi.mjs} +8 -8
- package/dist/{server-DWGcDmHG.cjs → server-7qFQ8J2u.cjs} +6 -6
- package/dist/{server-C6AlUFkw.mjs → server-CUjRvQSd.mjs} +4 -4
- package/dist/{sessionLock-B1GgaO1q.cjs → sessionLock-DfhNICyS.cjs} +2 -2
- package/dist/{sessionLock-Dm8QyGo4.mjs → sessionLock-DqVyHFAQ.mjs} +2 -2
- package/dist/{sessionModeFile-BvOEJ4Fl.cjs → sessionModeFile-CIznKD7O.cjs} +1 -1
- package/dist/{sessionModeFile-CuNAWCKL.mjs → sessionModeFile-M4OpiyrF.mjs} +1 -1
- package/dist/{sessionOps-DG5MMEp_.mjs → sessionOps-BnaEaOKs.mjs} +4 -4
- package/dist/{sessionOps-JP64uJmc.cjs → sessionOps-DOyy4gkY.cjs} +4 -4
- package/dist/{sessionScanner-DqSk5Ol_.mjs → sessionScanner-CcuOn9uU.mjs} +75 -19
- package/dist/{sessionScanner-BBPEgJ5S.cjs → sessionScanner-Cu1yKlj4.cjs} +75 -19
- package/dist/{sessions-DgJuw_i0.cjs → sessions-BQgk5Kw8.cjs} +9 -9
- package/dist/{sessions-4isbBAWi.mjs → sessions-C9O91rL1.mjs} +9 -9
- package/dist/{setupOfflineReconnection-_MoZtsro.mjs → setupOfflineReconnection-Byy8aeKT.mjs} +2 -2
- package/dist/{setupOfflineReconnection-CKJKVIUS.cjs → setupOfflineReconnection-DFmQ8s6I.cjs} +2 -2
- package/dist/{spawn-CshERWbY.cjs → spawn-BS7LPmSm.cjs} +13 -12
- package/dist/{spawn-BTOG4tTm.mjs → spawn-EZ2yrtWd.mjs} +13 -12
- package/dist/{spawnAgents-Czi2VDzj.mjs → spawnAgents-HDaE3C0-.mjs} +1 -1
- package/dist/{spawnAgents-McixdtV1.cjs → spawnAgents-vglexX9N.cjs} +1 -1
- package/dist/{spawnHappyCLI-Dc4xYm8P.mjs → spawnHappyCLI-BAa49m0q.mjs} +1 -1
- package/dist/{spawnHappyCLI-Dd5_8Vex.cjs → spawnHappyCLI-DyaldIe5.cjs} +1 -1
- package/dist/specialCommands-CCWtwIGZ.mjs +93 -0
- package/dist/specialCommands-DouFaJ_0.cjs +96 -0
- package/dist/{startFileWatcher-1LedLBY-.cjs → startFileWatcher-DQbbypJv.cjs} +1 -1
- package/dist/{startFileWatcher-B0VlG-Fn.mjs → startFileWatcher-Dfs4whzr.mjs} +1 -1
- package/dist/{streamRelay-C0AffuX6.cjs → streamRelay-Ce9sgcOV.cjs} +1 -1
- package/dist/{streamRelay-BzMEEvJU.mjs → streamRelay-Iogsh51a.mjs} +1 -1
- package/dist/{sync-Dfm6K2te.mjs → sync-BLpH13Kb.mjs} +1 -1
- package/dist/{sync-DwUUGGFz.cjs → sync-x_lI_3j_.cjs} +1 -1
- package/dist/{systemPrompt-CB1Ls0AE.cjs → systemPrompt-4erwILTB.cjs} +3 -3
- package/dist/{systemPrompt-D41Zw1a3.mjs → systemPrompt-BanyDihy.mjs} +3 -3
- package/dist/{teams-D8Ly3i6u.mjs → teams-D6BOT3lR.mjs} +7 -7
- package/dist/{teams-NWv2ji16.cjs → teams-DzetlGWC.cjs} +7 -7
- package/dist/{time-v1Y_qEJp.mjs → time-CfDKj6Bx.mjs} +1 -1
- package/dist/{time-BbzJ7PJQ.cjs → time-T0YmeOhS.cjs} +1 -1
- package/dist/{titleGenerator-BhoblAQY.mjs → titleGenerator-ChImQ4q-.mjs} +1 -1
- package/dist/{titleGenerator-cH6IkPRi.cjs → titleGenerator-CoMxqKfP.cjs} +2 -2
- package/dist/{todo-D1hgWV6d.cjs → todo-CZZebKZg.cjs} +6 -6
- package/dist/{todo-CuNct-fw.mjs → todo-SVtYxGON.mjs} +6 -6
- package/dist/{tools-jof0Bu54.mjs → tools-3X2z3YDe.mjs} +1 -1
- package/dist/{tools-c2fb0CF5.cjs → tools-IJ0TAcJs.cjs} +1 -1
- package/dist/transcriptCursor-B7T_gkQ0.mjs +102 -0
- package/dist/transcriptCursor-DcXGLeSc.cjs +106 -0
- package/dist/{uninstall-VPH5GfrA.cjs → uninstall-CqqCWj7w.cjs} +3 -3
- package/dist/{uninstall-BB7WYYAk.mjs → uninstall-CypD-kr1.mjs} +3 -3
- package/package.json +7 -7
- package/scripts/terminal_status_forwarder.cjs +89 -0
- package/dist/selfCheck-BgwJ3NGS.mjs +0 -84
- package/dist/specialCommands-BSqhYg5X.mjs +0 -52
- package/dist/specialCommands-DSsTeRej.cjs +0 -54
|
@@ -3,22 +3,22 @@
|
|
|
3
3
|
var chalk = require('chalk');
|
|
4
4
|
var node_fs = require('node:fs');
|
|
5
5
|
var path = require('node:path');
|
|
6
|
-
var persistence = require('./persistence-
|
|
7
|
-
var sessionOps = require('./sessionOps-
|
|
8
|
-
var remoteSessionClient = require('./remoteSessionClient-
|
|
6
|
+
var persistence = require('./persistence-2Xp_o6x6.cjs');
|
|
7
|
+
var sessionOps = require('./sessionOps-DOyy4gkY.cjs');
|
|
8
|
+
var remoteSessionClient = require('./remoteSessionClient-BwI8rpQw.cjs');
|
|
9
9
|
require('node:fs/promises');
|
|
10
|
-
require('./configuration-
|
|
10
|
+
require('./configuration-B0cb3xA3.cjs');
|
|
11
11
|
require('node:os');
|
|
12
|
-
require('./package-
|
|
12
|
+
require('./package-C1XvUQFy.cjs');
|
|
13
13
|
require('zod');
|
|
14
14
|
require('./authRelay-BdYkC1Po.cjs');
|
|
15
15
|
require('node:crypto');
|
|
16
16
|
require('tweetnacl');
|
|
17
|
-
require('./logger-
|
|
17
|
+
require('./logger-JTcJU-uL.cjs');
|
|
18
18
|
require('node:util');
|
|
19
19
|
require('axios');
|
|
20
|
-
require('./controlClient-
|
|
21
|
-
require('./time-
|
|
20
|
+
require('./controlClient-CmnHGcyl.cjs');
|
|
21
|
+
require('./time-T0YmeOhS.cjs');
|
|
22
22
|
require('socket.io-client');
|
|
23
23
|
require('./backgroundTaskActivity-CBvUdj39.cjs');
|
|
24
24
|
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { readFileSync } from 'node:fs';
|
|
3
3
|
import { resolve } from 'node:path';
|
|
4
|
-
import { readPersistedSessions } from './persistence-
|
|
5
|
-
import { s as sessionWebUrl } from './sessionOps-
|
|
6
|
-
import { d as deliverToSession, s as sendRemoteMessage } from './remoteSessionClient-
|
|
4
|
+
import { readPersistedSessions } from './persistence-B9LmhAE2.mjs';
|
|
5
|
+
import { s as sessionWebUrl } from './sessionOps-BnaEaOKs.mjs';
|
|
6
|
+
import { d as deliverToSession, s as sendRemoteMessage } from './remoteSessionClient-B2DtWuNP.mjs';
|
|
7
7
|
import 'node:fs/promises';
|
|
8
|
-
import './configuration-
|
|
8
|
+
import './configuration-D2v3puap.mjs';
|
|
9
9
|
import 'node:os';
|
|
10
|
-
import './package-
|
|
10
|
+
import './package-BqwrPxL0.mjs';
|
|
11
11
|
import 'zod';
|
|
12
12
|
import './authRelay-DSAvg1uv.mjs';
|
|
13
13
|
import 'node:crypto';
|
|
14
14
|
import 'tweetnacl';
|
|
15
|
-
import './logger-
|
|
15
|
+
import './logger-BpQcwNnt.mjs';
|
|
16
16
|
import 'node:util';
|
|
17
17
|
import 'axios';
|
|
18
|
-
import './controlClient-
|
|
19
|
-
import './time-
|
|
18
|
+
import './controlClient-BMUJfUeF.mjs';
|
|
19
|
+
import './time-CfDKj6Bx.mjs';
|
|
20
20
|
import 'socket.io-client';
|
|
21
21
|
import './backgroundTaskActivity-8PdPxrvy.mjs';
|
|
22
22
|
|
|
@@ -8,15 +8,15 @@ var module$1 = require('node:module');
|
|
|
8
8
|
var node_crypto = require('node:crypto');
|
|
9
9
|
var node_child_process = require('node:child_process');
|
|
10
10
|
var promises = require('node:readline/promises');
|
|
11
|
-
var configuration = require('./configuration-
|
|
12
|
-
var persistence = require('./persistence-
|
|
11
|
+
var configuration = require('./configuration-B0cb3xA3.cjs');
|
|
12
|
+
var persistence = require('./persistence-2Xp_o6x6.cjs');
|
|
13
13
|
require('node:os');
|
|
14
|
-
require('./package-
|
|
14
|
+
require('./package-C1XvUQFy.cjs');
|
|
15
15
|
require('node:fs/promises');
|
|
16
16
|
require('zod');
|
|
17
17
|
require('./authRelay-BdYkC1Po.cjs');
|
|
18
18
|
require('tweetnacl');
|
|
19
|
-
require('./logger-
|
|
19
|
+
require('./logger-JTcJU-uL.cjs');
|
|
20
20
|
require('node:util');
|
|
21
21
|
|
|
22
22
|
var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
|
|
@@ -33,9 +33,9 @@ function resolveLocalSignupBootstrap(configuredMode, configuredInviteCodes, gene
|
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
const __filename$1 = node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('server-
|
|
36
|
+
const __filename$1 = node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('server-7qFQ8J2u.cjs', document.baseURI).href)));
|
|
37
37
|
const __dirname$1 = path.dirname(__filename$1);
|
|
38
|
-
const require_ = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('server-
|
|
38
|
+
const require_ = module$1.createRequire((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('server-7qFQ8J2u.cjs', document.baseURI).href)));
|
|
39
39
|
const PRISMA_QUERY_ENGINE_FILES = {
|
|
40
40
|
"arm64-darwin": "libquery_engine-darwin-arm64.dylib.node",
|
|
41
41
|
"x64-darwin": "libquery_engine-darwin.dylib.node",
|
|
@@ -6,15 +6,15 @@ import { createRequire } from 'node:module';
|
|
|
6
6
|
import { randomBytes } from 'node:crypto';
|
|
7
7
|
import { spawn } from 'node:child_process';
|
|
8
8
|
import { createInterface } from 'node:readline/promises';
|
|
9
|
-
import { c as configuration } from './configuration-
|
|
10
|
-
import { updateSettings } from './persistence-
|
|
9
|
+
import { c as configuration } from './configuration-D2v3puap.mjs';
|
|
10
|
+
import { updateSettings } from './persistence-B9LmhAE2.mjs';
|
|
11
11
|
import 'node:os';
|
|
12
|
-
import './package-
|
|
12
|
+
import './package-BqwrPxL0.mjs';
|
|
13
13
|
import 'node:fs/promises';
|
|
14
14
|
import 'zod';
|
|
15
15
|
import './authRelay-DSAvg1uv.mjs';
|
|
16
16
|
import 'tweetnacl';
|
|
17
|
-
import './logger-
|
|
17
|
+
import './logger-BpQcwNnt.mjs';
|
|
18
18
|
import 'node:util';
|
|
19
19
|
|
|
20
20
|
function resolveLocalSignupBootstrap(configuredMode, configuredInviteCodes, generatedInviteCode) {
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
var node_fs = require('node:fs');
|
|
4
4
|
var path = require('node:path');
|
|
5
|
-
var configuration = require('./configuration-
|
|
6
|
-
var logger = require('./logger-
|
|
5
|
+
var configuration = require('./configuration-B0cb3xA3.cjs');
|
|
6
|
+
var logger = require('./logger-JTcJU-uL.cjs');
|
|
7
7
|
|
|
8
8
|
const PROCESS_IDENTITY_FIELDS = [
|
|
9
9
|
"hostPid",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { existsSync, readFileSync, unlinkSync, mkdirSync, renameSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
|
-
import { c as configuration, w as writePrivateFileSync } from './configuration-
|
|
4
|
-
import { l as logger } from './logger-
|
|
3
|
+
import { c as configuration, w as writePrivateFileSync } from './configuration-D2v3puap.mjs';
|
|
4
|
+
import { l as logger } from './logger-BpQcwNnt.mjs';
|
|
5
5
|
|
|
6
6
|
const PROCESS_IDENTITY_FIELDS = [
|
|
7
7
|
"hostPid",
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var node_fs = require('node:fs');
|
|
4
4
|
var path = require('node:path');
|
|
5
|
-
var configuration = require('./configuration-
|
|
5
|
+
var configuration = require('./configuration-B0cb3xA3.cjs');
|
|
6
6
|
|
|
7
7
|
const SESSION_MODE_DIR = "session-modes";
|
|
8
8
|
const ACP_PERMISSION_MODES = ["default", "acceptEdits", "plan", "bypassPermissions"];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { mkdirSync, renameSync, existsSync, unlinkSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
|
-
import { w as writePrivateFileSync, c as configuration } from './configuration-
|
|
3
|
+
import { w as writePrivateFileSync, c as configuration } from './configuration-D2v3puap.mjs';
|
|
4
4
|
|
|
5
5
|
const SESSION_MODE_DIR = "session-modes";
|
|
6
6
|
const ACP_PERMISSION_MODES = ["default", "acceptEdits", "plan", "bypassPermissions"];
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
|
-
import { c as configuration } from './configuration-
|
|
2
|
+
import { c as configuration } from './configuration-D2v3puap.mjs';
|
|
3
3
|
import { e as encodeBase64, g as encrypt, d as decodeBase64, h as decrypt } from './authRelay-DSAvg1uv.mjs';
|
|
4
|
-
import { l as listDaemonSessions, s as stopDaemonSession } from './controlClient-
|
|
5
|
-
import { readCredentialsForConfiguredRelay, readPersistedSessions } from './persistence-
|
|
4
|
+
import { l as listDaemonSessions, s as stopDaemonSession } from './controlClient-BMUJfUeF.mjs';
|
|
5
|
+
import { readCredentialsForConfiguredRelay, readPersistedSessions } from './persistence-B9LmhAE2.mjs';
|
|
6
6
|
import { randomUUID } from 'node:crypto';
|
|
7
|
-
import { d as delay } from './time-
|
|
7
|
+
import { d as delay } from './time-CfDKj6Bx.mjs';
|
|
8
8
|
import { io } from 'socket.io-client';
|
|
9
9
|
import { b as backgroundTasksReport } from './backgroundTaskActivity-8PdPxrvy.mjs';
|
|
10
10
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var axios = require('axios');
|
|
4
|
-
var configuration = require('./configuration-
|
|
4
|
+
var configuration = require('./configuration-B0cb3xA3.cjs');
|
|
5
5
|
var authRelay = require('./authRelay-BdYkC1Po.cjs');
|
|
6
|
-
var controlClient = require('./controlClient-
|
|
7
|
-
var persistence = require('./persistence-
|
|
6
|
+
var controlClient = require('./controlClient-CmnHGcyl.cjs');
|
|
7
|
+
var persistence = require('./persistence-2Xp_o6x6.cjs');
|
|
8
8
|
var node_crypto = require('node:crypto');
|
|
9
|
-
var time = require('./time-
|
|
9
|
+
var time = require('./time-T0YmeOhS.cjs');
|
|
10
10
|
var socket_ioClient = require('socket.io-client');
|
|
11
11
|
var backgroundTaskActivity = require('./backgroundTaskActivity-CBvUdj39.cjs');
|
|
12
12
|
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { I as InvalidateSync } from './sync-
|
|
1
|
+
import { I as InvalidateSync } from './sync-BLpH13Kb.mjs';
|
|
2
2
|
import { R as RawJSONLinesSchema } from './types-CkqAACXx.mjs';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
4
|
+
import { statSync } from 'node:fs';
|
|
5
|
+
import { r as readTranscriptIncrement, i as isValidTranscriptHint } from './transcriptCursor-B7T_gkQ0.mjs';
|
|
6
|
+
import { l as logger } from './logger-BpQcwNnt.mjs';
|
|
7
|
+
import { s as startFileWatcher } from './startFileWatcher-Dfs4whzr.mjs';
|
|
7
8
|
import { g as getProjectPath } from './path-D2wdaNSk.mjs';
|
|
8
9
|
|
|
9
10
|
class Future {
|
|
@@ -40,8 +41,60 @@ async function createSessionScanner(opts) {
|
|
|
40
41
|
let watchers = /* @__PURE__ */ new Map();
|
|
41
42
|
let processedMessageKeys = /* @__PURE__ */ new Set();
|
|
42
43
|
let deadSessions = /* @__PURE__ */ new Set();
|
|
44
|
+
const cursors = /* @__PURE__ */ new Map();
|
|
45
|
+
const watcherPaths = /* @__PURE__ */ new Map();
|
|
46
|
+
const premarkedSessions = /* @__PURE__ */ new Set();
|
|
47
|
+
const premarkLimits = /* @__PURE__ */ new Map();
|
|
48
|
+
const transcriptPathFor = (sessionId) => {
|
|
49
|
+
const hinted = opts.transcriptPathHints?.get(sessionId);
|
|
50
|
+
return isValidTranscriptHint(sessionId, hinted) ? hinted : join(projectDir, `${sessionId}.jsonl`);
|
|
51
|
+
};
|
|
52
|
+
const readSessionMessages = async (sessionId) => {
|
|
53
|
+
const path = transcriptPathFor(sessionId);
|
|
54
|
+
const state = cursors.get(sessionId);
|
|
55
|
+
const pathChanged = state !== void 0 && state.path !== path;
|
|
56
|
+
const cursor = state && !pathChanged ? state.cursor : null;
|
|
57
|
+
logger.debug(`[SESSION_SCANNER] Reading session file: ${path}`);
|
|
58
|
+
let premarkCursor = null;
|
|
59
|
+
if (pathChanged && premarkedSessions.has(sessionId)) {
|
|
60
|
+
const limit = premarkLimits.get(sessionId);
|
|
61
|
+
const old = await readTranscriptIncrement(path, null, limit && limit.path === path ? { limit: limit.size } : {});
|
|
62
|
+
if (old) {
|
|
63
|
+
const history = parseSessionLines(old.lines);
|
|
64
|
+
logger.debug(`[SESSION_SCANNER] Transcript path for ${sessionId} changed; pre-marking ${history.length} existing messages`);
|
|
65
|
+
for (const m of history) processedMessageKeys.add(messageKey(m));
|
|
66
|
+
premarkCursor = old.cursor;
|
|
67
|
+
}
|
|
68
|
+
premarkLimits.delete(sessionId);
|
|
69
|
+
}
|
|
70
|
+
const result = await readTranscriptIncrement(path, premarkCursor ?? cursor);
|
|
71
|
+
if (!result) {
|
|
72
|
+
cursors.set(sessionId, { path, cursor: null });
|
|
73
|
+
logger.debug(`[SESSION_SCANNER] Session file not found: ${path}`);
|
|
74
|
+
return [];
|
|
75
|
+
}
|
|
76
|
+
if (result.reset) {
|
|
77
|
+
logger.debug(`[SESSION_SCANNER] Transcript ${sessionId} was ${result.reset}; re-reading from the start`);
|
|
78
|
+
}
|
|
79
|
+
cursors.set(sessionId, { path, cursor: result.cursor });
|
|
80
|
+
return parseSessionLines(result.lines);
|
|
81
|
+
};
|
|
82
|
+
let invalidateNow = () => {
|
|
83
|
+
};
|
|
84
|
+
const unsubscribeHints = opts.transcriptPathHints?.subscribe((sessionId, path) => {
|
|
85
|
+
if (premarkedSessions.has(sessionId)) {
|
|
86
|
+
let size = 0;
|
|
87
|
+
try {
|
|
88
|
+
size = statSync(path).size;
|
|
89
|
+
} catch {
|
|
90
|
+
}
|
|
91
|
+
premarkLimits.set(sessionId, { path, size });
|
|
92
|
+
}
|
|
93
|
+
invalidateNow();
|
|
94
|
+
});
|
|
43
95
|
if (opts.sessionId) {
|
|
44
|
-
|
|
96
|
+
premarkedSessions.add(opts.sessionId);
|
|
97
|
+
let messages = await readSessionMessages(opts.sessionId);
|
|
45
98
|
logger.debug(`[SESSION_SCANNER] Marking ${messages.length} existing messages as processed from session ${opts.sessionId}`);
|
|
46
99
|
for (let m of messages) {
|
|
47
100
|
processedMessageKeys.add(messageKey(m));
|
|
@@ -64,7 +117,7 @@ async function createSessionScanner(opts) {
|
|
|
64
117
|
}
|
|
65
118
|
}
|
|
66
119
|
for (let session of sessions) {
|
|
67
|
-
const sessionMessages = await
|
|
120
|
+
const sessionMessages = await readSessionMessages(session);
|
|
68
121
|
let skipped = 0;
|
|
69
122
|
let sent = 0;
|
|
70
123
|
for (let file of sessionMessages) {
|
|
@@ -89,10 +142,19 @@ async function createSessionScanner(opts) {
|
|
|
89
142
|
}
|
|
90
143
|
}
|
|
91
144
|
for (let p of sessions) {
|
|
145
|
+
const path = transcriptPathFor(p);
|
|
146
|
+
if (watchers.has(p) && watcherPaths.get(p) !== path) {
|
|
147
|
+
logger.debug(`[SESSION_SCANNER] Transcript path for ${p} changed; re-attaching watcher`);
|
|
148
|
+
watchers.get(p)?.();
|
|
149
|
+
watchers.delete(p);
|
|
150
|
+
watcherPaths.delete(p);
|
|
151
|
+
sync.invalidate();
|
|
152
|
+
}
|
|
92
153
|
if (!watchers.has(p) && !deadSessions.has(p)) {
|
|
93
154
|
logger.debug(`[SESSION_SCANNER] Starting watcher for session: ${p}`);
|
|
155
|
+
watcherPaths.set(p, path);
|
|
94
156
|
watchers.set(p, startFileWatcher(
|
|
95
|
-
|
|
157
|
+
path,
|
|
96
158
|
() => {
|
|
97
159
|
sync.invalidate();
|
|
98
160
|
},
|
|
@@ -102,6 +164,7 @@ async function createSessionScanner(opts) {
|
|
|
102
164
|
logger.debug(`[SESSION_SCANNER] Session ${p} transcript never appeared \u2014 dropping it`);
|
|
103
165
|
watchers.get(p)?.();
|
|
104
166
|
watchers.delete(p);
|
|
167
|
+
watcherPaths.delete(p);
|
|
105
168
|
deadSessions.add(p);
|
|
106
169
|
pendingSessions.delete(p);
|
|
107
170
|
}
|
|
@@ -110,12 +173,14 @@ async function createSessionScanner(opts) {
|
|
|
110
173
|
}
|
|
111
174
|
}
|
|
112
175
|
});
|
|
176
|
+
invalidateNow = () => sync.invalidate();
|
|
113
177
|
await sync.invalidateAndAwait();
|
|
114
178
|
const intervalId = setInterval(() => {
|
|
115
179
|
sync.invalidate();
|
|
116
180
|
}, 3e3);
|
|
117
181
|
return {
|
|
118
182
|
cleanup: async () => {
|
|
183
|
+
unsubscribeHints?.();
|
|
119
184
|
clearInterval(intervalId);
|
|
120
185
|
for (let w of watchers.values()) {
|
|
121
186
|
w();
|
|
@@ -141,7 +206,8 @@ async function createSessionScanner(opts) {
|
|
|
141
206
|
return;
|
|
142
207
|
}
|
|
143
208
|
if (options?.treatExistingAsProcessed) {
|
|
144
|
-
|
|
209
|
+
premarkedSessions.add(sessionId);
|
|
210
|
+
const existing = await readSessionMessages(sessionId);
|
|
145
211
|
logger.debug(`[SESSION_SCANNER] Pre-marking ${existing.length} existing messages as processed for new session ${sessionId}`);
|
|
146
212
|
for (const m of existing) {
|
|
147
213
|
processedMessageKeys.add(messageKey(m));
|
|
@@ -169,17 +235,7 @@ function messageKey(message) {
|
|
|
169
235
|
throw Error();
|
|
170
236
|
}
|
|
171
237
|
}
|
|
172
|
-
|
|
173
|
-
const expectedSessionFile = join(projectDir, `${sessionId}.jsonl`);
|
|
174
|
-
logger.debug(`[SESSION_SCANNER] Reading session file: ${expectedSessionFile}`);
|
|
175
|
-
let file;
|
|
176
|
-
try {
|
|
177
|
-
file = await readFile(expectedSessionFile, "utf-8");
|
|
178
|
-
} catch (error) {
|
|
179
|
-
logger.debug(`[SESSION_SCANNER] Session file not found: ${expectedSessionFile}`);
|
|
180
|
-
return [];
|
|
181
|
-
}
|
|
182
|
-
let lines = file.split("\n");
|
|
238
|
+
function parseSessionLines(lines) {
|
|
183
239
|
let messages = [];
|
|
184
240
|
for (let l of lines) {
|
|
185
241
|
try {
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var sync = require('./sync-
|
|
3
|
+
var sync = require('./sync-x_lI_3j_.cjs');
|
|
4
4
|
var types = require('./types-CRS-srZK.cjs');
|
|
5
5
|
var path$1 = require('node:path');
|
|
6
|
-
var
|
|
7
|
-
var
|
|
8
|
-
var
|
|
6
|
+
var node_fs = require('node:fs');
|
|
7
|
+
var transcriptCursor = require('./transcriptCursor-DcXGLeSc.cjs');
|
|
8
|
+
var logger = require('./logger-JTcJU-uL.cjs');
|
|
9
|
+
var startFileWatcher = require('./startFileWatcher-DQbbypJv.cjs');
|
|
9
10
|
var path = require('./path-B7zW-WwE.cjs');
|
|
10
11
|
|
|
11
12
|
class Future {
|
|
@@ -42,8 +43,60 @@ async function createSessionScanner(opts) {
|
|
|
42
43
|
let watchers = /* @__PURE__ */ new Map();
|
|
43
44
|
let processedMessageKeys = /* @__PURE__ */ new Set();
|
|
44
45
|
let deadSessions = /* @__PURE__ */ new Set();
|
|
46
|
+
const cursors = /* @__PURE__ */ new Map();
|
|
47
|
+
const watcherPaths = /* @__PURE__ */ new Map();
|
|
48
|
+
const premarkedSessions = /* @__PURE__ */ new Set();
|
|
49
|
+
const premarkLimits = /* @__PURE__ */ new Map();
|
|
50
|
+
const transcriptPathFor = (sessionId) => {
|
|
51
|
+
const hinted = opts.transcriptPathHints?.get(sessionId);
|
|
52
|
+
return transcriptCursor.isValidTranscriptHint(sessionId, hinted) ? hinted : path$1.join(projectDir, `${sessionId}.jsonl`);
|
|
53
|
+
};
|
|
54
|
+
const readSessionMessages = async (sessionId) => {
|
|
55
|
+
const path = transcriptPathFor(sessionId);
|
|
56
|
+
const state = cursors.get(sessionId);
|
|
57
|
+
const pathChanged = state !== void 0 && state.path !== path;
|
|
58
|
+
const cursor = state && !pathChanged ? state.cursor : null;
|
|
59
|
+
logger.logger.debug(`[SESSION_SCANNER] Reading session file: ${path}`);
|
|
60
|
+
let premarkCursor = null;
|
|
61
|
+
if (pathChanged && premarkedSessions.has(sessionId)) {
|
|
62
|
+
const limit = premarkLimits.get(sessionId);
|
|
63
|
+
const old = await transcriptCursor.readTranscriptIncrement(path, null, limit && limit.path === path ? { limit: limit.size } : {});
|
|
64
|
+
if (old) {
|
|
65
|
+
const history = parseSessionLines(old.lines);
|
|
66
|
+
logger.logger.debug(`[SESSION_SCANNER] Transcript path for ${sessionId} changed; pre-marking ${history.length} existing messages`);
|
|
67
|
+
for (const m of history) processedMessageKeys.add(messageKey(m));
|
|
68
|
+
premarkCursor = old.cursor;
|
|
69
|
+
}
|
|
70
|
+
premarkLimits.delete(sessionId);
|
|
71
|
+
}
|
|
72
|
+
const result = await transcriptCursor.readTranscriptIncrement(path, premarkCursor ?? cursor);
|
|
73
|
+
if (!result) {
|
|
74
|
+
cursors.set(sessionId, { path, cursor: null });
|
|
75
|
+
logger.logger.debug(`[SESSION_SCANNER] Session file not found: ${path}`);
|
|
76
|
+
return [];
|
|
77
|
+
}
|
|
78
|
+
if (result.reset) {
|
|
79
|
+
logger.logger.debug(`[SESSION_SCANNER] Transcript ${sessionId} was ${result.reset}; re-reading from the start`);
|
|
80
|
+
}
|
|
81
|
+
cursors.set(sessionId, { path, cursor: result.cursor });
|
|
82
|
+
return parseSessionLines(result.lines);
|
|
83
|
+
};
|
|
84
|
+
let invalidateNow = () => {
|
|
85
|
+
};
|
|
86
|
+
const unsubscribeHints = opts.transcriptPathHints?.subscribe((sessionId, path) => {
|
|
87
|
+
if (premarkedSessions.has(sessionId)) {
|
|
88
|
+
let size = 0;
|
|
89
|
+
try {
|
|
90
|
+
size = node_fs.statSync(path).size;
|
|
91
|
+
} catch {
|
|
92
|
+
}
|
|
93
|
+
premarkLimits.set(sessionId, { path, size });
|
|
94
|
+
}
|
|
95
|
+
invalidateNow();
|
|
96
|
+
});
|
|
45
97
|
if (opts.sessionId) {
|
|
46
|
-
|
|
98
|
+
premarkedSessions.add(opts.sessionId);
|
|
99
|
+
let messages = await readSessionMessages(opts.sessionId);
|
|
47
100
|
logger.logger.debug(`[SESSION_SCANNER] Marking ${messages.length} existing messages as processed from session ${opts.sessionId}`);
|
|
48
101
|
for (let m of messages) {
|
|
49
102
|
processedMessageKeys.add(messageKey(m));
|
|
@@ -66,7 +119,7 @@ async function createSessionScanner(opts) {
|
|
|
66
119
|
}
|
|
67
120
|
}
|
|
68
121
|
for (let session of sessions) {
|
|
69
|
-
const sessionMessages = await
|
|
122
|
+
const sessionMessages = await readSessionMessages(session);
|
|
70
123
|
let skipped = 0;
|
|
71
124
|
let sent = 0;
|
|
72
125
|
for (let file of sessionMessages) {
|
|
@@ -91,10 +144,19 @@ async function createSessionScanner(opts) {
|
|
|
91
144
|
}
|
|
92
145
|
}
|
|
93
146
|
for (let p of sessions) {
|
|
147
|
+
const path = transcriptPathFor(p);
|
|
148
|
+
if (watchers.has(p) && watcherPaths.get(p) !== path) {
|
|
149
|
+
logger.logger.debug(`[SESSION_SCANNER] Transcript path for ${p} changed; re-attaching watcher`);
|
|
150
|
+
watchers.get(p)?.();
|
|
151
|
+
watchers.delete(p);
|
|
152
|
+
watcherPaths.delete(p);
|
|
153
|
+
sync$1.invalidate();
|
|
154
|
+
}
|
|
94
155
|
if (!watchers.has(p) && !deadSessions.has(p)) {
|
|
95
156
|
logger.logger.debug(`[SESSION_SCANNER] Starting watcher for session: ${p}`);
|
|
157
|
+
watcherPaths.set(p, path);
|
|
96
158
|
watchers.set(p, startFileWatcher.startFileWatcher(
|
|
97
|
-
path
|
|
159
|
+
path,
|
|
98
160
|
() => {
|
|
99
161
|
sync$1.invalidate();
|
|
100
162
|
},
|
|
@@ -104,6 +166,7 @@ async function createSessionScanner(opts) {
|
|
|
104
166
|
logger.logger.debug(`[SESSION_SCANNER] Session ${p} transcript never appeared \u2014 dropping it`);
|
|
105
167
|
watchers.get(p)?.();
|
|
106
168
|
watchers.delete(p);
|
|
169
|
+
watcherPaths.delete(p);
|
|
107
170
|
deadSessions.add(p);
|
|
108
171
|
pendingSessions.delete(p);
|
|
109
172
|
}
|
|
@@ -112,12 +175,14 @@ async function createSessionScanner(opts) {
|
|
|
112
175
|
}
|
|
113
176
|
}
|
|
114
177
|
});
|
|
178
|
+
invalidateNow = () => sync$1.invalidate();
|
|
115
179
|
await sync$1.invalidateAndAwait();
|
|
116
180
|
const intervalId = setInterval(() => {
|
|
117
181
|
sync$1.invalidate();
|
|
118
182
|
}, 3e3);
|
|
119
183
|
return {
|
|
120
184
|
cleanup: async () => {
|
|
185
|
+
unsubscribeHints?.();
|
|
121
186
|
clearInterval(intervalId);
|
|
122
187
|
for (let w of watchers.values()) {
|
|
123
188
|
w();
|
|
@@ -143,7 +208,8 @@ async function createSessionScanner(opts) {
|
|
|
143
208
|
return;
|
|
144
209
|
}
|
|
145
210
|
if (options?.treatExistingAsProcessed) {
|
|
146
|
-
|
|
211
|
+
premarkedSessions.add(sessionId);
|
|
212
|
+
const existing = await readSessionMessages(sessionId);
|
|
147
213
|
logger.logger.debug(`[SESSION_SCANNER] Pre-marking ${existing.length} existing messages as processed for new session ${sessionId}`);
|
|
148
214
|
for (const m of existing) {
|
|
149
215
|
processedMessageKeys.add(messageKey(m));
|
|
@@ -171,17 +237,7 @@ function messageKey(message) {
|
|
|
171
237
|
throw Error();
|
|
172
238
|
}
|
|
173
239
|
}
|
|
174
|
-
|
|
175
|
-
const expectedSessionFile = path$1.join(projectDir, `${sessionId}.jsonl`);
|
|
176
|
-
logger.logger.debug(`[SESSION_SCANNER] Reading session file: ${expectedSessionFile}`);
|
|
177
|
-
let file;
|
|
178
|
-
try {
|
|
179
|
-
file = await promises.readFile(expectedSessionFile, "utf-8");
|
|
180
|
-
} catch (error) {
|
|
181
|
-
logger.logger.debug(`[SESSION_SCANNER] Session file not found: ${expectedSessionFile}`);
|
|
182
|
-
return [];
|
|
183
|
-
}
|
|
184
|
-
let lines = file.split("\n");
|
|
240
|
+
function parseSessionLines(lines) {
|
|
185
241
|
let messages = [];
|
|
186
242
|
for (let l of lines) {
|
|
187
243
|
try {
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var chalk = require('chalk');
|
|
4
|
-
var sessionOps = require('./sessionOps-
|
|
4
|
+
var sessionOps = require('./sessionOps-DOyy4gkY.cjs');
|
|
5
5
|
var ids = require('./ids-B6ZC0HGt.cjs');
|
|
6
|
-
var peerTools = require('./peerTools-
|
|
7
|
-
var persistence = require('./persistence-
|
|
6
|
+
var peerTools = require('./peerTools-DPvbcs8V.cjs');
|
|
7
|
+
var persistence = require('./persistence-2Xp_o6x6.cjs');
|
|
8
8
|
var path = require('node:path');
|
|
9
|
-
var remoteSessionClient = require('./remoteSessionClient-
|
|
9
|
+
var remoteSessionClient = require('./remoteSessionClient-BwI8rpQw.cjs');
|
|
10
10
|
require('axios');
|
|
11
|
-
require('./configuration-
|
|
11
|
+
require('./configuration-B0cb3xA3.cjs');
|
|
12
12
|
require('node:fs');
|
|
13
13
|
require('node:os');
|
|
14
|
-
require('./package-
|
|
14
|
+
require('./package-C1XvUQFy.cjs');
|
|
15
15
|
require('node:fs/promises');
|
|
16
16
|
require('./authRelay-BdYkC1Po.cjs');
|
|
17
17
|
require('node:crypto');
|
|
18
18
|
require('tweetnacl');
|
|
19
|
-
require('./controlClient-
|
|
20
|
-
require('./logger-
|
|
19
|
+
require('./controlClient-CmnHGcyl.cjs');
|
|
20
|
+
require('./logger-JTcJU-uL.cjs');
|
|
21
21
|
require('node:util');
|
|
22
|
-
require('./time-
|
|
22
|
+
require('./time-T0YmeOhS.cjs');
|
|
23
23
|
require('socket.io-client');
|
|
24
24
|
require('./backgroundTaskActivity-CBvUdj39.cjs');
|
|
25
25
|
require('zod');
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
-
import { D as DEFAULT_RECENT_LIMIT, M as MAX_READ_LIMIT, l as listAccountSessions, a as listSessions, w as waitForTurnEnd, T as TurnWaitTimeoutError, r as readSessionTranscript, b as stopSession, c as resolvePermissionRequest, d as archiveSession } from './sessionOps-
|
|
2
|
+
import { D as DEFAULT_RECENT_LIMIT, M as MAX_READ_LIMIT, l as listAccountSessions, a as listSessions, w as waitForTurnEnd, T as TurnWaitTimeoutError, r as readSessionTranscript, b as stopSession, c as resolvePermissionRequest, d as archiveSession } from './sessionOps-BnaEaOKs.mjs';
|
|
3
3
|
import { i as isValidSessionId } from './ids-DU6sLx4C.mjs';
|
|
4
|
-
import { c as cliPeerSelf, l as listPeerSessions, s as sendPeerMessage, P as PEER_SCOPES } from './peerTools-
|
|
5
|
-
import { readPersistedSessions } from './persistence-
|
|
4
|
+
import { c as cliPeerSelf, l as listPeerSessions, s as sendPeerMessage, P as PEER_SCOPES } from './peerTools-CeCe-3lk.mjs';
|
|
5
|
+
import { readPersistedSessions } from './persistence-B9LmhAE2.mjs';
|
|
6
6
|
import { resolve } from 'node:path';
|
|
7
|
-
import { f as fillForeignAccountRows, l as listRemoteSessions, a as listRemotePeers, w as waitForRemoteTurnEnd, r as readRemoteTranscript } from './remoteSessionClient-
|
|
7
|
+
import { f as fillForeignAccountRows, l as listRemoteSessions, a as listRemotePeers, w as waitForRemoteTurnEnd, r as readRemoteTranscript } from './remoteSessionClient-B2DtWuNP.mjs';
|
|
8
8
|
import 'axios';
|
|
9
|
-
import './configuration-
|
|
9
|
+
import './configuration-D2v3puap.mjs';
|
|
10
10
|
import 'node:fs';
|
|
11
11
|
import 'node:os';
|
|
12
|
-
import './package-
|
|
12
|
+
import './package-BqwrPxL0.mjs';
|
|
13
13
|
import 'node:fs/promises';
|
|
14
14
|
import './authRelay-DSAvg1uv.mjs';
|
|
15
15
|
import 'node:crypto';
|
|
16
16
|
import 'tweetnacl';
|
|
17
|
-
import './controlClient-
|
|
18
|
-
import './logger-
|
|
17
|
+
import './controlClient-BMUJfUeF.mjs';
|
|
18
|
+
import './logger-BpQcwNnt.mjs';
|
|
19
19
|
import 'node:util';
|
|
20
|
-
import './time-
|
|
20
|
+
import './time-CfDKj6Bx.mjs';
|
|
21
21
|
import 'socket.io-client';
|
|
22
22
|
import './backgroundTaskActivity-8PdPxrvy.mjs';
|
|
23
23
|
import 'zod';
|
package/dist/{setupOfflineReconnection-_MoZtsro.mjs → setupOfflineReconnection-Byy8aeKT.mjs}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { c as configuration } from './configuration-
|
|
2
|
-
import { s as startOfflineReconnection } from './api-
|
|
1
|
+
import { c as configuration } from './configuration-D2v3puap.mjs';
|
|
2
|
+
import { s as startOfflineReconnection } from './api-Cmz3XS4P.mjs';
|
|
3
3
|
|
|
4
4
|
function createOfflineSessionStub(sessionTag) {
|
|
5
5
|
return {
|
package/dist/{setupOfflineReconnection-CKJKVIUS.cjs → setupOfflineReconnection-DFmQ8s6I.cjs}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var configuration = require('./configuration-
|
|
4
|
-
var api = require('./api-
|
|
3
|
+
var configuration = require('./configuration-B0cb3xA3.cjs');
|
|
4
|
+
var api = require('./api-DnNL5fLw.cjs');
|
|
5
5
|
|
|
6
6
|
function createOfflineSessionStub(sessionTag) {
|
|
7
7
|
return {
|
|
@@ -3,27 +3,27 @@
|
|
|
3
3
|
var chalk = require('chalk');
|
|
4
4
|
var node_fs = require('node:fs');
|
|
5
5
|
var path$1 = require('node:path');
|
|
6
|
-
var controlClient = require('./controlClient-
|
|
7
|
-
var persistence = require('./persistence-
|
|
8
|
-
var spawnAgents = require('./spawnAgents-
|
|
6
|
+
var controlClient = require('./controlClient-CmnHGcyl.cjs');
|
|
7
|
+
var persistence = require('./persistence-2Xp_o6x6.cjs');
|
|
8
|
+
var spawnAgents = require('./spawnAgents-vglexX9N.cjs');
|
|
9
9
|
var path = require('./path-B7zW-WwE.cjs');
|
|
10
|
-
var claudeSessionFork = require('./claudeSessionFork-
|
|
11
|
-
var codexAppServerClient = require('./codexAppServerClient-
|
|
10
|
+
var claudeSessionFork = require('./claudeSessionFork-Cs0I3eGI.cjs');
|
|
11
|
+
var codexAppServerClient = require('./codexAppServerClient-BTjn2ZCZ.cjs');
|
|
12
12
|
var codexThreadFork = require('./codexThreadFork-DNekT4nQ.cjs');
|
|
13
|
-
var sessionOps = require('./sessionOps-
|
|
14
|
-
var createSessionMetadata = require('./createSessionMetadata-
|
|
15
|
-
var logger = require('./logger-
|
|
13
|
+
var sessionOps = require('./sessionOps-DOyy4gkY.cjs');
|
|
14
|
+
var createSessionMetadata = require('./createSessionMetadata-DbfRBhRu.cjs');
|
|
15
|
+
var logger = require('./logger-JTcJU-uL.cjs');
|
|
16
16
|
var forkBackfill = require('./forkBackfill-8eLDeS73.cjs');
|
|
17
|
-
require('./configuration-
|
|
17
|
+
require('./configuration-B0cb3xA3.cjs');
|
|
18
18
|
require('node:os');
|
|
19
|
-
require('./package-
|
|
19
|
+
require('./package-C1XvUQFy.cjs');
|
|
20
20
|
require('node:fs/promises');
|
|
21
21
|
require('zod');
|
|
22
22
|
require('./authRelay-BdYkC1Po.cjs');
|
|
23
23
|
require('node:crypto');
|
|
24
24
|
require('tweetnacl');
|
|
25
25
|
require('node:util');
|
|
26
|
-
require('./index-
|
|
26
|
+
require('./index-C9hI8a10.cjs');
|
|
27
27
|
require('@paralleldrive/cuid2');
|
|
28
28
|
require('node:readline');
|
|
29
29
|
require('node:child_process');
|
|
@@ -31,8 +31,9 @@ require('cross-spawn');
|
|
|
31
31
|
require('./contentLogMetadata-ZSFk_NjQ.cjs');
|
|
32
32
|
require('./manager-Cly8xVIR.cjs');
|
|
33
33
|
require('@anthropic-ai/sandbox-runtime');
|
|
34
|
+
require('./rateLimitWindows-C2Jk3Ih7.cjs');
|
|
34
35
|
require('axios');
|
|
35
|
-
require('./time-
|
|
36
|
+
require('./time-T0YmeOhS.cjs');
|
|
36
37
|
require('socket.io-client');
|
|
37
38
|
require('./backgroundTaskActivity-CBvUdj39.cjs');
|
|
38
39
|
require('./projectPath-ChLhdOyt.cjs');
|