pybao-cli 1.3.32 → 1.3.34

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-IWBQN6HP.js +42 -0
  2. package/dist/{acp-4ZALXJWJ.js → acp-WJTTKEBR.js} +26 -26
  3. package/dist/{agentsValidate-5BMFDNLZ.js → agentsValidate-S4GCGMEC.js} +7 -7
  4. package/dist/{ask-XZ7Q2LWW.js → ask-EUVGTRCX.js} +25 -25
  5. package/dist/{autoUpdater-QU5IZU2U.js → autoUpdater-32CWSBOB.js} +3 -3
  6. package/dist/{chunk-PBOVDFII.js → chunk-32D7JR65.js} +3 -3
  7. package/dist/{chunk-TNFPDMGQ.js → chunk-3VTHEXMT.js} +1 -1
  8. package/dist/{chunk-FABMZ3WX.js → chunk-4NU6PK6T.js} +1 -1
  9. package/dist/{chunk-XMB7CJI7.js → chunk-5JDVI7GW.js} +1 -1
  10. package/dist/{chunk-RARRSUNF.js → chunk-5Q2U3IZE.js} +1 -1
  11. package/dist/{chunk-CCK4IGN3.js → chunk-726PHS6L.js} +2 -2
  12. package/dist/{chunk-4HMCVYMA.js → chunk-BQHFZRKF.js} +2 -2
  13. package/dist/{chunk-D4NCADRR.js → chunk-FLHXVFIV.js} +3 -3
  14. package/dist/{chunk-LJ6LV7JO.js → chunk-FTQSOY6K.js} +317 -100
  15. package/dist/chunk-FTQSOY6K.js.map +7 -0
  16. package/dist/{chunk-VMFZ5HAJ.js → chunk-HMOS6HMW.js} +2 -2
  17. package/dist/{chunk-C5CR2IE3.js → chunk-IBBJEBE5.js} +3 -3
  18. package/dist/{chunk-4577DPJH.js → chunk-JH6N5TL7.js} +1 -1
  19. package/dist/{chunk-N6YGX3WX.js → chunk-KOURPHWR.js} +3 -3
  20. package/dist/{chunk-QJSZOXJD.js → chunk-KRKZ7SUM.js} +1 -1
  21. package/dist/{chunk-HQABGWIQ.js → chunk-LKNM2P6W.js} +55 -38
  22. package/dist/chunk-LKNM2P6W.js.map +7 -0
  23. package/dist/{chunk-VJCNG6ED.js → chunk-NIB4ZIK5.js} +2 -2
  24. package/dist/{chunk-5YXQUZXN.js → chunk-OQW6JYPZ.js} +2 -2
  25. package/dist/{chunk-TLE5RHB2.js → chunk-OVQ5QUJ3.js} +1 -1
  26. package/dist/{chunk-CA4YEDR6.js → chunk-P6FNKBQJ.js} +4 -4
  27. package/dist/{chunk-6434YR2Y.js → chunk-QE2PGZGS.js} +7 -6
  28. package/dist/{chunk-6434YR2Y.js.map → chunk-QE2PGZGS.js.map} +2 -2
  29. package/dist/{chunk-JOLXQZEA.js → chunk-QUJBVQSP.js} +2 -2
  30. package/dist/{chunk-DUHC6VET.js → chunk-RIHMXFFG.js} +3 -3
  31. package/dist/{chunk-7JI2ZPUM.js → chunk-SV3DN3VE.js} +1 -1
  32. package/dist/{chunk-LAZ6TPQW.js → chunk-UVKIAW3Z.js} +3 -3
  33. package/dist/{chunk-3X7Z57YB.js → chunk-UVVZTARX.js} +1 -1
  34. package/dist/{chunk-3X7Z57YB.js.map → chunk-UVVZTARX.js.map} +1 -1
  35. package/dist/{chunk-U6UWL5I5.js → chunk-WBTDU532.js} +1 -1
  36. package/dist/{chunk-Z7K3JP6F.js → chunk-YOWMHJH6.js} +3 -3
  37. package/dist/{cli-3RBDVL6F.js → cli-F766ZCM2.js} +77 -77
  38. package/dist/commands-KSVGHKZ3.js +46 -0
  39. package/dist/{config-XCEWSQ6D.js → config-DNR5I7TI.js} +4 -4
  40. package/dist/{context-WXZRC543.js → context-KIYDDXQJ.js} +5 -5
  41. package/dist/{customCommands-KDY25Z64.js → customCommands-ZK5VSFOJ.js} +4 -4
  42. package/dist/{env-HKCUKG2L.js → env-5CWVPEYI.js} +2 -2
  43. package/dist/index.js +3 -3
  44. package/dist/{llm-CKQ2OLUM.js → llm-MPPYD5AB.js} +26 -26
  45. package/dist/{llmLazy-HUZ6GKNB.js → llmLazy-MTBA7FLL.js} +1 -1
  46. package/dist/{loader-NZFQUI4N.js → loader-J6BRNIJD.js} +4 -4
  47. package/dist/{mcp-E7DJO3N4.js → mcp-LSB7UIUI.js} +7 -7
  48. package/dist/{mentionProcessor-W5FUTA47.js → mentionProcessor-VP34BJNP.js} +5 -5
  49. package/dist/{messages-5L5NV6EN.js → messages-UV2BAD2A.js} +1 -1
  50. package/dist/{model-NSMV7O5V.js → model-NUSZPX3C.js} +5 -5
  51. package/dist/{openai-FXXGAU6Q.js → openai-OM36ND7B.js} +5 -5
  52. package/dist/{outputStyles-5CP2F76C.js → outputStyles-QSSHNN3O.js} +4 -4
  53. package/dist/{pluginRuntime-55LJGUQI.js → pluginRuntime-ER5JNKMN.js} +6 -6
  54. package/dist/{pluginValidation-KWGOZJ27.js → pluginValidation-WPICBG63.js} +6 -6
  55. package/dist/prompts-WFITK43B.js +48 -0
  56. package/dist/{pybAgentSessionLoad-T6BMJFLH.js → pybAgentSessionLoad-T6XQBO7L.js} +4 -4
  57. package/dist/{pybAgentSessionResume-X3ALXJPM.js → pybAgentSessionResume-NNH2ZNF5.js} +4 -4
  58. package/dist/{pybAgentStreamJsonSession-YMMUZL34.js → pybAgentStreamJsonSession-3T6PGOXY.js} +1 -1
  59. package/dist/{pybHooks-SPGN3URJ.js → pybHooks-KHDCNOEQ.js} +4 -4
  60. package/dist/query-B2JI5U6Y.js +50 -0
  61. package/dist/{ripgrep-GRSFU3TD.js → ripgrep-R2JWD7UF.js} +3 -3
  62. package/dist/{skillMarketplace-47FUEYYV.js → skillMarketplace-UANANGI5.js} +3 -3
  63. package/dist/{state-46DOLHGZ.js → state-OLIUOKSV.js} +2 -2
  64. package/dist/{theme-XP5WLNHL.js → theme-4C7TQX2P.js} +5 -5
  65. package/dist/{toolPermissionSettings-FEGEZVJB.js → toolPermissionSettings-LTCRNM4L.js} +6 -6
  66. package/dist/tools-3NJ3ZG35.js +47 -0
  67. package/dist/{userInput-TIPIRVR7.js → userInput-4ERN47ML.js} +27 -27
  68. package/package.json +1 -1
  69. package/dist/REPL-MLGMGJVD.js +0 -42
  70. package/dist/chunk-HQABGWIQ.js.map +0 -7
  71. package/dist/chunk-LJ6LV7JO.js.map +0 -7
  72. package/dist/commands-WAETNTC3.js +0 -46
  73. package/dist/prompts-MHU5NRX5.js +0 -48
  74. package/dist/query-V2IPW4BC.js +0 -50
  75. package/dist/tools-CPJW3AHU.js +0 -47
  76. /package/dist/{REPL-MLGMGJVD.js.map → REPL-IWBQN6HP.js.map} +0 -0
  77. /package/dist/{acp-4ZALXJWJ.js.map → acp-WJTTKEBR.js.map} +0 -0
  78. /package/dist/{agentsValidate-5BMFDNLZ.js.map → agentsValidate-S4GCGMEC.js.map} +0 -0
  79. /package/dist/{ask-XZ7Q2LWW.js.map → ask-EUVGTRCX.js.map} +0 -0
  80. /package/dist/{autoUpdater-QU5IZU2U.js.map → autoUpdater-32CWSBOB.js.map} +0 -0
  81. /package/dist/{chunk-PBOVDFII.js.map → chunk-32D7JR65.js.map} +0 -0
  82. /package/dist/{chunk-TNFPDMGQ.js.map → chunk-3VTHEXMT.js.map} +0 -0
  83. /package/dist/{chunk-FABMZ3WX.js.map → chunk-4NU6PK6T.js.map} +0 -0
  84. /package/dist/{chunk-XMB7CJI7.js.map → chunk-5JDVI7GW.js.map} +0 -0
  85. /package/dist/{chunk-RARRSUNF.js.map → chunk-5Q2U3IZE.js.map} +0 -0
  86. /package/dist/{chunk-CCK4IGN3.js.map → chunk-726PHS6L.js.map} +0 -0
  87. /package/dist/{chunk-4HMCVYMA.js.map → chunk-BQHFZRKF.js.map} +0 -0
  88. /package/dist/{chunk-D4NCADRR.js.map → chunk-FLHXVFIV.js.map} +0 -0
  89. /package/dist/{chunk-VMFZ5HAJ.js.map → chunk-HMOS6HMW.js.map} +0 -0
  90. /package/dist/{chunk-C5CR2IE3.js.map → chunk-IBBJEBE5.js.map} +0 -0
  91. /package/dist/{chunk-4577DPJH.js.map → chunk-JH6N5TL7.js.map} +0 -0
  92. /package/dist/{chunk-N6YGX3WX.js.map → chunk-KOURPHWR.js.map} +0 -0
  93. /package/dist/{chunk-QJSZOXJD.js.map → chunk-KRKZ7SUM.js.map} +0 -0
  94. /package/dist/{chunk-VJCNG6ED.js.map → chunk-NIB4ZIK5.js.map} +0 -0
  95. /package/dist/{chunk-5YXQUZXN.js.map → chunk-OQW6JYPZ.js.map} +0 -0
  96. /package/dist/{chunk-TLE5RHB2.js.map → chunk-OVQ5QUJ3.js.map} +0 -0
  97. /package/dist/{chunk-CA4YEDR6.js.map → chunk-P6FNKBQJ.js.map} +0 -0
  98. /package/dist/{chunk-JOLXQZEA.js.map → chunk-QUJBVQSP.js.map} +0 -0
  99. /package/dist/{chunk-DUHC6VET.js.map → chunk-RIHMXFFG.js.map} +0 -0
  100. /package/dist/{chunk-7JI2ZPUM.js.map → chunk-SV3DN3VE.js.map} +0 -0
  101. /package/dist/{chunk-LAZ6TPQW.js.map → chunk-UVKIAW3Z.js.map} +0 -0
  102. /package/dist/{chunk-U6UWL5I5.js.map → chunk-WBTDU532.js.map} +0 -0
  103. /package/dist/{chunk-Z7K3JP6F.js.map → chunk-YOWMHJH6.js.map} +0 -0
  104. /package/dist/{cli-3RBDVL6F.js.map → cli-F766ZCM2.js.map} +0 -0
  105. /package/dist/{commands-WAETNTC3.js.map → commands-KSVGHKZ3.js.map} +0 -0
  106. /package/dist/{config-XCEWSQ6D.js.map → config-DNR5I7TI.js.map} +0 -0
  107. /package/dist/{context-WXZRC543.js.map → context-KIYDDXQJ.js.map} +0 -0
  108. /package/dist/{customCommands-KDY25Z64.js.map → customCommands-ZK5VSFOJ.js.map} +0 -0
  109. /package/dist/{env-HKCUKG2L.js.map → env-5CWVPEYI.js.map} +0 -0
  110. /package/dist/{llm-CKQ2OLUM.js.map → llm-MPPYD5AB.js.map} +0 -0
  111. /package/dist/{llmLazy-HUZ6GKNB.js.map → llmLazy-MTBA7FLL.js.map} +0 -0
  112. /package/dist/{loader-NZFQUI4N.js.map → loader-J6BRNIJD.js.map} +0 -0
  113. /package/dist/{mcp-E7DJO3N4.js.map → mcp-LSB7UIUI.js.map} +0 -0
  114. /package/dist/{mentionProcessor-W5FUTA47.js.map → mentionProcessor-VP34BJNP.js.map} +0 -0
  115. /package/dist/{messages-5L5NV6EN.js.map → messages-UV2BAD2A.js.map} +0 -0
  116. /package/dist/{model-NSMV7O5V.js.map → model-NUSZPX3C.js.map} +0 -0
  117. /package/dist/{openai-FXXGAU6Q.js.map → openai-OM36ND7B.js.map} +0 -0
  118. /package/dist/{outputStyles-5CP2F76C.js.map → outputStyles-QSSHNN3O.js.map} +0 -0
  119. /package/dist/{pluginRuntime-55LJGUQI.js.map → pluginRuntime-ER5JNKMN.js.map} +0 -0
  120. /package/dist/{pluginValidation-KWGOZJ27.js.map → pluginValidation-WPICBG63.js.map} +0 -0
  121. /package/dist/{prompts-MHU5NRX5.js.map → prompts-WFITK43B.js.map} +0 -0
  122. /package/dist/{pybAgentSessionLoad-T6BMJFLH.js.map → pybAgentSessionLoad-T6XQBO7L.js.map} +0 -0
  123. /package/dist/{pybAgentSessionResume-X3ALXJPM.js.map → pybAgentSessionResume-NNH2ZNF5.js.map} +0 -0
  124. /package/dist/{pybAgentStreamJsonSession-YMMUZL34.js.map → pybAgentStreamJsonSession-3T6PGOXY.js.map} +0 -0
  125. /package/dist/{pybHooks-SPGN3URJ.js.map → pybHooks-KHDCNOEQ.js.map} +0 -0
  126. /package/dist/{query-V2IPW4BC.js.map → query-B2JI5U6Y.js.map} +0 -0
  127. /package/dist/{ripgrep-GRSFU3TD.js.map → ripgrep-R2JWD7UF.js.map} +0 -0
  128. /package/dist/{skillMarketplace-47FUEYYV.js.map → skillMarketplace-UANANGI5.js.map} +0 -0
  129. /package/dist/{state-46DOLHGZ.js.map → state-OLIUOKSV.js.map} +0 -0
  130. /package/dist/{theme-XP5WLNHL.js.map → theme-4C7TQX2P.js.map} +0 -0
  131. /package/dist/{toolPermissionSettings-FEGEZVJB.js.map → toolPermissionSettings-LTCRNM4L.js.map} +0 -0
  132. /package/dist/{tools-CPJW3AHU.js.map → tools-3NJ3ZG35.js.map} +0 -0
  133. /package/dist/{userInput-TIPIRVR7.js.map → userInput-4ERN47ML.js.map} +0 -0
@@ -6,10 +6,10 @@ import {
6
6
  } from "./chunk-ERMQRV55.js";
7
7
  import {
8
8
  debug
9
- } from "./chunk-XMB7CJI7.js";
9
+ } from "./chunk-5JDVI7GW.js";
10
10
  import {
11
11
  logError
12
- } from "./chunk-TNFPDMGQ.js";
12
+ } from "./chunk-3VTHEXMT.js";
13
13
 
14
14
  // src/utils/agent/storage.ts
15
15
  import { existsSync, readFileSync, writeFileSync, mkdirSync } from "fs";
@@ -5,12 +5,12 @@ import {
5
5
  } from "./chunk-RQVLBMP7.js";
6
6
  import {
7
7
  debug
8
- } from "./chunk-XMB7CJI7.js";
8
+ } from "./chunk-5JDVI7GW.js";
9
9
  import {
10
10
  getCwd,
11
11
  getGlobalConfigFilePath,
12
12
  logError
13
- } from "./chunk-TNFPDMGQ.js";
13
+ } from "./chunk-3VTHEXMT.js";
14
14
 
15
15
  // src/core/config/schema.ts
16
16
  function isAutoUpdaterStatus(value) {
@@ -660,7 +660,7 @@ function setModelPointer(pointer, modelName) {
660
660
  }
661
661
  };
662
662
  saveGlobalConfig(updatedConfig);
663
- import("./model-NSMV7O5V.js").then(({ reloadModelManager }) => {
663
+ import("./model-NUSZPX3C.js").then(({ reloadModelManager }) => {
664
664
  reloadModelManager();
665
665
  });
666
666
  }
@@ -4,7 +4,7 @@ import {
4
4
  BunShell,
5
5
  execFileNoThrow,
6
6
  logError
7
- } from "./chunk-TNFPDMGQ.js";
7
+ } from "./chunk-3VTHEXMT.js";
8
8
 
9
9
  // src/utils/system/ripgrep.ts
10
10
  import { rgPath } from "@vscode/ripgrep";
@@ -5,17 +5,17 @@ import {
5
5
  getGlobalConfig,
6
6
  getOrCreateUserID,
7
7
  saveCurrentProjectConfig
8
- } from "./chunk-C5CR2IE3.js";
8
+ } from "./chunk-IBBJEBE5.js";
9
9
  import {
10
10
  SESSION_ID,
11
11
  env,
12
12
  execFileNoThrow,
13
13
  getCwd,
14
14
  logError
15
- } from "./chunk-TNFPDMGQ.js";
15
+ } from "./chunk-3VTHEXMT.js";
16
16
  import {
17
17
  MACRO
18
- } from "./chunk-3X7Z57YB.js";
18
+ } from "./chunk-UVVZTARX.js";
19
19
  import {
20
20
  __require
21
21
  } from "./chunk-I3J4JYES.js";
@@ -448,7 +448,7 @@ function getLastAssistantMessageId(messages) {
448
448
 
449
449
  // src/utils/messages/index.ts
450
450
  async function processUserInput(input, mode, setToolJSX, context, pastedImages) {
451
- const impl = await import("./userInput-TIPIRVR7.js");
451
+ const impl = await import("./userInput-4ERN47ML.js");
452
452
  return impl.processUserInput(input, mode, setToolJSX, context, pastedImages);
453
453
  }
454
454
 
@@ -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-7JI2ZPUM.js";
5
+ } from "./chunk-SV3DN3VE.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-6434YR2Y.js";
19
+ } from "./chunk-QE2PGZGS.js";
20
20
  import {
21
21
  formatValidationResult,
22
22
  validatePluginOrMarketplacePath
23
- } from "./chunk-D4NCADRR.js";
23
+ } from "./chunk-FLHXVFIV.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-U6UWL5I5.js";
36
+ } from "./chunk-WBTDU532.js";
37
37
  import {
38
38
  loadPybAgentSessionMessages
39
- } from "./chunk-FABMZ3WX.js";
39
+ } from "./chunk-4NU6PK6T.js";
40
40
  import {
41
41
  appendSessionCustomTitleRecord,
42
42
  appendSessionJsonlFromMessage,
43
43
  appendSessionTagRecord
44
- } from "./chunk-5YXQUZXN.js";
44
+ } from "./chunk-OQW6JYPZ.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-Z7K3JP6F.js";
61
+ } from "./chunk-YOWMHJH6.js";
62
62
  import {
63
63
  getPybAgentSessionId,
64
64
  setPybAgentSessionId
@@ -71,34 +71,34 @@ import {
71
71
  getOutputStyleSystemPromptAdditions,
72
72
  resolveOutputStyleName,
73
73
  setCurrentOutputStyle
74
- } from "./chunk-4HMCVYMA.js";
74
+ } from "./chunk-BQHFZRKF.js";
75
75
  import {
76
76
  fetchCustomModels,
77
77
  getModelFeatures
78
- } from "./chunk-JOLXQZEA.js";
78
+ } from "./chunk-QUJBVQSP.js";
79
79
  import {
80
80
  queryLLM,
81
81
  queryQuick,
82
82
  verifyApiKey
83
- } from "./chunk-CA4YEDR6.js";
83
+ } from "./chunk-P6FNKBQJ.js";
84
84
  import {
85
85
  listAllContentFiles,
86
86
  ripGrep
87
- } from "./chunk-4577DPJH.js";
87
+ } from "./chunk-JH6N5TL7.js";
88
88
  import {
89
89
  getCustomCommandDirectories,
90
90
  hasCustomCommands,
91
91
  loadCustomCommands,
92
92
  reloadCustomCommands
93
- } from "./chunk-VJCNG6ED.js";
93
+ } from "./chunk-NIB4ZIK5.js";
94
94
  import {
95
95
  loadToolPermissionContextFromDisk,
96
96
  persistToolPermissionUpdateToDisk
97
- } from "./chunk-LAZ6TPQW.js";
97
+ } from "./chunk-UVKIAW3Z.js";
98
98
  import {
99
99
  getSettingsFileCandidates,
100
100
  loadSettingsWithLegacyFallback
101
- } from "./chunk-TLE5RHB2.js";
101
+ } from "./chunk-OVQ5QUJ3.js";
102
102
  import {
103
103
  applyToolPermissionContextUpdate,
104
104
  createDefaultToolPermissionContext
@@ -111,7 +111,7 @@ import {
111
111
  resetReminderSession,
112
112
  setTodos,
113
113
  systemReminderService
114
- } from "./chunk-VMFZ5HAJ.js";
114
+ } from "./chunk-HMOS6HMW.js";
115
115
  import {
116
116
  getSessionState
117
117
  } from "./chunk-ERMQRV55.js";
@@ -120,7 +120,7 @@ import {
120
120
  getActiveAgents,
121
121
  getAgentByType,
122
122
  getAllAgents
123
- } from "./chunk-CCK4IGN3.js";
123
+ } from "./chunk-726PHS6L.js";
124
124
  import {
125
125
  getSessionPlugins
126
126
  } from "./chunk-BJSWTHRM.js";
@@ -153,22 +153,22 @@ import {
153
153
  processUserInput,
154
154
  reorderMessages,
155
155
  stripSystemMessages
156
- } from "./chunk-QJSZOXJD.js";
156
+ } from "./chunk-KRKZ7SUM.js";
157
157
  import {
158
158
  ModelManager,
159
159
  getModelManager,
160
160
  isDefaultSlowAndCapableModel
161
- } from "./chunk-DUHC6VET.js";
161
+ } from "./chunk-RIHMXFFG.js";
162
162
  import {
163
163
  getCodeStyle,
164
164
  getContext,
165
165
  getGitState,
166
166
  getIsGit,
167
167
  getProjectDocs
168
- } from "./chunk-N6YGX3WX.js";
168
+ } from "./chunk-KOURPHWR.js";
169
169
  import {
170
170
  getTheme
171
- } from "./chunk-RARRSUNF.js";
171
+ } from "./chunk-5Q2U3IZE.js";
172
172
  import {
173
173
  DEFAULT_GLOBAL_CONFIG,
174
174
  enableConfigs,
@@ -181,7 +181,7 @@ import {
181
181
  saveGlobalConfig,
182
182
  setAllPointersToModel,
183
183
  setModelPointer
184
- } from "./chunk-C5CR2IE3.js";
184
+ } from "./chunk-IBBJEBE5.js";
185
185
  import {
186
186
  AbortError
187
187
  } from "./chunk-RQVLBMP7.js";
@@ -190,7 +190,7 @@ import {
190
190
  getCurrentRequest,
191
191
  logUserFriendly,
192
192
  markPhase
193
- } from "./chunk-XMB7CJI7.js";
193
+ } from "./chunk-5JDVI7GW.js";
194
194
  import {
195
195
  ASCII_LOGO,
196
196
  BunShell,
@@ -226,10 +226,10 @@ import {
226
226
  renderBashNotification,
227
227
  setActivePlanConversationKey,
228
228
  setCwd
229
- } from "./chunk-TNFPDMGQ.js";
229
+ } from "./chunk-3VTHEXMT.js";
230
230
  import {
231
231
  MACRO
232
- } from "./chunk-3X7Z57YB.js";
232
+ } from "./chunk-UVVZTARX.js";
233
233
  import {
234
234
  formatTotalCost,
235
235
  getTotalAPIDuration,
@@ -417,7 +417,7 @@ var getCommandSubcommandPrefix = memoize(
417
417
  var getCommandPrefix = memoize(
418
418
  async (command4, abortSignal) => {
419
419
  const { systemPrompt, userPrompt } = buildBashCommandPrefixDetectionPrompt(command4);
420
- const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-CKQ2OLUM.js");
420
+ const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-MPPYD5AB.js");
421
421
  const response = await queryQuick2({
422
422
  systemPrompt,
423
423
  userPrompt,
@@ -4457,7 +4457,7 @@ function formatParseError(error) {
4457
4457
  return error instanceof Error ? error.message : String(error);
4458
4458
  }
4459
4459
  async function defaultGateQuery(args) {
4460
- const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-CKQ2OLUM.js");
4460
+ const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-MPPYD5AB.js");
4461
4461
  const messages = [
4462
4462
  {
4463
4463
  type: "user",
@@ -6863,7 +6863,12 @@ var DESCRIPTION3 = "Read a file from the local filesystem.";
6863
6863
  var PROMPT3 = `Reads a file from the local filesystem. You can access any file directly by using this tool.
6864
6864
  Assume this tool is able to read all files on the machine. If the User provides a path to a file assume that path is valid. It is okay to read a file that does not exist; an error will be returned.
6865
6865
 
6866
- Usage:
6866
+ ## Best Practice
6867
+ - **Read vs Analyze**: Use this tool when you need to inspect full implementation details. For understanding function relationships or definitions, prefer 'LSP' tools first.
6868
+ - **Workflow**: Locate file (Glob/LSP) -> Read file (FileRead) -> Edit file.
6869
+ - **Avoid**: Do not use this to 'search' for code strings; use 'Grep' or 'LSP' for that.
6870
+
6871
+ ## Usage Details
6867
6872
  - The file_path parameter must be an absolute path, not a relative path
6868
6873
  - By default, it reads up to ${MAX_LINES_TO_READ} lines starting from the beginning of the file
6869
6874
  - You can optionally specify a line offset and limit (especially handy for long files), but it's recommended to read the whole file by not providing these parameters
@@ -6871,7 +6876,7 @@ Usage:
6871
6876
  - Results are returned using cat -n format, with line numbers starting at 1
6872
6877
  - This tool allows reading images (eg PNG, JPG, etc). When reading an image file the contents are presented visually.
6873
6878
  - This tool can read Jupyter notebooks (.ipynb files) and returns all cells with their outputs, combining code, text, and visualizations.
6874
- - This tool can only read files, not directories. To read a directory, use an ls command via the Bash tool.
6879
+ - This tool can only read files, not directories. To list files in a directory, use the 'Glob' or 'LS' tool.
6875
6880
  - You can call multiple tools in a single response. It is always better to speculatively read multiple potentially useful files in parallel.
6876
6881
  - You will regularly be asked to read screenshots. If the user provides a path to a screenshot, ALWAYS use this tool to view the file at the path. This tool will work with all temporary file paths.
6877
6882
  - If you read a file that exists but has empty contents you will receive a system reminder warning in place of file contents.`;
@@ -7901,6 +7906,7 @@ var DESCRIPTION4 = `- Fast file pattern matching tool that works with any codeba
7901
7906
  - Use this tool when you need to find files by name patterns
7902
7907
  - When you are doing an open ended search that may require multiple rounds of globbing and grepping, use the Agent tool instead
7903
7908
  - You can call multiple tools in a single response. It is always better to speculatively perform multiple searches in parallel if they are potentially useful.
7909
+ - This tool is for FINDING files. To SEE the directory structure tree, use the LS tool.
7904
7910
  `;
7905
7911
 
7906
7912
  // src/tools/filesystem/GlobTool/GlobTool.tsx
@@ -11006,7 +11012,7 @@ async function createAndStoreApiKey(accessToken) {
11006
11012
  }
11007
11013
  saveGlobalConfig(config2);
11008
11014
  try {
11009
- const { resetAnthropicClient } = await import("./llm-CKQ2OLUM.js");
11015
+ const { resetAnthropicClient } = await import("./llm-MPPYD5AB.js");
11010
11016
  resetAnthropicClient();
11011
11017
  } catch {
11012
11018
  }
@@ -15288,7 +15294,7 @@ async function refreshPluginRuntimeFromInstalls() {
15288
15294
  const existingRoots = getSessionPlugins().map((p) => p.rootDir);
15289
15295
  const dirs = Array.from(/* @__PURE__ */ new Set([...existingRoots, ...installedRoots]));
15290
15296
  if (dirs.length === 0) return [];
15291
- const { configureSessionPlugins } = await import("./pluginRuntime-55LJGUQI.js");
15297
+ const { configureSessionPlugins } = await import("./pluginRuntime-ER5JNKMN.js");
15292
15298
  const { errors } = await configureSessionPlugins({ pluginDirs: dirs });
15293
15299
  return errors;
15294
15300
  }
@@ -15957,7 +15963,7 @@ async function call(onDone, context) {
15957
15963
  ModelConfig,
15958
15964
  {
15959
15965
  onClose: () => {
15960
- import("./model-NSMV7O5V.js").then(({ reloadModelManager: reloadModelManager2 }) => {
15966
+ import("./model-NUSZPX3C.js").then(({ reloadModelManager: reloadModelManager2 }) => {
15961
15967
  reloadModelManager2();
15962
15968
  triggerModelConfigChange();
15963
15969
  onDone();
@@ -23199,7 +23205,7 @@ function useStatusLine() {
23199
23205
  // src/ui/components/PromptInput.tsx
23200
23206
  async function interpretHashCommand(input) {
23201
23207
  try {
23202
- const { queryQuick: queryQuick2 } = await import("./llm-CKQ2OLUM.js");
23208
+ const { queryQuick: queryQuick2 } = await import("./llm-MPPYD5AB.js");
23203
23209
  const systemPrompt = [
23204
23210
  "You're helping the user structure notes that will be added to their PYB.md file.",
23205
23211
  "Format the user's input into a well-structured note that will be useful for later reference.",
@@ -23512,7 +23518,7 @@ function PromptInput({
23512
23518
  if (messages2.length) {
23513
23519
  if (mode === "bash") {
23514
23520
  onQuery(messages2, newAbortController).then(async () => {
23515
- const { getCwd: getCwd2 } = await import("./state-46DOLHGZ.js");
23521
+ const { getCwd: getCwd2 } = await import("./state-OLIUOKSV.js");
23516
23522
  setCurrentPwd(getCwd2());
23517
23523
  });
23518
23524
  } else {
@@ -26271,7 +26277,7 @@ import { homedir as homedir7 } from "os";
26271
26277
  // src/commands/agents/generation.ts
26272
26278
  import { randomUUID as randomUUID5 } from "crypto";
26273
26279
  async function generateAgentWithClaude(prompt) {
26274
- const { queryModel } = await import("./llm-CKQ2OLUM.js");
26280
+ const { queryModel } = await import("./llm-MPPYD5AB.js");
26275
26281
  const systemPrompt = `You are an expert at creating AI agent configurations. Based on the user's description, generate a specialized agent configuration.
26276
26282
 
26277
26283
  Return your response as a JSON object with exactly these fields:
@@ -29460,7 +29466,7 @@ var BashTool = {
29460
29466
  name: "Bash",
29461
29467
  cachedDescription: "Run shell command",
29462
29468
  async description(input) {
29463
- return input?.description || "Run shell command";
29469
+ return input?.description || await getBashToolPrompt();
29464
29470
  },
29465
29471
  async prompt() {
29466
29472
  return getBashToolPrompt();
@@ -29491,6 +29497,16 @@ var BashTool = {
29491
29497
  return true;
29492
29498
  },
29493
29499
  async validateInput({ command: command4, timeout, dangerouslyDisableSandbox }, context) {
29500
+ const trimmed = command4.trim();
29501
+ if (/^ls(\s+|$)/.test(trimmed) && !trimmed.includes("-")) {
29502
+ return {
29503
+ result: false,
29504
+ message: `Security Policy: Do not use 'ls' for simple file listing.
29505
+ - To find files: Use the 'Glob' tool.
29506
+ - To view directory structure: Use the 'LS' tool.
29507
+ - To check permissions/metadata: Use 'ls -l' (allowed).`
29508
+ };
29509
+ }
29494
29510
  if (timeout !== void 0) {
29495
29511
  if (!Number.isFinite(timeout) || timeout < 0) {
29496
29512
  return {
@@ -30059,12 +30075,12 @@ assistant: Yes
30059
30075
 
30060
30076
  <example>
30061
30077
  user: what command should I run to list files in the current directory?
30062
- assistant: ls
30078
+ assistant: [uses the Glob tool to list the files in the current directory]
30063
30079
  </example>
30064
30080
 
30065
30081
  <example>
30066
30082
  user: what command should I run to watch files in the current directory?
30067
- assistant: [use the ls tool to list the files in the current directory, then read docs/commands in the relevant file to find out how to watch files]
30083
+ assistant: [use the Glob tool to list the files in the current directory, then read docs/commands in the relevant file to find out how to watch files]
30068
30084
  npm run dev
30069
30085
  </example>
30070
30086
 
@@ -30075,7 +30091,7 @@ assistant: 150000
30075
30091
 
30076
30092
  <example>
30077
30093
  user: what files are in the directory src/?
30078
- assistant: [runs ls and sees foo.c, bar.c, baz.c]
30094
+ assistant: [uses Glob tool and sees foo.c, bar.c, baz.c]
30079
30095
  user: which file contains the implementation of foo?
30080
30096
  assistant: src/foo.c
30081
30097
  </example>
@@ -30120,6 +30136,7 @@ NEVER commit changes unless the user explicitly asks you to. It is VERY IMPORTAN
30120
30136
 
30121
30137
  # Tool usage policy
30122
30138
  - When doing file search, prefer to use the Task tool in order to reduce context usage.
30139
+ - For file system exploration (listing files, checking directories), ALWAYS use the Glob tool first. Only use Bash for executing scripts or binaries.
30123
30140
  - You can call multiple tools in a single response. If you intend to call multiple tools and there are no dependencies between them, make all independent tool calls in parallel. Maximize use of parallel tool calls where possible to increase efficiency. However, if some tool calls depend on previous calls to inform dependent values, do NOT call these tools in parallel and instead call them sequentially. For instance, if one operation must complete before another starts, run these operations sequentially instead. Never use placeholders or guess missing parameters in tool calls.
30124
30141
  - If the user specifies that they want you to run tools "in parallel", you MUST send a single message with multiple tool use content blocks.
30125
30142
  - It is always better to speculatively read multiple files as a batch that are potentially useful.