pybao-cli 1.5.8 → 1.5.10

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 (179) hide show
  1. package/cli-acp.js +29 -5
  2. package/cli.js +28 -6
  3. package/dist/REPL-LEORZMM6.js +50 -0
  4. package/dist/{acp-53E7A6L4.js → acp-OPW4NHQM.js} +46 -35
  5. package/dist/acp-OPW4NHQM.js.map +7 -0
  6. package/dist/{agentsValidate-VSDRHIJQ.js → agentsValidate-ZVFEF4KY.js} +7 -7
  7. package/dist/{ask-XUXTH3EI.js → ask-SLRDSXCI.js} +55 -33
  8. package/dist/ask-SLRDSXCI.js.map +7 -0
  9. package/dist/{autoUpdater-GAWZB7YO.js → autoUpdater-BZ7E2E54.js} +3 -3
  10. package/dist/{chunk-4QTASHFO.js → chunk-25MWUHVP.js} +1 -1
  11. package/dist/{chunk-HOBCGAUT.js → chunk-2KTGONPT.js} +1 -1
  12. package/dist/{chunk-H67PQDUM.js → chunk-3YDOR2NA.js} +4 -4
  13. package/dist/{chunk-YABL4JYT.js → chunk-46JMZBCX.js} +1 -1
  14. package/dist/{chunk-JFIH5LIP.js → chunk-4LLCMT3D.js} +2 -2
  15. package/dist/{chunk-TJUTH3WH.js → chunk-4USBSNI7.js} +2241 -1530
  16. package/dist/chunk-4USBSNI7.js.map +7 -0
  17. package/dist/{chunk-VBJ6J63U.js → chunk-6UPWXBMK.js} +144 -76
  18. package/dist/chunk-6UPWXBMK.js.map +7 -0
  19. package/dist/{chunk-KRTFCQTN.js → chunk-72ICL3CH.js} +19 -6
  20. package/dist/{chunk-KRTFCQTN.js.map → chunk-72ICL3CH.js.map} +2 -2
  21. package/dist/{chunk-62CZOFWT.js → chunk-7FGPQ22V.js} +1 -1
  22. package/dist/{chunk-DRP66QHJ.js → chunk-7SZNDNLK.js} +1 -4
  23. package/dist/{chunk-LNPUQ3UL.js → chunk-AJEGTH5Q.js} +1 -1
  24. package/dist/{chunk-LNE2PRIU.js → chunk-AO6J7LEE.js} +3 -3
  25. package/dist/{chunk-4I2M26LO.js → chunk-E6OFGHIW.js} +3 -3
  26. package/dist/{chunk-543LWZDY.js → chunk-EEKXOPVZ.js} +3 -3
  27. package/dist/chunk-EWXKQF7L.js +922 -0
  28. package/dist/chunk-EWXKQF7L.js.map +7 -0
  29. package/dist/{chunk-FKDSZPS4.js → chunk-HPUNAUYE.js} +2 -7
  30. package/dist/chunk-HPUNAUYE.js.map +7 -0
  31. package/dist/{chunk-IWKEQNWI.js → chunk-MPEAANUT.js} +3 -3
  32. package/dist/{chunk-JZPXOQK3.js → chunk-MT3ZAKKO.js} +3 -3
  33. package/dist/{chunk-WQVP2232.js → chunk-NIW3GVZ6.js} +45 -61
  34. package/dist/chunk-NIW3GVZ6.js.map +7 -0
  35. package/dist/chunk-OC5CZWBQ.js.map +7 -0
  36. package/dist/{chunk-VW7ZPH5U.js → chunk-OHW6JWIB.js} +4 -4
  37. package/dist/{chunk-AQXOZUAV.js → chunk-P6O6FCAD.js} +2 -2
  38. package/dist/{chunk-Z35GPUWK.js → chunk-PUG4EOMG.js} +1 -1
  39. package/dist/{chunk-WBAZ4MMW.js → chunk-RSYAAJ5F.js} +4 -4
  40. package/dist/{chunk-46Z3GAE4.js → chunk-SJIE5KQR.js} +4 -4
  41. package/dist/{chunk-FQMMZCOL.js → chunk-TF4T573B.js} +2 -2
  42. package/dist/chunk-TQTC7KJZ.js +81 -0
  43. package/dist/{chunk-MHFWCK5F.js.map → chunk-TQTC7KJZ.js.map} +1 -1
  44. package/dist/{chunk-5PSLFGDF.js → chunk-UFR47H5I.js} +11 -7
  45. package/dist/chunk-UFR47H5I.js.map +7 -0
  46. package/dist/{chunk-IZ6NAVRD.js → chunk-UPULEKBE.js} +1 -1
  47. package/dist/{chunk-VRWY6YIJ.js → chunk-UV2N4M64.js} +3 -3
  48. package/dist/{chunk-RAOXUYK3.js → chunk-W6OFNZ3W.js} +2 -2
  49. package/dist/{chunk-RFY3YUHB.js → chunk-WKSMEOKH.js} +3 -3
  50. package/dist/chunk-YTESBILA.js +78 -0
  51. package/dist/chunk-YTESBILA.js.map +7 -0
  52. package/dist/{cli-3QFWTKDS.js → cli-OZWYRJHM.js} +127 -102
  53. package/dist/cli-OZWYRJHM.js.map +7 -0
  54. package/dist/commands-ASLDRXGO.js +54 -0
  55. package/dist/{config-DFRB2SLO.js → config-LCNYYLVP.js} +4 -4
  56. package/dist/{context-V62FBZVF.js → context-DPW4MYE4.js} +6 -6
  57. package/dist/conversationPersistence-JLI7ZCBG.js +13 -0
  58. package/dist/{conversationTracker-DZR2N3FQ.js → conversationTracker-KVYAMRCS.js} +4 -3
  59. package/dist/{customCommands-3ZIVHLTU.js → customCommands-O2J3V24X.js} +4 -4
  60. package/dist/{env-BMFEDWPX.js → env-VUPUO64W.js} +2 -2
  61. package/dist/{file-SD5NRUTD.js → file-VJBZTSIC.js} +4 -4
  62. package/dist/index.js +3 -3
  63. package/dist/{llm-466UDKVG.js → llm-BXWBQJQA.js} +416 -49
  64. package/dist/llm-BXWBQJQA.js.map +7 -0
  65. package/dist/{llmLazy-7R7P5A3P.js → llmLazy-XR66QEVP.js} +1 -1
  66. package/dist/{loader-X7RIUXJB.js → loader-IHQ33LHG.js} +4 -4
  67. package/dist/{lsp-2FPBS2M3.js → lsp-57NLFUAK.js} +6 -6
  68. package/dist/{lspAnchor-KQNSWWL3.js → lspAnchor-VWSO7YZY.js} +6 -6
  69. package/dist/{mcp-3SV4TZYL.js → mcp-XJJDR27I.js} +7 -7
  70. package/dist/{mentionProcessor-KJP4IYVF.js → mentionProcessor-6MSAZVVB.js} +5 -5
  71. package/dist/{messages-BXF7LJIV.js → messages-4KD4FLFL.js} +9 -5
  72. package/dist/{model-F6VCUHDL.js → model-AA5UZIM5.js} +5 -5
  73. package/dist/{openai-QTTJIB6O.js → openai-HAAQ3Y7C.js} +5 -5
  74. package/dist/{outputStyles-SJ57QG7S.js → outputStyles-MJS6OUKM.js} +4 -4
  75. package/dist/{pluginRuntime-4SDXCK4Q.js → pluginRuntime-O23ERPKS.js} +6 -6
  76. package/dist/{pluginValidation-YJ4W3MX4.js → pluginValidation-T25KVTG4.js} +6 -6
  77. package/dist/prompts-CU2RK7D3.js +56 -0
  78. package/dist/{pybAgentSessionLoad-IZULLNUL.js → pybAgentSessionLoad-M3JZ2DH3.js} +4 -4
  79. package/dist/{pybAgentSessionResume-QRNTC3A3.js → pybAgentSessionResume-D2R55SPH.js} +4 -4
  80. package/dist/{pybAgentStreamJsonSession-RUHPYCTJ.js → pybAgentStreamJsonSession-LKZILYAG.js} +4 -3
  81. package/dist/pybAgentStreamJsonSession-LKZILYAG.js.map +7 -0
  82. package/dist/{pybHooks-GX3AIY4U.js → pybHooks-GAJ5GRHI.js} +4 -4
  83. package/dist/query-2X4R5ZCX.js +58 -0
  84. package/dist/{registry-JNPRNIFB.js → registry-GDKX2X34.js} +5 -5
  85. package/dist/{ripgrep-ZKWM7RMS.js → ripgrep-FJH77I5J.js} +3 -3
  86. package/dist/{skillMarketplace-4LJAYRMX.js → skillMarketplace-6NXN5AYJ.js} +3 -3
  87. package/dist/{state-I6BQR2T5.js → state-5JZ6HLQY.js} +2 -2
  88. package/dist/{theme-GL7HKKCQ.js → theme-HJNALYGQ.js} +5 -5
  89. package/dist/{toolPermissionSettings-ZRTSQVQ2.js → toolPermissionSettings-KPM5KUAD.js} +6 -6
  90. package/dist/tools-C65SWXV6.js +55 -0
  91. package/dist/tools-C65SWXV6.js.map +7 -0
  92. package/dist/{userInput-M6JYKQCU.js → userInput-BXJEMFWI.js} +76 -49
  93. package/dist/userInput-BXJEMFWI.js.map +7 -0
  94. package/package.json +11 -7
  95. package/scripts/cli-acp-wrapper.cjs +29 -5
  96. package/scripts/cli-wrapper.cjs +28 -6
  97. package/scripts/postinstall.js +3 -1
  98. package/scripts/typed-sql-install-smoke.mjs +69 -0
  99. package/scripts/typed-sql-no-fallback-gate.mjs +61 -0
  100. package/scripts/typed-sql-release-gate.mjs +51 -0
  101. package/dist/REPL-AHBTBEED.js +0 -49
  102. package/dist/acp-53E7A6L4.js.map +0 -7
  103. package/dist/ask-XUXTH3EI.js.map +0 -7
  104. package/dist/chunk-5PSLFGDF.js.map +0 -7
  105. package/dist/chunk-B62BK4YK.js +0 -516
  106. package/dist/chunk-B62BK4YK.js.map +0 -7
  107. package/dist/chunk-FKDSZPS4.js.map +0 -7
  108. package/dist/chunk-MHFWCK5F.js +0 -240
  109. package/dist/chunk-O6DTZU7F.js.map +0 -7
  110. package/dist/chunk-TJUTH3WH.js.map +0 -7
  111. package/dist/chunk-VBJ6J63U.js.map +0 -7
  112. package/dist/chunk-WQVP2232.js.map +0 -7
  113. package/dist/cli-3QFWTKDS.js.map +0 -7
  114. package/dist/commands-ITOHDPPP.js +0 -53
  115. package/dist/llm-466UDKVG.js.map +0 -7
  116. package/dist/prompts-5RPQRZ3L.js +0 -55
  117. package/dist/pybAgentStreamJsonSession-RUHPYCTJ.js.map +0 -7
  118. package/dist/query-YLKPJVHB.js +0 -57
  119. package/dist/tools-4GEB2BRR.js +0 -54
  120. package/dist/userInput-M6JYKQCU.js.map +0 -7
  121. package/resources/output-styles/legacy-system-maintainer.md +0 -47
  122. /package/dist/{REPL-AHBTBEED.js.map → REPL-LEORZMM6.js.map} +0 -0
  123. /package/dist/{agentsValidate-VSDRHIJQ.js.map → agentsValidate-ZVFEF4KY.js.map} +0 -0
  124. /package/dist/{autoUpdater-GAWZB7YO.js.map → autoUpdater-BZ7E2E54.js.map} +0 -0
  125. /package/dist/{chunk-4QTASHFO.js.map → chunk-25MWUHVP.js.map} +0 -0
  126. /package/dist/{chunk-HOBCGAUT.js.map → chunk-2KTGONPT.js.map} +0 -0
  127. /package/dist/{chunk-H67PQDUM.js.map → chunk-3YDOR2NA.js.map} +0 -0
  128. /package/dist/{chunk-YABL4JYT.js.map → chunk-46JMZBCX.js.map} +0 -0
  129. /package/dist/{chunk-JFIH5LIP.js.map → chunk-4LLCMT3D.js.map} +0 -0
  130. /package/dist/{chunk-62CZOFWT.js.map → chunk-7FGPQ22V.js.map} +0 -0
  131. /package/dist/{chunk-DRP66QHJ.js.map → chunk-7SZNDNLK.js.map} +0 -0
  132. /package/dist/{chunk-LNPUQ3UL.js.map → chunk-AJEGTH5Q.js.map} +0 -0
  133. /package/dist/{chunk-LNE2PRIU.js.map → chunk-AO6J7LEE.js.map} +0 -0
  134. /package/dist/{chunk-4I2M26LO.js.map → chunk-E6OFGHIW.js.map} +0 -0
  135. /package/dist/{chunk-543LWZDY.js.map → chunk-EEKXOPVZ.js.map} +0 -0
  136. /package/dist/{chunk-IWKEQNWI.js.map → chunk-MPEAANUT.js.map} +0 -0
  137. /package/dist/{chunk-JZPXOQK3.js.map → chunk-MT3ZAKKO.js.map} +0 -0
  138. /package/dist/{chunk-O6DTZU7F.js → chunk-OC5CZWBQ.js} +0 -0
  139. /package/dist/{chunk-VW7ZPH5U.js.map → chunk-OHW6JWIB.js.map} +0 -0
  140. /package/dist/{chunk-AQXOZUAV.js.map → chunk-P6O6FCAD.js.map} +0 -0
  141. /package/dist/{chunk-Z35GPUWK.js.map → chunk-PUG4EOMG.js.map} +0 -0
  142. /package/dist/{chunk-WBAZ4MMW.js.map → chunk-RSYAAJ5F.js.map} +0 -0
  143. /package/dist/{chunk-46Z3GAE4.js.map → chunk-SJIE5KQR.js.map} +0 -0
  144. /package/dist/{chunk-FQMMZCOL.js.map → chunk-TF4T573B.js.map} +0 -0
  145. /package/dist/{chunk-IZ6NAVRD.js.map → chunk-UPULEKBE.js.map} +0 -0
  146. /package/dist/{chunk-VRWY6YIJ.js.map → chunk-UV2N4M64.js.map} +0 -0
  147. /package/dist/{chunk-RAOXUYK3.js.map → chunk-W6OFNZ3W.js.map} +0 -0
  148. /package/dist/{chunk-RFY3YUHB.js.map → chunk-WKSMEOKH.js.map} +0 -0
  149. /package/dist/{commands-ITOHDPPP.js.map → commands-ASLDRXGO.js.map} +0 -0
  150. /package/dist/{config-DFRB2SLO.js.map → config-LCNYYLVP.js.map} +0 -0
  151. /package/dist/{context-V62FBZVF.js.map → context-DPW4MYE4.js.map} +0 -0
  152. /package/dist/{conversationTracker-DZR2N3FQ.js.map → conversationPersistence-JLI7ZCBG.js.map} +0 -0
  153. /package/dist/{customCommands-3ZIVHLTU.js.map → conversationTracker-KVYAMRCS.js.map} +0 -0
  154. /package/dist/{env-BMFEDWPX.js.map → customCommands-O2J3V24X.js.map} +0 -0
  155. /package/dist/{file-SD5NRUTD.js.map → env-VUPUO64W.js.map} +0 -0
  156. /package/dist/{llmLazy-7R7P5A3P.js.map → file-VJBZTSIC.js.map} +0 -0
  157. /package/dist/{loader-X7RIUXJB.js.map → llmLazy-XR66QEVP.js.map} +0 -0
  158. /package/dist/{lsp-2FPBS2M3.js.map → loader-IHQ33LHG.js.map} +0 -0
  159. /package/dist/{mcp-3SV4TZYL.js.map → lsp-57NLFUAK.js.map} +0 -0
  160. /package/dist/{lspAnchor-KQNSWWL3.js.map → lspAnchor-VWSO7YZY.js.map} +0 -0
  161. /package/dist/{messages-BXF7LJIV.js.map → mcp-XJJDR27I.js.map} +0 -0
  162. /package/dist/{mentionProcessor-KJP4IYVF.js.map → mentionProcessor-6MSAZVVB.js.map} +0 -0
  163. /package/dist/{model-F6VCUHDL.js.map → messages-4KD4FLFL.js.map} +0 -0
  164. /package/dist/{openai-QTTJIB6O.js.map → model-AA5UZIM5.js.map} +0 -0
  165. /package/dist/{outputStyles-SJ57QG7S.js.map → openai-HAAQ3Y7C.js.map} +0 -0
  166. /package/dist/{pluginValidation-YJ4W3MX4.js.map → outputStyles-MJS6OUKM.js.map} +0 -0
  167. /package/dist/{pluginRuntime-4SDXCK4Q.js.map → pluginRuntime-O23ERPKS.js.map} +0 -0
  168. /package/dist/{prompts-5RPQRZ3L.js.map → pluginValidation-T25KVTG4.js.map} +0 -0
  169. /package/dist/{pybAgentSessionLoad-IZULLNUL.js.map → prompts-CU2RK7D3.js.map} +0 -0
  170. /package/dist/{pybAgentSessionResume-QRNTC3A3.js.map → pybAgentSessionLoad-M3JZ2DH3.js.map} +0 -0
  171. /package/dist/{pybHooks-GX3AIY4U.js.map → pybAgentSessionResume-D2R55SPH.js.map} +0 -0
  172. /package/dist/{query-YLKPJVHB.js.map → pybHooks-GAJ5GRHI.js.map} +0 -0
  173. /package/dist/{registry-JNPRNIFB.js.map → query-2X4R5ZCX.js.map} +0 -0
  174. /package/dist/{ripgrep-ZKWM7RMS.js.map → registry-GDKX2X34.js.map} +0 -0
  175. /package/dist/{skillMarketplace-4LJAYRMX.js.map → ripgrep-FJH77I5J.js.map} +0 -0
  176. /package/dist/{state-I6BQR2T5.js.map → skillMarketplace-6NXN5AYJ.js.map} +0 -0
  177. /package/dist/{theme-GL7HKKCQ.js.map → state-5JZ6HLQY.js.map} +0 -0
  178. /package/dist/{toolPermissionSettings-ZRTSQVQ2.js.map → theme-HJNALYGQ.js.map} +0 -0
  179. /package/dist/{tools-4GEB2BRR.js.map → toolPermissionSettings-KPM5KUAD.js.map} +0 -0
@@ -1,6 +1,9 @@
1
1
  #!/usr/bin/env bun
2
2
  import { createRequire as __pybCreateRequire } from "node:module";
3
3
  const require = __pybCreateRequire(import.meta.url);
4
+ import {
5
+ assertMinVersion
6
+ } from "./chunk-MPEAANUT.js";
4
7
  import {
5
8
  ensurePackagedRuntimeEnv,
6
9
  ensureYogaWasmPath
@@ -9,16 +12,13 @@ import {
9
12
  getAllTools,
10
13
  toTaskDetail,
11
14
  toTaskListItem
12
- } from "./chunk-WQVP2232.js";
15
+ } from "./chunk-NIW3GVZ6.js";
13
16
  import {
14
17
  PybAgentStructuredStdio
15
18
  } from "./chunk-5AGDLQAW.js";
16
- import {
17
- assertMinVersion
18
- } from "./chunk-IWKEQNWI.js";
19
19
  import {
20
20
  getToolDescription
21
- } from "./chunk-O6DTZU7F.js";
21
+ } from "./chunk-OC5CZWBQ.js";
22
22
  import {
23
23
  lastX
24
24
  } from "./chunk-CZZKRPE2.js";
@@ -30,6 +30,7 @@ import {
30
30
  addToHistory,
31
31
  calculateReadyBlocked,
32
32
  clearTerminal,
33
+ createConversationTrackerPersistenceTelemetryEmitter,
33
34
  getTask,
34
35
  getTaskListPaths,
35
36
  grantReadPermissionForOriginalDir,
@@ -39,23 +40,24 @@ import {
39
40
  review_default,
40
41
  useExitOnCtrlCD,
41
42
  useTerminalSize
42
- } from "./chunk-TJUTH3WH.js";
43
- import "./chunk-LNPUQ3UL.js";
44
- import "./chunk-JZPXOQK3.js";
45
- import "./chunk-VBJ6J63U.js";
43
+ } from "./chunk-4USBSNI7.js";
44
+ import "./chunk-UPULEKBE.js";
45
+ import "./chunk-AJEGTH5Q.js";
46
+ import "./chunk-TQTC7KJZ.js";
47
+ import "./chunk-MT3ZAKKO.js";
48
+ import "./chunk-6UPWXBMK.js";
49
+ import "./chunk-YTESBILA.js";
46
50
  import {
47
51
  beginReplSessionScope
48
52
  } from "./chunk-F4AXICO7.js";
49
- import "./chunk-IZ6NAVRD.js";
50
- import "./chunk-MHFWCK5F.js";
51
53
  import "./chunk-5P7HBXTD.js";
52
- import "./chunk-RFY3YUHB.js";
54
+ import "./chunk-WKSMEOKH.js";
53
55
  import {
54
56
  clearOutputStyleCache
55
- } from "./chunk-FKDSZPS4.js";
56
- import "./chunk-AQXOZUAV.js";
57
+ } from "./chunk-HPUNAUYE.js";
58
+ import "./chunk-P6O6FCAD.js";
57
59
  import "./chunk-XKYHFZEC.js";
58
- import "./chunk-VW7ZPH5U.js";
60
+ import "./chunk-OHW6JWIB.js";
59
61
  import {
60
62
  addMcpServer,
61
63
  ensureConfigScope,
@@ -70,43 +72,43 @@ import {
70
72
  parseEnvVars,
71
73
  parseMcpHeaders,
72
74
  removeMcpServer
73
- } from "./chunk-WBAZ4MMW.js";
74
- import "./chunk-4QTASHFO.js";
75
- import "./chunk-4I2M26LO.js";
75
+ } from "./chunk-RSYAAJ5F.js";
76
+ import "./chunk-25MWUHVP.js";
77
+ import "./chunk-E6OFGHIW.js";
76
78
  import "./chunk-UNNVICVU.js";
77
- import "./chunk-FQMMZCOL.js";
79
+ import "./chunk-TF4T573B.js";
78
80
  import {
79
81
  clearAgentCache,
80
82
  setFlagAgentsFromCliJson
81
- } from "./chunk-KRTFCQTN.js";
83
+ } from "./chunk-72ICL3CH.js";
82
84
  import {
83
85
  setEnabledSettingSourcesFromCli
84
86
  } from "./chunk-A3BVXXA3.js";
85
- import "./chunk-B62BK4YK.js";
87
+ import "./chunk-EWXKQF7L.js";
86
88
  import "./chunk-3DFBSQIT.js";
87
89
  import "./chunk-B6IMQJZM.js";
88
90
  import "./chunk-OUXHGDLH.js";
89
- import "./chunk-JFIH5LIP.js";
91
+ import "./chunk-4LLCMT3D.js";
90
92
  import "./chunk-QWIBSCDN.js";
91
- import "./chunk-H67PQDUM.js";
92
- import "./chunk-543LWZDY.js";
93
- import "./chunk-62CZOFWT.js";
93
+ import "./chunk-3YDOR2NA.js";
94
+ import "./chunk-EEKXOPVZ.js";
95
+ import "./chunk-7FGPQ22V.js";
94
96
  import "./chunk-UZ34JEUK.js";
95
- import "./chunk-RAOXUYK3.js";
97
+ import "./chunk-W6OFNZ3W.js";
96
98
  import "./chunk-BJSWTHRM.js";
97
99
  import {
98
100
  getModelManager,
99
101
  isDefaultSlowAndCapableModel
100
- } from "./chunk-VRWY6YIJ.js";
102
+ } from "./chunk-UV2N4M64.js";
101
103
  import {
102
104
  getContext,
103
105
  removeContext,
104
106
  setContext
105
- } from "./chunk-46Z3GAE4.js";
106
- import "./chunk-Z35GPUWK.js";
107
+ } from "./chunk-SJIE5KQR.js";
108
+ import "./chunk-PUG4EOMG.js";
107
109
  import {
108
110
  getTheme
109
- } from "./chunk-YABL4JYT.js";
111
+ } from "./chunk-46JMZBCX.js";
110
112
  import {
111
113
  checkHasTrustDialogAccepted,
112
114
  deleteConfigForCLI,
@@ -120,14 +122,14 @@ import {
120
122
  saveGlobalConfig,
121
123
  setConfigForCLI,
122
124
  validateAndRepairAllGPT5Profiles
123
- } from "./chunk-LNE2PRIU.js";
125
+ } from "./chunk-AO6J7LEE.js";
124
126
  import {
125
127
  ConfigParseError
126
128
  } from "./chunk-RQVLBMP7.js";
127
129
  import {
128
130
  debug,
129
131
  initDebugLogger
130
- } from "./chunk-HOBCGAUT.js";
132
+ } from "./chunk-2KTGONPT.js";
131
133
  import {
132
134
  BunShell,
133
135
  CACHE_PATHS,
@@ -141,17 +143,21 @@ import {
141
143
  loadLogList,
142
144
  logError,
143
145
  parseLogFilename,
146
+ resolveXdgDataPath,
144
147
  setCwd,
145
148
  setOriginalCwd
146
- } from "./chunk-DRP66QHJ.js";
149
+ } from "./chunk-7SZNDNLK.js";
147
150
  import {
148
151
  MACRO
149
- } from "./chunk-5PSLFGDF.js";
152
+ } from "./chunk-UFR47H5I.js";
150
153
  import "./chunk-I3J4JYES.js";
151
154
 
152
155
  // src/entrypoints/cli/runCli.tsx
153
156
  import { existsSync, readFileSync, writeFileSync as writeFileSync2 } from "node:fs";
154
157
 
158
+ // src/entrypoints/cli/printMode.ts
159
+ import { join } from "path";
160
+
155
161
  // src/entrypoints/cli/stdio/canUseTool.ts
156
162
  function createStdioCanUseTool(args) {
157
163
  if (args.normalizedPermissionPromptTool !== "stdio" || !args.structured) {
@@ -307,7 +313,7 @@ function createPrintModeControlRequestHandler(args) {
307
313
  // src/entrypoints/cli/stdio/streamJsonSession.ts
308
314
  async function runPrintModeStreamJsonSession(args) {
309
315
  const { beginReplSessionScope: beginReplSessionScope2 } = await import("./replSessionBridge-EBXNFUAD.js");
310
- const { runPybAgentStreamJsonSession } = await import("./pybAgentStreamJsonSession-RUHPYCTJ.js");
316
+ const { runPybAgentStreamJsonSession } = await import("./pybAgentStreamJsonSession-LKZILYAG.js");
311
317
  const restoreSessionScope = beginReplSessionScope2(args.sessionId);
312
318
  try {
313
319
  await runPybAgentStreamJsonSession(args);
@@ -326,6 +332,12 @@ function createPrintModeStructuredStdio(args) {
326
332
  }
327
333
 
328
334
  // src/entrypoints/cli/printMode.ts
335
+ function getProjectDirSlug(cwd2) {
336
+ return cwd2.replace(/[^a-zA-Z0-9]/g, "-");
337
+ }
338
+ function getConversationTrackerPersistenceDir(cwd2) {
339
+ return resolveXdgDataPath(join(getProjectDirSlug(cwd2), "conversation-trackers"));
340
+ }
329
341
  async function runPrintMode({
330
342
  prompt,
331
343
  stdinContent,
@@ -466,23 +478,36 @@ async function runPrintMode({
466
478
  `);
467
479
  process.exit(0);
468
480
  }
469
- const { createUserMessage } = await import("./messages-BXF7LJIV.js");
470
- const { ConversationTracker } = await import("./conversationTracker-DZR2N3FQ.js");
471
- const { getSystemPrompt } = await import("./prompts-5RPQRZ3L.js");
472
- const { getContext: getContext2 } = await import("./context-V62FBZVF.js");
481
+ const {
482
+ createUserMessageFromText,
483
+ createUserMessageFromBlocks
484
+ } = await import("./messages-4KD4FLFL.js");
485
+ const { ConversationTracker } = await import("./conversationTracker-KVYAMRCS.js");
486
+ const { FileSystemConversationPersistence } = await import("./conversationPersistence-JLI7ZCBG.js");
487
+ const { getSystemPrompt } = await import("./prompts-CU2RK7D3.js");
488
+ const { getContext: getContext2 } = await import("./context-DPW4MYE4.js");
473
489
  const { getTotalCost } = await import("./costTracker-DJVFVAVZ.js");
474
- const { query } = await import("./query-YLKPJVHB.js");
490
+ const { query } = await import("./query-2X4R5ZCX.js");
475
491
  const { getPybAgentSessionId } = await import("./pybAgentSessionId-EPCAMQ25.js");
476
492
  const { pybMessageToSdkMessage, makeSdkInitMessage, makeSdkResultMessage } = await import("./pybAgentStreamJson-EQPO52B6.js");
477
493
  const { PybAgentStructuredStdio: PybAgentStructuredStdio2 } = await import("./pybAgentStructuredStdio-ROCSOGNT.js");
478
494
  const {
479
495
  loadToolPermissionContextFromDisk,
480
496
  persistToolPermissionUpdateToDisk
481
- } = await import("./toolPermissionSettings-ZRTSQVQ2.js");
497
+ } = await import("./toolPermissionSettings-KPM5KUAD.js");
482
498
  const { applyToolPermissionContextUpdates } = await import("./toolPermissionContext-BSFV23IL.js");
483
499
  const sessionIdForSdk = getPybAgentSessionId();
500
+ const trackerPersistenceMode = "required";
484
501
  const restoreSessionScope = beginReplSessionScope(sessionIdForSdk);
485
- const conversationTracker = new ConversationTracker();
502
+ const conversationTracker = new ConversationTracker({
503
+ sessionId: sessionIdForSdk,
504
+ persistence: new FileSystemConversationPersistence(
505
+ getConversationTrackerPersistenceDir(cwd2)
506
+ ),
507
+ persistenceMode: trackerPersistenceMode,
508
+ onPersistenceEvent: createConversationTrackerPersistenceTelemetryEmitter("print")
509
+ });
510
+ conversationTracker.restore();
486
511
  const startedAt = Date.now();
487
512
  const sdkMessages = [];
488
513
  try {
@@ -683,7 +708,7 @@ async function runPrintMode({
683
708
  const userMsg = await (async () => {
684
709
  if (normalizedInputFormat !== "stream-json") {
685
710
  addToHistory(inputPrompt);
686
- return createUserMessage(inputPrompt);
711
+ return createUserMessageFromText(inputPrompt);
687
712
  }
688
713
  if (!structured) {
689
714
  console.error("Error: Structured stdin is not available");
@@ -703,7 +728,7 @@ async function runPrintMode({
703
728
  console.error("Error: Invalid stream-json user message content");
704
729
  process.exit(1);
705
730
  }
706
- const m = createUserMessage(sdkContent);
731
+ const m = typeof sdkContent === "string" ? createUserMessageFromText(sdkContent) : createUserMessageFromBlocks(sdkContent);
707
732
  if (typeof sdkUser2.uuid === "string" && sdkUser2.uuid) {
708
733
  ;
709
734
  m.uuid = String(sdkUser2.uuid);
@@ -813,7 +838,7 @@ async function runPrintMode({
813
838
 
814
839
  // src/utils/session/cleanup.ts
815
840
  import { promises as fs } from "fs";
816
- import { join } from "path";
841
+ import { join as join2 } from "path";
817
842
  var THIRTY_DAYS_MS = 30 * 24 * 60 * 60 * 1e3;
818
843
  function convertFileNameToDate(filename) {
819
844
  const isoStr = filename.split(".")[0].replace(/T(\d{2})-(\d{2})-(\d{2})-(\d{3})Z/, "T$1:$2:$3.$4Z");
@@ -831,7 +856,7 @@ async function cleanupOldMessageFiles() {
831
856
  try {
832
857
  const timestamp = convertFileNameToDate(file);
833
858
  if (timestamp < thirtyDaysAgo) {
834
- await fs.unlink(join(path, file));
859
+ await fs.unlink(join2(path, file));
835
860
  if (path === messagePath) {
836
861
  deletedCounts.messages++;
837
862
  } else {
@@ -868,9 +893,9 @@ async function setup(cwd2, safeMode) {
868
893
  grantReadPermissionForOriginalDir();
869
894
  let agentLoader;
870
895
  try {
871
- agentLoader = await import("./loader-X7RIUXJB.js");
896
+ agentLoader = await import("./loader-IHQ33LHG.js");
872
897
  } catch {
873
- agentLoader = await import("./loader-X7RIUXJB.js");
898
+ agentLoader = await import("./loader-IHQ33LHG.js");
874
899
  }
875
900
  const { startAgentWatcher } = agentLoader;
876
901
  await startAgentWatcher(() => {
@@ -2090,12 +2115,12 @@ async function parseArgs(stdinContent, renderContext) {
2090
2115
  assertMinVersion();
2091
2116
  {
2092
2117
  const requested = Array.isArray(pluginDir) && pluginDir.length > 0 ? pluginDir : [];
2093
- const { listEnabledInstalledPluginPackRoots } = await import("./skillMarketplace-4LJAYRMX.js");
2118
+ const { listEnabledInstalledPluginPackRoots } = await import("./skillMarketplace-6NXN5AYJ.js");
2094
2119
  const installed = listEnabledInstalledPluginPackRoots();
2095
2120
  const all = [...installed, ...requested].filter(Boolean);
2096
2121
  const deduped = Array.from(new Set(all));
2097
2122
  if (deduped.length > 0) {
2098
- const { configureSessionPlugins } = await import("./pluginRuntime-4SDXCK4Q.js");
2123
+ const { configureSessionPlugins } = await import("./pluginRuntime-O23ERPKS.js");
2099
2124
  const { errors } = await configureSessionPlugins({
2100
2125
  pluginDirs: deduped
2101
2126
  });
@@ -2105,9 +2130,9 @@ async function parseArgs(stdinContent, renderContext) {
2105
2130
  }
2106
2131
  }
2107
2132
  const [{ ask }, { getTools }, { getCommands }] = await Promise.all([
2108
- import("./ask-XUXTH3EI.js"),
2109
- import("./tools-4GEB2BRR.js"),
2110
- import("./commands-ITOHDPPP.js")
2133
+ import("./ask-SLRDSXCI.js"),
2134
+ import("./tools-C65SWXV6.js"),
2135
+ import("./commands-ASLDRXGO.js")
2111
2136
  ]);
2112
2137
  const commands = await getCommands();
2113
2138
  const mcpClientsPromise = Array.isArray(mcpConfig) && mcpConfig.length > 0 || strictMcpConfig === true ? getClientsForCliMcpConfig({
@@ -2126,8 +2151,8 @@ async function parseArgs(stdinContent, renderContext) {
2126
2151
  const {
2127
2152
  loadPybAgentSessionMessages,
2128
2153
  findMostRecentPybAgentSessionId
2129
- } = await import("./pybAgentSessionLoad-IZULLNUL.js");
2130
- const { listPybAgentSessions, resolvePybResumeSessionIdentifier } = await import("./pybAgentSessionResume-QRNTC3A3.js");
2154
+ } = await import("./pybAgentSessionLoad-M3JZ2DH3.js");
2155
+ const { listPybAgentSessions, resolvePybResumeSessionIdentifier } = await import("./pybAgentSessionResume-D2R55SPH.js");
2131
2156
  const { isUuid } = await import("./uuid-CVHEFGW4.js");
2132
2157
  const { setPybAgentSessionId, getPybAgentSessionId } = await import("./pybAgentSessionId-EPCAMQ25.js");
2133
2158
  const { randomUUID } = await import("crypto");
@@ -2252,7 +2277,7 @@ async function parseArgs(stdinContent, renderContext) {
2252
2277
  { getLatestVersion, getUpdateCommandSuggestions },
2253
2278
  semverMod
2254
2279
  ] = await Promise.all([
2255
- import("./autoUpdater-GAWZB7YO.js"),
2280
+ import("./autoUpdater-BZ7E2E54.js"),
2256
2281
  import("semver")
2257
2282
  ]);
2258
2283
  const semver = semverMod?.default ?? semverMod;
@@ -2313,7 +2338,7 @@ async function parseArgs(stdinContent, renderContext) {
2313
2338
  const isDefaultModel = await isDefaultSlowAndCapableModel();
2314
2339
  {
2315
2340
  const { render: render3 } = await import("ink");
2316
- const { REPL } = await import("./REPL-AHBTBEED.js");
2341
+ const { REPL } = await import("./REPL-LEORZMM6.js");
2317
2342
  render3(
2318
2343
  /* @__PURE__ */ React10.createElement(
2319
2344
  REPL,
@@ -2481,7 +2506,7 @@ async function parseArgs(stdinContent, renderContext) {
2481
2506
  { replace: !!replace }
2482
2507
  );
2483
2508
  saveGlobalConfig(nextConfig);
2484
- await import("./model-F6VCUHDL.js").then(({ reloadModelManager }) => {
2509
+ await import("./model-AA5UZIM5.js").then(({ reloadModelManager }) => {
2485
2510
  reloadModelManager();
2486
2511
  });
2487
2512
  if (warnings.length > 0) {
@@ -2500,7 +2525,7 @@ async function parseArgs(stdinContent, renderContext) {
2500
2525
  const workingDir = typeof options?.cwd === "string" ? options.cwd : typeof programCwd === "string" ? programCwd : cwd();
2501
2526
  const asJson = options?.json === true;
2502
2527
  await setup(workingDir, false);
2503
- const { reloadModelManager, getModelManager: getModelManager2 } = await import("./model-F6VCUHDL.js");
2528
+ const { reloadModelManager, getModelManager: getModelManager2 } = await import("./model-AA5UZIM5.js");
2504
2529
  reloadModelManager();
2505
2530
  const manager = getModelManager2();
2506
2531
  const config2 = getGlobalConfig();
@@ -2574,7 +2599,7 @@ Model profiles (${active.length}/${profiles.length} active):
2574
2599
  try {
2575
2600
  const workingDir = typeof options?.cwd === "string" ? options.cwd : cwd();
2576
2601
  await setup(workingDir, false);
2577
- const { validateAgentTemplates } = await import("./agentsValidate-VSDRHIJQ.js");
2602
+ const { validateAgentTemplates } = await import("./agentsValidate-ZVFEF4KY.js");
2578
2603
  const report = await validateAgentTemplates({
2579
2604
  cwd: workingDir,
2580
2605
  paths: Array.isArray(paths) ? paths : [],
@@ -2618,7 +2643,7 @@ Model profiles (${active.length}/${profiles.length} active):
2618
2643
  const registerMarketplaceCommands = (marketplaceCmd2) => {
2619
2644
  marketplaceCmd2.command("add <source>").description("Add a marketplace from a URL, path, or GitHub repo").action(async (source) => {
2620
2645
  try {
2621
- const { addMarketplace } = await import("./skillMarketplace-4LJAYRMX.js");
2646
+ const { addMarketplace } = await import("./skillMarketplace-6NXN5AYJ.js");
2622
2647
  console.log("Adding marketplace...");
2623
2648
  const { name } = await addMarketplace(source);
2624
2649
  console.log(`Successfully added marketplace: ${name}`);
@@ -2630,7 +2655,7 @@ Model profiles (${active.length}/${profiles.length} active):
2630
2655
  });
2631
2656
  marketplaceCmd2.command("list").description("List all configured marketplaces").option("--json", "Output as JSON").action(async (options) => {
2632
2657
  try {
2633
- const { listMarketplaces } = await import("./skillMarketplace-4LJAYRMX.js");
2658
+ const { listMarketplaces } = await import("./skillMarketplace-6NXN5AYJ.js");
2634
2659
  const marketplaces = listMarketplaces();
2635
2660
  if (options.json) {
2636
2661
  console.log(JSON.stringify(marketplaces, null, 2));
@@ -2669,7 +2694,7 @@ Model profiles (${active.length}/${profiles.length} active):
2669
2694
  });
2670
2695
  marketplaceCmd2.command("remove <name>").alias("rm").description("Remove a configured marketplace").action(async (name) => {
2671
2696
  try {
2672
- const { removeMarketplace } = await import("./skillMarketplace-4LJAYRMX.js");
2697
+ const { removeMarketplace } = await import("./skillMarketplace-6NXN5AYJ.js");
2673
2698
  removeMarketplace(name);
2674
2699
  console.log(`Successfully removed marketplace: ${name}`);
2675
2700
  process.exit(0);
@@ -2686,7 +2711,7 @@ Model profiles (${active.length}/${profiles.length} active):
2686
2711
  listMarketplaces,
2687
2712
  refreshAllMarketplacesAsync,
2688
2713
  refreshMarketplaceAsync
2689
- } = await import("./skillMarketplace-4LJAYRMX.js");
2714
+ } = await import("./skillMarketplace-6NXN5AYJ.js");
2690
2715
  const trimmed = typeof name === "string" ? name.trim() : "";
2691
2716
  if (trimmed) {
2692
2717
  console.log(`Updating marketplace: ${trimmed}...`);
@@ -2737,9 +2762,9 @@ Model profiles (${active.length}/${profiles.length} active):
2737
2762
  );
2738
2763
  process.exit(1);
2739
2764
  }
2740
- const { setCwd: setCwd2 } = await import("./state-I6BQR2T5.js");
2765
+ const { setCwd: setCwd2 } = await import("./state-5JZ6HLQY.js");
2741
2766
  await setCwd2(options.cwd ?? cwd());
2742
- const { installSkillPlugin } = await import("./skillMarketplace-4LJAYRMX.js");
2767
+ const { installSkillPlugin } = await import("./skillMarketplace-6NXN5AYJ.js");
2743
2768
  const result = installSkillPlugin(plugin, {
2744
2769
  scope,
2745
2770
  force: options.force === true
@@ -2766,9 +2791,9 @@ ${skillList}`);
2766
2791
  );
2767
2792
  process.exit(1);
2768
2793
  }
2769
- const { setCwd: setCwd2 } = await import("./state-I6BQR2T5.js");
2794
+ const { setCwd: setCwd2 } = await import("./state-5JZ6HLQY.js");
2770
2795
  await setCwd2(options.cwd ?? cwd());
2771
- const { uninstallSkillPlugin } = await import("./skillMarketplace-4LJAYRMX.js");
2796
+ const { uninstallSkillPlugin } = await import("./skillMarketplace-6NXN5AYJ.js");
2772
2797
  const result = uninstallSkillPlugin(plugin, { scope });
2773
2798
  const skillList = result.removedSkills.length > 0 ? `Skills: ${result.removedSkills.join(", ")}` : "Skills: (none)";
2774
2799
  console.log(`Uninstalled ${result.pluginSpec}
@@ -2792,9 +2817,9 @@ ${skillList}`);
2792
2817
  );
2793
2818
  process.exit(1);
2794
2819
  }
2795
- const { setCwd: setCwd2, getCwd: getCwd2 } = await import("./state-I6BQR2T5.js");
2820
+ const { setCwd: setCwd2, getCwd: getCwd2 } = await import("./state-5JZ6HLQY.js");
2796
2821
  await setCwd2(options.cwd ?? cwd());
2797
- const { listInstalledSkillPlugins } = await import("./skillMarketplace-4LJAYRMX.js");
2822
+ const { listInstalledSkillPlugins } = await import("./skillMarketplace-6NXN5AYJ.js");
2798
2823
  const all = listInstalledSkillPlugins();
2799
2824
  const filtered = Object.fromEntries(
2800
2825
  Object.entries(all).filter(([, record]) => {
@@ -2838,9 +2863,9 @@ ${skillList}`);
2838
2863
  );
2839
2864
  process.exit(1);
2840
2865
  }
2841
- const { setCwd: setCwd2 } = await import("./state-I6BQR2T5.js");
2866
+ const { setCwd: setCwd2 } = await import("./state-5JZ6HLQY.js");
2842
2867
  await setCwd2(options.cwd ?? cwd());
2843
- const { enableSkillPlugin } = await import("./skillMarketplace-4LJAYRMX.js");
2868
+ const { enableSkillPlugin } = await import("./skillMarketplace-6NXN5AYJ.js");
2844
2869
  const result = enableSkillPlugin(plugin, { scope });
2845
2870
  console.log(`Enabled ${result.pluginSpec}`);
2846
2871
  process.exit(0);
@@ -2862,9 +2887,9 @@ ${skillList}`);
2862
2887
  );
2863
2888
  process.exit(1);
2864
2889
  }
2865
- const { setCwd: setCwd2 } = await import("./state-I6BQR2T5.js");
2890
+ const { setCwd: setCwd2 } = await import("./state-5JZ6HLQY.js");
2866
2891
  await setCwd2(options.cwd ?? cwd());
2867
- const { disableSkillPlugin } = await import("./skillMarketplace-4LJAYRMX.js");
2892
+ const { disableSkillPlugin } = await import("./skillMarketplace-6NXN5AYJ.js");
2868
2893
  const result = disableSkillPlugin(plugin, { scope });
2869
2894
  console.log(`Disabled ${result.pluginSpec}`);
2870
2895
  process.exit(0);
@@ -2875,9 +2900,9 @@ ${skillList}`);
2875
2900
  });
2876
2901
  pluginCmd.command("validate <path>").description("Validate a plugin or marketplace manifest").option("--cwd <cwd>", "The current working directory", String, cwd()).action(async (path, options) => {
2877
2902
  try {
2878
- const { setCwd: setCwd2 } = await import("./state-I6BQR2T5.js");
2903
+ const { setCwd: setCwd2 } = await import("./state-5JZ6HLQY.js");
2879
2904
  await setCwd2(options.cwd ?? cwd());
2880
- const { formatValidationResult, validatePluginOrMarketplacePath } = await import("./pluginValidation-YJ4W3MX4.js");
2905
+ const { formatValidationResult, validatePluginOrMarketplacePath } = await import("./pluginValidation-T25KVTG4.js");
2881
2906
  const result = validatePluginOrMarketplacePath(path);
2882
2907
  console.log(
2883
2908
  `Validating ${result.fileType} manifest: ${result.filePath}
@@ -2899,9 +2924,9 @@ ${skillList}`);
2899
2924
  registerMarketplaceCommands(marketplaceCmd);
2900
2925
  skillsCmd.command("install <plugin>").description("Install a skill plugin pack (<plugin>@<marketplace>)").option("--cwd <cwd>", "The current working directory", String, cwd()).option("--project", "Install into this project (.pyb/...)", () => true).option("--force", "Overwrite existing installed files", () => true).action(async (plugin, options) => {
2901
2926
  try {
2902
- const { setCwd: setCwd2 } = await import("./state-I6BQR2T5.js");
2927
+ const { setCwd: setCwd2 } = await import("./state-5JZ6HLQY.js");
2903
2928
  await setCwd2(options.cwd ?? cwd());
2904
- const { installSkillPlugin } = await import("./skillMarketplace-4LJAYRMX.js");
2929
+ const { installSkillPlugin } = await import("./skillMarketplace-6NXN5AYJ.js");
2905
2930
  const result = installSkillPlugin(plugin, {
2906
2931
  project: options.project === true,
2907
2932
  force: options.force === true
@@ -2917,9 +2942,9 @@ ${skillList}`);
2917
2942
  });
2918
2943
  skillsCmd.command("uninstall <plugin>").description("Uninstall a skill plugin pack (<plugin>@<marketplace>)").option("--cwd <cwd>", "The current working directory", String, cwd()).option("--project", "Uninstall from this project (.pyb/...)", () => true).action(async (plugin, options) => {
2919
2944
  try {
2920
- const { setCwd: setCwd2 } = await import("./state-I6BQR2T5.js");
2945
+ const { setCwd: setCwd2 } = await import("./state-5JZ6HLQY.js");
2921
2946
  await setCwd2(options.cwd ?? cwd());
2922
- const { uninstallSkillPlugin } = await import("./skillMarketplace-4LJAYRMX.js");
2947
+ const { uninstallSkillPlugin } = await import("./skillMarketplace-6NXN5AYJ.js");
2923
2948
  const result = uninstallSkillPlugin(plugin, {
2924
2949
  project: options.project === true
2925
2950
  });
@@ -2934,7 +2959,7 @@ ${skillList}`);
2934
2959
  });
2935
2960
  skillsCmd.command("list-installed").description("List installed skill plugins").action(async () => {
2936
2961
  try {
2937
- const { listInstalledSkillPlugins } = await import("./skillMarketplace-4LJAYRMX.js");
2962
+ const { listInstalledSkillPlugins } = await import("./skillMarketplace-6NXN5AYJ.js");
2938
2963
  console.log(JSON.stringify(listInstalledSkillPlugins(), null, 2));
2939
2964
  process.exit(0);
2940
2965
  } catch (error) {
@@ -3500,7 +3525,7 @@ ${skillList}`);
3500
3525
  const scope = ensureConfigScope(options.scope);
3501
3526
  const platform = process.platform;
3502
3527
  const { existsSync: existsSync2, readFileSync: readFileSync2 } = await import("fs");
3503
- const { join: join2 } = await import("path");
3528
+ const { join: join3 } = await import("path");
3504
3529
  const { exec } = await import("child_process");
3505
3530
  const isWSL = platform === "linux" && existsSync2("/proc/version") && readFileSync2("/proc/version", "utf-8").toLowerCase().includes("microsoft");
3506
3531
  if (platform !== "darwin" && platform !== "win32" && !isWSL) {
@@ -3511,12 +3536,12 @@ ${skillList}`);
3511
3536
  }
3512
3537
  let configPath;
3513
3538
  if (platform === "darwin") {
3514
- configPath = join2(
3539
+ configPath = join3(
3515
3540
  process.env.HOME || "~",
3516
3541
  "Library/Application Support/Claude/claude_desktop_config.json"
3517
3542
  );
3518
3543
  } else if (platform === "win32") {
3519
- configPath = join2(
3544
+ configPath = join3(
3520
3545
  process.env.APPDATA || "",
3521
3546
  "Claude/claude_desktop_config.json"
3522
3547
  );
@@ -3580,7 +3605,7 @@ ${skillList}`);
3580
3605
  const ink = await import("ink");
3581
3606
  const reactModule = await import("react");
3582
3607
  const inkjsui = await import("@inkjs/ui");
3583
- const utilsTheme = await import("./theme-GL7HKKCQ.js");
3608
+ const utilsTheme = await import("./theme-HJNALYGQ.js");
3584
3609
  const { render: render3 } = ink;
3585
3610
  const React11 = reactModule;
3586
3611
  const { MultiSelect: MultiSelect2 } = inkjsui;
@@ -3723,8 +3748,8 @@ ${skillList}`);
3723
3748
  const commandOptions = getCommandOptions(options);
3724
3749
  const workingDir = resolveWorkingDir(commandOptions, program);
3725
3750
  await setup(workingDir, false);
3726
- const { getAbsolutePath } = await import("./file-SD5NRUTD.js");
3727
- const { LspFacade } = await import("./lsp-2FPBS2M3.js");
3751
+ const { getAbsolutePath } = await import("./file-VJBZTSIC.js");
3752
+ const { LspFacade } = await import("./lsp-57NLFUAK.js");
3728
3753
  const { existsSync: existsSync2 } = await import("fs");
3729
3754
  const absPath = getAbsolutePath(file) ?? file;
3730
3755
  if (!existsSync2(absPath)) {
@@ -3755,7 +3780,7 @@ ${skillList}`);
3755
3780
  try {
3756
3781
  const workingDir = resolveWorkingDir(options, program);
3757
3782
  await setup(workingDir, false);
3758
- const { LspFacade } = await import("./lsp-2FPBS2M3.js");
3783
+ const { LspFacade } = await import("./lsp-57NLFUAK.js");
3759
3784
  const result = await LspFacade.run({
3760
3785
  operation: "workspaceSymbol",
3761
3786
  filePath: query,
@@ -3772,8 +3797,8 @@ ${skillList}`);
3772
3797
  try {
3773
3798
  const workingDir = resolveWorkingDir(options, program);
3774
3799
  await setup(workingDir, false);
3775
- const { getAbsolutePath } = await import("./file-SD5NRUTD.js");
3776
- const { LspFacade } = await import("./lsp-2FPBS2M3.js");
3800
+ const { getAbsolutePath } = await import("./file-VJBZTSIC.js");
3801
+ const { LspFacade } = await import("./lsp-57NLFUAK.js");
3777
3802
  const { existsSync: existsSync2 } = await import("fs");
3778
3803
  const absPath = getAbsolutePath(file) ?? file;
3779
3804
  if (!existsSync2(absPath)) {
@@ -3796,7 +3821,7 @@ ${skillList}`);
3796
3821
  try {
3797
3822
  const workingDir = resolveWorkingDir(options, program);
3798
3823
  await setup(workingDir, false);
3799
- const { LspFacade } = await import("./lsp-2FPBS2M3.js");
3824
+ const { LspFacade } = await import("./lsp-57NLFUAK.js");
3800
3825
  const status = LspFacade.status();
3801
3826
  console.log(JSON.stringify(status, null, 2));
3802
3827
  process.exit(0);
@@ -3810,7 +3835,7 @@ ${skillList}`);
3810
3835
  const commandOptions = getCommandOptions(options);
3811
3836
  const workingDir = resolveWorkingDir(commandOptions, program);
3812
3837
  await setup(workingDir, false);
3813
- const { LspFacade } = await import("./lsp-2FPBS2M3.js");
3838
+ const { LspFacade } = await import("./lsp-57NLFUAK.js");
3814
3839
  const host = typeof commandOptions?.host === "string" && commandOptions.host.length > 0 ? commandOptions.host : "127.0.0.1";
3815
3840
  const port = typeof commandOptions?.port === "number" && !Number.isNaN(commandOptions.port) ? commandOptions.port : 7337;
3816
3841
  const server = LspFacade.serveStatus({ host, port });
@@ -3836,7 +3861,7 @@ ${skillList}`);
3836
3861
  program.command("update").description("Show manual upgrade commands (no auto-install)").action(async () => {
3837
3862
  console.log(`Current version: ${MACRO.VERSION}`);
3838
3863
  console.log("Checking for updates...");
3839
- const { getLatestVersion, getUpdateCommandSuggestions } = await import("./autoUpdater-GAWZB7YO.js");
3864
+ const { getLatestVersion, getUpdateCommandSuggestions } = await import("./autoUpdater-BZ7E2E54.js");
3840
3865
  const latestVersion = await getLatestVersion();
3841
3866
  if (!latestVersion) {
3842
3867
  console.error("Failed to check for updates");
@@ -3891,8 +3916,8 @@ ${skillList}`);
3891
3916
  await setup(cwd2, safe);
3892
3917
  assertMinVersion();
3893
3918
  const [{ getTools }, { getCommands }] = await Promise.all([
3894
- import("./tools-4GEB2BRR.js"),
3895
- import("./commands-ITOHDPPP.js")
3919
+ import("./tools-C65SWXV6.js"),
3920
+ import("./commands-ASLDRXGO.js")
3896
3921
  ]);
3897
3922
  const [allTools, commands, mcpClients] = await Promise.all([
3898
3923
  getTools(
@@ -3903,8 +3928,8 @@ ${skillList}`);
3903
3928
  ]);
3904
3929
  const tools = disableSlashCommands === true ? allTools.filter((t) => t.name !== "SlashCommand") : allTools;
3905
3930
  if (identifier !== void 0) {
3906
- const { loadPybAgentSessionMessages } = await import("./pybAgentSessionLoad-IZULLNUL.js");
3907
- const { listPybAgentSessions, resolvePybResumeSessionIdentifier } = await import("./pybAgentSessionResume-QRNTC3A3.js");
3931
+ const { loadPybAgentSessionMessages } = await import("./pybAgentSessionLoad-M3JZ2DH3.js");
3932
+ const { listPybAgentSessions, resolvePybResumeSessionIdentifier } = await import("./pybAgentSessionResume-D2R55SPH.js");
3908
3933
  const { setPybAgentSessionId } = await import("./pybAgentSessionId-EPCAMQ25.js");
3909
3934
  const rawIdentifier = String(identifier).trim();
3910
3935
  const isLegacyNumber = /^-?\\d+$/.test(rawIdentifier);
@@ -3974,7 +3999,7 @@ ${skillList}`);
3974
3999
  const isDefaultModel = await isDefaultSlowAndCapableModel();
3975
4000
  {
3976
4001
  const { render: render3 } = await import("ink");
3977
- const { REPL } = await import("./REPL-AHBTBEED.js");
4002
+ const { REPL } = await import("./REPL-LEORZMM6.js");
3978
4003
  render3(
3979
4004
  /* @__PURE__ */ React10.createElement(
3980
4005
  REPL,
@@ -4001,7 +4026,7 @@ ${skillList}`);
4001
4026
  process.exit(1);
4002
4027
  }
4003
4028
  } else {
4004
- const { listPybAgentSessions } = await import("./pybAgentSessionResume-QRNTC3A3.js");
4029
+ const { listPybAgentSessions } = await import("./pybAgentSessionResume-D2R55SPH.js");
4005
4030
  const sessions = listPybAgentSessions({ cwd: cwd2 });
4006
4031
  if (sessions.length === 0) {
4007
4032
  console.error("No conversation found to resume");
@@ -4106,12 +4131,12 @@ async function gracefulExit(code = 0) {
4106
4131
  }
4107
4132
  isGracefulExitInProgress = true;
4108
4133
  try {
4109
- const { runSessionEndHooks } = await import("./pybHooks-GX3AIY4U.js");
4134
+ const { runSessionEndHooks } = await import("./pybHooks-GAJ5GRHI.js");
4110
4135
  const { getPybAgentSessionId } = await import("./pybAgentSessionId-EPCAMQ25.js");
4111
4136
  const { tmpdir } = await import("os");
4112
- const { join: join2 } = await import("path");
4137
+ const { join: join3 } = await import("path");
4113
4138
  const sessionId = getPybAgentSessionId();
4114
- const transcriptPath = join2(
4139
+ const transcriptPath = join3(
4115
4140
  tmpdir(),
4116
4141
  "pyb-hooks-transcripts",
4117
4142
  `${sessionId}.transcript.txt`