pybao-cli 1.5.39 → 1.5.41

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 (152) hide show
  1. package/dist/REPL-Q6TL36A6.js +51 -0
  2. package/dist/{acp-Z3ROU4NT.js → acp-BYHN3C5Y.js} +30 -30
  3. package/dist/{agentsValidate-T5RRKNH7.js → agentsValidate-BHUYO2UO.js} +7 -7
  4. package/dist/{ask-Q5DD7Y5V.js → ask-RYKEEAWK.js} +30 -30
  5. package/dist/{autoUpdater-X4MGXTHY.js → autoUpdater-TERQML25.js} +3 -3
  6. package/dist/{chunk-E2O5ZNMG.js → chunk-25CGCIJ2.js} +1 -1
  7. package/dist/{chunk-XQZYIKQG.js → chunk-2TJIZB3T.js} +1 -1
  8. package/dist/{chunk-XEZ4I2EW.js → chunk-42NB6J75.js} +1 -1
  9. package/dist/{chunk-CARZ3VV2.js → chunk-4ZPF4KPZ.js} +3 -3
  10. package/dist/{chunk-7A7AGNEX.js → chunk-5BC6IN7X.js} +4 -4
  11. package/dist/{chunk-6ZXSYUC4.js → chunk-5L7V2WZ2.js} +1 -1
  12. package/dist/{chunk-TNVELATG.js → chunk-64HBL64M.js} +4 -4
  13. package/dist/{chunk-YGMNRXWM.js → chunk-CCP5INEO.js} +2 -2
  14. package/dist/{chunk-3YYZBLYE.js → chunk-CJYTQJWE.js} +3 -3
  15. package/dist/{chunk-K6USRWZZ.js → chunk-DVNC553K.js} +108 -70
  16. package/dist/chunk-DVNC553K.js.map +7 -0
  17. package/dist/{chunk-IOJSVTJI.js → chunk-E6G23ISX.js} +1 -1
  18. package/dist/{chunk-C2XL4PP4.js → chunk-ELG55TXD.js} +2 -2
  19. package/dist/{chunk-K6ZSF4XV.js → chunk-ETFKDDHM.js} +4 -4
  20. package/dist/{chunk-WU3KYQFA.js → chunk-GJLENEC6.js} +3 -3
  21. package/dist/{chunk-UIHCMY35.js → chunk-IJ6E6OZC.js} +2 -2
  22. package/dist/{chunk-TPEX7GP6.js → chunk-J6KBWXSH.js} +2 -2
  23. package/dist/{chunk-OQV3ASGW.js → chunk-MDXX7D5E.js} +3 -3
  24. package/dist/{chunk-YQX2PZMK.js → chunk-MFEUJAJ6.js} +4 -4
  25. package/dist/{chunk-OXMRNROM.js → chunk-OOZFZ4II.js} +2 -2
  26. package/dist/{chunk-UXJEDV2F.js → chunk-P6TEUVAU.js} +1 -1
  27. package/dist/{chunk-B6KK6QP2.js → chunk-P7AQWPIC.js} +1 -1
  28. package/dist/{chunk-QJPGHOOD.js → chunk-PESILDVN.js} +3 -3
  29. package/dist/{chunk-25DI6YMP.js → chunk-R3GBNLW5.js} +1 -1
  30. package/dist/{chunk-4L2R7COO.js → chunk-ROO5DUAU.js} +3 -3
  31. package/dist/{chunk-N4KEHLUE.js → chunk-T6SHIFVI.js} +2 -2
  32. package/dist/{chunk-M74TFPOY.js → chunk-TINWFOBK.js} +3 -3
  33. package/dist/{chunk-JZ7UEGNN.js → chunk-W6CMURAU.js} +1 -1
  34. package/dist/{chunk-J6RVV73S.js → chunk-XUHOOFY3.js} +1 -1
  35. package/dist/{chunk-J6RVV73S.js.map → chunk-XUHOOFY3.js.map} +1 -1
  36. package/dist/{chunk-RF4TLZ2G.js → chunk-YDZM3SUX.js} +1 -1
  37. package/dist/{chunk-K5F6WOED.js → chunk-YOMCW22M.js} +1 -1
  38. package/dist/{chunk-PMPJBZ4W.js → chunk-YU7KF5XP.js} +3 -3
  39. package/dist/{cli-KXJVBKJ3.js → cli-BVHFXK3K.js} +90 -90
  40. package/dist/commands-D4GXROJJ.js +55 -0
  41. package/dist/{config-WAHXMCBU.js → config-ELAYWDG5.js} +4 -4
  42. package/dist/{context-F57XOU2V.js → context-ECLRI3WD.js} +6 -6
  43. package/dist/{conversationPersistence-AQ4ICXAB.js → conversationPersistence-4HRBBRTT.js} +3 -3
  44. package/dist/{conversationTracker-E4JUPWAN.js → conversationTracker-NH2RUXI5.js} +4 -4
  45. package/dist/{customCommands-JIPCN2R2.js → customCommands-MDKSEI6M.js} +4 -4
  46. package/dist/{env-CQDTZSMG.js → env-VHEZ3MTD.js} +2 -2
  47. package/dist/{file-67TG46SO.js → file-IM55NZJG.js} +4 -4
  48. package/dist/index.js +3 -3
  49. package/dist/{llm-S4UIKFEI.js → llm-PBSE4RKC.js} +31 -31
  50. package/dist/{llmLazy-C4LTCDFH.js → llmLazy-76CZJ77B.js} +1 -1
  51. package/dist/{loader-TEMIJTXY.js → loader-ZRGJCM55.js} +4 -4
  52. package/dist/{lsp-NRIYSZQ4.js → lsp-2AHSI2Y2.js} +6 -6
  53. package/dist/{lspAnchor-FM5VJH4Y.js → lspAnchor-QN3DVLH3.js} +6 -6
  54. package/dist/{mcp-TCYAGRRL.js → mcp-D2GC7PSF.js} +7 -7
  55. package/dist/{mentionProcessor-I3NLABF6.js → mentionProcessor-IWJHDSEF.js} +5 -5
  56. package/dist/{messages-RI367EVZ.js → messages-OJVP7RAX.js} +1 -1
  57. package/dist/{model-NJI57V4I.js → model-EW2KADZ6.js} +5 -5
  58. package/dist/{openai-CD6FJTQW.js → openai-ZLWBSZX7.js} +5 -5
  59. package/dist/{outputStyles-DTQLGYLI.js → outputStyles-L6BWMBZB.js} +4 -4
  60. package/dist/{pluginRuntime-HAYCLP4K.js → pluginRuntime-6ELJ4DXC.js} +6 -6
  61. package/dist/{pluginValidation-EXHNDUOT.js → pluginValidation-52CI72QJ.js} +6 -6
  62. package/dist/prompts-6RORXE4W.js +57 -0
  63. package/dist/{pybAgentSessionLoad-WRYHVHEJ.js → pybAgentSessionLoad-PKHIH5HB.js} +4 -4
  64. package/dist/{pybAgentSessionResume-UWLIZORC.js → pybAgentSessionResume-TFFRN7D2.js} +4 -4
  65. package/dist/{pybAgentStreamJsonSession-IPKXSPWK.js → pybAgentStreamJsonSession-SOIPUIHK.js} +1 -1
  66. package/dist/{pybHooks-GMZAQ3EO.js → pybHooks-KAN6F4X6.js} +4 -4
  67. package/dist/query-VVHK27CB.js +55 -0
  68. package/dist/{registry-63DZ2LVO.js → registry-VGL5C5HH.js} +5 -5
  69. package/dist/{ripgrep-XTOLMKN5.js → ripgrep-AOZSQEU2.js} +3 -3
  70. package/dist/{skillMarketplace-BY4UWKWZ.js → skillMarketplace-FMJO5HWV.js} +3 -3
  71. package/dist/{state-34X5ECUL.js → state-TCUKXHFJ.js} +2 -2
  72. package/dist/{theme-CDSY27SJ.js → theme-5FTOATYN.js} +5 -5
  73. package/dist/{toolPermissionSettings-RCPBRGPK.js → toolPermissionSettings-AXTFD5X3.js} +6 -6
  74. package/dist/tools-6MYVTXDI.js +55 -0
  75. package/dist/{userInput-4FVP4WYV.js → userInput-US2VBO57.js} +32 -32
  76. package/package.json +1 -1
  77. package/dist/REPL-QXWIXDPD.js +0 -51
  78. package/dist/chunk-K6USRWZZ.js.map +0 -7
  79. package/dist/commands-ESZSE6NV.js +0 -55
  80. package/dist/prompts-UGQX7FG5.js +0 -57
  81. package/dist/query-LBWLTCLG.js +0 -55
  82. package/dist/tools-53UXDJ64.js +0 -55
  83. /package/dist/{REPL-QXWIXDPD.js.map → REPL-Q6TL36A6.js.map} +0 -0
  84. /package/dist/{acp-Z3ROU4NT.js.map → acp-BYHN3C5Y.js.map} +0 -0
  85. /package/dist/{agentsValidate-T5RRKNH7.js.map → agentsValidate-BHUYO2UO.js.map} +0 -0
  86. /package/dist/{ask-Q5DD7Y5V.js.map → ask-RYKEEAWK.js.map} +0 -0
  87. /package/dist/{autoUpdater-X4MGXTHY.js.map → autoUpdater-TERQML25.js.map} +0 -0
  88. /package/dist/{chunk-E2O5ZNMG.js.map → chunk-25CGCIJ2.js.map} +0 -0
  89. /package/dist/{chunk-XQZYIKQG.js.map → chunk-2TJIZB3T.js.map} +0 -0
  90. /package/dist/{chunk-XEZ4I2EW.js.map → chunk-42NB6J75.js.map} +0 -0
  91. /package/dist/{chunk-CARZ3VV2.js.map → chunk-4ZPF4KPZ.js.map} +0 -0
  92. /package/dist/{chunk-7A7AGNEX.js.map → chunk-5BC6IN7X.js.map} +0 -0
  93. /package/dist/{chunk-6ZXSYUC4.js.map → chunk-5L7V2WZ2.js.map} +0 -0
  94. /package/dist/{chunk-TNVELATG.js.map → chunk-64HBL64M.js.map} +0 -0
  95. /package/dist/{chunk-YGMNRXWM.js.map → chunk-CCP5INEO.js.map} +0 -0
  96. /package/dist/{chunk-3YYZBLYE.js.map → chunk-CJYTQJWE.js.map} +0 -0
  97. /package/dist/{chunk-IOJSVTJI.js.map → chunk-E6G23ISX.js.map} +0 -0
  98. /package/dist/{chunk-C2XL4PP4.js.map → chunk-ELG55TXD.js.map} +0 -0
  99. /package/dist/{chunk-K6ZSF4XV.js.map → chunk-ETFKDDHM.js.map} +0 -0
  100. /package/dist/{chunk-WU3KYQFA.js.map → chunk-GJLENEC6.js.map} +0 -0
  101. /package/dist/{chunk-UIHCMY35.js.map → chunk-IJ6E6OZC.js.map} +0 -0
  102. /package/dist/{chunk-TPEX7GP6.js.map → chunk-J6KBWXSH.js.map} +0 -0
  103. /package/dist/{chunk-OQV3ASGW.js.map → chunk-MDXX7D5E.js.map} +0 -0
  104. /package/dist/{chunk-YQX2PZMK.js.map → chunk-MFEUJAJ6.js.map} +0 -0
  105. /package/dist/{chunk-OXMRNROM.js.map → chunk-OOZFZ4II.js.map} +0 -0
  106. /package/dist/{chunk-UXJEDV2F.js.map → chunk-P6TEUVAU.js.map} +0 -0
  107. /package/dist/{chunk-B6KK6QP2.js.map → chunk-P7AQWPIC.js.map} +0 -0
  108. /package/dist/{chunk-QJPGHOOD.js.map → chunk-PESILDVN.js.map} +0 -0
  109. /package/dist/{chunk-25DI6YMP.js.map → chunk-R3GBNLW5.js.map} +0 -0
  110. /package/dist/{chunk-4L2R7COO.js.map → chunk-ROO5DUAU.js.map} +0 -0
  111. /package/dist/{chunk-N4KEHLUE.js.map → chunk-T6SHIFVI.js.map} +0 -0
  112. /package/dist/{chunk-M74TFPOY.js.map → chunk-TINWFOBK.js.map} +0 -0
  113. /package/dist/{chunk-JZ7UEGNN.js.map → chunk-W6CMURAU.js.map} +0 -0
  114. /package/dist/{chunk-RF4TLZ2G.js.map → chunk-YDZM3SUX.js.map} +0 -0
  115. /package/dist/{chunk-K5F6WOED.js.map → chunk-YOMCW22M.js.map} +0 -0
  116. /package/dist/{chunk-PMPJBZ4W.js.map → chunk-YU7KF5XP.js.map} +0 -0
  117. /package/dist/{cli-KXJVBKJ3.js.map → cli-BVHFXK3K.js.map} +0 -0
  118. /package/dist/{commands-ESZSE6NV.js.map → commands-D4GXROJJ.js.map} +0 -0
  119. /package/dist/{config-WAHXMCBU.js.map → config-ELAYWDG5.js.map} +0 -0
  120. /package/dist/{context-F57XOU2V.js.map → context-ECLRI3WD.js.map} +0 -0
  121. /package/dist/{conversationPersistence-AQ4ICXAB.js.map → conversationPersistence-4HRBBRTT.js.map} +0 -0
  122. /package/dist/{conversationTracker-E4JUPWAN.js.map → conversationTracker-NH2RUXI5.js.map} +0 -0
  123. /package/dist/{customCommands-JIPCN2R2.js.map → customCommands-MDKSEI6M.js.map} +0 -0
  124. /package/dist/{env-CQDTZSMG.js.map → env-VHEZ3MTD.js.map} +0 -0
  125. /package/dist/{file-67TG46SO.js.map → file-IM55NZJG.js.map} +0 -0
  126. /package/dist/{llm-S4UIKFEI.js.map → llm-PBSE4RKC.js.map} +0 -0
  127. /package/dist/{llmLazy-C4LTCDFH.js.map → llmLazy-76CZJ77B.js.map} +0 -0
  128. /package/dist/{loader-TEMIJTXY.js.map → loader-ZRGJCM55.js.map} +0 -0
  129. /package/dist/{lsp-NRIYSZQ4.js.map → lsp-2AHSI2Y2.js.map} +0 -0
  130. /package/dist/{lspAnchor-FM5VJH4Y.js.map → lspAnchor-QN3DVLH3.js.map} +0 -0
  131. /package/dist/{mcp-TCYAGRRL.js.map → mcp-D2GC7PSF.js.map} +0 -0
  132. /package/dist/{mentionProcessor-I3NLABF6.js.map → mentionProcessor-IWJHDSEF.js.map} +0 -0
  133. /package/dist/{messages-RI367EVZ.js.map → messages-OJVP7RAX.js.map} +0 -0
  134. /package/dist/{model-NJI57V4I.js.map → model-EW2KADZ6.js.map} +0 -0
  135. /package/dist/{openai-CD6FJTQW.js.map → openai-ZLWBSZX7.js.map} +0 -0
  136. /package/dist/{outputStyles-DTQLGYLI.js.map → outputStyles-L6BWMBZB.js.map} +0 -0
  137. /package/dist/{pluginRuntime-HAYCLP4K.js.map → pluginRuntime-6ELJ4DXC.js.map} +0 -0
  138. /package/dist/{pluginValidation-EXHNDUOT.js.map → pluginValidation-52CI72QJ.js.map} +0 -0
  139. /package/dist/{prompts-UGQX7FG5.js.map → prompts-6RORXE4W.js.map} +0 -0
  140. /package/dist/{pybAgentSessionLoad-WRYHVHEJ.js.map → pybAgentSessionLoad-PKHIH5HB.js.map} +0 -0
  141. /package/dist/{pybAgentSessionResume-UWLIZORC.js.map → pybAgentSessionResume-TFFRN7D2.js.map} +0 -0
  142. /package/dist/{pybAgentStreamJsonSession-IPKXSPWK.js.map → pybAgentStreamJsonSession-SOIPUIHK.js.map} +0 -0
  143. /package/dist/{pybHooks-GMZAQ3EO.js.map → pybHooks-KAN6F4X6.js.map} +0 -0
  144. /package/dist/{query-LBWLTCLG.js.map → query-VVHK27CB.js.map} +0 -0
  145. /package/dist/{registry-63DZ2LVO.js.map → registry-VGL5C5HH.js.map} +0 -0
  146. /package/dist/{ripgrep-XTOLMKN5.js.map → ripgrep-AOZSQEU2.js.map} +0 -0
  147. /package/dist/{skillMarketplace-BY4UWKWZ.js.map → skillMarketplace-FMJO5HWV.js.map} +0 -0
  148. /package/dist/{state-34X5ECUL.js.map → state-TCUKXHFJ.js.map} +0 -0
  149. /package/dist/{theme-CDSY27SJ.js.map → theme-5FTOATYN.js.map} +0 -0
  150. /package/dist/{toolPermissionSettings-RCPBRGPK.js.map → toolPermissionSettings-AXTFD5X3.js.map} +0 -0
  151. /package/dist/{tools-53UXDJ64.js.map → tools-6MYVTXDI.js.map} +0 -0
  152. /package/dist/{userInput-4FVP4WYV.js.map → userInput-US2VBO57.js.map} +0 -0
@@ -2,17 +2,17 @@ import { createRequire as __pybCreateRequire } from "node:module";
2
2
  const require = __pybCreateRequire(import.meta.url);
3
3
  import {
4
4
  loadPybAgentSessionMessages
5
- } from "./chunk-E2O5ZNMG.js";
5
+ } from "./chunk-25CGCIJ2.js";
6
6
  import {
7
7
  appendSessionCustomTitleRecord,
8
8
  appendSessionJsonlFromMessage,
9
9
  appendSessionTagRecord,
10
10
  listPybAgentSessions
11
- } from "./chunk-WU3KYQFA.js";
11
+ } from "./chunk-GJLENEC6.js";
12
12
  import {
13
13
  formatValidationResult,
14
14
  validatePluginOrMarketplacePath
15
- } from "./chunk-OQV3ASGW.js";
15
+ } from "./chunk-MDXX7D5E.js";
16
16
  import {
17
17
  ConversationTracker,
18
18
  appendFinishState,
@@ -20,10 +20,10 @@ import {
20
20
  getConversationTrackerForContext,
21
21
  isFinishComplete,
22
22
  mapFinishReason
23
- } from "./chunk-JZ7UEGNN.js";
23
+ } from "./chunk-W6CMURAU.js";
24
24
  import {
25
25
  FileSystemConversationPersistence
26
- } from "./chunk-B6KK6QP2.js";
26
+ } from "./chunk-P7AQWPIC.js";
27
27
  import {
28
28
  beginReplSessionScope
29
29
  } from "./chunk-F4AXICO7.js";
@@ -38,7 +38,7 @@ import {
38
38
  runStopHooks,
39
39
  runUserPromptSubmitHooks,
40
40
  updateHookTranscriptForMessages
41
- } from "./chunk-4L2R7COO.js";
41
+ } from "./chunk-ROO5DUAU.js";
42
42
  import {
43
43
  DEFAULT_OUTPUT_STYLE,
44
44
  getAvailableOutputStyles,
@@ -47,11 +47,11 @@ import {
47
47
  getOutputStyleSystemPromptAdditions,
48
48
  resolveOutputStyleName,
49
49
  setCurrentOutputStyle
50
- } from "./chunk-C2XL4PP4.js";
50
+ } from "./chunk-ELG55TXD.js";
51
51
  import {
52
52
  fetchCustomModels,
53
53
  getModelFeatures
54
- } from "./chunk-YGMNRXWM.js";
54
+ } from "./chunk-CCP5INEO.js";
55
55
  import {
56
56
  getCurrentSessionId,
57
57
  getSessionState
@@ -60,7 +60,7 @@ import {
60
60
  queryLLM,
61
61
  queryQuick,
62
62
  verifyApiKey
63
- } from "./chunk-TNVELATG.js";
63
+ } from "./chunk-64HBL64M.js";
64
64
  import {
65
65
  DEFAULT_TIMEOUT_MS,
66
66
  FallbackToolUseRejectedMessage,
@@ -75,7 +75,7 @@ import {
75
75
  listMCPServers,
76
76
  loadMergedSettings,
77
77
  normalizeSandboxRuntimeConfigFromSettings
78
- } from "./chunk-K6ZSF4XV.js";
78
+ } from "./chunk-ETFKDDHM.js";
79
79
  import {
80
80
  addMarketplace,
81
81
  disableSkillPlugin,
@@ -88,11 +88,11 @@ import {
88
88
  refreshMarketplaceAsync,
89
89
  removeMarketplace,
90
90
  uninstallSkillPlugin
91
- } from "./chunk-K5F6WOED.js";
91
+ } from "./chunk-YOMCW22M.js";
92
92
  import {
93
93
  loadToolPermissionContextFromDisk,
94
94
  persistToolPermissionUpdateToDisk
95
- } from "./chunk-M74TFPOY.js";
95
+ } from "./chunk-TINWFOBK.js";
96
96
  import {
97
97
  applyToolPermissionContextUpdate,
98
98
  applyToolPermissionContextUpdates,
@@ -103,14 +103,14 @@ import {
103
103
  generateSystemReminders,
104
104
  resetReminderSession,
105
105
  systemReminderService
106
- } from "./chunk-TPEX7GP6.js";
106
+ } from "./chunk-J6KBWXSH.js";
107
107
  import {
108
108
  clearAgentCache,
109
109
  getActiveAgents,
110
110
  getAgentByType,
111
111
  getAllAgents,
112
112
  getAvailableAgentTypes
113
- } from "./chunk-N4KEHLUE.js";
113
+ } from "./chunk-T6SHIFVI.js";
114
114
  import {
115
115
  API_ERROR_MESSAGE_PREFIX,
116
116
  CANCEL_MESSAGE,
@@ -147,7 +147,7 @@ import {
147
147
  reorderMessages,
148
148
  resetAutoCompactTelemetry,
149
149
  stripSystemMessages
150
- } from "./chunk-RF4TLZ2G.js";
150
+ } from "./chunk-YDZM3SUX.js";
151
151
  import {
152
152
  getRequestStatus,
153
153
  setRequestStatus,
@@ -179,7 +179,7 @@ import {
179
179
  normalizeFilePath,
180
180
  readTextContent,
181
181
  writeTextContent
182
- } from "./chunk-OXMRNROM.js";
182
+ } from "./chunk-OOZFZ4II.js";
183
183
  import {
184
184
  parseBlockEdits
185
185
  } from "./chunk-QWIBSCDN.js";
@@ -190,18 +190,18 @@ import {
190
190
  formatDiagnosticsPretty,
191
191
  initParser,
192
192
  loadLanguage
193
- } from "./chunk-YQX2PZMK.js";
193
+ } from "./chunk-MFEUJAJ6.js";
194
194
  import {
195
195
  getSettingsFileCandidates,
196
196
  loadSettingsWithLegacyFallback,
197
197
  readSettingsFile
198
- } from "./chunk-25DI6YMP.js";
198
+ } from "./chunk-R3GBNLW5.js";
199
199
  import {
200
200
  getCustomCommandDirectories,
201
201
  hasCustomCommands,
202
202
  loadCustomCommands,
203
203
  reloadCustomCommands
204
- } from "./chunk-UIHCMY35.js";
204
+ } from "./chunk-IJ6E6OZC.js";
205
205
  import {
206
206
  getSessionPlugins
207
207
  } from "./chunk-BJSWTHRM.js";
@@ -210,7 +210,7 @@ import {
210
210
  buildModelProfileKey,
211
211
  getModelManager,
212
212
  isDefaultSlowAndCapableModel
213
- } from "./chunk-3YYZBLYE.js";
213
+ } from "./chunk-CJYTQJWE.js";
214
214
  import {
215
215
  getCodeStyle,
216
216
  getContext,
@@ -218,16 +218,16 @@ import {
218
218
  getIsGit,
219
219
  getProjectDocs,
220
220
  getProjectStructureStatisticsBlock
221
- } from "./chunk-7A7AGNEX.js";
221
+ } from "./chunk-5BC6IN7X.js";
222
222
  import {
223
223
  getRipgrepPath,
224
224
  getRipgrepPolicyMode,
225
225
  resolveRipgrepPolicy,
226
226
  ripGrep
227
- } from "./chunk-IOJSVTJI.js";
227
+ } from "./chunk-E6G23ISX.js";
228
228
  import {
229
229
  getTheme
230
- } from "./chunk-XQZYIKQG.js";
230
+ } from "./chunk-2TJIZB3T.js";
231
231
  import {
232
232
  DEFAULT_GLOBAL_CONFIG,
233
233
  enableConfigs,
@@ -240,7 +240,7 @@ import {
240
240
  saveGlobalConfig,
241
241
  setAllPointersToModel,
242
242
  setModelPointer
243
- } from "./chunk-CARZ3VV2.js";
243
+ } from "./chunk-4ZPF4KPZ.js";
244
244
  import {
245
245
  AbortError
246
246
  } from "./chunk-RQVLBMP7.js";
@@ -249,7 +249,7 @@ import {
249
249
  getCurrentRequest,
250
250
  logUserFriendly,
251
251
  markPhase
252
- } from "./chunk-UXJEDV2F.js";
252
+ } from "./chunk-P6TEUVAU.js";
253
253
  import {
254
254
  ASCII_LOGO,
255
255
  BunShell,
@@ -293,10 +293,10 @@ import {
293
293
  setCwd,
294
294
  shouldApplyToolOutputTruncation,
295
295
  truncateToolOutput
296
- } from "./chunk-6ZXSYUC4.js";
296
+ } from "./chunk-5L7V2WZ2.js";
297
297
  import {
298
298
  MACRO
299
- } from "./chunk-J6RVV73S.js";
299
+ } from "./chunk-XUHOOFY3.js";
300
300
  import {
301
301
  __export
302
302
  } from "./chunk-I3J4JYES.js";
@@ -477,7 +477,7 @@ var getCommandSubcommandPrefix = memoize(
477
477
  var getCommandPrefix = memoize(
478
478
  async (command4, abortSignal) => {
479
479
  const { systemPrompt, userPrompt } = buildBashCommandPrefixDetectionPrompt(command4);
480
- const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-S4UIKFEI.js");
480
+ const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-PBSE4RKC.js");
481
481
  const response = await queryQuick2({
482
482
  systemPrompt,
483
483
  userPrompt,
@@ -4279,7 +4279,7 @@ function formatParseError(error) {
4279
4279
  return error instanceof Error ? error.message : String(error);
4280
4280
  }
4281
4281
  async function defaultGateQuery(args) {
4282
- const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-S4UIKFEI.js");
4282
+ const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-PBSE4RKC.js");
4283
4283
  const queryLLMFn = args.queryLLMOverride ?? queryLLM2;
4284
4284
  const messages = [
4285
4285
  {
@@ -6672,7 +6672,7 @@ var FileEditTool = {
6672
6672
  const originalFileContent = currentFileContent;
6673
6673
  let totalPatch = [];
6674
6674
  const { SmartEdit } = await import("./smart-edit-AWHJDSU6.js");
6675
- const { findLspAnchor } = await import("./lspAnchor-FM5VJH4Y.js");
6675
+ const { findLspAnchor } = await import("./lspAnchor-QN3DVLH3.js");
6676
6676
  for (const op of editOperations) {
6677
6677
  const normalizedSearch = normalizeLineEndings(op.search);
6678
6678
  const normalizedReplace = normalizeLineEndings(op.replace);
@@ -6803,6 +6803,8 @@ var PROMPT3 = `Reads a file or directory from the local filesystem. You can acce
6803
6803
  - In file mode, offset/limit are 1-based line pagination; offset=1 starts from the first line shown in cat -n output
6804
6804
  - By default, file mode reads up to ${MAX_LINES_TO_READ} lines starting from the beginning of the file
6805
6805
  - You can optionally specify a line offset and limit (especially handy for long files). **Smart Truncation is active**: If your limit cuts a function or class in the middle, the tool will automatically extend the read range to include the full semantic block (up to 500 extra lines).
6806
+ - symbol_name enables LSP-assisted symbol read: provide an exact symbol name to resolve the symbol range and read that block directly
6807
+ - Use symbol_name only after file path is confirmed and when you need a specific class/function definition; if symbol is missing or unresolved, fallback to offset/limit or use LspTool for semantic discovery
6806
6808
  - Directory mode returns a one-level tree structure using \u251C\u2500\u2500/\u2514\u2500\u2500 and supports pagination continuation hints
6807
6809
  - For large files, iterate in chunks: offset=1 limit=200, then offset=201 limit=200, and so on until the needed region is covered
6808
6810
  - File text truncation is capped at 50KB per result and 2000 lines; 50KB is file text truncation and not a directory access gate
@@ -6840,6 +6842,14 @@ var PROMPT3 = `Reads a file or directory from the local filesystem. You can acce
6840
6842
  [reads the confirmed api directory path to get one-level tree structure with Read]
6841
6843
  [reads the router file path found in that directory tree]
6842
6844
  </example>
6845
+
6846
+ ### Example 4: LSP-Assisted Symbol Read
6847
+ <example>
6848
+ user: Open the FileReadTool call implementation directly
6849
+ assistant: [uses Glob/Grep to confirm FileReadTool file path]
6850
+ [uses Read with file_path="<absolute path>/FileReadTool.tsx" symbol_name="call"]
6851
+ [if symbol is not found, retries with offset/limit or uses LspTool to inspect symbol names first]
6852
+ </example>
6843
6853
  `.trim();
6844
6854
 
6845
6855
  // src/utils/fs/secureFile.ts
@@ -9044,6 +9054,7 @@ ${result.filenames.join("\n")}`;
9044
9054
  sandbox: sandboxPlan.settings.enabled ? sandboxPlan.bunShellSandboxOptions : void 0
9045
9055
  });
9046
9056
  let semanticNotice;
9057
+ let semanticHits = [];
9047
9058
  const scopedRoot = resolve7(absolutePath);
9048
9059
  if ((lines.length === 0 || symbol_type) && semantic) {
9049
9060
  try {
@@ -9091,7 +9102,35 @@ ${result.filenames.join("\n")}`;
9091
9102
  }
9092
9103
  }
9093
9104
  if (filtered.length > 0) {
9094
- const semanticLines = filtered.map((s) => {
9105
+ const kindNameMap = {
9106
+ 1: "File",
9107
+ 2: "Module",
9108
+ 3: "Namespace",
9109
+ 4: "Package",
9110
+ 5: "Class",
9111
+ 6: "Method",
9112
+ 7: "Property",
9113
+ 8: "Field",
9114
+ 9: "Constructor",
9115
+ 10: "Enum",
9116
+ 11: "Interface",
9117
+ 12: "Function",
9118
+ 13: "Variable",
9119
+ 14: "Constant",
9120
+ 15: "String",
9121
+ 16: "Number",
9122
+ 17: "Boolean",
9123
+ 18: "Array",
9124
+ 19: "Object",
9125
+ 20: "Key",
9126
+ 21: "Null",
9127
+ 22: "EnumMember",
9128
+ 23: "Struct",
9129
+ 24: "Event",
9130
+ 25: "Operator",
9131
+ 26: "TypeParameter"
9132
+ };
9133
+ semanticHits = filtered.map((s) => {
9095
9134
  let filePath = s.location?.uri || "";
9096
9135
  if (filePath.startsWith("file://")) {
9097
9136
  try {
@@ -9101,39 +9140,38 @@ ${result.filenames.join("\n")}`;
9101
9140
  }
9102
9141
  }
9103
9142
  const line = (s.location?.range?.start?.line || 0) + 1;
9104
- const kindNameMap = {
9105
- 1: "File",
9106
- 2: "Module",
9107
- 3: "Namespace",
9108
- 4: "Package",
9109
- 5: "Class",
9110
- 6: "Method",
9111
- 7: "Property",
9112
- 8: "Field",
9113
- 9: "Constructor",
9114
- 10: "Enum",
9115
- 11: "Interface",
9116
- 12: "Function",
9117
- 13: "Variable",
9118
- 14: "Constant",
9119
- 15: "String",
9120
- 16: "Number",
9121
- 17: "Boolean",
9122
- 18: "Array",
9123
- 19: "Object",
9124
- 20: "Key",
9125
- 21: "Null",
9126
- 22: "EnumMember",
9127
- 23: "Struct",
9128
- 24: "Event",
9129
- 25: "Operator",
9130
- 26: "TypeParameter"
9131
- };
9132
9143
  const kindName = kindNameMap[s.kind] || "Unknown";
9133
- return `${filePath}:${line}: ${s.name} (${kindName})`;
9144
+ return {
9145
+ filePath,
9146
+ line,
9147
+ symbolName: s.name,
9148
+ kindName
9149
+ };
9134
9150
  });
9135
- lines.push(...semanticLines);
9136
- semanticNotice = `Semantic search: added ${semanticLines.length} result${semanticLines.length === 1 ? "" : "s"}. Next: use LspTool for details.`;
9151
+ if (output_mode === "content") {
9152
+ lines.push(
9153
+ ...semanticHits.map(
9154
+ (hit) => `${hit.filePath}:${hit.line}: ${hit.symbolName} (${hit.kindName})`
9155
+ )
9156
+ );
9157
+ } else if (output_mode === "files_with_matches") {
9158
+ const files = [...new Set(semanticHits.map((hit) => hit.filePath))];
9159
+ lines.push(...files);
9160
+ } else if (output_mode === "count") {
9161
+ const countByFile = /* @__PURE__ */ new Map();
9162
+ for (const hit of semanticHits) {
9163
+ countByFile.set(
9164
+ hit.filePath,
9165
+ (countByFile.get(hit.filePath) || 0) + 1
9166
+ );
9167
+ }
9168
+ lines.push(
9169
+ ...Array.from(countByFile.entries()).map(
9170
+ ([filePath, count]) => `${filePath}:${count}`
9171
+ )
9172
+ );
9173
+ }
9174
+ semanticNotice = `Semantic search: added ${semanticHits.length} result${semanticHits.length === 1 ? "" : "s"}. Next: use LspTool for details.`;
9137
9175
  } else {
9138
9176
  semanticNotice = "Semantic search: no symbols found.";
9139
9177
  }
@@ -12435,7 +12473,7 @@ async function createAndStoreApiKey(accessToken) {
12435
12473
  }
12436
12474
  saveGlobalConfig(config2);
12437
12475
  try {
12438
- const { resetAnthropicClient } = await import("./llm-S4UIKFEI.js");
12476
+ const { resetAnthropicClient } = await import("./llm-PBSE4RKC.js");
12439
12477
  resetAnthropicClient();
12440
12478
  } catch {
12441
12479
  }
@@ -16859,7 +16897,7 @@ async function refreshPluginRuntimeFromInstalls() {
16859
16897
  const existingRoots = getSessionPlugins().map((p) => p.rootDir);
16860
16898
  const dirs = Array.from(/* @__PURE__ */ new Set([...existingRoots, ...installedRoots]));
16861
16899
  if (dirs.length === 0) return [];
16862
- const { configureSessionPlugins } = await import("./pluginRuntime-HAYCLP4K.js");
16900
+ const { configureSessionPlugins } = await import("./pluginRuntime-6ELJ4DXC.js");
16863
16901
  const { errors } = await configureSessionPlugins({ pluginDirs: dirs });
16864
16902
  return errors;
16865
16903
  }
@@ -17534,7 +17572,7 @@ async function call(onDone, context) {
17534
17572
  ModelConfig,
17535
17573
  {
17536
17574
  onClose: () => {
17537
- import("./model-NJI57V4I.js").then(({ reloadModelManager: reloadModelManager2 }) => {
17575
+ import("./model-EW2KADZ6.js").then(({ reloadModelManager: reloadModelManager2 }) => {
17538
17576
  reloadModelManager2();
17539
17577
  triggerModelConfigChange();
17540
17578
  onDone();
@@ -27445,7 +27483,7 @@ async function analyzeOutputWithLsp(output, exitCode) {
27445
27483
  if (exitCode !== 0 || errorCount > 0 || warningCount > 0) {
27446
27484
  try {
27447
27485
  const { isAbsolute: isAbsolute11, resolve: resolve16 } = await import("path");
27448
- const { getSessionRoot: getSessionRoot2 } = await import("./state-34X5ECUL.js");
27486
+ const { getSessionRoot: getSessionRoot2 } = await import("./state-TCUKXHFJ.js");
27449
27487
  const lines = output.split("\n");
27450
27488
  const uniqueFiles = /* @__PURE__ */ new Set();
27451
27489
  const lspSuggestions = [];
@@ -27815,7 +27853,7 @@ var DeleteTool = {
27815
27853
  }
27816
27854
  if (!force) {
27817
27855
  try {
27818
- const { LspFacade: LspFacade2 } = await import("./lsp-NRIYSZQ4.js");
27856
+ const { LspFacade: LspFacade2 } = await import("./lsp-2AHSI2Y2.js");
27819
27857
  const referenceDetail = await LspFacade2.checkFileReferences(fullPath);
27820
27858
  if (referenceDetail) {
27821
27859
  failedItems.push(
@@ -38217,7 +38255,7 @@ function useStatusLine() {
38217
38255
  // src/ui/components/PromptInput.tsx
38218
38256
  async function interpretHashCommand(input) {
38219
38257
  try {
38220
- const { queryQuick: queryQuick2 } = await import("./llm-S4UIKFEI.js");
38258
+ const { queryQuick: queryQuick2 } = await import("./llm-PBSE4RKC.js");
38221
38259
  const systemPrompt = [
38222
38260
  "You're helping the user structure notes that will be added to their PYB.md file.",
38223
38261
  "Format the user's input into a well-structured note that will be useful for later reference.",
@@ -38530,7 +38568,7 @@ function PromptInput({
38530
38568
  if (messages2.length) {
38531
38569
  if (mode === "bash") {
38532
38570
  onQuery(messages2, newAbortController).then(async () => {
38533
- const { getCwd: getCwd2 } = await import("./state-34X5ECUL.js");
38571
+ const { getCwd: getCwd2 } = await import("./state-TCUKXHFJ.js");
38534
38572
  setCurrentPwd(getCwd2());
38535
38573
  });
38536
38574
  } else {
@@ -40160,7 +40198,7 @@ import { homedir as homedir8 } from "os";
40160
40198
  // src/commands/agents/generation.ts
40161
40199
  import { randomUUID as randomUUID9 } from "crypto";
40162
40200
  async function generateAgentWithClaude(prompt) {
40163
- const { queryModel } = await import("./llm-S4UIKFEI.js");
40201
+ const { queryModel } = await import("./llm-PBSE4RKC.js");
40164
40202
  const systemPrompt = `You are an expert at creating AI agent configurations. Based on the user's description, generate a specialized agent configuration.
40165
40203
 
40166
40204
  Return your response as a JSON object with exactly these fields: