very-happy-cli 0.2.190 → 0.2.191

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.
Files changed (196) hide show
  1. package/dist/{AcpBackend-Dd1h-Rgt.mjs → AcpBackend-CCy_9AfR.mjs} +3 -3
  2. package/dist/{AcpBackend-dkRv9QHm.cjs → AcpBackend-DgrIc1vH.cjs} +3 -3
  3. package/dist/{AcpSessionManager-QBZ-CIf7.mjs → AcpSessionManager-CQnxx7gD.mjs} +2 -2
  4. package/dist/{AcpSessionManager-AqWAqahm.cjs → AcpSessionManager-DVOzCD3P.cjs} +2 -2
  5. package/dist/{BasePermissionHandler-CpSugp7Z.cjs → BasePermissionHandler-C9Ag7yvs.cjs} +1 -1
  6. package/dist/{BasePermissionHandler-CLp1ge-4.mjs → BasePermissionHandler-DYLN6Ec9.mjs} +1 -1
  7. package/dist/{acpSessionResume-CcpDuIO5.mjs → acpSessionResume-Bi7pA1n_.mjs} +1 -1
  8. package/dist/{acpSessionResume-CZao6QEd.cjs → acpSessionResume-TvP_4Zq2.cjs} +1 -1
  9. package/dist/{agentHome-BJGRA2Kx.mjs → agentHome-DGv105SR.mjs} +4 -4
  10. package/dist/{agentHome-fIUqT-pn.cjs → agentHome-DNUKJWOY.cjs} +4 -4
  11. package/dist/{api-CXL6jp-p.cjs → api-BBxZ7y2z.cjs} +10 -10
  12. package/dist/{api-Dw8gFsQi.mjs → api-jfeMRg5R.mjs} +10 -10
  13. package/dist/{apiMachine-BBNEtjf7.mjs → apiMachine-DRJ7y-BB.mjs} +14 -14
  14. package/dist/{apiMachine-C6UqHoPF.cjs → apiMachine-DqyjKBZG.cjs} +14 -14
  15. package/dist/{attachmentContent-NmVfKp-B.cjs → attachmentContent-BO2njyza.cjs} +2 -2
  16. package/dist/{attachmentContent-CC4yIrSm.mjs → attachmentContent-Dm_RIs5L.mjs} +2 -2
  17. package/dist/{auth-Bh6SUoGi.mjs → auth-BYDtjVNb.mjs} +8 -8
  18. package/dist/{auth-Bj0psrD2.mjs → auth-DC6rg8lJ.mjs} +5 -5
  19. package/dist/{auth-DKa4MsAi.cjs → auth-DLR3ksCF.cjs} +8 -8
  20. package/dist/{auth-Bb_SL2os.cjs → auth-DnxoVkkf.cjs} +5 -5
  21. package/dist/{auto-C9Qohh0P.cjs → auto-CwO0u8hB.cjs} +17 -17
  22. package/dist/{auto-DK7pbCnV.mjs → auto-D5Jhukq1.mjs} +17 -17
  23. package/dist/{bootstrap-Ct9Nb4sv.mjs → bootstrap-rLaL3kTa.mjs} +2 -2
  24. package/dist/{bootstrap-DBJB0y-H.cjs → bootstrap-sly4qPPY.cjs} +2 -2
  25. package/dist/{browser-CLJWcodR.cjs → browser-BTgZ9d4i.cjs} +1 -1
  26. package/dist/{browser-BGxDRhHy.mjs → browser-CHpVgyni.mjs} +1 -1
  27. package/dist/{claudeLocal-B6YDYlnY.cjs → claudeLocal-1vuTFcL8.cjs} +5 -5
  28. package/dist/{claudeLocal-Ux31hZyC.mjs → claudeLocal-Bgb5GGsq.mjs} +5 -5
  29. package/dist/{claudeLocalLauncher-DFvmF8rC.cjs → claudeLocalLauncher-DOsL6HFY.cjs} +10 -10
  30. package/dist/{claudeLocalLauncher-D06QijMw.mjs → claudeLocalLauncher-T7EfT68h.mjs} +10 -10
  31. package/dist/{claudeSessionFork-D2GI7P59.mjs → claudeSessionFork-CPvi6yDX.mjs} +1 -1
  32. package/dist/{claudeSessionFork-DTLZ2rek.cjs → claudeSessionFork-Cko4SaVi.cjs} +1 -1
  33. package/dist/{client-DZkBUoh9.mjs → client-BXD66ZF5.mjs} +2 -2
  34. package/dist/{client-CtL0Vtww.mjs → client-Bh1aUPh-.mjs} +4 -4
  35. package/dist/{client-CnGNYidN.mjs → client-Bi20Ka0h.mjs} +2 -2
  36. package/dist/{client-Bffkrs5p.cjs → client-BscskEBk.cjs} +2 -2
  37. package/dist/{client-CARZ_lNS.cjs → client-C-OdTbrU.cjs} +4 -4
  38. package/dist/{client-CMKGrnmT.cjs → client-C5-C0t2a.cjs} +2 -2
  39. package/dist/codex/happyMcpStdioBridge.cjs +16 -16
  40. package/dist/codex/happyMcpStdioBridge.mjs +16 -16
  41. package/dist/{codexAppServerClient-CpT9F6EM.cjs → codexAppServerClient-DKXeikEe.cjs} +3 -3
  42. package/dist/{codexAppServerClient-CLc5nhLT.mjs → codexAppServerClient-DXhAf6i-.mjs} +3 -3
  43. package/dist/{codexCommand-Dliq3EBv.mjs → codexCommand-CIaOiiOj.mjs} +113 -55
  44. package/dist/{codexCommand-39kH99SJ.cjs → codexCommand-DvbbpYBS.cjs} +113 -55
  45. package/dist/{codexTermination-ORIw0gpU.mjs → codexTermination-BcQdEDaw.mjs} +1 -1
  46. package/dist/{codexTermination-ByW7tRjr.cjs → codexTermination-BszWfyk5.cjs} +1 -1
  47. package/dist/{config-CeIzCsfj.cjs → config-Di3Cf6js.cjs} +3 -3
  48. package/dist/{config-CxSsGO1Z.mjs → config-OCEcVVK1.mjs} +3 -3
  49. package/dist/{configuration-Dt5lKW3P.cjs → configuration-DfPBa-9d.cjs} +1 -1
  50. package/dist/{configuration-Dechcvd-.mjs → configuration-ECqXu34R.mjs} +1 -1
  51. package/dist/{connect-NPDzIVC6.cjs → connect-BPQRuOw5.cjs} +13 -13
  52. package/dist/{connect-UwQHvCpR.mjs → connect-BTfAUhk8.mjs} +13 -13
  53. package/dist/{context-C9JbJoNe.mjs → context-CfgTFpCB.mjs} +1 -1
  54. package/dist/{context-BdZssgF0.cjs → context-Co7hUaW-.cjs} +1 -1
  55. package/dist/{controlClient-BRk65BRO.cjs → controlClient-C13_pSKG.cjs} +3 -3
  56. package/dist/{controlClient-D7NGfmtq.mjs → controlClient-ClI7A0qE.mjs} +3 -3
  57. package/dist/{createSessionMetadata-DyhFKAby.mjs → createSessionMetadata-B0eT_Kfj.mjs} +2 -2
  58. package/dist/{createSessionMetadata-B_HZCDj_.cjs → createSessionMetadata-Cf78KHtt.cjs} +2 -2
  59. package/dist/defaultPermissionMode-m6z2QVyP.mjs +43 -0
  60. package/dist/defaultPermissionMode-oqTupStc.cjs +49 -0
  61. package/dist/{deterministicJson-DNmMVhFu.mjs → deterministicJson-BtSwbsok.mjs} +13 -13
  62. package/dist/{deterministicJson-BEygolBQ.cjs → deterministicJson-CpFFgUL_.cjs} +13 -13
  63. package/dist/{doctor-B9lW1WlG.cjs → doctor-BEU0_1Xv.cjs} +7 -7
  64. package/dist/{doctor-BdBi7TFZ.mjs → doctor-lsxmAK4o.mjs} +7 -7
  65. package/dist/{downloadTarget-CGojGjaN.mjs → downloadTarget-BXqXhNF7.mjs} +6 -6
  66. package/dist/{downloadTarget-DS0zT2AU.cjs → downloadTarget-CikzJv1h.cjs} +6 -6
  67. package/dist/{ensureDaemonRunning-Bibp6vhe.cjs → ensureDaemonRunning-BUuH-pbE.cjs} +5 -5
  68. package/dist/{ensureDaemonRunning-BOdbryDM.mjs → ensureDaemonRunning-B_9WAlbU.mjs} +5 -5
  69. package/dist/{handleResumeCommand-CgLzBYne.mjs → handleResumeCommand-BK9XKH_l.mjs} +5 -5
  70. package/dist/{handleResumeCommand-DXOuWr4p.cjs → handleResumeCommand-Dj7oi2KO.cjs} +5 -5
  71. package/dist/{index-Db0HIC-k.mjs → index-BdOJOZ6J.mjs} +4 -4
  72. package/dist/{index-rNTX33in.mjs → index-BjZnpGWX.mjs} +3 -3
  73. package/dist/{index-DmqsRnV7.mjs → index-Bq8NKSCF.mjs} +65 -1
  74. package/dist/{index-BOe6dKnL.cjs → index-CLUHaPU8.cjs} +76 -0
  75. package/dist/{index-f8oDidjV.cjs → index-CauRYQKr.cjs} +39 -39
  76. package/dist/{index-CwRW11hT.cjs → index-CmZusg8Q.cjs} +3 -3
  77. package/dist/{index-CBHfkQNY.mjs → index-Cxso1rg4.mjs} +40 -40
  78. package/dist/{index-Bs5FD8JF.cjs → index-D3c7CLot.cjs} +4 -4
  79. package/dist/{index-DXSIi6j_.cjs → index-Dg2NAF_-.cjs} +4 -4
  80. package/dist/{index-DUByZsKe.mjs → index-DuK9XYbZ.mjs} +4 -4
  81. package/dist/index.cjs +2 -2
  82. package/dist/index.mjs +2 -2
  83. package/dist/{install-DfPrEWGG.mjs → install-DTIveLOS.mjs} +3 -3
  84. package/dist/{install-CXIL_FYx.cjs → install-DXllkuy0.cjs} +3 -3
  85. package/dist/lib.cjs +12 -12
  86. package/dist/lib.d.cts +10 -0
  87. package/dist/lib.d.mts +10 -0
  88. package/dist/lib.mjs +12 -12
  89. package/dist/{lidState-q_XFYg33.cjs → lidState-C9_DoF9i.cjs} +1 -1
  90. package/dist/{lidState-D0DF20oG.mjs → lidState-CD81ryTy.mjs} +1 -1
  91. package/dist/{localHappyAgentAuth-CKNW-MXw.cjs → localHappyAgentAuth-CCjUvOfi.cjs} +1 -1
  92. package/dist/{localHappyAgentAuth-BBhM4Qk1.mjs → localHappyAgentAuth-Cg-m1lwm.mjs} +1 -1
  93. package/dist/{logger-BBRTTVsQ.cjs → logger-Ct2zvaq0.cjs} +2 -2
  94. package/dist/{logger-CL7pin9b.mjs → logger-GcbI0eg2.mjs} +2 -2
  95. package/dist/{machineMetadata-DP06qdBk.mjs → machineMetadata-CXRmFNOV.mjs} +3 -3
  96. package/dist/{machineMetadata-DnFNlrVK.cjs → machineMetadata-DDCVWb_x.cjs} +3 -3
  97. package/dist/{main-DLOXykOR.cjs → main-BHC-WIcM.cjs} +46 -46
  98. package/dist/{main-DO7nRvhf.mjs → main-omGr_ONk.mjs} +46 -46
  99. package/dist/{mcp-C-4sPTae.mjs → mcp-D5hxmRAq.mjs} +15 -15
  100. package/dist/{mcp-Du0MgR7e.cjs → mcp-xUzii0m8.cjs} +15 -15
  101. package/dist/{mirrorProtocol-GuWMxLkh.cjs → mirrorProtocol-Dfl8Ahyf.cjs} +3 -3
  102. package/dist/{mirrorProtocol-dkq2ZENA.mjs → mirrorProtocol-Lcx20Oby.mjs} +3 -3
  103. package/dist/{package-DrY090nZ.cjs → package-9n7wd2dT.cjs} +7 -7
  104. package/dist/{package-C6uiXULx.mjs → package-BsUHyqWe.mjs} +7 -7
  105. package/dist/{panels-4DRBKHZP.cjs → panels-BfknEmt7.cjs} +5 -5
  106. package/dist/{panels-DXYdJA6n.mjs → panels-CpEKWWbI.mjs} +5 -5
  107. package/dist/{peerTools-5ZM4spcZ.cjs → peerTools-CElYh-5u.cjs} +5 -5
  108. package/dist/{peerTools-dY1aJez4.mjs → peerTools-CwCe6tmJ.mjs} +5 -5
  109. package/dist/{persistence-Bl5S3TLB.cjs → persistence-A2NeERZJ.cjs} +2 -2
  110. package/dist/{persistence-Dogj7JIp.mjs → persistence-Cpw4yJs8.mjs} +2 -2
  111. package/dist/{piRunnerArgs-C3jZ1M6b.cjs → piRunnerArgs-BnFU0K73.cjs} +1 -1
  112. package/dist/{piRunnerArgs-D8nN_Iit.mjs → piRunnerArgs-Bqmu16He.mjs} +1 -1
  113. package/dist/{piRuntime-BoeMsAXK.mjs → piRuntime-Cgn1b0OX.mjs} +1 -1
  114. package/dist/{piRuntime-Bd9-eq6M.cjs → piRuntime-DpS9TAIs.cjs} +1 -1
  115. package/dist/{piTerminal-GEPkIGD4.mjs → piTerminal-BGdps8f3.mjs} +17 -17
  116. package/dist/{piTerminal-C3j1ca3x.cjs → piTerminal-rmve-VlI.cjs} +17 -17
  117. package/dist/{pushNotifications-CfspRcl-.cjs → pushNotifications-23YSd-0l.cjs} +10 -3
  118. package/dist/{pushNotifications-dUceOIni.mjs → pushNotifications-XAM8__Pg.mjs} +10 -3
  119. package/dist/{query-iYH-tm7L.mjs → query-SZcYnJoW.mjs} +1 -1
  120. package/dist/{query-DjsVgG3E.cjs → query-u2GX-I0C.cjs} +1 -1
  121. package/dist/{rateLimitReporter-jeVi-fym.mjs → rateLimitReporter-COUkf446.mjs} +3 -3
  122. package/dist/{rateLimitReporter-DUu2KydZ.cjs → rateLimitReporter-CaTzBe3x.cjs} +3 -3
  123. package/dist/{rateLimitWindows-Bx3ROBP5.cjs → rateLimitWindows-B2Kx6L0S.cjs} +1 -1
  124. package/dist/{rateLimitWindows-CEn0DXaX.mjs → rateLimitWindows-j_qQk0KY.mjs} +1 -1
  125. package/dist/{registerCommonHandlers-Beun-cQv.cjs → registerCommonHandlers-D1MiSfcB.cjs} +2 -2
  126. package/dist/{registerCommonHandlers-DWZ7mfdt.mjs → registerCommonHandlers-DRRfinzK.mjs} +2 -2
  127. package/dist/{registerKillSessionHandler-CzgklwLG.mjs → registerKillSessionHandler-Cpug_r5C.mjs} +6 -6
  128. package/dist/{registerKillSessionHandler-CA1FFr_F.cjs → registerKillSessionHandler-hvCsEn7b.cjs} +6 -6
  129. package/dist/{remoteSessionClient-DGFI__5Z.cjs → remoteSessionClient-6ymeMVa4.cjs} +5 -5
  130. package/dist/{remoteSessionClient-BiC2KDew.mjs → remoteSessionClient-BdnJ_n8C.mjs} +5 -5
  131. package/dist/{reportProgressTool-CgPy6n_7.mjs → reportProgressTool-XgQBzxoD.mjs} +3 -3
  132. package/dist/{reportProgressTool-CvPGov1F.cjs → reportProgressTool-tzQLCLIw.cjs} +3 -3
  133. package/dist/{run-B_gFgJVB.mjs → run-Bt0AklUU.mjs} +39 -36
  134. package/dist/{run-rPqQwDi_.cjs → run-DYL_wuj7.cjs} +39 -36
  135. package/dist/{runClaude-CykqeXK7.mjs → runClaude-C3rii_S6.mjs} +44 -27
  136. package/dist/{runClaude-DM8gm8iu.cjs → runClaude-CBEpYO4S.cjs} +44 -27
  137. package/dist/{runClaudeDeps-DGAomimZ.cjs → runClaudeDeps-CYuozSC6.cjs} +129 -60
  138. package/dist/{runClaudeDeps-D2phXGut.mjs → runClaudeDeps-DlVfMG4F.mjs} +134 -65
  139. package/dist/{runGemini-CXTeSOZp.cjs → runGemini-CEI3b90u.cjs} +33 -33
  140. package/dist/{runGemini-CtWCVkj5.mjs → runGemini-DkYhRk9S.mjs} +33 -33
  141. package/dist/{runOpenClaw-CH_9_RyZ.cjs → runOpenClaw-BgjD6E4d.cjs} +18 -18
  142. package/dist/{runOpenClaw-BBdjlViJ.mjs → runOpenClaw-DpprWCoz.mjs} +18 -18
  143. package/dist/{sandbox-DGmXZ6Zz.mjs → sandbox-DJ7A7lsy.mjs} +4 -4
  144. package/dist/{sandbox-Bb5IMun3.cjs → sandbox-XCDUbH72.cjs} +4 -4
  145. package/dist/{selfCheck-CccwNTTK.cjs → selfCheck-BYUDB1Uq.cjs} +37 -37
  146. package/dist/selfCheck-C-rNljKV.mjs +86 -0
  147. package/dist/{send-B6rHg8GT.mjs → send-Ba63huxv.mjs} +8 -8
  148. package/dist/{send-BpiXPkDo.cjs → send-CASDBCyJ.cjs} +8 -8
  149. package/dist/{server-DHUzjApC.cjs → server-cZoV9XRt.cjs} +6 -6
  150. package/dist/{server-BkdAyHhC.mjs → server-w3W0toNd.mjs} +4 -4
  151. package/dist/{sessionLock-BFBReiKq.cjs → sessionLock-BmLA2S8K.cjs} +3 -3
  152. package/dist/{sessionLock-Ca_bIo50.mjs → sessionLock-G2PMqvsh.mjs} +3 -3
  153. package/dist/{sessionOps-CA2kpm66.mjs → sessionOps-DPw5k8vV.mjs} +6 -4
  154. package/dist/{sessionOps-DeWVqpe4.cjs → sessionOps-DXlTmS7J.cjs} +6 -4
  155. package/dist/{sessionProvider-g18IiK74.mjs → sessionProvider-DUn91LhJ.mjs} +5 -5
  156. package/dist/{sessionProvider-VFbtUmMR.cjs → sessionProvider-Dg691XQ4.cjs} +5 -5
  157. package/dist/{sessionScanner-CGzsN8V6.cjs → sessionScanner-AHjnicxi.cjs} +3 -3
  158. package/dist/{sessionScanner-DDDud5re.mjs → sessionScanner-BCXpdZJN.mjs} +3 -3
  159. package/dist/{sessions-CKJPWFgu.cjs → sessions-BiBXOBx0.cjs} +10 -10
  160. package/dist/{sessions-B4d50sCI.mjs → sessions-Clk8MR5Y.mjs} +10 -10
  161. package/dist/{setupOfflineReconnection-DPXRo_zf.cjs → setupOfflineReconnection-BKLfOd-i.cjs} +2 -2
  162. package/dist/{setupOfflineReconnection-CyPNgyCe.mjs → setupOfflineReconnection-DI-QZGYz.mjs} +2 -2
  163. package/dist/{spawn-CrYN_OOT.mjs → spawn-4tsp1uhh.mjs} +14 -14
  164. package/dist/{spawn-CgSJzzWS.cjs → spawn-D5omsx1Q.cjs} +14 -14
  165. package/dist/{spawnAgents-DWCDYCQ1.mjs → spawnAgents-CjoU6ZOS.mjs} +8 -2
  166. package/dist/{spawnAgents-C1-4m7aN.cjs → spawnAgents-CtkkIFHd.cjs} +8 -2
  167. package/dist/{spawnHappyCLI-CTy3p6V_.cjs → spawnHappyCLI-CF_gLi92.cjs} +1 -1
  168. package/dist/{spawnHappyCLI-DjbkiSH1.mjs → spawnHappyCLI-CIA9Sc_5.mjs} +1 -1
  169. package/dist/{startFileWatcher-BQs0cJA-.cjs → startFileWatcher-9Stpxe7p.cjs} +1 -1
  170. package/dist/{startFileWatcher-Dedtu1vq.mjs → startFileWatcher-CDO6fb2m.mjs} +1 -1
  171. package/dist/{startupSessionCreate-BKFU4v_h.mjs → startupSessionCreate-BtR4iYEC.mjs} +3 -3
  172. package/dist/{startupSessionCreate-Dxy3X4DG.cjs → startupSessionCreate-CcF7rGGB.cjs} +3 -3
  173. package/dist/{streamRelay-D9a4cBEa.cjs → streamRelay-BhI6jqF-.cjs} +1 -1
  174. package/dist/{streamRelay-P9e7Sohm.mjs → streamRelay-DMwOMTKf.mjs} +1 -1
  175. package/dist/{sync-DtWB7RzA.cjs → sync-Ba8N6xba.cjs} +1 -1
  176. package/dist/{sync-eZkXnsW_.mjs → sync-C0PRuTMj.mjs} +1 -1
  177. package/dist/{systemPrompt-Bn6g6aCH.mjs → systemPrompt-D0q8eyjy.mjs} +2 -2
  178. package/dist/{systemPrompt-2XOpZ1j6.cjs → systemPrompt-DV5IReD4.cjs} +2 -2
  179. package/dist/{teams-nadkqrbW.mjs → teams-BO3_arwM.mjs} +7 -7
  180. package/dist/{teams-ecFay4Gn.cjs → teams-z3Gp-KlV.cjs} +7 -7
  181. package/dist/{template-17HATY_Y.cjs → template-B_5l6pkc.cjs} +1 -1
  182. package/dist/{template-BiTD-jI9.mjs → template-DLR_0hfj.mjs} +1 -1
  183. package/dist/{time-gPD_EmA-.cjs → time-Cy0a-7YX.cjs} +1 -1
  184. package/dist/{time-CN3TuSVG.mjs → time-D0jvDRhn.mjs} +1 -1
  185. package/dist/{titleGenerator-DgzTQdn2.mjs → titleGenerator-AGQsXskb.mjs} +1 -1
  186. package/dist/{titleGenerator-lT5ldPuN.cjs → titleGenerator-RGHWP2YL.cjs} +2 -2
  187. package/dist/{todo-BIxd7l2Q.mjs → todo-BZ954vsz.mjs} +6 -6
  188. package/dist/{todo-B1VeMk5A.cjs → todo-CzIDPLFy.cjs} +6 -6
  189. package/dist/{tools-DvqbLsCF.cjs → tools-B1x1j6tz.cjs} +1 -1
  190. package/dist/{tools-zXJpxiG_.mjs → tools-Bei5i03L.mjs} +1 -1
  191. package/dist/{uninstall-9htK6mb7.mjs → uninstall-B4T_e3Mr.mjs} +3 -3
  192. package/dist/{uninstall-CvIOpwB5.cjs → uninstall-C3cnIvz1.cjs} +3 -3
  193. package/package.json +7 -7
  194. package/dist/defaultPermissionMode-BnxJPVHT.mjs +0 -4
  195. package/dist/defaultPermissionMode-CxmTXUQR.cjs +0 -7
  196. package/dist/selfCheck-BfK945YQ.mjs +0 -86
@@ -1,77 +1,77 @@
1
1
  'use strict';
2
2
 
3
- var logger = require('./logger-BBRTTVsQ.cjs');
4
- var controlClient = require('./controlClient-BRk65BRO.cjs');
3
+ var logger = require('./logger-Ct2zvaq0.cjs');
4
+ var controlClient = require('./controlClient-C13_pSKG.cjs');
5
5
  var backgroundTaskActivity = require('./backgroundTaskActivity-CBvUdj39.cjs');
6
- var deterministicJson = require('./deterministicJson-BEygolBQ.cjs');
7
- var client = require('./client-CMKGrnmT.cjs');
6
+ var deterministicJson = require('./deterministicJson-CpFFgUL_.cjs');
7
+ var client = require('./client-C5-C0t2a.cjs');
8
8
  var node_crypto = require('node:crypto');
9
9
  var specialCommands = require('./specialCommands-J3JFOq0J.cjs');
10
10
  var sessionExitLifecycle = require('./sessionExitLifecycle-DFltxXU8.cjs');
11
- var query = require('./query-DjsVgG3E.cjs');
11
+ var query = require('./query-u2GX-I0C.cjs');
12
12
  var claudeAgentSdk = require('@anthropic-ai/claude-agent-sdk');
13
13
  var permissionMode = require('./permissionMode-CrV-XuMs.cjs');
14
- var systemPrompt = require('./systemPrompt-2XOpZ1j6.cjs');
14
+ var systemPrompt = require('./systemPrompt-DV5IReD4.cjs');
15
15
  var path$1 = require('node:path');
16
16
  require('axios');
17
17
  require('node:events');
18
18
  require('socket.io-client');
19
- var pushNotifications = require('./pushNotifications-CfspRcl-.cjs');
19
+ var pushNotifications = require('./pushNotifications-23YSd-0l.cjs');
20
20
  require('tweetnacl');
21
- var configuration = require('./configuration-Dt5lKW3P.cjs');
22
- require('./index-BOe6dKnL.cjs');
23
- require('./registerCommonHandlers-Beun-cQv.cjs');
21
+ var configuration = require('./configuration-DfPBa-9d.cjs');
22
+ require('./index-CLUHaPU8.cjs');
23
+ require('./registerCommonHandlers-D1MiSfcB.cjs');
24
24
  require('os');
25
25
  require('child_process');
26
26
  require('@paralleldrive/cuid2');
27
- require('./persistence-Bl5S3TLB.cjs');
27
+ require('./persistence-A2NeERZJ.cjs');
28
28
  var contentLogMetadata = require('./contentLogMetadata-ZSFk_NjQ.cjs');
29
29
  require('chalk');
30
30
  var types = require('./types-CRS-srZK.cjs');
31
31
  var path = require('./path-B7zW-WwE.cjs');
32
32
  var fs = require('fs/promises');
33
- var time = require('./time-gPD_EmA-.cjs');
33
+ var time = require('./time-Cy0a-7YX.cjs');
34
34
  var node_fs = require('node:fs');
35
- var sessionScanner = require('./sessionScanner-CGzsN8V6.cjs');
35
+ var sessionScanner = require('./sessionScanner-AHjnicxi.cjs');
36
36
  var node_child_process = require('node:child_process');
37
- var streamRelay = require('./streamRelay-D9a4cBEa.cjs');
38
- var attachmentContent = require('./attachmentContent-NmVfKp-B.cjs');
37
+ var streamRelay = require('./streamRelay-BhI6jqF-.cjs');
38
+ var attachmentContent = require('./attachmentContent-BO2njyza.cjs');
39
39
  var promises = require('node:fs/promises');
40
- var claudeSessionFork = require('./claudeSessionFork-DTLZ2rek.cjs');
41
- var rateLimitReporter = require('./rateLimitReporter-DUu2KydZ.cjs');
42
- var registerKillSessionHandler = require('./registerKillSessionHandler-CA1FFr_F.cjs');
43
- var doctor = require('./doctor-B9lW1WlG.cjs');
40
+ var claudeSessionFork = require('./claudeSessionFork-Cko4SaVi.cjs');
41
+ var rateLimitReporter = require('./rateLimitReporter-CaTzBe3x.cjs');
42
+ var registerKillSessionHandler = require('./registerKillSessionHandler-hvCsEn7b.cjs');
43
+ var doctor = require('./doctor-BEU0_1Xv.cjs');
44
44
  var node_http = require('node:http');
45
45
  var editPaths = require('./editPaths-Bqp4OFPw.cjs');
46
46
  var projectPath = require('./projectPath-C3ioB4Bu.cjs');
47
47
  var processTreeSnapshot = require('./processTreeSnapshot-mDbnuojn.cjs');
48
- var titleGenerator = require('./titleGenerator-lT5ldPuN.cjs');
48
+ var titleGenerator = require('./titleGenerator-RGHWP2YL.cjs');
49
49
  var oneShotPrompts = require('./oneShotPrompts-CL0dip9C.cjs');
50
- var reportProgressTool = require('./reportProgressTool-CvPGov1F.cjs');
50
+ var reportProgressTool = require('./reportProgressTool-tzQLCLIw.cjs');
51
51
  require('node:util');
52
52
  require('./prompt-Bof2aQkI.cjs');
53
53
  require('node:os');
54
54
  require('zod');
55
55
  require('./pi-DlsrPCTa.cjs');
56
56
  require('./fileStore-7qhnbs6N.cjs');
57
- require('./client-CARZ_lNS.cjs');
58
- require('./context-BdZssgF0.cjs');
59
- require('./sessionOps-DeWVqpe4.cjs');
57
+ require('./client-C-OdTbrU.cjs');
58
+ require('./context-Co7hUaW-.cjs');
59
+ require('./sessionOps-DXlTmS7J.cjs');
60
60
  require('./authRelay-Dy1qU9td.cjs');
61
61
  require('./resources-BZ_Be0qM.cjs');
62
- require('./tools-DvqbLsCF.cjs');
63
- require('./peerTools-5ZM4spcZ.cjs');
62
+ require('./tools-B1x1j6tz.cjs');
63
+ require('./peerTools-CElYh-5u.cjs');
64
64
  require('./ids-B6ZC0HGt.cjs');
65
- require('./remoteSessionClient-DGFI__5Z.cjs');
65
+ require('./remoteSessionClient-6ymeMVa4.cjs');
66
66
  require('@modelcontextprotocol/sdk/server/mcp.js');
67
67
  require('@modelcontextprotocol/sdk/server/streamableHttp.js');
68
68
  require('./limits-C-a7gr04.cjs');
69
- require('./downloadTarget-DS0zT2AU.cjs');
69
+ require('./downloadTarget-CikzJv1h.cjs');
70
70
  require('./terminals-B_bfC9c2.cjs');
71
71
  require('./terminalTitleSuggest-DhvRFX3H.cjs');
72
72
  require('./tmuxSocket-D-Xt6Vn-.cjs');
73
- require('./bootstrap-DBJB0y-H.cjs');
74
- require('./package-DrY090nZ.cjs');
73
+ require('./bootstrap-sly4qPPY.cjs');
74
+ require('./package-9n7wd2dT.cjs');
75
75
  require('./agentGuidance-BtBx2xxE.cjs');
76
76
  require('./trimIdent-4gvk9Wk6.cjs');
77
77
  require('./webPanels-FCgFKvVe.cjs');
@@ -81,22 +81,22 @@ require('./promptCacheTtl-B8PCzE6k.cjs');
81
81
  require('util');
82
82
  require('path');
83
83
  require('cross-spawn');
84
- require('./sync-DtWB7RzA.cjs');
84
+ require('./sync-Ba8N6xba.cjs');
85
85
  require('./transcriptCursor-DcXGLeSc.cjs');
86
- require('./startFileWatcher-BQs0cJA-.cjs');
86
+ require('./startFileWatcher-9Stpxe7p.cjs');
87
87
  require('node:readline');
88
- require('./rateLimitWindows-Bx3ROBP5.cjs');
88
+ require('./rateLimitWindows-B2Kx6L0S.cjs');
89
89
  require('./doctor-u46qYYKX.cjs');
90
90
  require('ps-list');
91
91
  require('./doctorReadiness-Dl6yRQCy.cjs');
92
92
  require('./detectCLI-BuYR_Qxe.cjs');
93
93
  require('fs');
94
94
  require('./cliUpdate-DsKXPFYp.cjs');
95
- require('./piRunnerArgs-C3jZ1M6b.cjs');
96
- require('./acpSessionResume-CZao6QEd.cjs');
95
+ require('./piRunnerArgs-BnFU0K73.cjs');
96
+ require('./acpSessionResume-TvP_4Zq2.cjs');
97
97
  require('url');
98
98
  require('node:module');
99
- require('./client-Bffkrs5p.cjs');
99
+ require('./client-BscskEBk.cjs');
100
100
  require('./precheckCompat-CWOi5c9L.cjs');
101
101
 
102
102
  const SCHEDULE_WAKEUP_GRACE_MS = 6e4;
@@ -938,6 +938,56 @@ function compactOutcomeEvent(result, status) {
938
938
  return "Compaction completed";
939
939
  }
940
940
 
941
+ class TimeoutError extends Error {
942
+ constructor(message) {
943
+ super(message);
944
+ this.name = "TimeoutError";
945
+ }
946
+ }
947
+ function withTimeout(promise, ms, label) {
948
+ promise.catch(() => {
949
+ });
950
+ let timer;
951
+ const timeout = new Promise((_, reject) => {
952
+ timer = setTimeout(() => reject(new TimeoutError(`${label ? `${label} ` : ""}timed out after ${ms}ms`)), ms);
953
+ });
954
+ return Promise.race([promise, timeout]).finally(() => {
955
+ if (timer) clearTimeout(timer);
956
+ });
957
+ }
958
+
959
+ const GET_SETTINGS_TIMEOUT_MS = 3e3;
960
+ const EFFORTS = /* @__PURE__ */ new Set(["low", "medium", "high", "xhigh", "max"]);
961
+ function parseClaudeRunFacts(raw) {
962
+ const facts = {};
963
+ if (!raw || typeof raw !== "object") return facts;
964
+ const { applied, effective } = raw;
965
+ if (applied && typeof applied === "object" && "effort" in applied) {
966
+ const effort = applied.effort;
967
+ if (effort === null) facts.effort = null;
968
+ else if (typeof effort === "string" && EFFORTS.has(effort)) facts.effort = effort;
969
+ }
970
+ if (effective && typeof effective === "object") {
971
+ const model = effective.model;
972
+ facts.configuredModel = typeof model === "string" && model.trim() ? model.trim() : null;
973
+ }
974
+ return facts;
975
+ }
976
+ async function readClaudeRunFacts(query, timeoutMs = GET_SETTINGS_TIMEOUT_MS) {
977
+ const reader = query;
978
+ if (typeof reader?.getSettings !== "function") return null;
979
+ try {
980
+ return parseClaudeRunFacts(await withTimeout(reader.getSettings(), timeoutMs, "get_settings"));
981
+ } catch {
982
+ return null;
983
+ }
984
+ }
985
+ async function liveModelTarget(query, model, timeoutMs = GET_SETTINGS_TIMEOUT_MS) {
986
+ if (model) return model;
987
+ const facts = await readClaudeRunFacts(query, timeoutMs);
988
+ return facts?.configuredModel ?? void 0;
989
+ }
990
+
941
991
  const SDK_TIMING_FIELDS = ["ttft_ms", "time_to_request_ms", "time_to_request_from_spawn_ms"];
942
992
  function delta(from, to) {
943
993
  if (typeof from !== "number" || typeof to !== "number" || to < from) return "-";
@@ -1202,24 +1252,6 @@ function createClaudePrewarmLease(input) {
1202
1252
  return lease;
1203
1253
  }
1204
1254
 
1205
- class TimeoutError extends Error {
1206
- constructor(message) {
1207
- super(message);
1208
- this.name = "TimeoutError";
1209
- }
1210
- }
1211
- function withTimeout(promise, ms, label) {
1212
- promise.catch(() => {
1213
- });
1214
- let timer;
1215
- const timeout = new Promise((_, reject) => {
1216
- timer = setTimeout(() => reject(new TimeoutError(`${label ? `${label} ` : ""}timed out after ${ms}ms`)), ms);
1217
- });
1218
- return Promise.race([promise, timeout]).finally(() => {
1219
- if (timer) clearTimeout(timer);
1220
- });
1221
- }
1222
-
1223
1255
  function readClaudeSessionState(message) {
1224
1256
  const m = message;
1225
1257
  if (!m || m.type !== "system" || m.subtype !== "session_state_changed") return null;
@@ -1510,7 +1542,7 @@ async function claudeRemote(opts) {
1510
1542
  }
1511
1543
  if (!reason && decision.switchModel) {
1512
1544
  try {
1513
- await withTimeout(w.response.setModel(modelTarget(initial.mode.model)), w.lease.adoptTimeoutMs);
1545
+ await withTimeout(w.response.setModel(await liveModelTarget(w.response, modelTarget(initial.mode.model), w.lease.adoptTimeoutMs)), w.lease.adoptTimeoutMs);
1514
1546
  } catch {
1515
1547
  reason = "set-model-failed";
1516
1548
  }
@@ -1562,7 +1594,8 @@ async function claudeRemote(opts) {
1562
1594
  messages.push(initialUserMessage);
1563
1595
  } else {
1564
1596
  messages = new PushableAsyncIterable();
1565
- messages.push(initialUserMessage);
1597
+ const resumeOnConfigModel = !!startFrom && modelTarget(initial.mode.model) === void 0;
1598
+ if (!resumeOnConfigModel) messages.push(initialUserMessage);
1566
1599
  timingMarks.spawnAt = Date.now();
1567
1600
  opts.onStartArgsUsed?.();
1568
1601
  response = query.query({
@@ -1574,6 +1607,13 @@ async function claudeRemote(opts) {
1574
1607
  } catch (error) {
1575
1608
  logger.logger.debug("[claudeRemote] Model capability discovery unavailable");
1576
1609
  }
1610
+ if (resumeOnConfigModel) {
1611
+ const target = await liveModelTarget(response, void 0);
1612
+ if (target) {
1613
+ await withTimeout(response.setModel(target), SET_MODEL_TIMEOUT_MS, "set_model").then(() => logger.logger.debug(`[claudeRemote] Resumed on the settings model ${target}`)).catch((e) => logger.logger.debug(`[claudeRemote] setModel(settings model) on resume failed: ${e instanceof Error ? e.message : String(e)}`));
1614
+ }
1615
+ messages.push(initialUserMessage);
1616
+ }
1577
1617
  timingMarks.handshakeAt = Date.now();
1578
1618
  }
1579
1619
  const prewarmTiming = adopted ? "adopted" : void 0;
@@ -1664,9 +1704,10 @@ async function claudeRemote(opts) {
1664
1704
  }
1665
1705
  if (modelUnconfirmed || needsModelSwitch(mode.model, next.mode.model)) {
1666
1706
  try {
1667
- await withTimeout(response.setModel(modelTarget(next.mode.model)), SET_MODEL_TIMEOUT_MS, "set_model");
1707
+ const target = await liveModelTarget(response, modelTarget(next.mode.model));
1708
+ await withTimeout(response.setModel(target), SET_MODEL_TIMEOUT_MS, "set_model");
1668
1709
  modelUnconfirmed = false;
1669
- logger.logger.debug(`[claudeRemote] Model switched to ${modelTarget(next.mode.model) ?? "default"}`);
1710
+ logger.logger.debug(`[claudeRemote] Model switched to ${target ?? "default"}`);
1670
1711
  } catch (e) {
1671
1712
  logger.logger.debug(`[claudeRemote] setModel failed: ${e instanceof Error ? e.message : String(e)}`);
1672
1713
  if (inputClosed()) {
@@ -1801,6 +1842,12 @@ async function claudeRemote(opts) {
1801
1842
  permissionMode: systemInit.permissionMode
1802
1843
  });
1803
1844
  }
1845
+ if (opts.onRunFacts) {
1846
+ const onRunFacts = opts.onRunFacts;
1847
+ void readClaudeRunFacts(response).then((facts) => {
1848
+ if (facts) onRunFacts(facts);
1849
+ });
1850
+ }
1804
1851
  if (systemInit.session_id) {
1805
1852
  logger.logger.debug(`[claudeRemote] Waiting for session file to be written to disk: ${systemInit.session_id}`);
1806
1853
  const projectDir = path.getProjectPath(opts.path);
@@ -3074,6 +3121,23 @@ function applyClaudeSdkMetadata(current, update) {
3074
3121
  ...update.modelIsDefault && update.model ? { defaultModelCode: update.model } : {}
3075
3122
  };
3076
3123
  }
3124
+ function applyClaudeRunFacts(current, facts) {
3125
+ let next = current;
3126
+ if (facts.configuredModel !== void 0 && current.configuredModel !== facts.configuredModel) {
3127
+ next = { ...next, configuredModel: facts.configuredModel };
3128
+ }
3129
+ if (facts.effort !== void 0) {
3130
+ if (facts.effort === null) {
3131
+ if (next.currentThoughtLevelCode !== void 0) {
3132
+ const { currentThoughtLevelCode: _dropped, ...rest } = next;
3133
+ next = rest;
3134
+ }
3135
+ } else if (next.currentThoughtLevelCode !== facts.effort) {
3136
+ next = { ...next, currentThoughtLevelCode: facts.effort };
3137
+ }
3138
+ }
3139
+ return next;
3140
+ }
3077
3141
 
3078
3142
  const INTERRUPT_TIMEOUT_MS = 8e3;
3079
3143
  function createTurnSteeringController(opts = {}) {
@@ -4236,6 +4300,11 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
4236
4300
  session.client.updateMetadata((currentMetadata) => applyClaudeSdkMetadata(currentMetadata, metadata));
4237
4301
  if (metadata.permissionMode) onEffectivePermissionMode?.(metadata.permissionMode);
4238
4302
  },
4303
+ onRunFacts: (facts) => {
4304
+ const current = session.client.getMetadata();
4305
+ if (current && applyClaudeRunFacts(current, facts) === current) return;
4306
+ session.client.updateMetadata((currentMetadata) => applyClaudeRunFacts(currentMetadata, facts));
4307
+ },
4239
4308
  onQueryReady: (q) => {
4240
4309
  runtimeControls.setQuery(q);
4241
4310
  backgroundTasks.reset();
@@ -4476,7 +4545,7 @@ async function loop(opts) {
4476
4545
  logger.logger.debug(`[loop] Iteration with mode: ${mode}`);
4477
4546
  switch (mode) {
4478
4547
  case "local": {
4479
- const { claudeLocalLauncher } = await Promise.resolve().then(function () { return require('./claudeLocalLauncher-DFvmF8rC.cjs'); });
4548
+ const { claudeLocalLauncher } = await Promise.resolve().then(function () { return require('./claudeLocalLauncher-DOsL6HFY.cjs'); });
4480
4549
  const result = await claudeLocalLauncher(session);
4481
4550
  switch (result.type) {
4482
4551
  case "switch":
@@ -4817,7 +4886,7 @@ function registerSideQuestionHandler(rpc, deps) {
4817
4886
  const retainMs = deps.retainMs ?? SIDE_QUESTION_RETAIN_MS;
4818
4887
  const maxRunMs = deps.maxRunMs ?? SIDE_QUESTION_MAX_RUN_MS;
4819
4888
  const fork = deps.run ?? (async (input) => {
4820
- const { query } = await Promise.resolve().then(function () { return require('./index-DXSIi6j_.cjs'); });
4889
+ const { query } = await Promise.resolve().then(function () { return require('./index-Dg2NAF_-.cjs'); });
4821
4890
  return runSideQuestion(query, input);
4822
4891
  });
4823
4892
  const run = async (input, live) => {
@@ -1,81 +1,81 @@
1
- import { l as logger } from './logger-CL7pin9b.mjs';
2
- import { q as notifyDaemonSessionEvent, t as notifyDaemonClaudeAuthFailed } from './controlClient-D7NGfmtq.mjs';
3
- export { k as reportSessionEditToDaemon } from './controlClient-D7NGfmtq.mjs';
1
+ import { l as logger } from './logger-GcbI0eg2.mjs';
2
+ import { q as notifyDaemonSessionEvent, t as notifyDaemonClaudeAuthFailed } from './controlClient-ClI7A0qE.mjs';
3
+ export { k as reportSessionEditToDaemon } from './controlClient-ClI7A0qE.mjs';
4
4
  import { s as sameBackgroundTasks, c as createBackgroundTaskTracker } from './backgroundTaskActivity-8PdPxrvy.mjs';
5
- import { c as createProjectInjector, h as hashObject, l as leadBoardFor } from './deterministicJson-DNmMVhFu.mjs';
6
- export { s as startHappyServer } from './deterministicJson-DNmMVhFu.mjs';
7
- import { s as sharedProjectsClient } from './client-CnGNYidN.mjs';
5
+ import { c as createProjectInjector, h as hashObject, l as leadBoardFor } from './deterministicJson-BtSwbsok.mjs';
6
+ export { s as startHappyServer } from './deterministicJson-BtSwbsok.mjs';
7
+ import { s as sharedProjectsClient } from './client-Bi20Ka0h.mjs';
8
8
  import { randomInt, randomUUID, createHash } from 'node:crypto';
9
9
  import { a as parseSpecialCommand } from './specialCommands-MXUN0wfI.mjs';
10
10
  import { M as MessageBuffer } from './sessionExitLifecycle-CzkLIgNZ.mjs';
11
11
  export { S as SessionExitGate, e as exitIntentFromArchiveFlag, s as settleSessionOnExit } from './sessionExitLifecycle-CzkLIgNZ.mjs';
12
- import { q as query } from './query-iYH-tm7L.mjs';
12
+ import { q as query } from './query-SZcYnJoW.mjs';
13
13
  import { AbortError } from '@anthropic-ai/claude-agent-sdk';
14
14
  import { m as mapToClaudeMode, p as parseClaudePermissionMode, c as resolveRemoteClaudePermissionMode } from './permissionMode-CH4FoZfU.mjs';
15
- import { c as claudeCheckSession, s as systemPrompt } from './systemPrompt-Bn6g6aCH.mjs';
15
+ import { c as claudeCheckSession, s as systemPrompt } from './systemPrompt-D0q8eyjy.mjs';
16
16
  import { join, resolve, dirname } from 'node:path';
17
17
  import 'axios';
18
18
  import 'node:events';
19
19
  import 'socket.io-client';
20
- import { A as AsyncLock } from './pushNotifications-dUceOIni.mjs';
20
+ import { A as AsyncLock } from './pushNotifications-XAM8__Pg.mjs';
21
21
  import 'tweetnacl';
22
- import { c as configuration, e as ensurePrivateDirectory } from './configuration-Dechcvd-.mjs';
23
- import './index-DmqsRnV7.mjs';
24
- import './registerCommonHandlers-DWZ7mfdt.mjs';
22
+ import { c as configuration, e as ensurePrivateDirectory } from './configuration-ECqXu34R.mjs';
23
+ import './index-Bq8NKSCF.mjs';
24
+ import './registerCommonHandlers-DRRfinzK.mjs';
25
25
  import 'os';
26
26
  import 'child_process';
27
27
  import '@paralleldrive/cuid2';
28
- import './persistence-Dogj7JIp.mjs';
28
+ import './persistence-Cpw4yJs8.mjs';
29
29
  import { c as contentLogMetadata } from './contentLogMetadata-BlWI0egu.mjs';
30
30
  import 'chalk';
31
31
  import { R as RawJSONLinesSchema } from './types-CkqAACXx.mjs';
32
32
  import { g as getProjectPath } from './path-D2wdaNSk.mjs';
33
33
  import { access } from 'fs/promises';
34
- import { d as delay } from './time-CN3TuSVG.mjs';
34
+ import { d as delay } from './time-D0jvDRhn.mjs';
35
35
  import { mkdirSync, writeFileSync, readFileSync, unlinkSync, renameSync, statSync, existsSync } from 'node:fs';
36
- import { F as Future, d as describeClaudeProcessExit } from './sessionScanner-DDDud5re.mjs';
37
- export { c as createSessionScanner } from './sessionScanner-DDDud5re.mjs';
36
+ import { F as Future, d as describeClaudeProcessExit } from './sessionScanner-BCXpdZJN.mjs';
37
+ export { c as createSessionScanner } from './sessionScanner-BCXpdZJN.mjs';
38
38
  import { execSync } from 'node:child_process';
39
- import { S as StreamRelay } from './streamRelay-P9e7Sohm.mjs';
40
- import { C as CLAUDE_ATTACHMENT_KINDS, c as chatAttachmentDirectory, a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt } from './attachmentContent-CC4yIrSm.mjs';
39
+ import { S as StreamRelay } from './streamRelay-DMwOMTKf.mjs';
40
+ import { C as CLAUDE_ATTACHMENT_KINDS, c as chatAttachmentDirectory, a as stageClaudeAttachments, b as appendStagedAttachmentsToPrompt } from './attachmentContent-Dm_RIs5L.mjs';
41
41
  import { writeFile, rename, unlink, readFile } from 'node:fs/promises';
42
- import { F as ForkSourceMissingError } from './claudeSessionFork-D2GI7P59.mjs';
43
- import { w as wrapperRateLimitReporter } from './rateLimitReporter-jeVi-fym.mjs';
44
- export { M as MessageQueue2, r as registerKillSessionHandler } from './registerKillSessionHandler-CzgklwLG.mjs';
45
- export { g as getEnvironmentInfo } from './doctor-BdBi7TFZ.mjs';
42
+ import { F as ForkSourceMissingError } from './claudeSessionFork-CPvi6yDX.mjs';
43
+ import { w as wrapperRateLimitReporter } from './rateLimitReporter-COUkf446.mjs';
44
+ export { M as MessageQueue2, r as registerKillSessionHandler } from './registerKillSessionHandler-Cpug_r5C.mjs';
45
+ export { g as getEnvironmentInfo } from './doctor-lsxmAK4o.mjs';
46
46
  import { createServer } from 'node:http';
47
47
  export { E as EditReportThrottle, b as extractClaudeEditPaths } from './editPaths-BVfS_FFL.mjs';
48
48
  import { p as projectPath } from './projectPath-BTBIMB57.mjs';
49
49
  export { s as snapshotTree, t as terminateSurvivors } from './processTreeSnapshot-CuLJDNC-.mjs';
50
- import { r as resolveClaudeBinary, a as runClaudeOneShot } from './titleGenerator-DgzTQdn2.mjs';
51
- export { T as TitleGenerator } from './titleGenerator-DgzTQdn2.mjs';
50
+ import { r as resolveClaudeBinary, a as runClaudeOneShot } from './titleGenerator-AGQsXskb.mjs';
51
+ export { T as TitleGenerator } from './titleGenerator-AGQsXskb.mjs';
52
52
  import { B as BOARD_ANALYZER_PROMPT_PREFIX } from './oneShotPrompts-DT4p6RNd.mjs';
53
- import { i as isSelfReportFresh } from './reportProgressTool-CgPy6n_7.mjs';
54
- export { c as createSelfReportState } from './reportProgressTool-CgPy6n_7.mjs';
53
+ import { i as isSelfReportFresh } from './reportProgressTool-XgQBzxoD.mjs';
54
+ export { c as createSelfReportState } from './reportProgressTool-XgQBzxoD.mjs';
55
55
  import 'node:util';
56
56
  import './prompt-QHuFx9j6.mjs';
57
57
  import 'node:os';
58
58
  import 'zod';
59
59
  import './pi-CqyoZMjI.mjs';
60
60
  import './fileStore-5qpetZS0.mjs';
61
- import './client-CtL0Vtww.mjs';
62
- import './context-C9JbJoNe.mjs';
63
- import './sessionOps-CA2kpm66.mjs';
61
+ import './client-Bh1aUPh-.mjs';
62
+ import './context-CfgTFpCB.mjs';
63
+ import './sessionOps-DPw5k8vV.mjs';
64
64
  import './authRelay-DhQhkBvX.mjs';
65
65
  import './resources-CLP_MpK4.mjs';
66
- import './tools-zXJpxiG_.mjs';
67
- import './peerTools-dY1aJez4.mjs';
66
+ import './tools-Bei5i03L.mjs';
67
+ import './peerTools-CwCe6tmJ.mjs';
68
68
  import './ids-DU6sLx4C.mjs';
69
- import './remoteSessionClient-BiC2KDew.mjs';
69
+ import './remoteSessionClient-BdnJ_n8C.mjs';
70
70
  import '@modelcontextprotocol/sdk/server/mcp.js';
71
71
  import '@modelcontextprotocol/sdk/server/streamableHttp.js';
72
72
  import './limits-DIo7rEBR.mjs';
73
- import './downloadTarget-CGojGjaN.mjs';
73
+ import './downloadTarget-BXqXhNF7.mjs';
74
74
  import './terminals-Dlg0x3nY.mjs';
75
75
  import './terminalTitleSuggest-CeKsX_V6.mjs';
76
76
  import './tmuxSocket-B8Yx20sT.mjs';
77
- import './bootstrap-Ct9Nb4sv.mjs';
78
- import './package-C6uiXULx.mjs';
77
+ import './bootstrap-rLaL3kTa.mjs';
78
+ import './package-BsUHyqWe.mjs';
79
79
  import './agentGuidance-BDYt2Qy2.mjs';
80
80
  import './trimIdent-BAjmv_TG.mjs';
81
81
  import './webPanels-B2_C2-3g.mjs';
@@ -85,22 +85,22 @@ import './promptCacheTtl-Ce0TVbrx.mjs';
85
85
  import 'util';
86
86
  import 'path';
87
87
  import 'cross-spawn';
88
- import './sync-eZkXnsW_.mjs';
88
+ import './sync-C0PRuTMj.mjs';
89
89
  import './transcriptCursor-B7T_gkQ0.mjs';
90
- import './startFileWatcher-Dedtu1vq.mjs';
90
+ import './startFileWatcher-CDO6fb2m.mjs';
91
91
  import 'node:readline';
92
- import './rateLimitWindows-CEn0DXaX.mjs';
92
+ import './rateLimitWindows-j_qQk0KY.mjs';
93
93
  import './doctor-BPkYWSuq.mjs';
94
94
  import 'ps-list';
95
95
  import './doctorReadiness-C208SMN9.mjs';
96
96
  import './detectCLI-CSGMlV51.mjs';
97
97
  import 'fs';
98
98
  import './cliUpdate-Y34VGe9Y.mjs';
99
- import './piRunnerArgs-D8nN_Iit.mjs';
100
- import './acpSessionResume-CcpDuIO5.mjs';
99
+ import './piRunnerArgs-Bqmu16He.mjs';
100
+ import './acpSessionResume-Bi7pA1n_.mjs';
101
101
  import 'url';
102
102
  import 'node:module';
103
- import './client-DZkBUoh9.mjs';
103
+ import './client-BXD66ZF5.mjs';
104
104
  import './precheckCompat-DeEbilbr.mjs';
105
105
 
106
106
  const SCHEDULE_WAKEUP_GRACE_MS = 6e4;
@@ -942,6 +942,56 @@ function compactOutcomeEvent(result, status) {
942
942
  return "Compaction completed";
943
943
  }
944
944
 
945
+ class TimeoutError extends Error {
946
+ constructor(message) {
947
+ super(message);
948
+ this.name = "TimeoutError";
949
+ }
950
+ }
951
+ function withTimeout(promise, ms, label) {
952
+ promise.catch(() => {
953
+ });
954
+ let timer;
955
+ const timeout = new Promise((_, reject) => {
956
+ timer = setTimeout(() => reject(new TimeoutError(`${label ? `${label} ` : ""}timed out after ${ms}ms`)), ms);
957
+ });
958
+ return Promise.race([promise, timeout]).finally(() => {
959
+ if (timer) clearTimeout(timer);
960
+ });
961
+ }
962
+
963
+ const GET_SETTINGS_TIMEOUT_MS = 3e3;
964
+ const EFFORTS = /* @__PURE__ */ new Set(["low", "medium", "high", "xhigh", "max"]);
965
+ function parseClaudeRunFacts(raw) {
966
+ const facts = {};
967
+ if (!raw || typeof raw !== "object") return facts;
968
+ const { applied, effective } = raw;
969
+ if (applied && typeof applied === "object" && "effort" in applied) {
970
+ const effort = applied.effort;
971
+ if (effort === null) facts.effort = null;
972
+ else if (typeof effort === "string" && EFFORTS.has(effort)) facts.effort = effort;
973
+ }
974
+ if (effective && typeof effective === "object") {
975
+ const model = effective.model;
976
+ facts.configuredModel = typeof model === "string" && model.trim() ? model.trim() : null;
977
+ }
978
+ return facts;
979
+ }
980
+ async function readClaudeRunFacts(query, timeoutMs = GET_SETTINGS_TIMEOUT_MS) {
981
+ const reader = query;
982
+ if (typeof reader?.getSettings !== "function") return null;
983
+ try {
984
+ return parseClaudeRunFacts(await withTimeout(reader.getSettings(), timeoutMs, "get_settings"));
985
+ } catch {
986
+ return null;
987
+ }
988
+ }
989
+ async function liveModelTarget(query, model, timeoutMs = GET_SETTINGS_TIMEOUT_MS) {
990
+ if (model) return model;
991
+ const facts = await readClaudeRunFacts(query, timeoutMs);
992
+ return facts?.configuredModel ?? void 0;
993
+ }
994
+
945
995
  const SDK_TIMING_FIELDS = ["ttft_ms", "time_to_request_ms", "time_to_request_from_spawn_ms"];
946
996
  function delta(from, to) {
947
997
  if (typeof from !== "number" || typeof to !== "number" || to < from) return "-";
@@ -1206,24 +1256,6 @@ function createClaudePrewarmLease(input) {
1206
1256
  return lease;
1207
1257
  }
1208
1258
 
1209
- class TimeoutError extends Error {
1210
- constructor(message) {
1211
- super(message);
1212
- this.name = "TimeoutError";
1213
- }
1214
- }
1215
- function withTimeout(promise, ms, label) {
1216
- promise.catch(() => {
1217
- });
1218
- let timer;
1219
- const timeout = new Promise((_, reject) => {
1220
- timer = setTimeout(() => reject(new TimeoutError(`${label ? `${label} ` : ""}timed out after ${ms}ms`)), ms);
1221
- });
1222
- return Promise.race([promise, timeout]).finally(() => {
1223
- if (timer) clearTimeout(timer);
1224
- });
1225
- }
1226
-
1227
1259
  function readClaudeSessionState(message) {
1228
1260
  const m = message;
1229
1261
  if (!m || m.type !== "system" || m.subtype !== "session_state_changed") return null;
@@ -1514,7 +1546,7 @@ async function claudeRemote(opts) {
1514
1546
  }
1515
1547
  if (!reason && decision.switchModel) {
1516
1548
  try {
1517
- await withTimeout(w.response.setModel(modelTarget(initial.mode.model)), w.lease.adoptTimeoutMs);
1549
+ await withTimeout(w.response.setModel(await liveModelTarget(w.response, modelTarget(initial.mode.model), w.lease.adoptTimeoutMs)), w.lease.adoptTimeoutMs);
1518
1550
  } catch {
1519
1551
  reason = "set-model-failed";
1520
1552
  }
@@ -1566,7 +1598,8 @@ async function claudeRemote(opts) {
1566
1598
  messages.push(initialUserMessage);
1567
1599
  } else {
1568
1600
  messages = new PushableAsyncIterable();
1569
- messages.push(initialUserMessage);
1601
+ const resumeOnConfigModel = !!startFrom && modelTarget(initial.mode.model) === void 0;
1602
+ if (!resumeOnConfigModel) messages.push(initialUserMessage);
1570
1603
  timingMarks.spawnAt = Date.now();
1571
1604
  opts.onStartArgsUsed?.();
1572
1605
  response = query({
@@ -1578,6 +1611,13 @@ async function claudeRemote(opts) {
1578
1611
  } catch (error) {
1579
1612
  logger.debug("[claudeRemote] Model capability discovery unavailable");
1580
1613
  }
1614
+ if (resumeOnConfigModel) {
1615
+ const target = await liveModelTarget(response, void 0);
1616
+ if (target) {
1617
+ await withTimeout(response.setModel(target), SET_MODEL_TIMEOUT_MS, "set_model").then(() => logger.debug(`[claudeRemote] Resumed on the settings model ${target}`)).catch((e) => logger.debug(`[claudeRemote] setModel(settings model) on resume failed: ${e instanceof Error ? e.message : String(e)}`));
1618
+ }
1619
+ messages.push(initialUserMessage);
1620
+ }
1581
1621
  timingMarks.handshakeAt = Date.now();
1582
1622
  }
1583
1623
  const prewarmTiming = adopted ? "adopted" : void 0;
@@ -1668,9 +1708,10 @@ async function claudeRemote(opts) {
1668
1708
  }
1669
1709
  if (modelUnconfirmed || needsModelSwitch(mode.model, next.mode.model)) {
1670
1710
  try {
1671
- await withTimeout(response.setModel(modelTarget(next.mode.model)), SET_MODEL_TIMEOUT_MS, "set_model");
1711
+ const target = await liveModelTarget(response, modelTarget(next.mode.model));
1712
+ await withTimeout(response.setModel(target), SET_MODEL_TIMEOUT_MS, "set_model");
1672
1713
  modelUnconfirmed = false;
1673
- logger.debug(`[claudeRemote] Model switched to ${modelTarget(next.mode.model) ?? "default"}`);
1714
+ logger.debug(`[claudeRemote] Model switched to ${target ?? "default"}`);
1674
1715
  } catch (e) {
1675
1716
  logger.debug(`[claudeRemote] setModel failed: ${e instanceof Error ? e.message : String(e)}`);
1676
1717
  if (inputClosed()) {
@@ -1805,6 +1846,12 @@ async function claudeRemote(opts) {
1805
1846
  permissionMode: systemInit.permissionMode
1806
1847
  });
1807
1848
  }
1849
+ if (opts.onRunFacts) {
1850
+ const onRunFacts = opts.onRunFacts;
1851
+ void readClaudeRunFacts(response).then((facts) => {
1852
+ if (facts) onRunFacts(facts);
1853
+ });
1854
+ }
1808
1855
  if (systemInit.session_id) {
1809
1856
  logger.debug(`[claudeRemote] Waiting for session file to be written to disk: ${systemInit.session_id}`);
1810
1857
  const projectDir = getProjectPath(opts.path);
@@ -3078,6 +3125,23 @@ function applyClaudeSdkMetadata(current, update) {
3078
3125
  ...update.modelIsDefault && update.model ? { defaultModelCode: update.model } : {}
3079
3126
  };
3080
3127
  }
3128
+ function applyClaudeRunFacts(current, facts) {
3129
+ let next = current;
3130
+ if (facts.configuredModel !== void 0 && current.configuredModel !== facts.configuredModel) {
3131
+ next = { ...next, configuredModel: facts.configuredModel };
3132
+ }
3133
+ if (facts.effort !== void 0) {
3134
+ if (facts.effort === null) {
3135
+ if (next.currentThoughtLevelCode !== void 0) {
3136
+ const { currentThoughtLevelCode: _dropped, ...rest } = next;
3137
+ next = rest;
3138
+ }
3139
+ } else if (next.currentThoughtLevelCode !== facts.effort) {
3140
+ next = { ...next, currentThoughtLevelCode: facts.effort };
3141
+ }
3142
+ }
3143
+ return next;
3144
+ }
3081
3145
 
3082
3146
  const INTERRUPT_TIMEOUT_MS = 8e3;
3083
3147
  function createTurnSteeringController(opts = {}) {
@@ -4240,6 +4304,11 @@ async function claudeRemoteLauncher(session, onPermissionModeChange, onEffective
4240
4304
  session.client.updateMetadata((currentMetadata) => applyClaudeSdkMetadata(currentMetadata, metadata));
4241
4305
  if (metadata.permissionMode) onEffectivePermissionMode?.(metadata.permissionMode);
4242
4306
  },
4307
+ onRunFacts: (facts) => {
4308
+ const current = session.client.getMetadata();
4309
+ if (current && applyClaudeRunFacts(current, facts) === current) return;
4310
+ session.client.updateMetadata((currentMetadata) => applyClaudeRunFacts(currentMetadata, facts));
4311
+ },
4243
4312
  onQueryReady: (q) => {
4244
4313
  runtimeControls.setQuery(q);
4245
4314
  backgroundTasks.reset();
@@ -4480,7 +4549,7 @@ async function loop(opts) {
4480
4549
  logger.debug(`[loop] Iteration with mode: ${mode}`);
4481
4550
  switch (mode) {
4482
4551
  case "local": {
4483
- const { claudeLocalLauncher } = await import('./claudeLocalLauncher-D06QijMw.mjs');
4552
+ const { claudeLocalLauncher } = await import('./claudeLocalLauncher-T7EfT68h.mjs');
4484
4553
  const result = await claudeLocalLauncher(session);
4485
4554
  switch (result.type) {
4486
4555
  case "switch":
@@ -4821,7 +4890,7 @@ function registerSideQuestionHandler(rpc, deps) {
4821
4890
  const retainMs = deps.retainMs ?? SIDE_QUESTION_RETAIN_MS;
4822
4891
  const maxRunMs = deps.maxRunMs ?? SIDE_QUESTION_MAX_RUN_MS;
4823
4892
  const fork = deps.run ?? (async (input) => {
4824
- const { query } = await import('./index-Db0HIC-k.mjs');
4893
+ const { query } = await import('./index-BdOJOZ6J.mjs');
4825
4894
  return runSideQuestion(query, input);
4826
4895
  });
4827
4896
  const run = async (input, live) => {