very-happy-cli 0.2.187 → 0.2.188
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{AcpBackend-C4Emg-H3.mjs → AcpBackend-2loP7MpF.mjs} +3 -3
- package/dist/{AcpBackend-B2-ReWTo.cjs → AcpBackend-B8AYkp5n.cjs} +3 -3
- package/dist/{AcpSessionManager-Nard_zFS.mjs → AcpSessionManager-C17doAoR.mjs} +2 -2
- package/dist/{AcpSessionManager-DR4-oZCz.cjs → AcpSessionManager-CLqo9R9Y.cjs} +2 -2
- package/dist/{BasePermissionHandler-CZ19WzsP.cjs → BasePermissionHandler-C8UEcFz0.cjs} +1 -1
- package/dist/{BasePermissionHandler-Bk9DmVZH.mjs → BasePermissionHandler-CrfyUmqO.mjs} +1 -1
- package/dist/{acpSessionResume-DPSfMe7r.mjs → acpSessionResume-F705a1cF.mjs} +1 -1
- package/dist/{acpSessionResume-Hto_b8MK.cjs → acpSessionResume-OuYlLGxL.cjs} +1 -1
- package/dist/{agentHome-4-odnrAk.mjs → agentHome-Dc7LYF3d.mjs} +4 -4
- package/dist/{agentHome-Mveyfa24.cjs → agentHome-DsKHJ_Sf.cjs} +4 -4
- package/dist/{api-DVEzYcoy.cjs → api-BOqjYd5r.cjs} +10 -10
- package/dist/{api-cVvbFZVK.mjs → api-DNKa7kVy.mjs} +10 -10
- package/dist/{apiMachine-Bd1C_JN6.cjs → apiMachine--rcPpMmt.cjs} +14 -14
- package/dist/{apiMachine-M7qY1izH.mjs → apiMachine-Di1G9ECW.mjs} +14 -14
- package/dist/{attachmentContent-D8hViGiA.cjs → attachmentContent-BFRMLong.cjs} +2 -2
- package/dist/{attachmentContent-NNF-Eo4O.mjs → attachmentContent-C9S4ekAz.mjs} +2 -2
- package/dist/{auth-BCHL8Fx5.mjs → auth-BNhhk2Fr.mjs} +5 -5
- package/dist/{auth-CKNEKwEV.mjs → auth-Bzwo_vOM.mjs} +8 -8
- package/dist/{auth-BHw8be0X.cjs → auth-CQtfznF0.cjs} +8 -8
- package/dist/{auth-b_1h0677.cjs → auth-CXmI92aj.cjs} +5 -5
- package/dist/{auto-D716QYa3.mjs → auto-DHYOLnXB.mjs} +17 -17
- package/dist/{auto-Da4rCLal.cjs → auto-DXLdaX5O.cjs} +17 -17
- package/dist/{bootstrap-CndcegDb.mjs → bootstrap-Di38SnpN.mjs} +2 -2
- package/dist/{bootstrap-j2RuoHVy.cjs → bootstrap-eJ1l7VYl.cjs} +2 -2
- package/dist/{browser-CLsM513o.mjs → browser-6Cg7G6bb.mjs} +1 -1
- package/dist/{browser-DIYTnD_T.cjs → browser-D3uBFRQu.cjs} +1 -1
- package/dist/{claudeLocal-C_uUbEO_.cjs → claudeLocal-BBaE4QF_.cjs} +5 -5
- package/dist/{claudeLocal-3HbTx7K-.mjs → claudeLocal-CqaEs-81.mjs} +5 -5
- package/dist/{claudeLocalLauncher-DXh2chq3.mjs → claudeLocalLauncher-BDUPxtsI.mjs} +10 -10
- package/dist/{claudeLocalLauncher-BxWouVYk.cjs → claudeLocalLauncher-wPxKtH_P.cjs} +10 -10
- package/dist/{claudeSessionFork-CsU96yXX.cjs → claudeSessionFork-CmY25Fl3.cjs} +1 -1
- package/dist/{claudeSessionFork-B4olbwfj.mjs → claudeSessionFork-DzWFzj9m.mjs} +1 -1
- package/dist/{client-CCy72Phz.cjs → client-C2HcMqRF.cjs} +4 -4
- package/dist/{client-C8w9aQYe.mjs → client-DWws_aQK.mjs} +2 -2
- package/dist/{client-Zqg7DXHl.mjs → client-DcDE6Ifk.mjs} +2 -2
- package/dist/{client-CWSfPlGD.cjs → client-DmY03OZZ.cjs} +2 -2
- package/dist/{client-q1aNOKgy.cjs → client-agH03Irm.cjs} +2 -2
- package/dist/{client-D8p1YjVt.mjs → client-qJ0y8fus.mjs} +4 -4
- package/dist/codex/happyMcpStdioBridge.cjs +16 -16
- package/dist/codex/happyMcpStdioBridge.mjs +16 -16
- package/dist/{codexAppServerClient-Csc-XsRV.mjs → codexAppServerClient-DgE99i7X.mjs} +39 -5
- package/dist/{codexAppServerClient-g8npaIU9.cjs → codexAppServerClient-DwzC8LR0.cjs} +39 -5
- package/dist/{codexCommand-BV8pTAtv.cjs → codexCommand-1vFEA1KT.cjs} +117 -59
- package/dist/{codexCommand-BS-foS_R.mjs → codexCommand-DUSVzbKh.mjs} +114 -56
- package/dist/{codexTermination-lOO15mt2.mjs → codexTermination-Bybovr2z.mjs} +1 -1
- package/dist/{codexTermination-B5WgZAWO.cjs → codexTermination-DuDPyBRR.cjs} +1 -1
- package/dist/{config-Ba5ufl-D.mjs → config-BrzZ0O-6.mjs} +3 -3
- package/dist/{config-BOnZRJIG.cjs → config-C4xOL5bH.cjs} +3 -3
- package/dist/{configuration-8EAa2X9P.mjs → configuration-BZHpFD7K.mjs} +1 -1
- package/dist/{configuration-CAfdO4IC.cjs → configuration-DyPW9mVa.cjs} +1 -1
- package/dist/{connect-BHWHNe54.mjs → connect-Cw_INlj8.mjs} +13 -13
- package/dist/{connect-2hWuvxRM.cjs → connect-DurKwMEo.cjs} +13 -13
- package/dist/{context-BtCz06PX.cjs → context-2xDvjkQp.cjs} +1 -1
- package/dist/{context-B-jybQhf.mjs → context-t7YV0aZc.mjs} +1 -1
- package/dist/{controlClient-O-vf2MkJ.mjs → controlClient-Bw56NIrj.mjs} +4 -4
- package/dist/{controlClient-mH9AxBwT.cjs → controlClient-DvFaPsg6.cjs} +3 -3
- package/dist/{createSessionMetadata-HlzlfP0U.mjs → createSessionMetadata-Dn5BkLfU.mjs} +2 -2
- package/dist/{createSessionMetadata-Bcn7b8QB.cjs → createSessionMetadata-Dpg6bV6f.cjs} +2 -2
- package/dist/{defaultPermissionMode-BPDeX4S8.mjs → defaultPermissionMode-DMTnlccv.mjs} +2 -2
- package/dist/{defaultPermissionMode-BN3PdltF.cjs → defaultPermissionMode-Dlm0q1m0.cjs} +2 -2
- package/dist/{deterministicJson-CruOxFA6.mjs → deterministicJson-CsRckxVq.mjs} +13 -13
- package/dist/{deterministicJson-D9pZQhU9.cjs → deterministicJson-D0BrV1FD.cjs} +13 -13
- package/dist/{doctor-BNhLBBTK.mjs → doctor-B4HQiW6j.mjs} +7 -7
- package/dist/{doctor-lHD1YZH6.cjs → doctor-CYe4d9kU.cjs} +7 -7
- package/dist/{downloadTarget-BhkQxTa8.cjs → downloadTarget-CuhBVvuC.cjs} +6 -6
- package/dist/{downloadTarget-ByTxs_N5.mjs → downloadTarget-tYMV_VHo.mjs} +6 -6
- package/dist/{ensureDaemonRunning-BiCK6RiS.cjs → ensureDaemonRunning-Ce3BlWiR.cjs} +5 -5
- package/dist/{ensureDaemonRunning-Cv0AMaHK.mjs → ensureDaemonRunning-DVtIG9z7.mjs} +5 -5
- package/dist/{handleResumeCommand-Cy_KW0LN.mjs → handleResumeCommand-BU1uMNyv.mjs} +5 -5
- package/dist/{handleResumeCommand-WB4VDeKk.cjs → handleResumeCommand-CLxsmAW0.cjs} +5 -5
- package/dist/{index-BpSpw6jG.mjs → index-B1OxWiNG.mjs} +3 -3
- package/dist/{index-BumVulwx.cjs → index-BOe6dKnL.cjs} +215 -18
- package/dist/{index-lWXWV0H2.mjs → index-CVHRt3SS.mjs} +4 -4
- package/dist/{index-CdOz1uDl.mjs → index-ChX0eVXw.mjs} +91 -45
- package/dist/{index-CVMbboXv.mjs → index-DDz0Ftoy.mjs} +4 -4
- package/dist/{index-B44ft-m4.cjs → index-DG1kGjkF.cjs} +92 -46
- package/dist/{index-BpWESchl.cjs → index-DoXbGEAi.cjs} +3 -3
- package/dist/{index-Bcp-PEGc.cjs → index-KwuXqLwe.cjs} +4 -4
- package/dist/{index-B9f1vKcC.mjs → index-WKyN-bNy.mjs} +212 -17
- package/dist/{index-Vtcax4oD.cjs → index-wWJJAQRk.cjs} +4 -4
- package/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{install-mK93DJ6L.mjs → install-CMa_FOWu.mjs} +3 -3
- package/dist/{install-DdRVv9IS.cjs → install-cAYvHxXR.cjs} +3 -3
- package/dist/lib.cjs +12 -12
- package/dist/lib.d.cts +6 -0
- package/dist/lib.d.mts +6 -0
- package/dist/lib.mjs +12 -12
- package/dist/{lidState-LtdUCXi-.mjs → lidState-D-lsD1FS.mjs} +1 -1
- package/dist/{lidState-XyjQaZtU.cjs → lidState-d1vgQ3n7.cjs} +1 -1
- package/dist/{localHappyAgentAuth-C9Aj_wGD.cjs → localHappyAgentAuth-DucSnCg3.cjs} +1 -1
- package/dist/{localHappyAgentAuth-DqFE0Adr.mjs → localHappyAgentAuth-wvDp-nGj.mjs} +1 -1
- package/dist/{logger-BILSzq2s.cjs → logger-C3vZG6Q0.cjs} +2 -2
- package/dist/{logger-SAU4uSs4.mjs → logger-RpzJ4d8V.mjs} +2 -2
- package/dist/{machineMetadata-C5TgUTpD.cjs → machineMetadata-CAvFq1Jg.cjs} +3 -3
- package/dist/{machineMetadata-ZVnihOuL.mjs → machineMetadata-CiQ2_1Mq.mjs} +3 -3
- package/dist/{main-CVfx_-l7.cjs → main-ChpYcFZi.cjs} +46 -46
- package/dist/{main-BjOHtX8u.mjs → main-IPhaImjm.mjs} +46 -46
- package/dist/{mcp-By9XK193.cjs → mcp-2xF232hL.cjs} +15 -15
- package/dist/{mcp-CWVr7KbQ.mjs → mcp-CWnMvju6.mjs} +15 -15
- package/dist/{mirrorProtocol-C0wyaesn.cjs → mirrorProtocol-CVzPObON.cjs} +3 -3
- package/dist/{mirrorProtocol-BI6XbokT.mjs → mirrorProtocol-Dr7fNq8V.mjs} +3 -3
- package/dist/{package-BMBwnCn3.mjs → package-CwB8rFJt.mjs} +7 -7
- package/dist/{package-Bbfq2KR7.cjs → package-Gnf_935w.cjs} +7 -7
- package/dist/{panels-rQmysHlY.cjs → panels-DTlTsndU.cjs} +5 -5
- package/dist/{panels-CbIUwV6q.mjs → panels-L1mSkC-y.mjs} +5 -5
- package/dist/{peerTools-CyruQrOo.mjs → peerTools-2_8Bw9PU.mjs} +5 -5
- package/dist/{peerTools-CZfiq_Dx.cjs → peerTools-C1E5cQ86.cjs} +5 -5
- package/dist/{persistence-C7T3HYjq.mjs → persistence-Bn4qEbDg.mjs} +2 -2
- package/dist/{persistence-DPeSC0SK.cjs → persistence-CqtjFiD1.cjs} +2 -2
- package/dist/{piRunnerArgs-DAq8vIpP.cjs → piRunnerArgs-BI8yQRBZ.cjs} +1 -1
- package/dist/{piRunnerArgs-CsWompo8.mjs → piRunnerArgs-DWBb63W9.mjs} +1 -1
- package/dist/{piRuntime-CFqlQFoz.cjs → piRuntime--mQ43MSM.cjs} +1 -1
- package/dist/{piRuntime-Dxd8Gfun.mjs → piRuntime-Do8oqbm3.mjs} +1 -1
- package/dist/{piTerminal-DHG3Kzve.cjs → piTerminal-BzcvLFsP.cjs} +17 -17
- package/dist/{piTerminal-BssuKDtJ.mjs → piTerminal-GC1KHTYQ.mjs} +17 -17
- package/dist/{pushNotifications-Bi72c41d.mjs → pushNotifications-BThg4nVd.mjs} +3 -3
- package/dist/{pushNotifications-CsSyhnHu.cjs → pushNotifications-Bb-QSqXw.cjs} +3 -3
- package/dist/{query-Cuef299f.cjs → query-Bz3pocKH.cjs} +1 -1
- package/dist/{query-BQOwsKS1.mjs → query-CkgIJ_Dy.mjs} +1 -1
- package/dist/{specialCommands-35KxDNE8.cjs → rateLimitReporter-BkHyvLru.cjs} +3 -55
- package/dist/{specialCommands-CTtmGCCf.mjs → rateLimitReporter-Iw4k3Bbr.mjs} +4 -55
- package/dist/{rateLimitWindows-bfwC81Z-.cjs → rateLimitWindows-Bm_dcQGW.cjs} +1 -1
- package/dist/{rateLimitWindows-B6IAWYN5.mjs → rateLimitWindows-CQ4tIQnx.mjs} +1 -1
- package/dist/{registerCommonHandlers-CQC04iF3.cjs → registerCommonHandlers-CIs6H2DV.cjs} +2 -2
- package/dist/{registerCommonHandlers-qzb6TQqo.mjs → registerCommonHandlers-CaWl9ll1.mjs} +2 -2
- package/dist/{remoteSessionClient-DffolBcQ.cjs → remoteSessionClient-DgUMfPW4.cjs} +5 -5
- package/dist/{remoteSessionClient-D3XhN_sd.mjs → remoteSessionClient-uPj7omsw.mjs} +5 -5
- package/dist/{reportProgressTool-BieTXE_R.cjs → reportProgressTool-CaJ8EwLq.cjs} +3 -3
- package/dist/{reportProgressTool-irHR-XEW.mjs → reportProgressTool-DUEq3xAL.mjs} +3 -3
- package/dist/{run-DCUaxe2S.mjs → run-DTUJBD6p.mjs} +35 -35
- package/dist/{run-Ck_WA6Nj.cjs → run-DyyGMqND.cjs} +35 -35
- package/dist/{runClaude-BUGku2Qp.cjs → runClaude-8JDaPoGQ.cjs} +22 -22
- package/dist/{runClaude-BryAvfNV.mjs → runClaude-DTNvIz2J.mjs} +22 -22
- package/dist/{runClaudeDeps-Dbk1VrOW.cjs → runClaudeDeps-BeLo5zss.cjs} +82 -53
- package/dist/{runClaudeDeps-BZkWM9_u.mjs → runClaudeDeps-CgGkgg7e.mjs} +84 -54
- package/dist/{runGemini-B6AZ2bv0.cjs → runGemini-BSOdU563.cjs} +54 -50
- package/dist/{runGemini-DT379gpi.mjs → runGemini-eU8UOzfc.mjs} +52 -48
- package/dist/{runOpenClaw-eBUYlIVJ.cjs → runOpenClaw-CYyFoGRZ.cjs} +30 -26
- package/dist/{runOpenClaw-Bpp9mkyO.mjs → runOpenClaw-D8RZiA1e.mjs} +28 -24
- package/dist/{sandbox-Bv4H1P6u.cjs → sandbox-C8zfNX-4.cjs} +4 -4
- package/dist/{sandbox-Z8TM9eUg.mjs → sandbox-DlPahdhl.mjs} +4 -4
- package/dist/selfCheck-4bcdHPFQ.mjs +86 -0
- package/dist/{selfCheck--1k2Ptf6.cjs → selfCheck-D28nvuPJ.cjs} +37 -37
- package/dist/{send-BG4KYe6f.cjs → send-C58kX4qz.cjs} +8 -8
- package/dist/{send-CKTovWuQ.mjs → send-DBpv-1eh.mjs} +8 -8
- package/dist/{server-BTNwH-sA.cjs → server-I_CETZzn.cjs} +6 -6
- package/dist/{server-DLpXtoiZ.mjs → server-J5K6pOox.mjs} +4 -4
- package/dist/{sessionLock-DhzB5ZI9.mjs → sessionLock-C7Wg1RVd.mjs} +3 -3
- package/dist/{sessionLock-Cf6RlgfF.cjs → sessionLock-DjE7O0LS.cjs} +3 -3
- package/dist/{sessionOps-CiFjBCMa.mjs → sessionOps-CYjMT7Ad.mjs} +4 -4
- package/dist/{sessionOps-R52JWMnX.cjs → sessionOps-DGMpl9NB.cjs} +4 -4
- package/dist/{sessionProvider-LATn-lZL.cjs → sessionProvider-DVtxrOuM.cjs} +5 -5
- package/dist/{sessionProvider-f2tUhwBc.mjs → sessionProvider-TLiFn9kD.mjs} +5 -5
- package/dist/{sessionScanner-DRzZtGtu.cjs → sessionScanner-BZ1ZSn6I.cjs} +3 -3
- package/dist/{sessionScanner-lS1puA5H.mjs → sessionScanner-CknV1IlN.mjs} +3 -3
- package/dist/{sessions-DGd8Fin6.cjs → sessions-CTkBKs5U.cjs} +10 -10
- package/dist/{sessions-D01nnjOE.mjs → sessions-DU4bxkap.mjs} +10 -10
- package/dist/{setupOfflineReconnection-Ds7ywGwR.cjs → setupOfflineReconnection-CQHNuP_0.cjs} +2 -2
- package/dist/{setupOfflineReconnection-UApZjcU5.mjs → setupOfflineReconnection-DaOXnGuH.mjs} +2 -2
- package/dist/{spawn-CT3g4p8A.cjs → spawn-C0wZc03S.cjs} +67 -25
- package/dist/{spawn-ct8aSMA8.mjs → spawn-DdnYTtQe.mjs} +67 -26
- package/dist/{spawnAgents-DsJSyLDl.cjs → spawnAgents-BjyU78Ue.cjs} +21 -9
- package/dist/{spawnAgents-f2q31uUV.mjs → spawnAgents-D-7wMw-a.mjs} +21 -10
- package/dist/{spawnHappyCLI-DedrWByd.cjs → spawnHappyCLI-BJUd974I.cjs} +1 -1
- package/dist/{spawnHappyCLI-Dp05fHcp.mjs → spawnHappyCLI-CnyyJk74.mjs} +1 -1
- package/dist/{registerKillSessionHandler-BraKB5Ks.cjs → specialCommands-BsvSoDhC.cjs} +91 -6
- package/dist/{registerKillSessionHandler-DMPrrNKX.mjs → specialCommands-DHU7TNeK.mjs} +88 -7
- package/dist/{startFileWatcher-BLdxJdgu.mjs → startFileWatcher-CpO5Mwbr.mjs} +1 -1
- package/dist/{startFileWatcher-72w11DP_.cjs → startFileWatcher-DBboREco.cjs} +1 -1
- package/dist/{startupSessionCreate-CJFR_Zom.mjs → startupSessionCreate-BgaVuvQp.mjs} +1 -1
- package/dist/{startupSessionCreate-Cy4J4-Ep.cjs → startupSessionCreate-C1u2dtz8.cjs} +1 -1
- package/dist/{streamRelay-B3FloUTT.mjs → streamRelay-CqBynIon.mjs} +1 -1
- package/dist/{streamRelay-Cn_uGG6m.cjs → streamRelay-D9a4cBEa.cjs} +1 -1
- package/dist/{sync-lxDpbIh3.cjs → sync-6HFRJP1h.cjs} +1 -1
- package/dist/{sync-BWX1OVQi.mjs → sync-I8NYmycF.mjs} +1 -1
- package/dist/{systemPrompt-0DqWPGY6.cjs → systemPrompt-BDWj5QSL.cjs} +2 -2
- package/dist/{systemPrompt-BIilbjt_.mjs → systemPrompt-C1RSY_60.mjs} +2 -2
- package/dist/{teams-CvpB8Rdm.mjs → teams-GpLFbXXE.mjs} +7 -7
- package/dist/{teams-CImmJLlM.cjs → teams-eUD7ymif.cjs} +7 -7
- package/dist/{template-DPsqlHJQ.cjs → template-17HATY_Y.cjs} +1 -1
- package/dist/{template-DuKZw-Sz.mjs → template-CEK8MEjo.mjs} +1 -1
- package/dist/{time-BbQJi3Eh.cjs → time-BAJRbB6U.cjs} +1 -1
- package/dist/{time-DjS5me2q.mjs → time-umG7yHkb.mjs} +1 -1
- package/dist/{titleGenerator-CGdBp5lQ.mjs → titleGenerator-dmFlxkRs.mjs} +1 -1
- package/dist/{titleGenerator-CfJme6ep.cjs → titleGenerator-iqb2jOF1.cjs} +2 -2
- package/dist/{todo-BxfUKwTM.mjs → todo-CT4AJ3sH.mjs} +6 -6
- package/dist/{todo-rN20m9lT.cjs → todo-DsR7WnQS.cjs} +6 -6
- package/dist/{tools-kGtSjG8h.cjs → tools-30E66QL_.cjs} +1 -1
- package/dist/{tools-B_W7xJNh.mjs → tools-BOWazSD6.mjs} +1 -1
- package/dist/{uninstall-CBQsxEmD.cjs → uninstall-BtTc9hHa.cjs} +3 -3
- package/dist/{uninstall-DUjvgLlg.mjs → uninstall-DImXs6VZ.mjs} +3 -3
- package/package.json +7 -7
- package/dist/selfCheck-DIGghfQz.mjs +0 -86
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
var node_fs = require('node:fs');
|
|
4
4
|
var promises = require('node:fs/promises');
|
|
5
5
|
var path = require('node:path');
|
|
6
|
-
var configuration = require('./configuration-
|
|
6
|
+
var configuration = require('./configuration-DyPW9mVa.cjs');
|
|
7
7
|
require('node:os');
|
|
8
|
-
require('./package-
|
|
8
|
+
require('./package-Gnf_935w.cjs');
|
|
9
9
|
|
|
10
10
|
const ASSISTANT_CLAUDE_MD = `# very-happy \u8C03\u5EA6\u4E2D\u5FC3\uFF08\u8BED\u97F3\u52A9\u624B\uFF09
|
|
11
11
|
|
|
@@ -4,21 +4,21 @@ var spawn = require('cross-spawn');
|
|
|
4
4
|
var node_readline = require('node:readline');
|
|
5
5
|
var node_fs = require('node:fs');
|
|
6
6
|
var node_crypto = require('node:crypto');
|
|
7
|
-
var logger = require('./logger-
|
|
7
|
+
var logger = require('./logger-C3vZG6Q0.cjs');
|
|
8
8
|
var promptCacheTtl = require('./promptCacheTtl-B8PCzE6k.cjs');
|
|
9
9
|
var path$1 = require('node:path');
|
|
10
10
|
var path = require('./path-B7zW-WwE.cjs');
|
|
11
|
-
var systemPrompt = require('./systemPrompt-
|
|
11
|
+
var systemPrompt = require('./systemPrompt-BDWj5QSL.cjs');
|
|
12
12
|
var manager = require('./manager-HrEj442o.cjs');
|
|
13
13
|
var contentLogMetadata = require('./contentLogMetadata-ZSFk_NjQ.cjs');
|
|
14
14
|
var claudeCliPath = require('./claudeCliPath-GaP3UUz1.cjs');
|
|
15
15
|
require('chalk');
|
|
16
16
|
require('node:util');
|
|
17
|
-
require('./configuration-
|
|
17
|
+
require('./configuration-DyPW9mVa.cjs');
|
|
18
18
|
require('node:os');
|
|
19
|
-
require('./package-
|
|
19
|
+
require('./package-Gnf_935w.cjs');
|
|
20
20
|
require('node:fs/promises');
|
|
21
|
-
require('./index-
|
|
21
|
+
require('./index-BOe6dKnL.cjs');
|
|
22
22
|
require('zod');
|
|
23
23
|
require('@paralleldrive/cuid2');
|
|
24
24
|
require('./trimIdent-4gvk9Wk6.cjs');
|
|
@@ -2,21 +2,21 @@ import { spawn } from 'cross-spawn';
|
|
|
2
2
|
import { createInterface } from 'node:readline';
|
|
3
3
|
import { readdirSync, statSync, mkdirSync, existsSync } from 'node:fs';
|
|
4
4
|
import { randomUUID } from 'node:crypto';
|
|
5
|
-
import { l as logger } from './logger-
|
|
5
|
+
import { l as logger } from './logger-RpzJ4d8V.mjs';
|
|
6
6
|
import { p as pinSmallFastModel, a as applyPromptCacheTtlDefault, e as ensureLocalProxyBypass } from './promptCacheTtl-Ce0TVbrx.mjs';
|
|
7
7
|
import { join } from 'node:path';
|
|
8
8
|
import { g as getProjectPath } from './path-D2wdaNSk.mjs';
|
|
9
|
-
import { c as claudeCheckSession, s as systemPrompt } from './systemPrompt-
|
|
9
|
+
import { c as claudeCheckSession, s as systemPrompt } from './systemPrompt-C1RSY_60.mjs';
|
|
10
10
|
import { i as initializeSandbox, a as wrapCommand } from './manager-BEsI4qt3.mjs';
|
|
11
11
|
import { c as contentLogMetadata } from './contentLogMetadata-BlWI0egu.mjs';
|
|
12
12
|
import { claudeCliPath } from './claudeCliPath-BqkaH2oR.mjs';
|
|
13
13
|
import 'chalk';
|
|
14
14
|
import 'node:util';
|
|
15
|
-
import './configuration-
|
|
15
|
+
import './configuration-BZHpFD7K.mjs';
|
|
16
16
|
import 'node:os';
|
|
17
|
-
import './package-
|
|
17
|
+
import './package-CwB8rFJt.mjs';
|
|
18
18
|
import 'node:fs/promises';
|
|
19
|
-
import './index-
|
|
19
|
+
import './index-WKyN-bNy.mjs';
|
|
20
20
|
import 'zod';
|
|
21
21
|
import '@paralleldrive/cuid2';
|
|
22
22
|
import './trimIdent-BAjmv_TG.mjs';
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { l as logger } from './logger-
|
|
2
|
-
import { claudeLocal, ExitCodeError } from './claudeLocal-
|
|
3
|
-
import { c as createSessionScanner, F as Future, d as describeClaudeProcessExit } from './sessionScanner-
|
|
1
|
+
import { l as logger } from './logger-RpzJ4d8V.mjs';
|
|
2
|
+
import { claudeLocal, ExitCodeError } from './claudeLocal-CqaEs-81.mjs';
|
|
3
|
+
import { c as createSessionScanner, F as Future, d as describeClaudeProcessExit } from './sessionScanner-CknV1IlN.mjs';
|
|
4
4
|
import 'chalk';
|
|
5
5
|
import 'node:util';
|
|
6
|
-
import './configuration-
|
|
6
|
+
import './configuration-BZHpFD7K.mjs';
|
|
7
7
|
import 'node:fs';
|
|
8
8
|
import 'node:os';
|
|
9
9
|
import 'node:path';
|
|
10
|
-
import './package-
|
|
10
|
+
import './package-CwB8rFJt.mjs';
|
|
11
11
|
import 'node:fs/promises';
|
|
12
12
|
import 'cross-spawn';
|
|
13
13
|
import 'node:readline';
|
|
14
14
|
import 'node:crypto';
|
|
15
15
|
import './promptCacheTtl-Ce0TVbrx.mjs';
|
|
16
16
|
import './path-D2wdaNSk.mjs';
|
|
17
|
-
import './systemPrompt-
|
|
18
|
-
import './index-
|
|
17
|
+
import './systemPrompt-C1RSY_60.mjs';
|
|
18
|
+
import './index-WKyN-bNy.mjs';
|
|
19
19
|
import 'zod';
|
|
20
20
|
import '@paralleldrive/cuid2';
|
|
21
21
|
import './trimIdent-BAjmv_TG.mjs';
|
|
@@ -28,11 +28,11 @@ import './claudeCliPath-BqkaH2oR.mjs';
|
|
|
28
28
|
import './projectPath-BTBIMB57.mjs';
|
|
29
29
|
import 'path';
|
|
30
30
|
import 'url';
|
|
31
|
-
import './sync-
|
|
32
|
-
import './time-
|
|
31
|
+
import './sync-I8NYmycF.mjs';
|
|
32
|
+
import './time-umG7yHkb.mjs';
|
|
33
33
|
import './types-CkqAACXx.mjs';
|
|
34
34
|
import './transcriptCursor-B7T_gkQ0.mjs';
|
|
35
|
-
import './startFileWatcher-
|
|
35
|
+
import './startFileWatcher-CpO5Mwbr.mjs';
|
|
36
36
|
import 'fs/promises';
|
|
37
37
|
|
|
38
38
|
async function claudeLocalLauncher(session) {
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var logger = require('./logger-
|
|
4
|
-
var claudeLocal = require('./claudeLocal-
|
|
5
|
-
var sessionScanner = require('./sessionScanner-
|
|
3
|
+
var logger = require('./logger-C3vZG6Q0.cjs');
|
|
4
|
+
var claudeLocal = require('./claudeLocal-BBaE4QF_.cjs');
|
|
5
|
+
var sessionScanner = require('./sessionScanner-BZ1ZSn6I.cjs');
|
|
6
6
|
require('chalk');
|
|
7
7
|
require('node:util');
|
|
8
|
-
require('./configuration-
|
|
8
|
+
require('./configuration-DyPW9mVa.cjs');
|
|
9
9
|
require('node:fs');
|
|
10
10
|
require('node:os');
|
|
11
11
|
require('node:path');
|
|
12
|
-
require('./package-
|
|
12
|
+
require('./package-Gnf_935w.cjs');
|
|
13
13
|
require('node:fs/promises');
|
|
14
14
|
require('cross-spawn');
|
|
15
15
|
require('node:readline');
|
|
16
16
|
require('node:crypto');
|
|
17
17
|
require('./promptCacheTtl-B8PCzE6k.cjs');
|
|
18
18
|
require('./path-B7zW-WwE.cjs');
|
|
19
|
-
require('./systemPrompt-
|
|
20
|
-
require('./index-
|
|
19
|
+
require('./systemPrompt-BDWj5QSL.cjs');
|
|
20
|
+
require('./index-BOe6dKnL.cjs');
|
|
21
21
|
require('zod');
|
|
22
22
|
require('@paralleldrive/cuid2');
|
|
23
23
|
require('./trimIdent-4gvk9Wk6.cjs');
|
|
@@ -30,11 +30,11 @@ require('./claudeCliPath-GaP3UUz1.cjs');
|
|
|
30
30
|
require('./projectPath-C3ioB4Bu.cjs');
|
|
31
31
|
require('path');
|
|
32
32
|
require('url');
|
|
33
|
-
require('./sync-
|
|
34
|
-
require('./time-
|
|
33
|
+
require('./sync-6HFRJP1h.cjs');
|
|
34
|
+
require('./time-BAJRbB6U.cjs');
|
|
35
35
|
require('./types-CRS-srZK.cjs');
|
|
36
36
|
require('./transcriptCursor-DcXGLeSc.cjs');
|
|
37
|
-
require('./startFileWatcher-
|
|
37
|
+
require('./startFileWatcher-DBboREco.cjs');
|
|
38
38
|
require('fs/promises');
|
|
39
39
|
|
|
40
40
|
async function claudeLocalLauncher(session) {
|
|
@@ -5,7 +5,7 @@ var promises = require('node:fs/promises');
|
|
|
5
5
|
var node_fs = require('node:fs');
|
|
6
6
|
var path = require('node:path');
|
|
7
7
|
var node_readline = require('node:readline');
|
|
8
|
-
var logger = require('./logger-
|
|
8
|
+
var logger = require('./logger-C3vZG6Q0.cjs');
|
|
9
9
|
|
|
10
10
|
class ForkTruncateUuidNotFoundError extends Error {
|
|
11
11
|
constructor(cutAfterUuid, sourcePath) {
|
|
@@ -3,7 +3,7 @@ import { copyFile, unlink, readFile, rename, writeFile } from 'node:fs/promises'
|
|
|
3
3
|
import { createReadStream, createWriteStream } from 'node:fs';
|
|
4
4
|
import { join } from 'node:path';
|
|
5
5
|
import { createInterface } from 'node:readline';
|
|
6
|
-
import { l as logger } from './logger-
|
|
6
|
+
import { l as logger } from './logger-RpzJ4d8V.mjs';
|
|
7
7
|
|
|
8
8
|
class ForkTruncateUuidNotFoundError extends Error {
|
|
9
9
|
constructor(cutAfterUuid, sourcePath) {
|
|
@@ -4,10 +4,10 @@ var node_crypto = require('node:crypto');
|
|
|
4
4
|
var node_child_process = require('node:child_process');
|
|
5
5
|
var node_util = require('node:util');
|
|
6
6
|
var path = require('node:path');
|
|
7
|
-
var index = require('./index-
|
|
8
|
-
var configuration = require('./configuration-
|
|
9
|
-
var persistence = require('./persistence-
|
|
10
|
-
var context = require('./context-
|
|
7
|
+
var index = require('./index-BOe6dKnL.cjs');
|
|
8
|
+
var configuration = require('./configuration-DyPW9mVa.cjs');
|
|
9
|
+
var persistence = require('./persistence-CqtjFiD1.cjs');
|
|
10
|
+
var context = require('./context-2xDvjkQp.cjs');
|
|
11
11
|
|
|
12
12
|
async function teamRequest(path, method, token, scoped, body) {
|
|
13
13
|
const response = await fetch(`${configuration.configuration.serverUrl}${path}`, {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { c as configuration } from './configuration-
|
|
2
|
-
import { b as readCredentialsForConfiguredRelay } from './persistence-
|
|
1
|
+
import { c as configuration } from './configuration-BZHpFD7K.mjs';
|
|
2
|
+
import { b as readCredentialsForConfiguredRelay } from './persistence-Bn4qEbDg.mjs';
|
|
3
3
|
|
|
4
4
|
const UNSUPPORTED_BACKOFF_MS = 10 * 6e4;
|
|
5
5
|
class ProjectsUnsupportedError extends Error {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { c as configuration } from './configuration-
|
|
2
|
-
import { b as readCredentialsForConfiguredRelay, r as readSettings } from './persistence-
|
|
1
|
+
import { c as configuration } from './configuration-BZHpFD7K.mjs';
|
|
2
|
+
import { b as readCredentialsForConfiguredRelay, r as readSettings } from './persistence-Bn4qEbDg.mjs';
|
|
3
3
|
|
|
4
4
|
class AutomationsRequestError extends Error {
|
|
5
5
|
constructor(status, code, runStatus, invalidFields = []) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var configuration = require('./configuration-
|
|
4
|
-
var persistence = require('./persistence-
|
|
3
|
+
var configuration = require('./configuration-DyPW9mVa.cjs');
|
|
4
|
+
var persistence = require('./persistence-CqtjFiD1.cjs');
|
|
5
5
|
|
|
6
6
|
class AutomationsRequestError extends Error {
|
|
7
7
|
constructor(status, code, runStatus, invalidFields = []) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var configuration = require('./configuration-
|
|
4
|
-
var persistence = require('./persistence-
|
|
3
|
+
var configuration = require('./configuration-DyPW9mVa.cjs');
|
|
4
|
+
var persistence = require('./persistence-CqtjFiD1.cjs');
|
|
5
5
|
|
|
6
6
|
const UNSUPPORTED_BACKOFF_MS = 10 * 6e4;
|
|
7
7
|
class ProjectsUnsupportedError extends Error {
|
|
@@ -2,10 +2,10 @@ import { randomUUID } from 'node:crypto';
|
|
|
2
2
|
import { execFile } from 'node:child_process';
|
|
3
3
|
import { promisify } from 'node:util';
|
|
4
4
|
import { basename, dirname } from 'node:path';
|
|
5
|
-
import { f as isInsideTeamWorktree, r as rebaseTeamWorktreePath } from './index-
|
|
6
|
-
import { c as configuration } from './configuration-
|
|
7
|
-
import { r as readSettings, c as readPersistedSessions, b as readCredentialsForConfiguredRelay } from './persistence-
|
|
8
|
-
import { r as readTeamScope, t as teamScopePath, w as writeTeamScope } from './context-
|
|
5
|
+
import { f as isInsideTeamWorktree, r as rebaseTeamWorktreePath } from './index-WKyN-bNy.mjs';
|
|
6
|
+
import { c as configuration } from './configuration-BZHpFD7K.mjs';
|
|
7
|
+
import { r as readSettings, c as readPersistedSessions, b as readCredentialsForConfiguredRelay } from './persistence-Bn4qEbDg.mjs';
|
|
8
|
+
import { r as readTeamScope, t as teamScopePath, w as writeTeamScope } from './context-t7YV0aZc.mjs';
|
|
9
9
|
|
|
10
10
|
async function teamRequest(path, method, token, scoped, body) {
|
|
11
11
|
const response = await fetch(`${configuration.serverUrl}${path}`, {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var tools = require('../tools-
|
|
4
|
-
var reportProgressTool = require('../reportProgressTool-
|
|
5
|
-
var peerTools = require('../peerTools-
|
|
3
|
+
var tools = require('../tools-30E66QL_.cjs');
|
|
4
|
+
var reportProgressTool = require('../reportProgressTool-CaJ8EwLq.cjs');
|
|
5
|
+
var peerTools = require('../peerTools-C1E5cQ86.cjs');
|
|
6
6
|
var agentGuidance = require('../agentGuidance-BtBx2xxE.cjs');
|
|
7
7
|
var mcp_js = require('@modelcontextprotocol/sdk/server/mcp.js');
|
|
8
8
|
var stdio_js = require('@modelcontextprotocol/sdk/server/stdio.js');
|
|
@@ -10,36 +10,36 @@ var index_js = require('@modelcontextprotocol/sdk/client/index.js');
|
|
|
10
10
|
var streamableHttp_js = require('@modelcontextprotocol/sdk/client/streamableHttp.js');
|
|
11
11
|
var z = require('zod');
|
|
12
12
|
var limits = require('../limits-C-a7gr04.cjs');
|
|
13
|
-
require('../client-
|
|
13
|
+
require('../client-C2HcMqRF.cjs');
|
|
14
14
|
require('node:crypto');
|
|
15
15
|
require('node:child_process');
|
|
16
16
|
require('node:util');
|
|
17
17
|
require('node:path');
|
|
18
|
-
require('../index-
|
|
18
|
+
require('../index-BOe6dKnL.cjs');
|
|
19
19
|
require('@paralleldrive/cuid2');
|
|
20
|
-
require('../configuration-
|
|
20
|
+
require('../configuration-DyPW9mVa.cjs');
|
|
21
21
|
require('node:fs');
|
|
22
22
|
require('node:os');
|
|
23
|
-
require('../package-
|
|
23
|
+
require('../package-Gnf_935w.cjs');
|
|
24
24
|
require('node:fs/promises');
|
|
25
|
-
require('../persistence-
|
|
25
|
+
require('../persistence-CqtjFiD1.cjs');
|
|
26
26
|
require('../authRelay-Dy1qU9td.cjs');
|
|
27
27
|
require('tweetnacl');
|
|
28
|
-
require('../logger-
|
|
28
|
+
require('../logger-C3vZG6Q0.cjs');
|
|
29
29
|
require('chalk');
|
|
30
|
-
require('../context-
|
|
31
|
-
require('../client-
|
|
30
|
+
require('../context-2xDvjkQp.cjs');
|
|
31
|
+
require('../client-DmY03OZZ.cjs');
|
|
32
32
|
require('../precheckCompat-CWOi5c9L.cjs');
|
|
33
|
-
require('../client-
|
|
33
|
+
require('../client-agH03Irm.cjs');
|
|
34
34
|
require('../prompt-Bof2aQkI.cjs');
|
|
35
35
|
require('../ids-B6ZC0HGt.cjs');
|
|
36
|
-
require('../controlClient-
|
|
37
|
-
require('../sessionOps-
|
|
36
|
+
require('../controlClient-DvFaPsg6.cjs');
|
|
37
|
+
require('../sessionOps-DGMpl9NB.cjs');
|
|
38
38
|
require('axios');
|
|
39
|
-
require('../time-
|
|
39
|
+
require('../time-BAJRbB6U.cjs');
|
|
40
40
|
require('socket.io-client');
|
|
41
41
|
require('../backgroundTaskActivity-CBvUdj39.cjs');
|
|
42
|
-
require('../remoteSessionClient-
|
|
42
|
+
require('../remoteSessionClient-DgUMfPW4.cjs');
|
|
43
43
|
require('../trimIdent-4gvk9Wk6.cjs');
|
|
44
44
|
|
|
45
45
|
function parseArgs(argv) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { r as registerTeamsTools } from '../tools-
|
|
2
|
-
import { r as registerAutomationTools, a as registerProjectTools, b as registerReportProgressTool } from '../reportProgressTool-
|
|
3
|
-
import { r as registerSessionPeerTools } from '../peerTools-
|
|
1
|
+
import { r as registerTeamsTools } from '../tools-BOWazSD6.mjs';
|
|
2
|
+
import { r as registerAutomationTools, a as registerProjectTools, b as registerReportProgressTool } from '../reportProgressTool-DUEq3xAL.mjs';
|
|
3
|
+
import { r as registerSessionPeerTools } from '../peerTools-2_8Bw9PU.mjs';
|
|
4
4
|
import { P as PREVIEW_TOOL_NAME, a as PREVIEW_TOOL_TITLE, b as PREVIEW_TOOL_DESCRIPTION, c as PREVIEW_DOWNLOAD_PARAM_DESCRIPTION, R as REPORT_PROGRESS_TOOL_NAME } from '../agentGuidance-BDYt2Qy2.mjs';
|
|
5
5
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
6
6
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
@@ -8,36 +8,36 @@ import { Client } from '@modelcontextprotocol/sdk/client/index.js';
|
|
|
8
8
|
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';
|
|
9
9
|
import { z } from 'zod';
|
|
10
10
|
import { C as CLIPBOARD_TOOL_NAME, a as CLIPBOARD_TOOL_TITLE, b as CLIPBOARD_TOOL_DESCRIPTION } from '../limits-DIo7rEBR.mjs';
|
|
11
|
-
import '../client-
|
|
11
|
+
import '../client-qJ0y8fus.mjs';
|
|
12
12
|
import 'node:crypto';
|
|
13
13
|
import 'node:child_process';
|
|
14
14
|
import 'node:util';
|
|
15
15
|
import 'node:path';
|
|
16
|
-
import '../index-
|
|
16
|
+
import '../index-WKyN-bNy.mjs';
|
|
17
17
|
import '@paralleldrive/cuid2';
|
|
18
|
-
import '../configuration-
|
|
18
|
+
import '../configuration-BZHpFD7K.mjs';
|
|
19
19
|
import 'node:fs';
|
|
20
20
|
import 'node:os';
|
|
21
|
-
import '../package-
|
|
21
|
+
import '../package-CwB8rFJt.mjs';
|
|
22
22
|
import 'node:fs/promises';
|
|
23
|
-
import '../persistence-
|
|
23
|
+
import '../persistence-Bn4qEbDg.mjs';
|
|
24
24
|
import '../authRelay-DhQhkBvX.mjs';
|
|
25
25
|
import 'tweetnacl';
|
|
26
|
-
import '../logger-
|
|
26
|
+
import '../logger-RpzJ4d8V.mjs';
|
|
27
27
|
import 'chalk';
|
|
28
|
-
import '../context-
|
|
29
|
-
import '../client-
|
|
28
|
+
import '../context-t7YV0aZc.mjs';
|
|
29
|
+
import '../client-DcDE6Ifk.mjs';
|
|
30
30
|
import '../precheckCompat-DeEbilbr.mjs';
|
|
31
|
-
import '../client-
|
|
31
|
+
import '../client-DWws_aQK.mjs';
|
|
32
32
|
import '../prompt-QHuFx9j6.mjs';
|
|
33
33
|
import '../ids-DU6sLx4C.mjs';
|
|
34
|
-
import '../controlClient-
|
|
35
|
-
import '../sessionOps-
|
|
34
|
+
import '../controlClient-Bw56NIrj.mjs';
|
|
35
|
+
import '../sessionOps-CYjMT7Ad.mjs';
|
|
36
36
|
import 'axios';
|
|
37
|
-
import '../time-
|
|
37
|
+
import '../time-umG7yHkb.mjs';
|
|
38
38
|
import 'socket.io-client';
|
|
39
39
|
import '../backgroundTaskActivity-8PdPxrvy.mjs';
|
|
40
|
-
import '../remoteSessionClient-
|
|
40
|
+
import '../remoteSessionClient-uPj7omsw.mjs';
|
|
41
41
|
import '../trimIdent-BAjmv_TG.mjs';
|
|
42
42
|
|
|
43
43
|
function parseArgs(argv) {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { execSync } from 'node:child_process';
|
|
2
2
|
import { spawn } from 'cross-spawn';
|
|
3
3
|
import { createInterface } from 'node:readline';
|
|
4
|
-
import { l as logger } from './logger-
|
|
4
|
+
import { l as logger } from './logger-RpzJ4d8V.mjs';
|
|
5
5
|
import { e as errorLogMetadata, c as contentLogMetadata } from './contentLogMetadata-BlWI0egu.mjs';
|
|
6
6
|
import { i as initializeSandbox, w as wrapForMcpTransport } from './manager-BEsI4qt3.mjs';
|
|
7
|
-
import { p as packageJson } from './package-
|
|
8
|
-
import { s as shouldReadCodexRateLimits, i as isUnsupportedCodexMethodError } from './rateLimitWindows-
|
|
7
|
+
import { p as packageJson } from './package-CwB8rFJt.mjs';
|
|
8
|
+
import { s as shouldReadCodexRateLimits, i as isUnsupportedCodexMethodError } from './rateLimitWindows-CQ4tIQnx.mjs';
|
|
9
9
|
import { s as stopProcessGracefully, k as killProcessTree } from './processTree-CP5IvQ2Z.mjs';
|
|
10
10
|
|
|
11
11
|
const CODEX_HELPER_LABEL_MAX_CHARS = 80;
|
|
@@ -140,6 +140,8 @@ class CodexAppServerClient {
|
|
|
140
140
|
completedTurnIds = /* @__PURE__ */ new Set();
|
|
141
141
|
/** B-625: turns whose failure has already been forwarded, so a second failed frame is not. */
|
|
142
142
|
failedTurnIds = /* @__PURE__ */ new Set();
|
|
143
|
+
/** The turn the last pending completion was resolved for (runTurnAndWait reads its verdict). */
|
|
144
|
+
lastResolvedTurnId = null;
|
|
143
145
|
// B-625: the app-server speaks for every thread it hosts — the session's own and the
|
|
144
146
|
// children `spawn_agent` opens — so a lifecycle frame (turn/started, turn/completed,
|
|
145
147
|
// thread/status/changed, error, thread/closed) is the session's only when its `threadId`
|
|
@@ -858,6 +860,7 @@ ${text}`.slice(-400);
|
|
|
858
860
|
}
|
|
859
861
|
resolvePendingTurn(aborted) {
|
|
860
862
|
if (!this.pendingTurnCompletion) return;
|
|
863
|
+
this.lastResolvedTurnId = this.pendingTurnCompletion.turnId;
|
|
861
864
|
this.clearTurnWatchdog();
|
|
862
865
|
this.clearThreadStopGrace();
|
|
863
866
|
this.pendingTurnCompletion.resolve(aborted);
|
|
@@ -992,6 +995,7 @@ ${text}`.slice(-400);
|
|
|
992
995
|
);
|
|
993
996
|
return;
|
|
994
997
|
}
|
|
998
|
+
if (!pending.turnId && turnId) pending.turnId = turnId;
|
|
995
999
|
this.resolvePendingTurn(aborted);
|
|
996
1000
|
}
|
|
997
1001
|
async waitForTurnCompletion(timeoutMs) {
|
|
@@ -1091,6 +1095,24 @@ ${text}`.slice(-400);
|
|
|
1091
1095
|
* Returns { aborted: true } if the turn was aborted (user cancel, permission reject, etc.).
|
|
1092
1096
|
*/
|
|
1093
1097
|
async sendTurnAndWait(prompt, opts) {
|
|
1098
|
+
const { aborted } = await this.runTurnAndWait(() => this.sendTurn(prompt, opts), opts);
|
|
1099
|
+
return { aborted };
|
|
1100
|
+
}
|
|
1101
|
+
/**
|
|
1102
|
+
* `/compact`: Codex compacts the thread in a turn of its own
|
|
1103
|
+
* (`thread/compact/start` answers `{}`, then `turn/started` →
|
|
1104
|
+
* `contextCompaction` item → `turn/completed`, probed on codex-cli 0.154).
|
|
1105
|
+
* Waits for that turn like any other; `failed` is the turn's own verdict.
|
|
1106
|
+
*/
|
|
1107
|
+
async compactThreadAndWait(opts) {
|
|
1108
|
+
return this.runTurnAndWait(async () => {
|
|
1109
|
+
if (!this._threadId) {
|
|
1110
|
+
throw new Error("No active thread. Call startThread first.");
|
|
1111
|
+
}
|
|
1112
|
+
await this.request("thread/compact/start", { threadId: this._threadId });
|
|
1113
|
+
}, opts);
|
|
1114
|
+
}
|
|
1115
|
+
async runTurnAndWait(start, opts) {
|
|
1094
1116
|
if (this.pendingInterrupt) {
|
|
1095
1117
|
await this.pendingInterrupt;
|
|
1096
1118
|
await new Promise((resolve) => setTimeout(resolve, 0));
|
|
@@ -1108,7 +1130,7 @@ ${text}`.slice(-400);
|
|
|
1108
1130
|
this.armTurnWatchdog(timeoutMs);
|
|
1109
1131
|
});
|
|
1110
1132
|
try {
|
|
1111
|
-
await
|
|
1133
|
+
await start();
|
|
1112
1134
|
} catch (err) {
|
|
1113
1135
|
this.clearTurnWatchdog();
|
|
1114
1136
|
this.pendingTurnCompletion = null;
|
|
@@ -1117,7 +1139,8 @@ ${text}`.slice(-400);
|
|
|
1117
1139
|
}
|
|
1118
1140
|
const aborted = await completion;
|
|
1119
1141
|
this.clearTurnWatchdog();
|
|
1120
|
-
|
|
1142
|
+
const turnId = this.lastResolvedTurnId;
|
|
1143
|
+
return { aborted, failed: turnId !== null && this.failedTurnIds.has(turnId) };
|
|
1121
1144
|
}
|
|
1122
1145
|
armTurnWatchdog(timeoutMs) {
|
|
1123
1146
|
this.clearTurnWatchdog();
|
|
@@ -1208,6 +1231,17 @@ ${text}`.slice(-400);
|
|
|
1208
1231
|
} while (cursor);
|
|
1209
1232
|
return models;
|
|
1210
1233
|
}
|
|
1234
|
+
/**
|
|
1235
|
+
* B-844: the model Codex's effective configuration pins (config.toml,
|
|
1236
|
+
* profile, CLI overrides) via `config/read`; null = nothing pinned.
|
|
1237
|
+
* Throws when this Codex has no `config/read` — the caller then reports
|
|
1238
|
+
* nothing (unknown) and the web sends no model.
|
|
1239
|
+
*/
|
|
1240
|
+
async readConfiguredModel(cwd) {
|
|
1241
|
+
const response = await this.request("config/read", { cwd }, 1e4);
|
|
1242
|
+
const model = response?.config?.model;
|
|
1243
|
+
return typeof model === "string" && model.trim() ? model.trim() : null;
|
|
1244
|
+
}
|
|
1211
1245
|
request(method, params, timeoutMs) {
|
|
1212
1246
|
const timeout = timeoutMs ?? CodexAppServerClient.REQUEST_TIMEOUT_MS;
|
|
1213
1247
|
return new Promise((resolve, reject) => {
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
var node_child_process = require('node:child_process');
|
|
4
4
|
var spawn = require('cross-spawn');
|
|
5
5
|
var node_readline = require('node:readline');
|
|
6
|
-
var logger = require('./logger-
|
|
6
|
+
var logger = require('./logger-C3vZG6Q0.cjs');
|
|
7
7
|
var contentLogMetadata = require('./contentLogMetadata-ZSFk_NjQ.cjs');
|
|
8
8
|
var manager = require('./manager-HrEj442o.cjs');
|
|
9
|
-
var _package = require('./package-
|
|
10
|
-
var rateLimitWindows = require('./rateLimitWindows-
|
|
9
|
+
var _package = require('./package-Gnf_935w.cjs');
|
|
10
|
+
var rateLimitWindows = require('./rateLimitWindows-Bm_dcQGW.cjs');
|
|
11
11
|
var processTree = require('./processTree-CMHWlVse.cjs');
|
|
12
12
|
|
|
13
13
|
const CODEX_HELPER_LABEL_MAX_CHARS = 80;
|
|
@@ -142,6 +142,8 @@ class CodexAppServerClient {
|
|
|
142
142
|
completedTurnIds = /* @__PURE__ */ new Set();
|
|
143
143
|
/** B-625: turns whose failure has already been forwarded, so a second failed frame is not. */
|
|
144
144
|
failedTurnIds = /* @__PURE__ */ new Set();
|
|
145
|
+
/** The turn the last pending completion was resolved for (runTurnAndWait reads its verdict). */
|
|
146
|
+
lastResolvedTurnId = null;
|
|
145
147
|
// B-625: the app-server speaks for every thread it hosts — the session's own and the
|
|
146
148
|
// children `spawn_agent` opens — so a lifecycle frame (turn/started, turn/completed,
|
|
147
149
|
// thread/status/changed, error, thread/closed) is the session's only when its `threadId`
|
|
@@ -860,6 +862,7 @@ ${text}`.slice(-400);
|
|
|
860
862
|
}
|
|
861
863
|
resolvePendingTurn(aborted) {
|
|
862
864
|
if (!this.pendingTurnCompletion) return;
|
|
865
|
+
this.lastResolvedTurnId = this.pendingTurnCompletion.turnId;
|
|
863
866
|
this.clearTurnWatchdog();
|
|
864
867
|
this.clearThreadStopGrace();
|
|
865
868
|
this.pendingTurnCompletion.resolve(aborted);
|
|
@@ -994,6 +997,7 @@ ${text}`.slice(-400);
|
|
|
994
997
|
);
|
|
995
998
|
return;
|
|
996
999
|
}
|
|
1000
|
+
if (!pending.turnId && turnId) pending.turnId = turnId;
|
|
997
1001
|
this.resolvePendingTurn(aborted);
|
|
998
1002
|
}
|
|
999
1003
|
async waitForTurnCompletion(timeoutMs) {
|
|
@@ -1093,6 +1097,24 @@ ${text}`.slice(-400);
|
|
|
1093
1097
|
* Returns { aborted: true } if the turn was aborted (user cancel, permission reject, etc.).
|
|
1094
1098
|
*/
|
|
1095
1099
|
async sendTurnAndWait(prompt, opts) {
|
|
1100
|
+
const { aborted } = await this.runTurnAndWait(() => this.sendTurn(prompt, opts), opts);
|
|
1101
|
+
return { aborted };
|
|
1102
|
+
}
|
|
1103
|
+
/**
|
|
1104
|
+
* `/compact`: Codex compacts the thread in a turn of its own
|
|
1105
|
+
* (`thread/compact/start` answers `{}`, then `turn/started` →
|
|
1106
|
+
* `contextCompaction` item → `turn/completed`, probed on codex-cli 0.154).
|
|
1107
|
+
* Waits for that turn like any other; `failed` is the turn's own verdict.
|
|
1108
|
+
*/
|
|
1109
|
+
async compactThreadAndWait(opts) {
|
|
1110
|
+
return this.runTurnAndWait(async () => {
|
|
1111
|
+
if (!this._threadId) {
|
|
1112
|
+
throw new Error("No active thread. Call startThread first.");
|
|
1113
|
+
}
|
|
1114
|
+
await this.request("thread/compact/start", { threadId: this._threadId });
|
|
1115
|
+
}, opts);
|
|
1116
|
+
}
|
|
1117
|
+
async runTurnAndWait(start, opts) {
|
|
1096
1118
|
if (this.pendingInterrupt) {
|
|
1097
1119
|
await this.pendingInterrupt;
|
|
1098
1120
|
await new Promise((resolve) => setTimeout(resolve, 0));
|
|
@@ -1110,7 +1132,7 @@ ${text}`.slice(-400);
|
|
|
1110
1132
|
this.armTurnWatchdog(timeoutMs);
|
|
1111
1133
|
});
|
|
1112
1134
|
try {
|
|
1113
|
-
await
|
|
1135
|
+
await start();
|
|
1114
1136
|
} catch (err) {
|
|
1115
1137
|
this.clearTurnWatchdog();
|
|
1116
1138
|
this.pendingTurnCompletion = null;
|
|
@@ -1119,7 +1141,8 @@ ${text}`.slice(-400);
|
|
|
1119
1141
|
}
|
|
1120
1142
|
const aborted = await completion;
|
|
1121
1143
|
this.clearTurnWatchdog();
|
|
1122
|
-
|
|
1144
|
+
const turnId = this.lastResolvedTurnId;
|
|
1145
|
+
return { aborted, failed: turnId !== null && this.failedTurnIds.has(turnId) };
|
|
1123
1146
|
}
|
|
1124
1147
|
armTurnWatchdog(timeoutMs) {
|
|
1125
1148
|
this.clearTurnWatchdog();
|
|
@@ -1210,6 +1233,17 @@ ${text}`.slice(-400);
|
|
|
1210
1233
|
} while (cursor);
|
|
1211
1234
|
return models;
|
|
1212
1235
|
}
|
|
1236
|
+
/**
|
|
1237
|
+
* B-844: the model Codex's effective configuration pins (config.toml,
|
|
1238
|
+
* profile, CLI overrides) via `config/read`; null = nothing pinned.
|
|
1239
|
+
* Throws when this Codex has no `config/read` — the caller then reports
|
|
1240
|
+
* nothing (unknown) and the web sends no model.
|
|
1241
|
+
*/
|
|
1242
|
+
async readConfiguredModel(cwd) {
|
|
1243
|
+
const response = await this.request("config/read", { cwd }, 1e4);
|
|
1244
|
+
const model = response?.config?.model;
|
|
1245
|
+
return typeof model === "string" && model.trim() ? model.trim() : null;
|
|
1246
|
+
}
|
|
1213
1247
|
request(method, params, timeoutMs) {
|
|
1214
1248
|
const timeout = timeoutMs ?? CodexAppServerClient.REQUEST_TIMEOUT_MS;
|
|
1215
1249
|
return new Promise((resolve, reject) => {
|