pybao-cli 1.3.58 → 1.3.60
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.
- package/dist/REPL-NWGNC5Q6.js +42 -0
- package/dist/{acp-LYCKM2TI.js → acp-TBTUUMWW.js} +26 -26
- package/dist/{agentsValidate-EC6END7F.js → agentsValidate-J63L4VBS.js} +7 -7
- package/dist/{ask-GI5DRJBL.js → ask-XZVD32YA.js} +25 -25
- package/dist/{autoUpdater-4YVYO24K.js → autoUpdater-MGX45DVC.js} +3 -3
- package/dist/{chunk-7GLJ7VAZ.js → chunk-254HM3YV.js} +1 -1
- package/dist/{chunk-H3AOUEYZ.js → chunk-37MRI7OH.js} +3 -3
- package/dist/{chunk-O56GBI2I.js → chunk-3KDIVUMJ.js} +1 -1
- package/dist/{chunk-ULUOA4VY.js → chunk-4PUOJP27.js} +3 -3
- package/dist/{chunk-N67HYK7H.js → chunk-5J75JNYU.js} +2 -2
- package/dist/{chunk-DYSHQCXS.js → chunk-6TS7JDP6.js} +3 -3
- package/dist/{chunk-TGCVWLDI.js → chunk-A2E4MLOO.js} +3 -3
- package/dist/{chunk-2M2Y6OLD.js → chunk-CBCXCBGD.js} +1 -1
- package/dist/{chunk-2DBHDKLM.js → chunk-CY2SE75O.js} +2 -2
- package/dist/{chunk-IWH5QOYN.js → chunk-DKDOBGYY.js} +60 -40
- package/dist/chunk-DKDOBGYY.js.map +7 -0
- package/dist/{chunk-HVP26Z5X.js → chunk-E36DR7VA.js} +1 -1
- package/dist/{chunk-BBBJBXZ6.js → chunk-FV4TLVB2.js} +2 -2
- package/dist/{chunk-EM5T4YJS.js → chunk-GZBGCBRV.js} +3 -3
- package/dist/{chunk-DSSBD4UT.js → chunk-HFKFW2FC.js} +115 -46
- package/dist/{chunk-DSSBD4UT.js.map → chunk-HFKFW2FC.js.map} +2 -2
- package/dist/{chunk-BKZ334RO.js → chunk-IXGCKRWF.js} +4 -4
- package/dist/{chunk-DAFI6K22.js → chunk-LW2CMS4L.js} +1 -1
- package/dist/{chunk-MSPICB55.js → chunk-NJS7QEQM.js} +1 -1
- package/dist/{chunk-4CP2V5UB.js → chunk-RP24IRHH.js} +2 -2
- package/dist/{chunk-BZKMHEX2.js → chunk-SXEY6MGO.js} +2 -2
- package/dist/{chunk-OS7WEAJM.js → chunk-SZEKCDXG.js} +1 -1
- package/dist/{chunk-H56BFGRT.js → chunk-TDU6Z7ZH.js} +1 -1
- package/dist/{chunk-GADM3OKI.js → chunk-UNCZ66TS.js} +3 -3
- package/dist/{chunk-BRCVB4OQ.js → chunk-V6ZP7GFL.js} +1 -1
- package/dist/{chunk-BRCVB4OQ.js.map → chunk-V6ZP7GFL.js.map} +1 -1
- package/dist/{chunk-2HDHGZNP.js → chunk-YIBR6CZP.js} +3 -3
- package/dist/{chunk-32YJDWRZ.js → chunk-YNYNKU7M.js} +2 -2
- package/dist/{chunk-HP32GABR.js → chunk-ZCIXEHO3.js} +1 -1
- package/dist/{chunk-RYVUTLVX.js → chunk-ZMWB3VBE.js} +4 -4
- package/dist/{cli-JXW4QLJN.js → cli-L6YXHMEO.js} +77 -77
- package/dist/commands-FSKNON7C.js +46 -0
- package/dist/{config-7IZ34L3S.js → config-FWF3LEWN.js} +4 -4
- package/dist/{context-WJHUEGBB.js → context-2QY2VH4A.js} +5 -5
- package/dist/{customCommands-I6HIO3CU.js → customCommands-VEMR2LGN.js} +4 -4
- package/dist/{env-PFX2FOIX.js → env-OSC56YI7.js} +2 -2
- package/dist/index.js +3 -3
- package/dist/{llm-5HQRDZG7.js → llm-O2MER4L2.js} +26 -26
- package/dist/{llmLazy-F4LFWEUT.js → llmLazy-SYEDSZSB.js} +1 -1
- package/dist/{loader-LGQ2KA4C.js → loader-MLL6SWIJ.js} +4 -4
- package/dist/{mcp-RIYQ64VF.js → mcp-HAYTXPHN.js} +7 -7
- package/dist/{mentionProcessor-ET7OEP52.js → mentionProcessor-GOZEGP7X.js} +5 -5
- package/dist/{messages-3V3RGTF7.js → messages-KCLPP7WQ.js} +1 -1
- package/dist/{model-5PVDBI7J.js → model-6X7QI4AK.js} +5 -5
- package/dist/{openai-OU33FH52.js → openai-4S6PLFQU.js} +5 -5
- package/dist/{outputStyles-7HJA7JYF.js → outputStyles-LHLEZ5PP.js} +4 -4
- package/dist/{pluginRuntime-OAP2UR7S.js → pluginRuntime-ODS43P2F.js} +6 -6
- package/dist/{pluginValidation-6IRCHOJG.js → pluginValidation-IG66AYUD.js} +6 -6
- package/dist/prompts-Q6P7GL77.js +48 -0
- package/dist/{pybAgentSessionLoad-O5HI5ZQA.js → pybAgentSessionLoad-R67Y7CA4.js} +4 -4
- package/dist/{pybAgentSessionResume-KXXOI5BO.js → pybAgentSessionResume-QZFZCTJZ.js} +4 -4
- package/dist/{pybAgentStreamJsonSession-25GKDW65.js → pybAgentStreamJsonSession-R2ALHKP3.js} +1 -1
- package/dist/{pybHooks-H74CE7GF.js → pybHooks-PHE6MC5A.js} +4 -4
- package/dist/query-D7HUISRS.js +50 -0
- package/dist/{ripgrep-DFRTEML3.js → ripgrep-6VRUGZMJ.js} +3 -3
- package/dist/{skillMarketplace-AGLUOUCV.js → skillMarketplace-JB4ZTJ7Z.js} +3 -3
- package/dist/{state-K5W2U5V2.js → state-PD2NWT3T.js} +2 -2
- package/dist/{theme-RBYITPVQ.js → theme-LAB3MOQZ.js} +5 -5
- package/dist/{toolPermissionSettings-SZSO3AF2.js → toolPermissionSettings-EIEMOTDK.js} +6 -6
- package/dist/tools-AQKKY4YI.js +47 -0
- package/dist/{userInput-TAAQ7FYD.js → userInput-GGN3LX3H.js} +27 -27
- package/package.json +1 -1
- package/dist/REPL-HRF7VBFT.js +0 -42
- package/dist/chunk-IWH5QOYN.js.map +0 -7
- package/dist/commands-KTMIKYCW.js +0 -46
- package/dist/prompts-SIYABMNP.js +0 -48
- package/dist/query-KQEDRTMJ.js +0 -50
- package/dist/tools-BCKNN3G6.js +0 -47
- /package/dist/{REPL-HRF7VBFT.js.map → REPL-NWGNC5Q6.js.map} +0 -0
- /package/dist/{acp-LYCKM2TI.js.map → acp-TBTUUMWW.js.map} +0 -0
- /package/dist/{agentsValidate-EC6END7F.js.map → agentsValidate-J63L4VBS.js.map} +0 -0
- /package/dist/{ask-GI5DRJBL.js.map → ask-XZVD32YA.js.map} +0 -0
- /package/dist/{autoUpdater-4YVYO24K.js.map → autoUpdater-MGX45DVC.js.map} +0 -0
- /package/dist/{chunk-7GLJ7VAZ.js.map → chunk-254HM3YV.js.map} +0 -0
- /package/dist/{chunk-H3AOUEYZ.js.map → chunk-37MRI7OH.js.map} +0 -0
- /package/dist/{chunk-O56GBI2I.js.map → chunk-3KDIVUMJ.js.map} +0 -0
- /package/dist/{chunk-ULUOA4VY.js.map → chunk-4PUOJP27.js.map} +0 -0
- /package/dist/{chunk-N67HYK7H.js.map → chunk-5J75JNYU.js.map} +0 -0
- /package/dist/{chunk-DYSHQCXS.js.map → chunk-6TS7JDP6.js.map} +0 -0
- /package/dist/{chunk-TGCVWLDI.js.map → chunk-A2E4MLOO.js.map} +0 -0
- /package/dist/{chunk-2M2Y6OLD.js.map → chunk-CBCXCBGD.js.map} +0 -0
- /package/dist/{chunk-2DBHDKLM.js.map → chunk-CY2SE75O.js.map} +0 -0
- /package/dist/{chunk-HVP26Z5X.js.map → chunk-E36DR7VA.js.map} +0 -0
- /package/dist/{chunk-BBBJBXZ6.js.map → chunk-FV4TLVB2.js.map} +0 -0
- /package/dist/{chunk-EM5T4YJS.js.map → chunk-GZBGCBRV.js.map} +0 -0
- /package/dist/{chunk-BKZ334RO.js.map → chunk-IXGCKRWF.js.map} +0 -0
- /package/dist/{chunk-DAFI6K22.js.map → chunk-LW2CMS4L.js.map} +0 -0
- /package/dist/{chunk-MSPICB55.js.map → chunk-NJS7QEQM.js.map} +0 -0
- /package/dist/{chunk-4CP2V5UB.js.map → chunk-RP24IRHH.js.map} +0 -0
- /package/dist/{chunk-BZKMHEX2.js.map → chunk-SXEY6MGO.js.map} +0 -0
- /package/dist/{chunk-OS7WEAJM.js.map → chunk-SZEKCDXG.js.map} +0 -0
- /package/dist/{chunk-H56BFGRT.js.map → chunk-TDU6Z7ZH.js.map} +0 -0
- /package/dist/{chunk-GADM3OKI.js.map → chunk-UNCZ66TS.js.map} +0 -0
- /package/dist/{chunk-2HDHGZNP.js.map → chunk-YIBR6CZP.js.map} +0 -0
- /package/dist/{chunk-32YJDWRZ.js.map → chunk-YNYNKU7M.js.map} +0 -0
- /package/dist/{chunk-HP32GABR.js.map → chunk-ZCIXEHO3.js.map} +0 -0
- /package/dist/{chunk-RYVUTLVX.js.map → chunk-ZMWB3VBE.js.map} +0 -0
- /package/dist/{cli-JXW4QLJN.js.map → cli-L6YXHMEO.js.map} +0 -0
- /package/dist/{commands-KTMIKYCW.js.map → commands-FSKNON7C.js.map} +0 -0
- /package/dist/{config-7IZ34L3S.js.map → config-FWF3LEWN.js.map} +0 -0
- /package/dist/{context-WJHUEGBB.js.map → context-2QY2VH4A.js.map} +0 -0
- /package/dist/{customCommands-I6HIO3CU.js.map → customCommands-VEMR2LGN.js.map} +0 -0
- /package/dist/{env-PFX2FOIX.js.map → env-OSC56YI7.js.map} +0 -0
- /package/dist/{llm-5HQRDZG7.js.map → llm-O2MER4L2.js.map} +0 -0
- /package/dist/{llmLazy-F4LFWEUT.js.map → llmLazy-SYEDSZSB.js.map} +0 -0
- /package/dist/{loader-LGQ2KA4C.js.map → loader-MLL6SWIJ.js.map} +0 -0
- /package/dist/{mcp-RIYQ64VF.js.map → mcp-HAYTXPHN.js.map} +0 -0
- /package/dist/{mentionProcessor-ET7OEP52.js.map → mentionProcessor-GOZEGP7X.js.map} +0 -0
- /package/dist/{messages-3V3RGTF7.js.map → messages-KCLPP7WQ.js.map} +0 -0
- /package/dist/{model-5PVDBI7J.js.map → model-6X7QI4AK.js.map} +0 -0
- /package/dist/{openai-OU33FH52.js.map → openai-4S6PLFQU.js.map} +0 -0
- /package/dist/{outputStyles-7HJA7JYF.js.map → outputStyles-LHLEZ5PP.js.map} +0 -0
- /package/dist/{pluginRuntime-OAP2UR7S.js.map → pluginRuntime-ODS43P2F.js.map} +0 -0
- /package/dist/{pluginValidation-6IRCHOJG.js.map → pluginValidation-IG66AYUD.js.map} +0 -0
- /package/dist/{prompts-SIYABMNP.js.map → prompts-Q6P7GL77.js.map} +0 -0
- /package/dist/{pybAgentSessionLoad-O5HI5ZQA.js.map → pybAgentSessionLoad-R67Y7CA4.js.map} +0 -0
- /package/dist/{pybAgentSessionResume-KXXOI5BO.js.map → pybAgentSessionResume-QZFZCTJZ.js.map} +0 -0
- /package/dist/{pybAgentStreamJsonSession-25GKDW65.js.map → pybAgentStreamJsonSession-R2ALHKP3.js.map} +0 -0
- /package/dist/{pybHooks-H74CE7GF.js.map → pybHooks-PHE6MC5A.js.map} +0 -0
- /package/dist/{query-KQEDRTMJ.js.map → query-D7HUISRS.js.map} +0 -0
- /package/dist/{ripgrep-DFRTEML3.js.map → ripgrep-6VRUGZMJ.js.map} +0 -0
- /package/dist/{skillMarketplace-AGLUOUCV.js.map → skillMarketplace-JB4ZTJ7Z.js.map} +0 -0
- /package/dist/{state-K5W2U5V2.js.map → state-PD2NWT3T.js.map} +0 -0
- /package/dist/{theme-RBYITPVQ.js.map → theme-LAB3MOQZ.js.map} +0 -0
- /package/dist/{toolPermissionSettings-SZSO3AF2.js.map → toolPermissionSettings-EIEMOTDK.js.map} +0 -0
- /package/dist/{tools-BCKNN3G6.js.map → tools-AQKKY4YI.js.map} +0 -0
- /package/dist/{userInput-TAAQ7FYD.js.map → userInput-GGN3LX3H.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-
|
|
5
|
+
} from "./chunk-TDU6Z7ZH.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-
|
|
19
|
+
} from "./chunk-ZMWB3VBE.js";
|
|
20
20
|
import {
|
|
21
21
|
formatValidationResult,
|
|
22
22
|
validatePluginOrMarketplacePath
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-UNCZ66TS.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-
|
|
36
|
+
} from "./chunk-SZEKCDXG.js";
|
|
37
37
|
import {
|
|
38
38
|
loadPybAgentSessionMessages
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-3KDIVUMJ.js";
|
|
40
40
|
import {
|
|
41
41
|
appendSessionCustomTitleRecord,
|
|
42
42
|
appendSessionJsonlFromMessage,
|
|
43
43
|
appendSessionTagRecord
|
|
44
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-SXEY6MGO.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-
|
|
61
|
+
} from "./chunk-4PUOJP27.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-
|
|
74
|
+
} from "./chunk-CY2SE75O.js";
|
|
75
75
|
import {
|
|
76
76
|
fetchCustomModels,
|
|
77
77
|
getModelFeatures
|
|
78
|
-
} from "./chunk-
|
|
78
|
+
} from "./chunk-5J75JNYU.js";
|
|
79
79
|
import {
|
|
80
80
|
queryLLM,
|
|
81
81
|
queryQuick,
|
|
82
82
|
verifyApiKey
|
|
83
|
-
} from "./chunk-
|
|
83
|
+
} from "./chunk-IXGCKRWF.js";
|
|
84
84
|
import {
|
|
85
85
|
listAllContentFiles,
|
|
86
86
|
ripGrep,
|
|
87
87
|
tree
|
|
88
|
-
} from "./chunk-
|
|
88
|
+
} from "./chunk-NJS7QEQM.js";
|
|
89
89
|
import {
|
|
90
90
|
getCustomCommandDirectories,
|
|
91
91
|
hasCustomCommands,
|
|
92
92
|
loadCustomCommands,
|
|
93
93
|
reloadCustomCommands
|
|
94
|
-
} from "./chunk-
|
|
94
|
+
} from "./chunk-FV4TLVB2.js";
|
|
95
95
|
import {
|
|
96
96
|
loadToolPermissionContextFromDisk,
|
|
97
97
|
persistToolPermissionUpdateToDisk
|
|
98
|
-
} from "./chunk-
|
|
98
|
+
} from "./chunk-GZBGCBRV.js";
|
|
99
99
|
import {
|
|
100
100
|
getSettingsFileCandidates,
|
|
101
101
|
loadSettingsWithLegacyFallback
|
|
102
|
-
} from "./chunk-
|
|
102
|
+
} from "./chunk-LW2CMS4L.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-
|
|
115
|
+
} from "./chunk-YNYNKU7M.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-
|
|
124
|
+
} from "./chunk-RP24IRHH.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-
|
|
157
|
+
} from "./chunk-CBCXCBGD.js";
|
|
158
158
|
import {
|
|
159
159
|
ModelManager,
|
|
160
160
|
getModelManager,
|
|
161
161
|
isDefaultSlowAndCapableModel
|
|
162
|
-
} from "./chunk-
|
|
162
|
+
} from "./chunk-6TS7JDP6.js";
|
|
163
163
|
import {
|
|
164
164
|
getCodeStyle,
|
|
165
165
|
getContext,
|
|
166
166
|
getGitState,
|
|
167
167
|
getIsGit,
|
|
168
168
|
getProjectDocs
|
|
169
|
-
} from "./chunk-
|
|
169
|
+
} from "./chunk-A2E4MLOO.js";
|
|
170
170
|
import {
|
|
171
171
|
getTheme
|
|
172
|
-
} from "./chunk-
|
|
172
|
+
} from "./chunk-254HM3YV.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-
|
|
185
|
+
} from "./chunk-37MRI7OH.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-
|
|
194
|
+
} from "./chunk-ZCIXEHO3.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-
|
|
230
|
+
} from "./chunk-E36DR7VA.js";
|
|
231
231
|
import {
|
|
232
232
|
MACRO
|
|
233
|
-
} from "./chunk-
|
|
233
|
+
} from "./chunk-V6ZP7GFL.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-
|
|
421
|
+
const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-O2MER4L2.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-
|
|
4461
|
+
const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-O2MER4L2.js");
|
|
4462
4462
|
const messages = [
|
|
4463
4463
|
{
|
|
4464
4464
|
type: "user",
|
|
@@ -6503,7 +6503,8 @@ var DESCRIPTION2 = `Performs smart string replacements in files.
|
|
|
6503
6503
|
Usage:
|
|
6504
6504
|
- You must use your \`Read\` tool at least once in the conversation before editing. This tool will error if you attempt an edit without reading the file.
|
|
6505
6505
|
- When editing text from Read tool output, ensure you preserve the exact indentation (tabs/spaces) as it appears AFTER the line number prefix. The line number prefix format is: spaces + line number + tab. Everything after that tab is the actual file content to match. Never include any part of the line number prefix in the old_string or new_string.
|
|
6506
|
-
- The tool uses fuzzy matching
|
|
6506
|
+
- **Smart Matching**: The tool uses a 9-layer fuzzy matching engine. It can locate code even if there are minor differences in indentation, whitespace, or even slight typos in the \`old_string\`.
|
|
6507
|
+
- **Robustness**: It handles common LLM errors (e.g., mismatched spaces, missing newlines) automatically.
|
|
6507
6508
|
- ALWAYS prefer editing existing files in the codebase. NEVER write new files unless explicitly required.
|
|
6508
6509
|
- Only use emojis if the user explicitly requests it. Avoid adding emojis to files unless asked.
|
|
6509
6510
|
- The edit will FAIL if \`old_string\` is not unique in the file. Either provide a larger string with more surrounding context to make it unique or use \`replace_all\` to change every instance of \`old_string\`.
|
|
@@ -6626,6 +6627,19 @@ var LineTrimmedReplacer = function* (content, find) {
|
|
|
6626
6627
|
};
|
|
6627
6628
|
var SINGLE_CANDIDATE_SIMILARITY_THRESHOLD = 0;
|
|
6628
6629
|
var MULTIPLE_CANDIDATES_SIMILARITY_THRESHOLD = 0.3;
|
|
6630
|
+
var WhitespaceNormalizedReplacer = function* (content, find) {
|
|
6631
|
+
const tokens = find.split(/\s+/).filter((t) => t.length > 0);
|
|
6632
|
+
if (tokens.length === 0) return;
|
|
6633
|
+
const pattern = tokens.map((token) => token.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")).join("\\s+");
|
|
6634
|
+
try {
|
|
6635
|
+
const regex = new RegExp(pattern, "g");
|
|
6636
|
+
let match;
|
|
6637
|
+
while ((match = regex.exec(content)) !== null) {
|
|
6638
|
+
yield match[0];
|
|
6639
|
+
}
|
|
6640
|
+
} catch (e) {
|
|
6641
|
+
}
|
|
6642
|
+
};
|
|
6629
6643
|
var BlockAnchorReplacer = function* (content, find) {
|
|
6630
6644
|
const originalLines = content.split("\n");
|
|
6631
6645
|
const searchLines = find.split("\n");
|
|
@@ -6746,6 +6760,7 @@ var SmartEdit = {
|
|
|
6746
6760
|
for (const replacer of [
|
|
6747
6761
|
SimpleReplacer,
|
|
6748
6762
|
LineTrimmedReplacer,
|
|
6763
|
+
WhitespaceNormalizedReplacer,
|
|
6749
6764
|
BlockAnchorReplacer
|
|
6750
6765
|
]) {
|
|
6751
6766
|
for (const search of replacer(content, oldString)) {
|
|
@@ -11439,7 +11454,7 @@ async function createAndStoreApiKey(accessToken) {
|
|
|
11439
11454
|
}
|
|
11440
11455
|
saveGlobalConfig(config2);
|
|
11441
11456
|
try {
|
|
11442
|
-
const { resetAnthropicClient } = await import("./llm-
|
|
11457
|
+
const { resetAnthropicClient } = await import("./llm-O2MER4L2.js");
|
|
11443
11458
|
resetAnthropicClient();
|
|
11444
11459
|
} catch {
|
|
11445
11460
|
}
|
|
@@ -15721,7 +15736,7 @@ async function refreshPluginRuntimeFromInstalls() {
|
|
|
15721
15736
|
const existingRoots = getSessionPlugins().map((p) => p.rootDir);
|
|
15722
15737
|
const dirs = Array.from(/* @__PURE__ */ new Set([...existingRoots, ...installedRoots]));
|
|
15723
15738
|
if (dirs.length === 0) return [];
|
|
15724
|
-
const { configureSessionPlugins } = await import("./pluginRuntime-
|
|
15739
|
+
const { configureSessionPlugins } = await import("./pluginRuntime-ODS43P2F.js");
|
|
15725
15740
|
const { errors } = await configureSessionPlugins({ pluginDirs: dirs });
|
|
15726
15741
|
return errors;
|
|
15727
15742
|
}
|
|
@@ -16390,7 +16405,7 @@ async function call(onDone, context) {
|
|
|
16390
16405
|
ModelConfig,
|
|
16391
16406
|
{
|
|
16392
16407
|
onClose: () => {
|
|
16393
|
-
import("./model-
|
|
16408
|
+
import("./model-6X7QI4AK.js").then(({ reloadModelManager: reloadModelManager2 }) => {
|
|
16394
16409
|
reloadModelManager2();
|
|
16395
16410
|
triggerModelConfigChange();
|
|
16396
16411
|
onDone();
|
|
@@ -23649,7 +23664,7 @@ function useStatusLine() {
|
|
|
23649
23664
|
// src/ui/components/PromptInput.tsx
|
|
23650
23665
|
async function interpretHashCommand(input) {
|
|
23651
23666
|
try {
|
|
23652
|
-
const { queryQuick: queryQuick2 } = await import("./llm-
|
|
23667
|
+
const { queryQuick: queryQuick2 } = await import("./llm-O2MER4L2.js");
|
|
23653
23668
|
const systemPrompt = [
|
|
23654
23669
|
"You're helping the user structure notes that will be added to their PYB.md file.",
|
|
23655
23670
|
"Format the user's input into a well-structured note that will be useful for later reference.",
|
|
@@ -23962,7 +23977,7 @@ function PromptInput({
|
|
|
23962
23977
|
if (messages2.length) {
|
|
23963
23978
|
if (mode === "bash") {
|
|
23964
23979
|
onQuery(messages2, newAbortController).then(async () => {
|
|
23965
|
-
const { getCwd: getCwd2 } = await import("./state-
|
|
23980
|
+
const { getCwd: getCwd2 } = await import("./state-PD2NWT3T.js");
|
|
23966
23981
|
setCurrentPwd(getCwd2());
|
|
23967
23982
|
});
|
|
23968
23983
|
} else {
|
|
@@ -26748,7 +26763,7 @@ import { homedir as homedir7 } from "os";
|
|
|
26748
26763
|
// src/commands/agents/generation.ts
|
|
26749
26764
|
import { randomUUID as randomUUID5 } from "crypto";
|
|
26750
26765
|
async function generateAgentWithClaude(prompt) {
|
|
26751
|
-
const { queryModel } = await import("./llm-
|
|
26766
|
+
const { queryModel } = await import("./llm-O2MER4L2.js");
|
|
26752
26767
|
const systemPrompt = `You are an expert at creating AI agent configurations. Based on the user's description, generate a specialized agent configuration.
|
|
26753
26768
|
|
|
26754
26769
|
Return your response as a JSON object with exactly these fields:
|
|
@@ -30819,13 +30834,15 @@ NEVER commit changes unless the user explicitly asks you to. It is VERY IMPORTAN
|
|
|
30819
30834
|
|
|
30820
30835
|
# File Modification Strategy (Edit vs Patch)
|
|
30821
30836
|
When you need to modify files, choose the appropriate tool based on the complexity:
|
|
30822
|
-
1. **Edit Tool**: Use for
|
|
30823
|
-
- Ideal for: Renaming variables, changing specific lines,
|
|
30824
|
-
-
|
|
30825
|
-
|
|
30826
|
-
|
|
30827
|
-
-
|
|
30828
|
-
-
|
|
30837
|
+
1. **Edit Tool**: Use for single-file, fuzzy-resilient modifications.
|
|
30838
|
+
- Ideal for: Renaming variables, changing specific lines, fixing bugs, or when you are unsure about exact context.
|
|
30839
|
+
- Engine: Powered by a 9-layer fuzzy matching engine that handles indentation/whitespace errors automatically.
|
|
30840
|
+
- Requirement: Read file first to ensure you have the context.
|
|
30841
|
+
2. **Patch Tool**: Use for multi-file, atomic, or structural refactoring.
|
|
30842
|
+
- Ideal for: Modifying multiple dependent files (e.g. interface + implementation), applying large structural changes.
|
|
30843
|
+
- Engine: Supports "Smart Context" (fuzzy matching) but enforces "Strict Atomicity" (All or Nothing).
|
|
30844
|
+
- Benefit: Ensures project consistency. If one file fails, everything rolls back, preventing broken states.
|
|
30845
|
+
- Feedback: If it fails, you will get a rich report explaining why. You can then choose to fix the patch or fallback to Edit Tool for specific files.
|
|
30829
30846
|
|
|
30830
30847
|
${isOutputStyleActive ? "" : "\nYou MUST answer concisely with fewer than 4 lines of text (not including tool use or code generation), unless user asks for detail.\n"}
|
|
30831
30848
|
`,
|
|
@@ -30874,6 +30891,9 @@ export {
|
|
|
30874
30891
|
hasWritePermission,
|
|
30875
30892
|
grantReadPermissionForOriginalDir,
|
|
30876
30893
|
NotebookEditTool,
|
|
30894
|
+
LineTrimmedReplacer,
|
|
30895
|
+
WhitespaceNormalizedReplacer,
|
|
30896
|
+
BlockAnchorReplacer,
|
|
30877
30897
|
FileEditTool,
|
|
30878
30898
|
ParserRegistry,
|
|
30879
30899
|
loadLanguage,
|