pybao-cli 1.4.52 → 1.4.54

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 (147) hide show
  1. package/dist/REPL-PLFZAGYW.js +46 -0
  2. package/dist/{acp-QYEU24FQ.js → acp-EU6HEJLP.js} +29 -29
  3. package/dist/{agentsValidate-755OIS5R.js → agentsValidate-ULGDCFW4.js} +7 -7
  4. package/dist/{ask-DZPBLG26.js → ask-EER3Y73H.js} +28 -28
  5. package/dist/{autoUpdater-TYGW5WLI.js → autoUpdater-TRX4I3EQ.js} +3 -3
  6. package/dist/{chunk-LHL4VQUV.js → chunk-22STWQHO.js} +1 -1
  7. package/dist/{chunk-NCHARDNR.js → chunk-3ZLYX3F7.js} +1 -1
  8. package/dist/{chunk-NCHARDNR.js.map → chunk-3ZLYX3F7.js.map} +1 -1
  9. package/dist/{chunk-2HMRIM4L.js → chunk-4RZG72X3.js} +48 -141
  10. package/dist/{chunk-2HMRIM4L.js.map → chunk-4RZG72X3.js.map} +3 -3
  11. package/dist/{chunk-OMMS565Z.js → chunk-55SQFXYF.js} +2 -2
  12. package/dist/{chunk-2BHQOW7O.js → chunk-AKQRCFEG.js} +4 -4
  13. package/dist/{chunk-DWNHYJME.js → chunk-BRUBNQBF.js} +4 -4
  14. package/dist/{chunk-SEIO7WV7.js → chunk-CTH2TQ44.js} +1 -1
  15. package/dist/{chunk-RCASKKDU.js → chunk-CY4JVBI6.js} +2 -2
  16. package/dist/{chunk-VTHHH4MB.js → chunk-DAXRXAKW.js} +4 -4
  17. package/dist/{chunk-FVNXJG2K.js → chunk-FINGJBE6.js} +2 -2
  18. package/dist/{chunk-KMM3X3B5.js → chunk-FKYST5A6.js} +5 -32
  19. package/dist/chunk-FKYST5A6.js.map +7 -0
  20. package/dist/{chunk-CACSIWAN.js → chunk-FOHI4RYN.js} +1 -1
  21. package/dist/{chunk-VSGJTKCW.js → chunk-GYUGF7Z4.js} +1 -1
  22. package/dist/{chunk-EBSC7C7P.js → chunk-JWFB77XG.js} +3 -3
  23. package/dist/{chunk-LTNUANEK.js → chunk-LM2G4CP4.js} +39 -110
  24. package/dist/{chunk-LTNUANEK.js.map → chunk-LM2G4CP4.js.map} +2 -2
  25. package/dist/{chunk-NXAHOIRY.js → chunk-LQXXZ3XN.js} +2 -2
  26. package/dist/{chunk-WTHNVU5P.js → chunk-OLD4PDC4.js} +3 -3
  27. package/dist/{chunk-R3QXCIEI.js → chunk-P3NO7ZL3.js} +1 -1
  28. package/dist/{chunk-H6QOGXMT.js → chunk-PLRBKD4T.js} +3 -3
  29. package/dist/{chunk-4LMBJZXO.js → chunk-PSKP2HV7.js} +1 -1
  30. package/dist/{chunk-OBAKKVHK.js → chunk-S2EZMQMN.js} +1 -1
  31. package/dist/{chunk-CIPSRLKQ.js → chunk-SNGWOLJA.js} +1 -1
  32. package/dist/{chunk-BRKYVW3X.js → chunk-SQME3XH5.js} +3 -3
  33. package/dist/{chunk-232RVCMQ.js → chunk-SSD7IA7A.js} +3 -3
  34. package/dist/{chunk-FTYUYN6L.js → chunk-TTGVASRL.js} +1 -1
  35. package/dist/{chunk-KFQPMAFO.js → chunk-U6ULRJKF.js} +3 -3
  36. package/dist/{chunk-GFD2DNDU.js → chunk-WQ66KITR.js} +2 -2
  37. package/dist/{chunk-XDWCDTQK.js → chunk-X2N6266T.js} +2 -2
  38. package/dist/{chunk-EF6YCOC4.js → chunk-XN7B2PR5.js} +4 -4
  39. package/dist/{chunk-OX2MB4Q2.js → chunk-Z4ZFYXDD.js} +3 -3
  40. package/dist/{cli-WGYHJPFZ.js → cli-KXRL2NZ3.js} +88 -90
  41. package/dist/cli-KXRL2NZ3.js.map +7 -0
  42. package/dist/commands-JNH2NX6O.js +50 -0
  43. package/dist/{config-AGAJCFQD.js → config-MRRYR4L2.js} +4 -4
  44. package/dist/{context-ZOZD4S7X.js → context-YU2GRA7X.js} +6 -6
  45. package/dist/{customCommands-4GSMRRC4.js → customCommands-GNASTOCM.js} +4 -4
  46. package/dist/{env-RPUIAXPD.js → env-2NXVQGKZ.js} +2 -2
  47. package/dist/{file-HFMWEHAT.js → file-O62EYAT7.js} +4 -4
  48. package/dist/index.js +3 -3
  49. package/dist/{llm-CP2G3BZQ.js → llm-CC3GQ5ZM.js} +29 -29
  50. package/dist/{llmLazy-7GLWRPMO.js → llmLazy-P67QDUQB.js} +1 -1
  51. package/dist/{loader-RJUX5HRI.js → loader-NGJOUZMP.js} +4 -4
  52. package/dist/{lsp-4PS6EN3E.js → lsp-5ONJTJJN.js} +6 -6
  53. package/dist/{lspAnchor-QPHIEGKU.js → lspAnchor-64D7S7UX.js} +6 -6
  54. package/dist/{mcp-Z5GOR6OF.js → mcp-2NFK2CDM.js} +7 -7
  55. package/dist/{mentionProcessor-ZPSEF4XC.js → mentionProcessor-ALSLW6WX.js} +5 -5
  56. package/dist/{messages-7PZIS7S6.js → messages-UWBA7Y3N.js} +1 -1
  57. package/dist/{model-OMBFATWA.js → model-HVOTTR74.js} +5 -5
  58. package/dist/{openai-ZFDYT7H5.js → openai-XPB53TRX.js} +5 -5
  59. package/dist/{outputStyles-LK7EH6PS.js → outputStyles-XEUWBMJT.js} +4 -4
  60. package/dist/{pluginRuntime-PFAQAL5X.js → pluginRuntime-4VPZQSUT.js} +6 -6
  61. package/dist/{pluginValidation-F6UPGXZP.js → pluginValidation-HSPGXLLH.js} +6 -6
  62. package/dist/prompts-BQ7XU4JD.js +52 -0
  63. package/dist/{pybAgentSessionLoad-PQX3FKEC.js → pybAgentSessionLoad-QCS5BPKE.js} +4 -4
  64. package/dist/{pybAgentSessionResume-FTGMQQ4B.js → pybAgentSessionResume-BHKVFNEB.js} +4 -4
  65. package/dist/{pybAgentStreamJsonSession-GQZLIIQS.js → pybAgentStreamJsonSession-4FFFA2XQ.js} +1 -1
  66. package/dist/{pybHooks-7SOKY4A3.js → pybHooks-FFZ274LI.js} +4 -4
  67. package/dist/query-HMJCI74H.js +54 -0
  68. package/dist/{registry-HEA2CKWA.js → registry-WLA42WFC.js} +5 -5
  69. package/dist/{ripgrep-S4IOHQNI.js → ripgrep-Y6PV5BPR.js} +3 -3
  70. package/dist/{skillMarketplace-GLH5WP4Y.js → skillMarketplace-DHXHFPKE.js} +3 -3
  71. package/dist/{state-DYO5HDW5.js → state-IXZXJMUN.js} +2 -2
  72. package/dist/{theme-FMEMGZ2J.js → theme-UCADMAGV.js} +5 -5
  73. package/dist/{toolPermissionSettings-J2R2EOVJ.js → toolPermissionSettings-4XVH7G4T.js} +6 -6
  74. package/dist/tools-JUIOFBYE.js +51 -0
  75. package/dist/{userInput-IZB262ZP.js → userInput-VTCMXSNX.js} +30 -30
  76. package/package.json +1 -1
  77. package/dist/REPL-5YY25SRP.js +0 -46
  78. package/dist/chunk-KMM3X3B5.js.map +0 -7
  79. package/dist/cli-WGYHJPFZ.js.map +0 -7
  80. package/dist/commands-6JEO2KAK.js +0 -50
  81. package/dist/prompts-3I2J4KDX.js +0 -52
  82. package/dist/query-MZKEYXCU.js +0 -54
  83. package/dist/tools-OLRB4MMF.js +0 -51
  84. /package/dist/{REPL-5YY25SRP.js.map → REPL-PLFZAGYW.js.map} +0 -0
  85. /package/dist/{acp-QYEU24FQ.js.map → acp-EU6HEJLP.js.map} +0 -0
  86. /package/dist/{agentsValidate-755OIS5R.js.map → agentsValidate-ULGDCFW4.js.map} +0 -0
  87. /package/dist/{ask-DZPBLG26.js.map → ask-EER3Y73H.js.map} +0 -0
  88. /package/dist/{autoUpdater-TYGW5WLI.js.map → autoUpdater-TRX4I3EQ.js.map} +0 -0
  89. /package/dist/{chunk-LHL4VQUV.js.map → chunk-22STWQHO.js.map} +0 -0
  90. /package/dist/{chunk-OMMS565Z.js.map → chunk-55SQFXYF.js.map} +0 -0
  91. /package/dist/{chunk-2BHQOW7O.js.map → chunk-AKQRCFEG.js.map} +0 -0
  92. /package/dist/{chunk-DWNHYJME.js.map → chunk-BRUBNQBF.js.map} +0 -0
  93. /package/dist/{chunk-SEIO7WV7.js.map → chunk-CTH2TQ44.js.map} +0 -0
  94. /package/dist/{chunk-RCASKKDU.js.map → chunk-CY4JVBI6.js.map} +0 -0
  95. /package/dist/{chunk-VTHHH4MB.js.map → chunk-DAXRXAKW.js.map} +0 -0
  96. /package/dist/{chunk-FVNXJG2K.js.map → chunk-FINGJBE6.js.map} +0 -0
  97. /package/dist/{chunk-CACSIWAN.js.map → chunk-FOHI4RYN.js.map} +0 -0
  98. /package/dist/{chunk-VSGJTKCW.js.map → chunk-GYUGF7Z4.js.map} +0 -0
  99. /package/dist/{chunk-EBSC7C7P.js.map → chunk-JWFB77XG.js.map} +0 -0
  100. /package/dist/{chunk-NXAHOIRY.js.map → chunk-LQXXZ3XN.js.map} +0 -0
  101. /package/dist/{chunk-WTHNVU5P.js.map → chunk-OLD4PDC4.js.map} +0 -0
  102. /package/dist/{chunk-R3QXCIEI.js.map → chunk-P3NO7ZL3.js.map} +0 -0
  103. /package/dist/{chunk-H6QOGXMT.js.map → chunk-PLRBKD4T.js.map} +0 -0
  104. /package/dist/{chunk-4LMBJZXO.js.map → chunk-PSKP2HV7.js.map} +0 -0
  105. /package/dist/{chunk-OBAKKVHK.js.map → chunk-S2EZMQMN.js.map} +0 -0
  106. /package/dist/{chunk-CIPSRLKQ.js.map → chunk-SNGWOLJA.js.map} +0 -0
  107. /package/dist/{chunk-BRKYVW3X.js.map → chunk-SQME3XH5.js.map} +0 -0
  108. /package/dist/{chunk-232RVCMQ.js.map → chunk-SSD7IA7A.js.map} +0 -0
  109. /package/dist/{chunk-FTYUYN6L.js.map → chunk-TTGVASRL.js.map} +0 -0
  110. /package/dist/{chunk-KFQPMAFO.js.map → chunk-U6ULRJKF.js.map} +0 -0
  111. /package/dist/{chunk-GFD2DNDU.js.map → chunk-WQ66KITR.js.map} +0 -0
  112. /package/dist/{chunk-XDWCDTQK.js.map → chunk-X2N6266T.js.map} +0 -0
  113. /package/dist/{chunk-EF6YCOC4.js.map → chunk-XN7B2PR5.js.map} +0 -0
  114. /package/dist/{chunk-OX2MB4Q2.js.map → chunk-Z4ZFYXDD.js.map} +0 -0
  115. /package/dist/{commands-6JEO2KAK.js.map → commands-JNH2NX6O.js.map} +0 -0
  116. /package/dist/{config-AGAJCFQD.js.map → config-MRRYR4L2.js.map} +0 -0
  117. /package/dist/{context-ZOZD4S7X.js.map → context-YU2GRA7X.js.map} +0 -0
  118. /package/dist/{customCommands-4GSMRRC4.js.map → customCommands-GNASTOCM.js.map} +0 -0
  119. /package/dist/{env-RPUIAXPD.js.map → env-2NXVQGKZ.js.map} +0 -0
  120. /package/dist/{file-HFMWEHAT.js.map → file-O62EYAT7.js.map} +0 -0
  121. /package/dist/{llm-CP2G3BZQ.js.map → llm-CC3GQ5ZM.js.map} +0 -0
  122. /package/dist/{llmLazy-7GLWRPMO.js.map → llmLazy-P67QDUQB.js.map} +0 -0
  123. /package/dist/{loader-RJUX5HRI.js.map → loader-NGJOUZMP.js.map} +0 -0
  124. /package/dist/{lsp-4PS6EN3E.js.map → lsp-5ONJTJJN.js.map} +0 -0
  125. /package/dist/{lspAnchor-QPHIEGKU.js.map → lspAnchor-64D7S7UX.js.map} +0 -0
  126. /package/dist/{mcp-Z5GOR6OF.js.map → mcp-2NFK2CDM.js.map} +0 -0
  127. /package/dist/{mentionProcessor-ZPSEF4XC.js.map → mentionProcessor-ALSLW6WX.js.map} +0 -0
  128. /package/dist/{messages-7PZIS7S6.js.map → messages-UWBA7Y3N.js.map} +0 -0
  129. /package/dist/{model-OMBFATWA.js.map → model-HVOTTR74.js.map} +0 -0
  130. /package/dist/{openai-ZFDYT7H5.js.map → openai-XPB53TRX.js.map} +0 -0
  131. /package/dist/{outputStyles-LK7EH6PS.js.map → outputStyles-XEUWBMJT.js.map} +0 -0
  132. /package/dist/{pluginRuntime-PFAQAL5X.js.map → pluginRuntime-4VPZQSUT.js.map} +0 -0
  133. /package/dist/{pluginValidation-F6UPGXZP.js.map → pluginValidation-HSPGXLLH.js.map} +0 -0
  134. /package/dist/{prompts-3I2J4KDX.js.map → prompts-BQ7XU4JD.js.map} +0 -0
  135. /package/dist/{pybAgentSessionLoad-PQX3FKEC.js.map → pybAgentSessionLoad-QCS5BPKE.js.map} +0 -0
  136. /package/dist/{pybAgentSessionResume-FTGMQQ4B.js.map → pybAgentSessionResume-BHKVFNEB.js.map} +0 -0
  137. /package/dist/{pybAgentStreamJsonSession-GQZLIIQS.js.map → pybAgentStreamJsonSession-4FFFA2XQ.js.map} +0 -0
  138. /package/dist/{pybHooks-7SOKY4A3.js.map → pybHooks-FFZ274LI.js.map} +0 -0
  139. /package/dist/{query-MZKEYXCU.js.map → query-HMJCI74H.js.map} +0 -0
  140. /package/dist/{registry-HEA2CKWA.js.map → registry-WLA42WFC.js.map} +0 -0
  141. /package/dist/{ripgrep-S4IOHQNI.js.map → ripgrep-Y6PV5BPR.js.map} +0 -0
  142. /package/dist/{skillMarketplace-GLH5WP4Y.js.map → skillMarketplace-DHXHFPKE.js.map} +0 -0
  143. /package/dist/{state-DYO5HDW5.js.map → state-IXZXJMUN.js.map} +0 -0
  144. /package/dist/{theme-FMEMGZ2J.js.map → theme-UCADMAGV.js.map} +0 -0
  145. /package/dist/{toolPermissionSettings-J2R2EOVJ.js.map → toolPermissionSettings-4XVH7G4T.js.map} +0 -0
  146. /package/dist/{tools-OLRB4MMF.js.map → tools-JUIOFBYE.js.map} +0 -0
  147. /package/dist/{userInput-IZB262ZP.js.map → userInput-VTCMXSNX.js.map} +0 -0
@@ -3,18 +3,18 @@ const require = __pybCreateRequire(import.meta.url);
3
3
  import {
4
4
  formatValidationResult,
5
5
  validatePluginOrMarketplacePath
6
- } from "./chunk-WTHNVU5P.js";
6
+ } from "./chunk-OLD4PDC4.js";
7
7
  import {
8
8
  loadPybAgentSessionMessages
9
- } from "./chunk-4LMBJZXO.js";
9
+ } from "./chunk-PSKP2HV7.js";
10
10
  import {
11
11
  listPybAgentSessions
12
- } from "./chunk-OBAKKVHK.js";
12
+ } from "./chunk-S2EZMQMN.js";
13
13
  import {
14
14
  appendSessionCustomTitleRecord,
15
15
  appendSessionJsonlFromMessage,
16
16
  appendSessionTagRecord
17
- } from "./chunk-RCASKKDU.js";
17
+ } from "./chunk-CY4JVBI6.js";
18
18
  import {
19
19
  drainHookSystemPromptAdditions,
20
20
  getHookTranscriptPath,
@@ -26,7 +26,7 @@ import {
26
26
  runStopHooks,
27
27
  runUserPromptSubmitHooks,
28
28
  updateHookTranscriptForMessages
29
- } from "./chunk-OX2MB4Q2.js";
29
+ } from "./chunk-Z4ZFYXDD.js";
30
30
  import {
31
31
  DEFAULT_OUTPUT_STYLE,
32
32
  getAvailableOutputStyles,
@@ -35,17 +35,17 @@ import {
35
35
  getOutputStyleSystemPromptAdditions,
36
36
  resolveOutputStyleName,
37
37
  setCurrentOutputStyle
38
- } from "./chunk-FVNXJG2K.js";
38
+ } from "./chunk-FINGJBE6.js";
39
39
  import {
40
40
  fetchCustomModels,
41
41
  getModelFeatures,
42
42
  getSessionState
43
- } from "./chunk-OMMS565Z.js";
43
+ } from "./chunk-55SQFXYF.js";
44
44
  import {
45
45
  queryLLM,
46
46
  queryQuick,
47
47
  verifyApiKey
48
- } from "./chunk-EF6YCOC4.js";
48
+ } from "./chunk-XN7B2PR5.js";
49
49
  import {
50
50
  DEFAULT_TIMEOUT_MS,
51
51
  FallbackToolUseRejectedMessage,
@@ -59,7 +59,7 @@ import {
59
59
  listMCPServers,
60
60
  loadMergedSettings,
61
61
  normalizeSandboxRuntimeConfigFromSettings
62
- } from "./chunk-DWNHYJME.js";
62
+ } from "./chunk-BRUBNQBF.js";
63
63
  import {
64
64
  addMarketplace,
65
65
  disableSkillPlugin,
@@ -72,11 +72,11 @@ import {
72
72
  refreshMarketplaceAsync,
73
73
  removeMarketplace,
74
74
  uninstallSkillPlugin
75
- } from "./chunk-SEIO7WV7.js";
75
+ } from "./chunk-CTH2TQ44.js";
76
76
  import {
77
77
  loadToolPermissionContextFromDisk,
78
78
  persistToolPermissionUpdateToDisk
79
- } from "./chunk-BRKYVW3X.js";
79
+ } from "./chunk-SQME3XH5.js";
80
80
  import {
81
81
  applyToolPermissionContextUpdate,
82
82
  applyToolPermissionContextUpdates,
@@ -87,13 +87,13 @@ import {
87
87
  generateSystemReminders,
88
88
  resetReminderSession,
89
89
  systemReminderService
90
- } from "./chunk-KMM3X3B5.js";
90
+ } from "./chunk-FKYST5A6.js";
91
91
  import {
92
92
  clearAgentCache,
93
93
  getActiveAgents,
94
94
  getAgentByType,
95
95
  getAllAgents
96
- } from "./chunk-XDWCDTQK.js";
96
+ } from "./chunk-X2N6266T.js";
97
97
  import {
98
98
  API_ERROR_MESSAGE_PREFIX,
99
99
  CANCEL_MESSAGE,
@@ -123,7 +123,7 @@ import {
123
123
  processUserInput,
124
124
  reorderMessages,
125
125
  stripSystemMessages
126
- } from "./chunk-CIPSRLKQ.js";
126
+ } from "./chunk-SNGWOLJA.js";
127
127
  import {
128
128
  getRequestStatus,
129
129
  setRequestStatus,
@@ -153,7 +153,7 @@ import {
153
153
  normalizeFilePath,
154
154
  readTextContent,
155
155
  writeTextContent
156
- } from "./chunk-GFD2DNDU.js";
156
+ } from "./chunk-WQ66KITR.js";
157
157
  import {
158
158
  parseBlockEdits
159
159
  } from "./chunk-QWIBSCDN.js";
@@ -163,18 +163,18 @@ import {
163
163
  ParserRegistry,
164
164
  initParser,
165
165
  loadLanguage
166
- } from "./chunk-2BHQOW7O.js";
166
+ } from "./chunk-AKQRCFEG.js";
167
167
  import {
168
168
  getSettingsFileCandidates,
169
169
  loadSettingsWithLegacyFallback,
170
170
  readSettingsFile
171
- } from "./chunk-R3QXCIEI.js";
171
+ } from "./chunk-P3NO7ZL3.js";
172
172
  import {
173
173
  getCustomCommandDirectories,
174
174
  hasCustomCommands,
175
175
  loadCustomCommands,
176
176
  reloadCustomCommands
177
- } from "./chunk-NXAHOIRY.js";
177
+ } from "./chunk-LQXXZ3XN.js";
178
178
  import {
179
179
  getSessionPlugins
180
180
  } from "./chunk-BJSWTHRM.js";
@@ -182,7 +182,7 @@ import {
182
182
  ModelManager,
183
183
  getModelManager,
184
184
  isDefaultSlowAndCapableModel
185
- } from "./chunk-232RVCMQ.js";
185
+ } from "./chunk-SSD7IA7A.js";
186
186
  import {
187
187
  getCodeStyle,
188
188
  getContext,
@@ -190,13 +190,13 @@ import {
190
190
  getIsGit,
191
191
  getProjectDocs,
192
192
  getProjectStructureStatisticsBlock
193
- } from "./chunk-VTHHH4MB.js";
193
+ } from "./chunk-DAXRXAKW.js";
194
194
  import {
195
195
  ripGrep
196
- } from "./chunk-VSGJTKCW.js";
196
+ } from "./chunk-GYUGF7Z4.js";
197
197
  import {
198
198
  getTheme
199
- } from "./chunk-FTYUYN6L.js";
199
+ } from "./chunk-TTGVASRL.js";
200
200
  import {
201
201
  DEFAULT_GLOBAL_CONFIG,
202
202
  enableConfigs,
@@ -209,7 +209,7 @@ import {
209
209
  saveGlobalConfig,
210
210
  setAllPointersToModel,
211
211
  setModelPointer
212
- } from "./chunk-KFQPMAFO.js";
212
+ } from "./chunk-U6ULRJKF.js";
213
213
  import {
214
214
  AbortError
215
215
  } from "./chunk-RQVLBMP7.js";
@@ -218,7 +218,7 @@ import {
218
218
  getCurrentRequest,
219
219
  logUserFriendly,
220
220
  markPhase
221
- } from "./chunk-CACSIWAN.js";
221
+ } from "./chunk-FOHI4RYN.js";
222
222
  import {
223
223
  ASCII_LOGO,
224
224
  BunShell,
@@ -259,10 +259,10 @@ import {
259
259
  setCwd,
260
260
  shouldApplyToolOutputTruncation,
261
261
  truncateToolOutput
262
- } from "./chunk-LHL4VQUV.js";
262
+ } from "./chunk-22STWQHO.js";
263
263
  import {
264
264
  MACRO
265
- } from "./chunk-NCHARDNR.js";
265
+ } from "./chunk-3ZLYX3F7.js";
266
266
  import {
267
267
  __export
268
268
  } from "./chunk-I3J4JYES.js";
@@ -443,7 +443,7 @@ var getCommandSubcommandPrefix = memoize(
443
443
  var getCommandPrefix = memoize(
444
444
  async (command4, abortSignal) => {
445
445
  const { systemPrompt, userPrompt } = buildBashCommandPrefixDetectionPrompt(command4);
446
- const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-CP2G3BZQ.js");
446
+ const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-CC3GQ5ZM.js");
447
447
  const response = await queryQuick2({
448
448
  systemPrompt,
449
449
  userPrompt,
@@ -4245,7 +4245,7 @@ function formatParseError(error) {
4245
4245
  return error instanceof Error ? error.message : String(error);
4246
4246
  }
4247
4247
  async function defaultGateQuery(args) {
4248
- const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-CP2G3BZQ.js");
4248
+ const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-CC3GQ5ZM.js");
4249
4249
  const queryLLMFn = args.queryLLMOverride ?? queryLLM2;
4250
4250
  const messages = [
4251
4251
  {
@@ -6500,7 +6500,7 @@ var FileEditTool = {
6500
6500
  const originalFileContent = currentFileContent;
6501
6501
  let totalPatch = [];
6502
6502
  const { SmartEdit } = await import("./smart-edit-AWHJDSU6.js");
6503
- const { findLspAnchor } = await import("./lspAnchor-QPHIEGKU.js");
6503
+ const { findLspAnchor } = await import("./lspAnchor-64D7S7UX.js");
6504
6504
  for (const op of editOperations) {
6505
6505
  const normalizedSearch = normalizeLineEndings(op.search);
6506
6506
  const normalizedReplace = normalizeLineEndings(op.replace);
@@ -11135,7 +11135,7 @@ async function createAndStoreApiKey(accessToken) {
11135
11135
  }
11136
11136
  saveGlobalConfig(config2);
11137
11137
  try {
11138
- const { resetAnthropicClient } = await import("./llm-CP2G3BZQ.js");
11138
+ const { resetAnthropicClient } = await import("./llm-CC3GQ5ZM.js");
11139
11139
  resetAnthropicClient();
11140
11140
  } catch {
11141
11141
  }
@@ -15417,7 +15417,7 @@ async function refreshPluginRuntimeFromInstalls() {
15417
15417
  const existingRoots = getSessionPlugins().map((p) => p.rootDir);
15418
15418
  const dirs = Array.from(/* @__PURE__ */ new Set([...existingRoots, ...installedRoots]));
15419
15419
  if (dirs.length === 0) return [];
15420
- const { configureSessionPlugins } = await import("./pluginRuntime-PFAQAL5X.js");
15420
+ const { configureSessionPlugins } = await import("./pluginRuntime-4VPZQSUT.js");
15421
15421
  const { errors } = await configureSessionPlugins({ pluginDirs: dirs });
15422
15422
  return errors;
15423
15423
  }
@@ -16086,7 +16086,7 @@ async function call(onDone, context) {
16086
16086
  ModelConfig,
16087
16087
  {
16088
16088
  onClose: () => {
16089
- import("./model-OMBFATWA.js").then(({ reloadModelManager: reloadModelManager2 }) => {
16089
+ import("./model-HVOTTR74.js").then(({ reloadModelManager: reloadModelManager2 }) => {
16090
16090
  reloadModelManager2();
16091
16091
  triggerModelConfigChange();
16092
16092
  onDone();
@@ -24129,7 +24129,7 @@ function useStatusLine() {
24129
24129
  // src/ui/components/PromptInput.tsx
24130
24130
  async function interpretHashCommand(input) {
24131
24131
  try {
24132
- const { queryQuick: queryQuick2 } = await import("./llm-CP2G3BZQ.js");
24132
+ const { queryQuick: queryQuick2 } = await import("./llm-CC3GQ5ZM.js");
24133
24133
  const systemPrompt = [
24134
24134
  "You're helping the user structure notes that will be added to their PYB.md file.",
24135
24135
  "Format the user's input into a well-structured note that will be useful for later reference.",
@@ -24442,7 +24442,7 @@ function PromptInput({
24442
24442
  if (messages2.length) {
24443
24443
  if (mode === "bash") {
24444
24444
  onQuery(messages2, newAbortController).then(async () => {
24445
- const { getCwd: getCwd2 } = await import("./state-DYO5HDW5.js");
24445
+ const { getCwd: getCwd2 } = await import("./state-IXZXJMUN.js");
24446
24446
  setCurrentPwd(getCwd2());
24447
24447
  });
24448
24448
  } else {
@@ -25296,21 +25296,6 @@ var TaskStoreLockError = class extends Error {
25296
25296
  this.name = "TaskStoreLockError";
25297
25297
  }
25298
25298
  };
25299
- var TaskStoreConflictError = class extends Error {
25300
- code = "TASK_STORE_CONFLICT";
25301
- taskId;
25302
- expectedBaseVersion;
25303
- actualBaseVersion;
25304
- constructor(params) {
25305
- super(
25306
- `Task ${params.taskId} baseVersion ${params.actual} does not match expected ${params.expected}`
25307
- );
25308
- this.name = "TaskStoreConflictError";
25309
- this.taskId = params.taskId;
25310
- this.expectedBaseVersion = params.expected;
25311
- this.actualBaseVersion = params.actual;
25312
- }
25313
- };
25314
25299
  function getDefaultTaskListId(cwd) {
25315
25300
  return getPybAgentSessionId();
25316
25301
  }
@@ -25401,10 +25386,6 @@ function getTaskListPaths(listId) {
25401
25386
  const baseDir = resolveTaskBaseDir(context, cwd);
25402
25387
  return buildTaskListPaths(baseDir, context.listId);
25403
25388
  }
25404
- function initTaskListLockFile(options) {
25405
- const paths = getTaskListPaths(options?.listId);
25406
- ensureTaskListDirs(paths);
25407
- }
25408
25389
  function sortReadPaths(paths) {
25409
25390
  const priority = { pyb: 0, claude: 1, other: 2 };
25410
25391
  return [...paths].sort((a, b) => priority[a.source] - priority[b.source]);
@@ -25493,11 +25474,7 @@ function serializeTaskRecord(task) {
25493
25474
  id: task.id,
25494
25475
  subject: task.subject,
25495
25476
  status: task.status,
25496
- blockedBy: task.blockedBy ?? [],
25497
- createdAt: task.createdAt,
25498
- updatedAt: task.updatedAt,
25499
- baseVersion: task.baseVersion,
25500
- version: task.version
25477
+ blockedBy: task.blockedBy ?? []
25501
25478
  };
25502
25479
  if (task.description) serialized.description = task.description;
25503
25480
  if (task.activeForm) serialized.activeForm = task.activeForm;
@@ -25527,36 +25504,21 @@ function readTaskFile(path5) {
25527
25504
  return null;
25528
25505
  }
25529
25506
  const status = data.status === "open" ? "pending" : data.status;
25530
- if (status !== "pending" && status !== "in_progress" && status !== "blocked" && status !== "done" && status !== "archived") {
25507
+ if (status !== "pending" && status !== "in_progress" && status !== "blocked" && status !== "done" && status !== "deleted") {
25531
25508
  return null;
25532
25509
  }
25533
25510
  const subject = data.subject ?? data.title;
25534
25511
  const activeForm = data.activeForm;
25535
- const baseVersion = typeof data.baseVersion === "number" ? data.baseVersion : typeof data.version === "number" ? data.version : 1;
25536
- const version = typeof data.version === "number" ? data.version : baseVersion;
25537
- const createdAt = typeof data.createdAt === "number" ? data.createdAt : Date.now();
25538
- const updatedAt = typeof data.updatedAt === "number" ? data.updatedAt : createdAt;
25539
25512
  const normalized = {
25540
25513
  id: data.id,
25541
25514
  subject,
25542
25515
  description: data.description,
25543
25516
  activeForm,
25544
25517
  status,
25545
- tags: data.tags,
25546
- assignee: data.assignee,
25547
25518
  metadata: data.metadata,
25548
- archived: data.archived,
25549
25519
  blocks: data.blocks ?? [],
25550
- blockedBy: data.blockedBy ?? [],
25551
- parent: data.parent,
25552
- related: data.related ?? [],
25553
- createdAt,
25554
- updatedAt,
25555
- baseVersion,
25556
- version,
25557
- legacyTodoId: data.legacyTodoId
25520
+ blockedBy: data.blockedBy ?? []
25558
25521
  };
25559
- delete normalized.priority;
25560
25522
  return normalized;
25561
25523
  }
25562
25524
  function deriveBlocks(tasks) {
@@ -25765,8 +25727,7 @@ function mergeMetadata(existing, updates) {
25765
25727
  }
25766
25728
  return Object.keys(next).length > 0 ? next : void 0;
25767
25729
  }
25768
- function applyTaskUpdates(task, updates, nextBaseVersion) {
25769
- const now = updates.updatedAt ?? Date.now();
25730
+ function applyTaskUpdates(task, updates) {
25770
25731
  const subject = updates.subject ?? task.subject;
25771
25732
  const activeForm = updates.activeForm ?? task.activeForm;
25772
25733
  const blockedBy = updates.blockedBy ?? task.blockedBy ?? [];
@@ -25778,18 +25739,9 @@ function applyTaskUpdates(task, updates, nextBaseVersion) {
25778
25739
  description: updates.description ?? task.description,
25779
25740
  activeForm,
25780
25741
  status,
25781
- tags: updates.tags ?? task.tags,
25782
- assignee: updates.assignee ?? task.assignee,
25783
25742
  metadata: mergeMetadata(task.metadata, updates.metadata),
25784
- archived: updates.archived ?? task.archived,
25785
25743
  blocks: task.blocks ?? [],
25786
- blockedBy,
25787
- parent: updates.parent ?? task.parent,
25788
- related: updates.related ?? task.related,
25789
- updatedAt: now,
25790
- baseVersion: nextBaseVersion,
25791
- version: nextBaseVersion,
25792
- legacyTodoId: updates.legacyTodoId ?? task.legacyTodoId
25744
+ blockedBy
25793
25745
  };
25794
25746
  }
25795
25747
  function createTask(input, options) {
@@ -25800,7 +25752,6 @@ function createTask(input, options) {
25800
25752
  return withTaskListLock(paths, () => {
25801
25753
  ensureTaskListDirs(paths);
25802
25754
  const id = String(getNextTaskId(paths));
25803
- const now = Date.now();
25804
25755
  const subject = input.subject;
25805
25756
  if (!subject) {
25806
25757
  throw new Error("Task subject is required");
@@ -25819,19 +25770,9 @@ function createTask(input, options) {
25819
25770
  description: input.description,
25820
25771
  activeForm,
25821
25772
  status,
25822
- tags: input.tags,
25823
- assignee: input.assignee,
25824
25773
  metadata: input.metadata,
25825
- archived: input.archived,
25826
25774
  blocks: [],
25827
- blockedBy: input.blockedBy ?? [],
25828
- parent: input.parent,
25829
- related: input.related,
25830
- createdAt: now,
25831
- updatedAt: now,
25832
- baseVersion: 1,
25833
- version: 1,
25834
- legacyTodoId: input.legacyTodoId
25775
+ blockedBy: input.blockedBy ?? []
25835
25776
  };
25836
25777
  writeJson(join11(paths.tasksDir, `${id}.json`), serializeTaskRecord(record));
25837
25778
  updateHighwatermark(paths, Number(id));
@@ -25878,26 +25819,10 @@ function updateTask(id, updates, options) {
25878
25819
  if (!existing) {
25879
25820
  throw new Error(`Task ${id} not found`);
25880
25821
  }
25881
- const requestedBase = updates.baseVersion;
25882
- const hasConflict = typeof requestedBase === "number" && requestedBase !== existing.baseVersion;
25883
- if (hasConflict && !options?.allowMerge) {
25884
- throw new TaskStoreConflictError({
25885
- taskId: id,
25886
- expected: requestedBase,
25887
- actual: existing.baseVersion
25888
- });
25889
- }
25890
- if (hasConflict && options?.allowMerge) {
25891
- const updateTimestamp = updates.updatedAt ?? Date.now();
25892
- if (updateTimestamp <= existing.updatedAt) {
25893
- return { task: existing, conflict: true };
25894
- }
25895
- }
25896
- const nextBaseVersion = existing.baseVersion + 1;
25897
- const updated = applyTaskUpdates(existing, updates, nextBaseVersion);
25822
+ const updated = applyTaskUpdates(existing, updates);
25898
25823
  writeJsonAtomic(join11(target.tasksDir, `${id}.json`), serializeTaskRecord(updated));
25899
25824
  const refreshed = buildTaskListForPaths(target).find((task) => task.id === updated.id);
25900
- return { task: refreshed ?? updated, conflict: hasConflict };
25825
+ return { task: refreshed ?? updated };
25901
25826
  });
25902
25827
  }
25903
25828
  function rebuildTaskBlocks(options) {
@@ -25926,21 +25851,6 @@ function buildTaskGraph(tasks) {
25926
25851
  edges.push({ from: blockerId, to: task.id, type: "blocks" });
25927
25852
  }
25928
25853
  }
25929
- if (task.parent) {
25930
- const key = `parent:${task.parent}->${task.id}`;
25931
- if (!edgeKeys.has(key)) {
25932
- edgeKeys.add(key);
25933
- edges.push({ from: task.parent, to: task.id, type: "parent" });
25934
- }
25935
- }
25936
- const related = task.related ?? [];
25937
- for (const relatedId of related) {
25938
- const key = `related:${task.id}->${relatedId}`;
25939
- if (!edgeKeys.has(key)) {
25940
- edgeKeys.add(key);
25941
- edges.push({ from: task.id, to: relatedId, type: "related" });
25942
- }
25943
- }
25944
25854
  }
25945
25855
  return { nodes, edges };
25946
25856
  }
@@ -25951,7 +25861,6 @@ function findTaskCycles(graph) {
25951
25861
  const stack = [];
25952
25862
  const adjacency = /* @__PURE__ */ new Map();
25953
25863
  for (const edge of graph.edges) {
25954
- if (edge.type === "related") continue;
25955
25864
  const list = adjacency.get(edge.from) ?? [];
25956
25865
  list.push(edge.to);
25957
25866
  adjacency.set(edge.from, list);
@@ -25986,7 +25895,7 @@ function isTaskBlocked(task, tasksById) {
25986
25895
  for (const blockerId of blockers) {
25987
25896
  const blocker = tasksById.get(blockerId);
25988
25897
  if (!blocker) return true;
25989
- if (blocker.status !== "done" && blocker.status !== "archived") return true;
25898
+ if (blocker.status !== "done" && blocker.status !== "deleted") return true;
25990
25899
  }
25991
25900
  return false;
25992
25901
  }
@@ -25998,7 +25907,7 @@ function calculateReadyBlocked(tasks) {
25998
25907
  const ready = [];
25999
25908
  const blocked = [];
26000
25909
  for (const task of tasks) {
26001
- if (task.status === "done" || task.status === "archived") continue;
25910
+ if (task.status === "done" || task.status === "deleted") continue;
26002
25911
  const blockedByDeps = isTaskBlocked(task, tasksById);
26003
25912
  if (blockedByDeps) {
26004
25913
  blocked.push(task);
@@ -26061,7 +25970,7 @@ function emitListChanged(listId) {
26061
25970
  done: tasks.filter((task) => task.status === "done").length,
26062
25971
  inProgress: tasks.filter((task) => task.status === "in_progress").length,
26063
25972
  pending: tasks.filter((task) => task.status === "pending").length,
26064
- archived: tasks.filter((task) => task.status === "archived").length
25973
+ deleted: tasks.filter((task) => task.status === "deleted").length
26065
25974
  }
26066
25975
  });
26067
25976
  return readyBlocked.ready;
@@ -27726,7 +27635,7 @@ function REPL({
27726
27635
  const tasks = listTasks({});
27727
27636
  const hasTasks = tasks.length > 0;
27728
27637
  const allCompleted = tasks.every(
27729
- (task) => task.status === "done" || task.status === "archived"
27638
+ (task) => task.status === "done" || task.status === "deleted"
27730
27639
  );
27731
27640
  if (hasTasks && allCompleted) {
27732
27641
  setTimeout(() => {
@@ -28400,7 +28309,7 @@ import { homedir as homedir8 } from "os";
28400
28309
  // src/commands/agents/generation.ts
28401
28310
  import { randomUUID as randomUUID6 } from "crypto";
28402
28311
  async function generateAgentWithClaude(prompt) {
28403
- const { queryModel } = await import("./llm-CP2G3BZQ.js");
28312
+ const { queryModel } = await import("./llm-CC3GQ5ZM.js");
28404
28313
  const systemPrompt = `You are an expert at creating AI agent configurations. Based on the user's description, generate a specialized agent configuration.
28405
28314
 
28406
28315
  Return your response as a JSON object with exactly these fields:
@@ -31999,7 +31908,7 @@ To give feedback, users should ${MACRO.ISSUES_EXPLAINER}.
31999
31908
 
32000
31909
  # Task Management
32001
31910
  You have access to the Task tools (TaskCreate, TaskUpdate, TaskList, TaskGet) to help you manage and plan tasks. Use these tools VERY frequently to ensure that you are tracking your tasks and giving the user visibility into your progress.
32002
- These tools are powerful for planning tasks and for breaking down larger complex tasks into smaller steps. For multi-step work, start by creating tasks with TaskCreate, then use TaskUpdate as you progress. Use TaskList to review readiness and blockers, and TaskGet for details. TaskList only returns id/subject/status/owner/blockedBy.
31911
+ These tools are powerful for planning tasks and for breaking down larger complex tasks into smaller steps. For multi-step work, start by creating tasks with TaskCreate, then use TaskUpdate as you progress. Use TaskList to review readiness and blockers, and TaskGet for details. TaskList only returns id/subject/status/blockedBy.
32003
31912
  For multi-step plans, you may create the list first and add blockedBy later via TaskUpdate. You can create a structured task list first and set up the task dependencies blockedBy later via TaskUpdate to ensure the previous structured task list completed in the right order.
32004
31913
  Single-task work does not require a dependency chain. When dependencies are ready, set metadata.planFinalized="true" with TaskUpdate to trigger global validation.
32005
31914
 
@@ -32242,9 +32151,7 @@ export {
32242
32151
  generateTaskListId,
32243
32152
  runWithTaskListId,
32244
32153
  runWithTaskListEnv,
32245
- TaskStoreConflictError,
32246
32154
  getTaskListPaths,
32247
- initTaskListLockFile,
32248
32155
  createTask,
32249
32156
  getTask,
32250
32157
  listTasks,