pybao-cli 1.3.42 → 1.3.43

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 (133) hide show
  1. package/dist/REPL-WA4MK5OC.js +42 -0
  2. package/dist/{acp-FWHP4TBN.js → acp-5POJPC6E.js} +26 -26
  3. package/dist/{agentsValidate-ZEBJPCBP.js → agentsValidate-HXRHSV6Z.js} +7 -7
  4. package/dist/{ask-5TCVL3VX.js → ask-TEOV4T65.js} +25 -25
  5. package/dist/{autoUpdater-3TTVUMCJ.js → autoUpdater-O73TSVSB.js} +3 -3
  6. package/dist/{chunk-L3CRUW5N.js → chunk-6TCMZRGU.js} +2 -2
  7. package/dist/{chunk-E5AKMKAN.js → chunk-6WEKTLK3.js} +3 -3
  8. package/dist/{chunk-ADORPEAW.js → chunk-CL4HULSZ.js} +12 -12
  9. package/dist/{chunk-V6OEXS6Q.js → chunk-H5KHW3H5.js} +121 -32
  10. package/dist/chunk-H5KHW3H5.js.map +7 -0
  11. package/dist/{chunk-LWQDVWXJ.js → chunk-IGUM6BLV.js} +1 -1
  12. package/dist/{chunk-RI3CMWN4.js → chunk-IL74HDNG.js} +3 -2
  13. package/dist/{chunk-RI3CMWN4.js.map → chunk-IL74HDNG.js.map} +2 -2
  14. package/dist/{chunk-VJJWEHXV.js → chunk-JFAMPGKZ.js} +1 -1
  15. package/dist/{chunk-DLL2KASH.js → chunk-JGWTGEOZ.js} +3 -3
  16. package/dist/{chunk-P2UA7K7C.js → chunk-JIR4R742.js} +3 -3
  17. package/dist/{chunk-M7WVMEUD.js → chunk-KEG5AM6A.js} +3 -3
  18. package/dist/{chunk-ZJRV37OB.js → chunk-L4SLWLL4.js} +3 -3
  19. package/dist/{chunk-MFGMZQ5K.js → chunk-LV4ZPXWT.js} +2 -2
  20. package/dist/{chunk-BWW4W5S3.js → chunk-PIBCLO26.js} +2 -2
  21. package/dist/{chunk-7LAOOICJ.js → chunk-PNWXLCCW.js} +1 -1
  22. package/dist/{chunk-UFWHOIFA.js → chunk-PUFNVFP5.js} +4 -4
  23. package/dist/{chunk-LIPAFDDK.js → chunk-QEFBT5UA.js} +3 -3
  24. package/dist/{chunk-G4BXBJ4S.js → chunk-R7ZFYQXK.js} +2 -2
  25. package/dist/{chunk-DSN5QDEO.js → chunk-RK6MQL4B.js} +77 -10
  26. package/dist/chunk-RK6MQL4B.js.map +7 -0
  27. package/dist/{chunk-FJ5SYR7F.js → chunk-S75I3PUO.js} +1 -1
  28. package/dist/{chunk-CCTW7Q7I.js → chunk-SUKOZLBC.js} +2 -2
  29. package/dist/{chunk-H7QRLSF4.js → chunk-SWOOXSKP.js} +1 -1
  30. package/dist/{chunk-7SOGBPYD.js → chunk-UMS7XQYU.js} +3 -3
  31. package/dist/{chunk-CRYTR7MS.js → chunk-WHIPLCBW.js} +2 -2
  32. package/dist/{chunk-U54F36AF.js → chunk-XCPLWODM.js} +1 -1
  33. package/dist/{chunk-QAQGPGLD.js → chunk-Z3V7WH6D.js} +1 -1
  34. package/dist/{chunk-ABDKXH43.js → chunk-ZGSLNR2O.js} +1 -1
  35. package/dist/{chunk-XCYNR4QA.js → chunk-ZNVJWNLM.js} +4 -4
  36. package/dist/{cli-GDYU6HYF.js → cli-DK5VZSFA.js} +77 -77
  37. package/dist/commands-SAN2D4PV.js +46 -0
  38. package/dist/{config-XQT24WCE.js → config-2NHTK3T3.js} +4 -4
  39. package/dist/{context-DB6LRXYB.js → context-YXDR3PBY.js} +5 -5
  40. package/dist/{customCommands-RN77SRIF.js → customCommands-RKEKL7UW.js} +4 -4
  41. package/dist/{env-OQX6MGZZ.js → env-ABU5BS5B.js} +2 -2
  42. package/dist/index.js +3 -3
  43. package/dist/{llm-6NG2NWFG.js → llm-EOQAKUSP.js} +26 -26
  44. package/dist/{llmLazy-7SHYMBDJ.js → llmLazy-QHQSM3F2.js} +1 -1
  45. package/dist/{loader-7NAUG6D6.js → loader-TQ2MULMI.js} +4 -4
  46. package/dist/{mcp-Q6RTTHJD.js → mcp-46XOJIMC.js} +7 -7
  47. package/dist/{mentionProcessor-IQQZDOUW.js → mentionProcessor-5T4VZVF7.js} +5 -5
  48. package/dist/{messages-FNAIGZTM.js → messages-5OPJLQVO.js} +1 -1
  49. package/dist/{model-IP76FW55.js → model-BEHNOHSJ.js} +5 -5
  50. package/dist/{openai-ETZZQV2T.js → openai-QTP4KHVU.js} +5 -5
  51. package/dist/{outputStyles-V5JRED7X.js → outputStyles-BO7PRD3U.js} +4 -4
  52. package/dist/{pluginRuntime-JCULYGGU.js → pluginRuntime-6UJECISI.js} +6 -6
  53. package/dist/{pluginValidation-3WIA2IUE.js → pluginValidation-4Q547BHV.js} +6 -6
  54. package/dist/prompts-XFLVQ6CA.js +48 -0
  55. package/dist/{pybAgentSessionLoad-VWCWWEZK.js → pybAgentSessionLoad-2G57VU66.js} +4 -4
  56. package/dist/{pybAgentSessionResume-W4757NLE.js → pybAgentSessionResume-K7O5YZG2.js} +4 -4
  57. package/dist/{pybAgentStreamJsonSession-BVEOPLLB.js → pybAgentStreamJsonSession-4RWG6JK5.js} +1 -1
  58. package/dist/{pybHooks-7IA4RGWO.js → pybHooks-QETCGTLZ.js} +4 -4
  59. package/dist/query-7XGQHTXD.js +50 -0
  60. package/dist/{ripgrep-O6TUNRCS.js → ripgrep-K65FMS5D.js} +3 -3
  61. package/dist/{skillMarketplace-VEQDTI2D.js → skillMarketplace-6JTAOH2Y.js} +3 -3
  62. package/dist/{state-LTYC7FWM.js → state-HSCSCTYO.js} +2 -2
  63. package/dist/{theme-DSMWYVRU.js → theme-G5Q72YY2.js} +5 -5
  64. package/dist/{toolPermissionSettings-KPHYGSEV.js → toolPermissionSettings-F2TAYMPN.js} +6 -6
  65. package/dist/tools-VGO22KBH.js +47 -0
  66. package/dist/{userInput-MJV7EZ63.js → userInput-IBOVQP55.js} +27 -27
  67. package/package.json +3 -2
  68. package/dist/REPL-ZCISMY6V.js +0 -42
  69. package/dist/chunk-DSN5QDEO.js.map +0 -7
  70. package/dist/chunk-V6OEXS6Q.js.map +0 -7
  71. package/dist/commands-DEA7LLFV.js +0 -46
  72. package/dist/prompts-AXUYJN3W.js +0 -48
  73. package/dist/query-2WUDCNVP.js +0 -50
  74. package/dist/tools-CB4RN64P.js +0 -47
  75. /package/dist/{REPL-ZCISMY6V.js.map → REPL-WA4MK5OC.js.map} +0 -0
  76. /package/dist/{acp-FWHP4TBN.js.map → acp-5POJPC6E.js.map} +0 -0
  77. /package/dist/{agentsValidate-ZEBJPCBP.js.map → agentsValidate-HXRHSV6Z.js.map} +0 -0
  78. /package/dist/{ask-5TCVL3VX.js.map → ask-TEOV4T65.js.map} +0 -0
  79. /package/dist/{autoUpdater-3TTVUMCJ.js.map → autoUpdater-O73TSVSB.js.map} +0 -0
  80. /package/dist/{chunk-L3CRUW5N.js.map → chunk-6TCMZRGU.js.map} +0 -0
  81. /package/dist/{chunk-E5AKMKAN.js.map → chunk-6WEKTLK3.js.map} +0 -0
  82. /package/dist/{chunk-ADORPEAW.js.map → chunk-CL4HULSZ.js.map} +0 -0
  83. /package/dist/{chunk-LWQDVWXJ.js.map → chunk-IGUM6BLV.js.map} +0 -0
  84. /package/dist/{chunk-VJJWEHXV.js.map → chunk-JFAMPGKZ.js.map} +0 -0
  85. /package/dist/{chunk-DLL2KASH.js.map → chunk-JGWTGEOZ.js.map} +0 -0
  86. /package/dist/{chunk-P2UA7K7C.js.map → chunk-JIR4R742.js.map} +0 -0
  87. /package/dist/{chunk-M7WVMEUD.js.map → chunk-KEG5AM6A.js.map} +0 -0
  88. /package/dist/{chunk-ZJRV37OB.js.map → chunk-L4SLWLL4.js.map} +0 -0
  89. /package/dist/{chunk-MFGMZQ5K.js.map → chunk-LV4ZPXWT.js.map} +0 -0
  90. /package/dist/{chunk-BWW4W5S3.js.map → chunk-PIBCLO26.js.map} +0 -0
  91. /package/dist/{chunk-7LAOOICJ.js.map → chunk-PNWXLCCW.js.map} +0 -0
  92. /package/dist/{chunk-UFWHOIFA.js.map → chunk-PUFNVFP5.js.map} +0 -0
  93. /package/dist/{chunk-LIPAFDDK.js.map → chunk-QEFBT5UA.js.map} +0 -0
  94. /package/dist/{chunk-G4BXBJ4S.js.map → chunk-R7ZFYQXK.js.map} +0 -0
  95. /package/dist/{chunk-FJ5SYR7F.js.map → chunk-S75I3PUO.js.map} +0 -0
  96. /package/dist/{chunk-CCTW7Q7I.js.map → chunk-SUKOZLBC.js.map} +0 -0
  97. /package/dist/{chunk-H7QRLSF4.js.map → chunk-SWOOXSKP.js.map} +0 -0
  98. /package/dist/{chunk-7SOGBPYD.js.map → chunk-UMS7XQYU.js.map} +0 -0
  99. /package/dist/{chunk-CRYTR7MS.js.map → chunk-WHIPLCBW.js.map} +0 -0
  100. /package/dist/{chunk-U54F36AF.js.map → chunk-XCPLWODM.js.map} +0 -0
  101. /package/dist/{chunk-QAQGPGLD.js.map → chunk-Z3V7WH6D.js.map} +0 -0
  102. /package/dist/{chunk-ABDKXH43.js.map → chunk-ZGSLNR2O.js.map} +0 -0
  103. /package/dist/{chunk-XCYNR4QA.js.map → chunk-ZNVJWNLM.js.map} +0 -0
  104. /package/dist/{cli-GDYU6HYF.js.map → cli-DK5VZSFA.js.map} +0 -0
  105. /package/dist/{commands-DEA7LLFV.js.map → commands-SAN2D4PV.js.map} +0 -0
  106. /package/dist/{config-XQT24WCE.js.map → config-2NHTK3T3.js.map} +0 -0
  107. /package/dist/{context-DB6LRXYB.js.map → context-YXDR3PBY.js.map} +0 -0
  108. /package/dist/{customCommands-RN77SRIF.js.map → customCommands-RKEKL7UW.js.map} +0 -0
  109. /package/dist/{env-OQX6MGZZ.js.map → env-ABU5BS5B.js.map} +0 -0
  110. /package/dist/{llm-6NG2NWFG.js.map → llm-EOQAKUSP.js.map} +0 -0
  111. /package/dist/{llmLazy-7SHYMBDJ.js.map → llmLazy-QHQSM3F2.js.map} +0 -0
  112. /package/dist/{loader-7NAUG6D6.js.map → loader-TQ2MULMI.js.map} +0 -0
  113. /package/dist/{mcp-Q6RTTHJD.js.map → mcp-46XOJIMC.js.map} +0 -0
  114. /package/dist/{mentionProcessor-IQQZDOUW.js.map → mentionProcessor-5T4VZVF7.js.map} +0 -0
  115. /package/dist/{messages-FNAIGZTM.js.map → messages-5OPJLQVO.js.map} +0 -0
  116. /package/dist/{model-IP76FW55.js.map → model-BEHNOHSJ.js.map} +0 -0
  117. /package/dist/{openai-ETZZQV2T.js.map → openai-QTP4KHVU.js.map} +0 -0
  118. /package/dist/{outputStyles-V5JRED7X.js.map → outputStyles-BO7PRD3U.js.map} +0 -0
  119. /package/dist/{pluginRuntime-JCULYGGU.js.map → pluginRuntime-6UJECISI.js.map} +0 -0
  120. /package/dist/{pluginValidation-3WIA2IUE.js.map → pluginValidation-4Q547BHV.js.map} +0 -0
  121. /package/dist/{prompts-AXUYJN3W.js.map → prompts-XFLVQ6CA.js.map} +0 -0
  122. /package/dist/{pybAgentSessionLoad-VWCWWEZK.js.map → pybAgentSessionLoad-2G57VU66.js.map} +0 -0
  123. /package/dist/{pybAgentSessionResume-W4757NLE.js.map → pybAgentSessionResume-K7O5YZG2.js.map} +0 -0
  124. /package/dist/{pybAgentStreamJsonSession-BVEOPLLB.js.map → pybAgentStreamJsonSession-4RWG6JK5.js.map} +0 -0
  125. /package/dist/{pybHooks-7IA4RGWO.js.map → pybHooks-QETCGTLZ.js.map} +0 -0
  126. /package/dist/{query-2WUDCNVP.js.map → query-7XGQHTXD.js.map} +0 -0
  127. /package/dist/{ripgrep-O6TUNRCS.js.map → ripgrep-K65FMS5D.js.map} +0 -0
  128. /package/dist/{skillMarketplace-VEQDTI2D.js.map → skillMarketplace-6JTAOH2Y.js.map} +0 -0
  129. /package/dist/{state-LTYC7FWM.js.map → state-HSCSCTYO.js.map} +0 -0
  130. /package/dist/{theme-DSMWYVRU.js.map → theme-G5Q72YY2.js.map} +0 -0
  131. /package/dist/{toolPermissionSettings-KPHYGSEV.js.map → toolPermissionSettings-F2TAYMPN.js.map} +0 -0
  132. /package/dist/{tools-CB4RN64P.js.map → tools-VGO22KBH.js.map} +0 -0
  133. /package/dist/{userInput-MJV7EZ63.js.map → userInput-IBOVQP55.js.map} +0 -0
@@ -2,7 +2,7 @@ import { createRequire as __pybCreateRequire } from "node:module";
2
2
  const require = __pybCreateRequire(import.meta.url);
3
3
  import {
4
4
  listPybAgentSessions
5
- } from "./chunk-FJ5SYR7F.js";
5
+ } from "./chunk-S75I3PUO.js";
6
6
  import {
7
7
  DEFAULT_TIMEOUT_MS,
8
8
  FallbackToolUseRejectedMessage,
@@ -16,11 +16,11 @@ import {
16
16
  listMCPServers,
17
17
  loadMergedSettings,
18
18
  normalizeSandboxRuntimeConfigFromSettings
19
- } from "./chunk-UFWHOIFA.js";
19
+ } from "./chunk-PUFNVFP5.js";
20
20
  import {
21
21
  formatValidationResult,
22
22
  validatePluginOrMarketplacePath
23
- } from "./chunk-LIPAFDDK.js";
23
+ } from "./chunk-QEFBT5UA.js";
24
24
  import {
25
25
  addMarketplace,
26
26
  disableSkillPlugin,
@@ -33,15 +33,15 @@ import {
33
33
  refreshMarketplaceAsync,
34
34
  removeMarketplace,
35
35
  uninstallSkillPlugin
36
- } from "./chunk-QAQGPGLD.js";
36
+ } from "./chunk-Z3V7WH6D.js";
37
37
  import {
38
38
  loadPybAgentSessionMessages
39
- } from "./chunk-ABDKXH43.js";
39
+ } from "./chunk-ZGSLNR2O.js";
40
40
  import {
41
41
  appendSessionCustomTitleRecord,
42
42
  appendSessionJsonlFromMessage,
43
43
  appendSessionTagRecord
44
- } from "./chunk-G4BXBJ4S.js";
44
+ } from "./chunk-R7ZFYQXK.js";
45
45
  import {
46
46
  getRequestStatus,
47
47
  setRequestStatus,
@@ -58,7 +58,7 @@ import {
58
58
  runStopHooks,
59
59
  runUserPromptSubmitHooks,
60
60
  updateHookTranscriptForMessages
61
- } from "./chunk-ZJRV37OB.js";
61
+ } from "./chunk-L4SLWLL4.js";
62
62
  import {
63
63
  getPybAgentSessionId,
64
64
  setPybAgentSessionId
@@ -71,35 +71,35 @@ import {
71
71
  getOutputStyleSystemPromptAdditions,
72
72
  resolveOutputStyleName,
73
73
  setCurrentOutputStyle
74
- } from "./chunk-L3CRUW5N.js";
74
+ } from "./chunk-6TCMZRGU.js";
75
75
  import {
76
76
  fetchCustomModels,
77
77
  getModelFeatures
78
- } from "./chunk-MFGMZQ5K.js";
78
+ } from "./chunk-LV4ZPXWT.js";
79
79
  import {
80
80
  queryLLM,
81
81
  queryQuick,
82
82
  verifyApiKey
83
- } from "./chunk-XCYNR4QA.js";
83
+ } from "./chunk-ZNVJWNLM.js";
84
84
  import {
85
85
  listAllContentFiles,
86
86
  ripGrep,
87
87
  tree
88
- } from "./chunk-VJJWEHXV.js";
88
+ } from "./chunk-JFAMPGKZ.js";
89
89
  import {
90
90
  getCustomCommandDirectories,
91
91
  hasCustomCommands,
92
92
  loadCustomCommands,
93
93
  reloadCustomCommands
94
- } from "./chunk-CCTW7Q7I.js";
94
+ } from "./chunk-SUKOZLBC.js";
95
95
  import {
96
96
  loadToolPermissionContextFromDisk,
97
97
  persistToolPermissionUpdateToDisk
98
- } from "./chunk-DLL2KASH.js";
98
+ } from "./chunk-JGWTGEOZ.js";
99
99
  import {
100
100
  getSettingsFileCandidates,
101
101
  loadSettingsWithLegacyFallback
102
- } from "./chunk-7LAOOICJ.js";
102
+ } from "./chunk-PNWXLCCW.js";
103
103
  import {
104
104
  applyToolPermissionContextUpdate,
105
105
  createDefaultToolPermissionContext
@@ -112,7 +112,7 @@ import {
112
112
  resetReminderSession,
113
113
  setTodos,
114
114
  systemReminderService
115
- } from "./chunk-CRYTR7MS.js";
115
+ } from "./chunk-WHIPLCBW.js";
116
116
  import {
117
117
  getSessionState
118
118
  } from "./chunk-ERMQRV55.js";
@@ -121,7 +121,7 @@ import {
121
121
  getActiveAgents,
122
122
  getAgentByType,
123
123
  getAllAgents
124
- } from "./chunk-BWW4W5S3.js";
124
+ } from "./chunk-PIBCLO26.js";
125
125
  import {
126
126
  getSessionPlugins
127
127
  } from "./chunk-BJSWTHRM.js";
@@ -154,22 +154,22 @@ import {
154
154
  processUserInput,
155
155
  reorderMessages,
156
156
  stripSystemMessages
157
- } from "./chunk-U54F36AF.js";
157
+ } from "./chunk-XCPLWODM.js";
158
158
  import {
159
159
  ModelManager,
160
160
  getModelManager,
161
161
  isDefaultSlowAndCapableModel
162
- } from "./chunk-7SOGBPYD.js";
162
+ } from "./chunk-UMS7XQYU.js";
163
163
  import {
164
164
  getCodeStyle,
165
165
  getContext,
166
166
  getGitState,
167
167
  getIsGit,
168
168
  getProjectDocs
169
- } from "./chunk-E5AKMKAN.js";
169
+ } from "./chunk-6WEKTLK3.js";
170
170
  import {
171
171
  getTheme
172
- } from "./chunk-H7QRLSF4.js";
172
+ } from "./chunk-SWOOXSKP.js";
173
173
  import {
174
174
  DEFAULT_GLOBAL_CONFIG,
175
175
  enableConfigs,
@@ -182,7 +182,7 @@ import {
182
182
  saveGlobalConfig,
183
183
  setAllPointersToModel,
184
184
  setModelPointer
185
- } from "./chunk-P2UA7K7C.js";
185
+ } from "./chunk-JIR4R742.js";
186
186
  import {
187
187
  AbortError
188
188
  } from "./chunk-RQVLBMP7.js";
@@ -191,7 +191,7 @@ import {
191
191
  getCurrentRequest,
192
192
  logUserFriendly,
193
193
  markPhase
194
- } from "./chunk-LWQDVWXJ.js";
194
+ } from "./chunk-IGUM6BLV.js";
195
195
  import {
196
196
  ASCII_LOGO,
197
197
  BunShell,
@@ -227,10 +227,10 @@ import {
227
227
  renderBashNotification,
228
228
  setActivePlanConversationKey,
229
229
  setCwd
230
- } from "./chunk-DSN5QDEO.js";
230
+ } from "./chunk-RK6MQL4B.js";
231
231
  import {
232
232
  MACRO
233
- } from "./chunk-RI3CMWN4.js";
233
+ } from "./chunk-IL74HDNG.js";
234
234
  import {
235
235
  formatTotalCost,
236
236
  getTotalAPIDuration,
@@ -418,7 +418,7 @@ var getCommandSubcommandPrefix = memoize(
418
418
  var getCommandPrefix = memoize(
419
419
  async (command4, abortSignal) => {
420
420
  const { systemPrompt, userPrompt } = buildBashCommandPrefixDetectionPrompt(command4);
421
- const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-6NG2NWFG.js");
421
+ const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-EOQAKUSP.js");
422
422
  const response = await queryQuick2({
423
423
  systemPrompt,
424
424
  userPrompt,
@@ -4458,7 +4458,7 @@ function formatParseError(error) {
4458
4458
  return error instanceof Error ? error.message : String(error);
4459
4459
  }
4460
4460
  async function defaultGateQuery(args) {
4461
- const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-6NG2NWFG.js");
4461
+ const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-EOQAKUSP.js");
4462
4462
  const messages = [
4463
4463
  {
4464
4464
  type: "user",
@@ -11013,7 +11013,7 @@ async function createAndStoreApiKey(accessToken) {
11013
11013
  }
11014
11014
  saveGlobalConfig(config2);
11015
11015
  try {
11016
- const { resetAnthropicClient } = await import("./llm-6NG2NWFG.js");
11016
+ const { resetAnthropicClient } = await import("./llm-EOQAKUSP.js");
11017
11017
  resetAnthropicClient();
11018
11018
  } catch {
11019
11019
  }
@@ -15295,7 +15295,7 @@ async function refreshPluginRuntimeFromInstalls() {
15295
15295
  const existingRoots = getSessionPlugins().map((p) => p.rootDir);
15296
15296
  const dirs = Array.from(/* @__PURE__ */ new Set([...existingRoots, ...installedRoots]));
15297
15297
  if (dirs.length === 0) return [];
15298
- const { configureSessionPlugins } = await import("./pluginRuntime-JCULYGGU.js");
15298
+ const { configureSessionPlugins } = await import("./pluginRuntime-6UJECISI.js");
15299
15299
  const { errors } = await configureSessionPlugins({ pluginDirs: dirs });
15300
15300
  return errors;
15301
15301
  }
@@ -15964,7 +15964,7 @@ async function call(onDone, context) {
15964
15964
  ModelConfig,
15965
15965
  {
15966
15966
  onClose: () => {
15967
- import("./model-IP76FW55.js").then(({ reloadModelManager: reloadModelManager2 }) => {
15967
+ import("./model-BEHNOHSJ.js").then(({ reloadModelManager: reloadModelManager2 }) => {
15968
15968
  reloadModelManager2();
15969
15969
  triggerModelConfigChange();
15970
15970
  onDone();
@@ -23223,7 +23223,7 @@ function useStatusLine() {
23223
23223
  // src/ui/components/PromptInput.tsx
23224
23224
  async function interpretHashCommand(input) {
23225
23225
  try {
23226
- const { queryQuick: queryQuick2 } = await import("./llm-6NG2NWFG.js");
23226
+ const { queryQuick: queryQuick2 } = await import("./llm-EOQAKUSP.js");
23227
23227
  const systemPrompt = [
23228
23228
  "You're helping the user structure notes that will be added to their PYB.md file.",
23229
23229
  "Format the user's input into a well-structured note that will be useful for later reference.",
@@ -23536,7 +23536,7 @@ function PromptInput({
23536
23536
  if (messages2.length) {
23537
23537
  if (mode === "bash") {
23538
23538
  onQuery(messages2, newAbortController).then(async () => {
23539
- const { getCwd: getCwd2 } = await import("./state-LTYC7FWM.js");
23539
+ const { getCwd: getCwd2 } = await import("./state-HSCSCTYO.js");
23540
23540
  setCurrentPwd(getCwd2());
23541
23541
  });
23542
23542
  } else {
@@ -26322,7 +26322,7 @@ import { homedir as homedir7 } from "os";
26322
26322
  // src/commands/agents/generation.ts
26323
26323
  import { randomUUID as randomUUID5 } from "crypto";
26324
26324
  async function generateAgentWithClaude(prompt) {
26325
- const { queryModel } = await import("./llm-6NG2NWFG.js");
26325
+ const { queryModel } = await import("./llm-EOQAKUSP.js");
26326
26326
  const systemPrompt = `You are an expert at creating AI agent configurations. Based on the user's description, generate a specialized agent configuration.
26327
26327
 
26328
26328
  Return your response as a JSON object with exactly these fields:
@@ -29490,6 +29490,87 @@ function WebFetchPermissionRequest({
29490
29490
  );
29491
29491
  }
29492
29492
 
29493
+ // src/utils/bash-parser/parser.ts
29494
+ import { parse as parse7 } from "shell-quote";
29495
+ function parseBashScript(script) {
29496
+ let entries;
29497
+ try {
29498
+ entries = parse7(script);
29499
+ } catch (e) {
29500
+ return [];
29501
+ }
29502
+ const commands = [];
29503
+ let currentArgs = [];
29504
+ const flush = () => {
29505
+ if (currentArgs.length > 0) {
29506
+ commands.push({
29507
+ program: currentArgs[0],
29508
+ args: currentArgs.slice(1),
29509
+ original: currentArgs.join(" ")
29510
+ // Approximate reconstruction
29511
+ });
29512
+ currentArgs = [];
29513
+ }
29514
+ };
29515
+ for (const entry of entries) {
29516
+ if (typeof entry === "string") {
29517
+ currentArgs.push(entry);
29518
+ } else if (entry && typeof entry === "object" && "op" in entry) {
29519
+ if (entry.op === "glob") {
29520
+ currentArgs.push(entry.pattern);
29521
+ } else {
29522
+ flush();
29523
+ }
29524
+ } else if (entry && typeof entry === "object" && "comment" in entry) {
29525
+ }
29526
+ }
29527
+ flush();
29528
+ return commands;
29529
+ }
29530
+
29531
+ // src/utils/bash-parser/validator.ts
29532
+ async function validateSafety(script) {
29533
+ const commands = parseBashScript(script);
29534
+ for (const cmd of commands) {
29535
+ if (cmd.program === "rm") {
29536
+ const isRecursive = cmd.args.some((arg) => /^-.*r/.test(arg));
29537
+ const criticalPaths = [
29538
+ "/",
29539
+ "/*",
29540
+ "/etc",
29541
+ "/var",
29542
+ "/usr",
29543
+ "/bin",
29544
+ "/sbin",
29545
+ "/boot",
29546
+ "/dev",
29547
+ "/sys",
29548
+ "/proc",
29549
+ "/lib",
29550
+ "/lib64",
29551
+ "/opt",
29552
+ "C:\\",
29553
+ "C:/",
29554
+ "C:\\Windows",
29555
+ "C:/Windows",
29556
+ "C:\\Program Files",
29557
+ "C:/Program Files"
29558
+ ];
29559
+ const targetsCritical = cmd.args.some((arg) => {
29560
+ return criticalPaths.some(
29561
+ (critical) => arg === critical || arg.startsWith(critical + "/") || arg.startsWith(critical + "\\")
29562
+ ) || arg.startsWith("..");
29563
+ });
29564
+ if (isRecursive && targetsCritical) {
29565
+ throw new Error(`Security Alert: Potentially dangerous recursive deletion detected: "${cmd.original}". Execution blocked.`);
29566
+ }
29567
+ if (cmd.args.includes("/") || cmd.args.includes("C:\\") || cmd.args.includes("C:/")) {
29568
+ throw new Error(`Security Alert: Root deletion detected: "${cmd.original}". Execution blocked.`);
29569
+ }
29570
+ }
29571
+ }
29572
+ }
29573
+
29493
29574
  // src/tools/system/BashTool/BashTool.tsx
29494
29575
  function formatDuration(ms) {
29495
29576
  if (ms < 6e4) {
@@ -29585,6 +29666,14 @@ var BashTool = {
29585
29666
  },
29586
29667
  async validateInput({ command: command4, timeout, dangerouslyDisableSandbox, cwd: cwd2 }, context) {
29587
29668
  const trimmed = command4.trim();
29669
+ try {
29670
+ await validateSafety(trimmed);
29671
+ } catch (e) {
29672
+ return {
29673
+ result: false,
29674
+ message: e.message
29675
+ };
29676
+ }
29588
29677
  if (/^ls(\s+|$)/.test(trimmed) && !trimmed.includes("-")) {
29589
29678
  return {
29590
29679
  result: false,