pybao-cli 1.5.5 → 1.5.7
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-YW6AH5YU.js +49 -0
- package/dist/{acp-5ATLRHLF.js → acp-2LMTSBAU.js} +30 -30
- package/dist/{agentsValidate-DZS6QRHL.js → agentsValidate-YQSHYCYC.js} +7 -7
- package/dist/{ask-4737XORX.js → ask-4Z4LH5IS.js} +29 -29
- package/dist/{autoUpdater-N3ZBYLEL.js → autoUpdater-UTX7ZX2N.js} +3 -3
- package/dist/{chunk-K7WUKXHI.js → chunk-3JH34RBY.js} +2 -2
- package/dist/{chunk-WZMYF3UX.js → chunk-4BFEUSKN.js} +2 -2
- package/dist/{chunk-HOPQEHPL.js → chunk-4R7NUADF.js} +1 -1
- package/dist/{chunk-K6NWBOPY.js → chunk-5F6IQJHF.js} +1 -1
- package/dist/{chunk-K6JHXMXN.js → chunk-5JKCAVMI.js} +3 -3
- package/dist/{chunk-ZRKIN5IB.js → chunk-7FFBXWS3.js} +3 -3
- package/dist/{chunk-5XJMA67J.js → chunk-CJ2YYIJN.js} +1 -1
- package/dist/{chunk-XYTFEOBP.js → chunk-EGJRWKZ6.js} +4 -4
- package/dist/{chunk-NVE4LCWO.js → chunk-EN7L7JWN.js} +1 -1
- package/dist/{chunk-YVAHZVKG.js → chunk-F7HYDAWW.js} +3 -3
- package/dist/{chunk-DRHHYVCW.js → chunk-HFVRQO2J.js} +172 -72
- package/dist/chunk-HFVRQO2J.js.map +7 -0
- package/dist/{chunk-3EXYSVHB.js → chunk-IFC2PLAM.js} +4 -4
- package/dist/{chunk-UOMNQX6X.js → chunk-IKMMFSNJ.js} +1 -1
- package/dist/{chunk-5SIMKDX4.js → chunk-IOP3VA4X.js} +2 -2
- package/dist/{chunk-DXRP66I5.js → chunk-JEAXJP2E.js} +1 -1
- package/dist/{chunk-SSJEKON3.js → chunk-KLD4WAB6.js} +4 -4
- package/dist/{chunk-CHIAWBUA.js → chunk-LYMH46VN.js} +3 -3
- package/dist/{chunk-HE7KJ6UH.js → chunk-OY6SB5B3.js} +4 -4
- package/dist/{chunk-TEC2E3XN.js → chunk-PI5RBPFA.js} +2 -2
- package/dist/{chunk-WABSMUT4.js → chunk-PMYMUSB4.js} +3 -3
- package/dist/{chunk-334FYYPK.js → chunk-SDKYJZWD.js} +2 -2
- package/dist/{chunk-SIERUHXD.js → chunk-SWNNPHFY.js} +192 -71
- package/dist/chunk-SWNNPHFY.js.map +7 -0
- package/dist/{chunk-LJ5LSGNH.js → chunk-T7UTA73F.js} +3 -3
- package/dist/{chunk-RGKCFZJC.js → chunk-TIMEEE5U.js} +1 -1
- package/dist/{chunk-GR4JDEVQ.js → chunk-TKEWBSVM.js} +3 -3
- package/dist/{chunk-6LPSL7BE.js → chunk-VBV5RHIK.js} +1 -1
- package/dist/{chunk-YPKIYICA.js → chunk-VZDDKAL2.js} +2 -2
- package/dist/{chunk-OD44XENK.js → chunk-W4PXRGP3.js} +1 -1
- package/dist/{chunk-OD44XENK.js.map → chunk-W4PXRGP3.js.map} +1 -1
- package/dist/{chunk-5UMUKAAM.js → chunk-Y2RSIF7P.js} +1 -1
- package/dist/{chunk-RAGFOLYJ.js → chunk-YNGGZILT.js} +1 -1
- package/dist/{chunk-LIWSSSFH.js → chunk-ZD6NMP33.js} +2 -2
- package/dist/{cli-7LQML4MU.js → cli-N3Q4D4BW.js} +89 -89
- package/dist/commands-OOINF26E.js +53 -0
- package/dist/{config-75TKJIF7.js → config-GZXNPIIG.js} +4 -4
- package/dist/{context-DKI4ZOCF.js → context-TUO5CUR3.js} +6 -6
- package/dist/{conversationTracker-NB2PCUQP.js → conversationTracker-APB6PR5Z.js} +3 -3
- package/dist/{customCommands-4D5NYHQV.js → customCommands-J4DV6OI5.js} +4 -4
- package/dist/{env-YOGE2U3I.js → env-YBYEMHYQ.js} +2 -2
- package/dist/{file-S4Y77ZDB.js → file-KIBY6XZX.js} +4 -4
- package/dist/index.js +3 -3
- package/dist/{llm-Q23IAP4O.js → llm-T7C6QJWB.js} +30 -30
- package/dist/{llmLazy-7DJ3Z3D6.js → llmLazy-FDVUCPDQ.js} +1 -1
- package/dist/{loader-XVITQOFP.js → loader-QCHS455W.js} +4 -4
- package/dist/{lsp-F773RHZL.js → lsp-TE2SQ6CO.js} +6 -6
- package/dist/{lspAnchor-UJC5DJXX.js → lspAnchor-IZ7YQJ64.js} +6 -6
- package/dist/{mcp-CQWFQULD.js → mcp-PLAWUZOQ.js} +7 -7
- package/dist/{mentionProcessor-MNKP2G6P.js → mentionProcessor-2O3AMZHB.js} +5 -5
- package/dist/{messages-HMXQVAKG.js → messages-ZHFZ2OOG.js} +1 -1
- package/dist/{model-OGMQRRY5.js → model-GBC2PBVJ.js} +5 -5
- package/dist/{openai-ZLOMELLL.js → openai-2V2J23AE.js} +5 -5
- package/dist/{outputStyles-TNK5GPGG.js → outputStyles-WD4VD4GZ.js} +4 -4
- package/dist/{pluginRuntime-C6QS67LQ.js → pluginRuntime-WNZS26EV.js} +6 -6
- package/dist/{pluginValidation-4SGPUOSV.js → pluginValidation-YP7MW35I.js} +6 -6
- package/dist/prompts-QPYUI6SX.js +55 -0
- package/dist/{pybAgentSessionLoad-NHZ7Y2UJ.js → pybAgentSessionLoad-YABCHELS.js} +4 -4
- package/dist/{pybAgentSessionResume-3XYFO2NO.js → pybAgentSessionResume-C3LNSFQL.js} +4 -4
- package/dist/{pybAgentStreamJsonSession-H3AVVLPA.js → pybAgentStreamJsonSession-DFOGLEOB.js} +1 -1
- package/dist/{pybHooks-JWJOTOPE.js → pybHooks-LGGIB5PJ.js} +4 -4
- package/dist/query-EC6HGBDS.js +57 -0
- package/dist/{registry-ZSUU43XZ.js → registry-EYMCKHRG.js} +5 -5
- package/dist/{ripgrep-K52QYYMD.js → ripgrep-JZN2MVSK.js} +3 -3
- package/dist/{skillMarketplace-JZDP6BFA.js → skillMarketplace-ETYXMAXF.js} +3 -3
- package/dist/{state-I4ULG2ZQ.js → state-MAVHRDNE.js} +2 -2
- package/dist/{theme-AZT4CHJW.js → theme-AUEZ6SNA.js} +5 -5
- package/dist/{toolPermissionSettings-KPHZJ4NQ.js → toolPermissionSettings-7JZYBUZC.js} +6 -6
- package/dist/tools-3JFVDDSZ.js +54 -0
- package/dist/{userInput-Y4I3F2FW.js → userInput-V6RU4BEQ.js} +31 -31
- package/package.json +1 -1
- package/dist/REPL-QYABP7JW.js +0 -49
- package/dist/chunk-DRHHYVCW.js.map +0 -7
- package/dist/chunk-SIERUHXD.js.map +0 -7
- package/dist/commands-5NMEFJO5.js +0 -53
- package/dist/prompts-RUCL6EM6.js +0 -55
- package/dist/query-U7X4LZ6Z.js +0 -57
- package/dist/tools-J3ZR5NYG.js +0 -54
- /package/dist/{REPL-QYABP7JW.js.map → REPL-YW6AH5YU.js.map} +0 -0
- /package/dist/{acp-5ATLRHLF.js.map → acp-2LMTSBAU.js.map} +0 -0
- /package/dist/{agentsValidate-DZS6QRHL.js.map → agentsValidate-YQSHYCYC.js.map} +0 -0
- /package/dist/{ask-4737XORX.js.map → ask-4Z4LH5IS.js.map} +0 -0
- /package/dist/{autoUpdater-N3ZBYLEL.js.map → autoUpdater-UTX7ZX2N.js.map} +0 -0
- /package/dist/{chunk-K7WUKXHI.js.map → chunk-3JH34RBY.js.map} +0 -0
- /package/dist/{chunk-WZMYF3UX.js.map → chunk-4BFEUSKN.js.map} +0 -0
- /package/dist/{chunk-HOPQEHPL.js.map → chunk-4R7NUADF.js.map} +0 -0
- /package/dist/{chunk-K6NWBOPY.js.map → chunk-5F6IQJHF.js.map} +0 -0
- /package/dist/{chunk-K6JHXMXN.js.map → chunk-5JKCAVMI.js.map} +0 -0
- /package/dist/{chunk-ZRKIN5IB.js.map → chunk-7FFBXWS3.js.map} +0 -0
- /package/dist/{chunk-5XJMA67J.js.map → chunk-CJ2YYIJN.js.map} +0 -0
- /package/dist/{chunk-XYTFEOBP.js.map → chunk-EGJRWKZ6.js.map} +0 -0
- /package/dist/{chunk-NVE4LCWO.js.map → chunk-EN7L7JWN.js.map} +0 -0
- /package/dist/{chunk-YVAHZVKG.js.map → chunk-F7HYDAWW.js.map} +0 -0
- /package/dist/{chunk-3EXYSVHB.js.map → chunk-IFC2PLAM.js.map} +0 -0
- /package/dist/{chunk-UOMNQX6X.js.map → chunk-IKMMFSNJ.js.map} +0 -0
- /package/dist/{chunk-5SIMKDX4.js.map → chunk-IOP3VA4X.js.map} +0 -0
- /package/dist/{chunk-DXRP66I5.js.map → chunk-JEAXJP2E.js.map} +0 -0
- /package/dist/{chunk-SSJEKON3.js.map → chunk-KLD4WAB6.js.map} +0 -0
- /package/dist/{chunk-CHIAWBUA.js.map → chunk-LYMH46VN.js.map} +0 -0
- /package/dist/{chunk-HE7KJ6UH.js.map → chunk-OY6SB5B3.js.map} +0 -0
- /package/dist/{chunk-TEC2E3XN.js.map → chunk-PI5RBPFA.js.map} +0 -0
- /package/dist/{chunk-WABSMUT4.js.map → chunk-PMYMUSB4.js.map} +0 -0
- /package/dist/{chunk-334FYYPK.js.map → chunk-SDKYJZWD.js.map} +0 -0
- /package/dist/{chunk-LJ5LSGNH.js.map → chunk-T7UTA73F.js.map} +0 -0
- /package/dist/{chunk-RGKCFZJC.js.map → chunk-TIMEEE5U.js.map} +0 -0
- /package/dist/{chunk-GR4JDEVQ.js.map → chunk-TKEWBSVM.js.map} +0 -0
- /package/dist/{chunk-6LPSL7BE.js.map → chunk-VBV5RHIK.js.map} +0 -0
- /package/dist/{chunk-YPKIYICA.js.map → chunk-VZDDKAL2.js.map} +0 -0
- /package/dist/{chunk-5UMUKAAM.js.map → chunk-Y2RSIF7P.js.map} +0 -0
- /package/dist/{chunk-RAGFOLYJ.js.map → chunk-YNGGZILT.js.map} +0 -0
- /package/dist/{chunk-LIWSSSFH.js.map → chunk-ZD6NMP33.js.map} +0 -0
- /package/dist/{cli-7LQML4MU.js.map → cli-N3Q4D4BW.js.map} +0 -0
- /package/dist/{commands-5NMEFJO5.js.map → commands-OOINF26E.js.map} +0 -0
- /package/dist/{config-75TKJIF7.js.map → config-GZXNPIIG.js.map} +0 -0
- /package/dist/{context-DKI4ZOCF.js.map → context-TUO5CUR3.js.map} +0 -0
- /package/dist/{conversationTracker-NB2PCUQP.js.map → conversationTracker-APB6PR5Z.js.map} +0 -0
- /package/dist/{customCommands-4D5NYHQV.js.map → customCommands-J4DV6OI5.js.map} +0 -0
- /package/dist/{env-YOGE2U3I.js.map → env-YBYEMHYQ.js.map} +0 -0
- /package/dist/{file-S4Y77ZDB.js.map → file-KIBY6XZX.js.map} +0 -0
- /package/dist/{llm-Q23IAP4O.js.map → llm-T7C6QJWB.js.map} +0 -0
- /package/dist/{llmLazy-7DJ3Z3D6.js.map → llmLazy-FDVUCPDQ.js.map} +0 -0
- /package/dist/{loader-XVITQOFP.js.map → loader-QCHS455W.js.map} +0 -0
- /package/dist/{lsp-F773RHZL.js.map → lsp-TE2SQ6CO.js.map} +0 -0
- /package/dist/{lspAnchor-UJC5DJXX.js.map → lspAnchor-IZ7YQJ64.js.map} +0 -0
- /package/dist/{mcp-CQWFQULD.js.map → mcp-PLAWUZOQ.js.map} +0 -0
- /package/dist/{mentionProcessor-MNKP2G6P.js.map → mentionProcessor-2O3AMZHB.js.map} +0 -0
- /package/dist/{messages-HMXQVAKG.js.map → messages-ZHFZ2OOG.js.map} +0 -0
- /package/dist/{model-OGMQRRY5.js.map → model-GBC2PBVJ.js.map} +0 -0
- /package/dist/{openai-ZLOMELLL.js.map → openai-2V2J23AE.js.map} +0 -0
- /package/dist/{outputStyles-TNK5GPGG.js.map → outputStyles-WD4VD4GZ.js.map} +0 -0
- /package/dist/{pluginRuntime-C6QS67LQ.js.map → pluginRuntime-WNZS26EV.js.map} +0 -0
- /package/dist/{pluginValidation-4SGPUOSV.js.map → pluginValidation-YP7MW35I.js.map} +0 -0
- /package/dist/{prompts-RUCL6EM6.js.map → prompts-QPYUI6SX.js.map} +0 -0
- /package/dist/{pybAgentSessionLoad-NHZ7Y2UJ.js.map → pybAgentSessionLoad-YABCHELS.js.map} +0 -0
- /package/dist/{pybAgentSessionResume-3XYFO2NO.js.map → pybAgentSessionResume-C3LNSFQL.js.map} +0 -0
- /package/dist/{pybAgentStreamJsonSession-H3AVVLPA.js.map → pybAgentStreamJsonSession-DFOGLEOB.js.map} +0 -0
- /package/dist/{pybHooks-JWJOTOPE.js.map → pybHooks-LGGIB5PJ.js.map} +0 -0
- /package/dist/{query-U7X4LZ6Z.js.map → query-EC6HGBDS.js.map} +0 -0
- /package/dist/{registry-ZSUU43XZ.js.map → registry-EYMCKHRG.js.map} +0 -0
- /package/dist/{ripgrep-K52QYYMD.js.map → ripgrep-JZN2MVSK.js.map} +0 -0
- /package/dist/{skillMarketplace-JZDP6BFA.js.map → skillMarketplace-ETYXMAXF.js.map} +0 -0
- /package/dist/{state-I4ULG2ZQ.js.map → state-MAVHRDNE.js.map} +0 -0
- /package/dist/{theme-AZT4CHJW.js.map → theme-AUEZ6SNA.js.map} +0 -0
- /package/dist/{toolPermissionSettings-KPHZJ4NQ.js.map → toolPermissionSettings-7JZYBUZC.js.map} +0 -0
- /package/dist/{tools-J3ZR5NYG.js.map → tools-3JFVDDSZ.js.map} +0 -0
- /package/dist/{userInput-Y4I3F2FW.js.map → userInput-V6RU4BEQ.js.map} +0 -0
|
@@ -2,11 +2,11 @@ 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-JEAXJP2E.js";
|
|
6
6
|
import {
|
|
7
7
|
formatValidationResult,
|
|
8
8
|
validatePluginOrMarketplacePath
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-5JKCAVMI.js";
|
|
10
10
|
import {
|
|
11
11
|
ConversationTracker,
|
|
12
12
|
appendFinishState,
|
|
@@ -14,18 +14,18 @@ import {
|
|
|
14
14
|
getConversationTrackerForContext,
|
|
15
15
|
isFinishComplete,
|
|
16
16
|
mapFinishReason
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-CJ2YYIJN.js";
|
|
18
18
|
import {
|
|
19
19
|
beginReplSessionScope
|
|
20
20
|
} from "./chunk-F4AXICO7.js";
|
|
21
21
|
import {
|
|
22
22
|
loadPybAgentSessionMessages
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-4R7NUADF.js";
|
|
24
24
|
import {
|
|
25
25
|
appendSessionCustomTitleRecord,
|
|
26
26
|
appendSessionJsonlFromMessage,
|
|
27
27
|
appendSessionTagRecord
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-ZD6NMP33.js";
|
|
29
29
|
import {
|
|
30
30
|
drainHookSystemPromptAdditions,
|
|
31
31
|
getHookTranscriptPath,
|
|
@@ -37,7 +37,7 @@ import {
|
|
|
37
37
|
runStopHooks,
|
|
38
38
|
runUserPromptSubmitHooks,
|
|
39
39
|
updateHookTranscriptForMessages
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-T7UTA73F.js";
|
|
41
41
|
import {
|
|
42
42
|
DEFAULT_OUTPUT_STYLE,
|
|
43
43
|
getAvailableOutputStyles,
|
|
@@ -46,11 +46,11 @@ import {
|
|
|
46
46
|
getOutputStyleSystemPromptAdditions,
|
|
47
47
|
resolveOutputStyleName,
|
|
48
48
|
setCurrentOutputStyle
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-3JH34RBY.js";
|
|
50
50
|
import {
|
|
51
51
|
fetchCustomModels,
|
|
52
52
|
getModelFeatures
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-4BFEUSKN.js";
|
|
54
54
|
import {
|
|
55
55
|
getSessionState
|
|
56
56
|
} from "./chunk-XKYHFZEC.js";
|
|
@@ -58,7 +58,7 @@ import {
|
|
|
58
58
|
queryLLM,
|
|
59
59
|
queryQuick,
|
|
60
60
|
verifyApiKey
|
|
61
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-KLD4WAB6.js";
|
|
62
62
|
import {
|
|
63
63
|
DEFAULT_TIMEOUT_MS,
|
|
64
64
|
FallbackToolUseRejectedMessage,
|
|
@@ -72,7 +72,7 @@ import {
|
|
|
72
72
|
listMCPServers,
|
|
73
73
|
loadMergedSettings,
|
|
74
74
|
normalizeSandboxRuntimeConfigFromSettings
|
|
75
|
-
} from "./chunk-
|
|
75
|
+
} from "./chunk-OY6SB5B3.js";
|
|
76
76
|
import {
|
|
77
77
|
addMarketplace,
|
|
78
78
|
disableSkillPlugin,
|
|
@@ -85,11 +85,11 @@ import {
|
|
|
85
85
|
refreshMarketplaceAsync,
|
|
86
86
|
removeMarketplace,
|
|
87
87
|
uninstallSkillPlugin
|
|
88
|
-
} from "./chunk-
|
|
88
|
+
} from "./chunk-VBV5RHIK.js";
|
|
89
89
|
import {
|
|
90
90
|
loadToolPermissionContextFromDisk,
|
|
91
91
|
persistToolPermissionUpdateToDisk
|
|
92
|
-
} from "./chunk-
|
|
92
|
+
} from "./chunk-7FFBXWS3.js";
|
|
93
93
|
import {
|
|
94
94
|
applyToolPermissionContextUpdate,
|
|
95
95
|
applyToolPermissionContextUpdates,
|
|
@@ -100,13 +100,13 @@ import {
|
|
|
100
100
|
generateSystemReminders,
|
|
101
101
|
resetReminderSession,
|
|
102
102
|
systemReminderService
|
|
103
|
-
} from "./chunk-
|
|
103
|
+
} from "./chunk-IOP3VA4X.js";
|
|
104
104
|
import {
|
|
105
105
|
clearAgentCache,
|
|
106
106
|
getActiveAgents,
|
|
107
107
|
getAgentByType,
|
|
108
108
|
getAllAgents
|
|
109
|
-
} from "./chunk-
|
|
109
|
+
} from "./chunk-PI5RBPFA.js";
|
|
110
110
|
import {
|
|
111
111
|
API_ERROR_MESSAGE_PREFIX,
|
|
112
112
|
CANCEL_MESSAGE,
|
|
@@ -137,7 +137,7 @@ import {
|
|
|
137
137
|
processUserInput,
|
|
138
138
|
reorderMessages,
|
|
139
139
|
stripSystemMessages
|
|
140
|
-
} from "./chunk-
|
|
140
|
+
} from "./chunk-YNGGZILT.js";
|
|
141
141
|
import {
|
|
142
142
|
getRequestStatus,
|
|
143
143
|
setRequestStatus,
|
|
@@ -167,7 +167,7 @@ import {
|
|
|
167
167
|
normalizeFilePath,
|
|
168
168
|
readTextContent,
|
|
169
169
|
writeTextContent
|
|
170
|
-
} from "./chunk-
|
|
170
|
+
} from "./chunk-SDKYJZWD.js";
|
|
171
171
|
import {
|
|
172
172
|
parseBlockEdits
|
|
173
173
|
} from "./chunk-QWIBSCDN.js";
|
|
@@ -177,18 +177,18 @@ import {
|
|
|
177
177
|
ParserRegistry,
|
|
178
178
|
initParser,
|
|
179
179
|
loadLanguage
|
|
180
|
-
} from "./chunk-
|
|
180
|
+
} from "./chunk-EGJRWKZ6.js";
|
|
181
181
|
import {
|
|
182
182
|
getSettingsFileCandidates,
|
|
183
183
|
loadSettingsWithLegacyFallback,
|
|
184
184
|
readSettingsFile
|
|
185
|
-
} from "./chunk-
|
|
185
|
+
} from "./chunk-5F6IQJHF.js";
|
|
186
186
|
import {
|
|
187
187
|
getCustomCommandDirectories,
|
|
188
188
|
hasCustomCommands,
|
|
189
189
|
loadCustomCommands,
|
|
190
190
|
reloadCustomCommands
|
|
191
|
-
} from "./chunk-
|
|
191
|
+
} from "./chunk-VZDDKAL2.js";
|
|
192
192
|
import {
|
|
193
193
|
getSessionPlugins
|
|
194
194
|
} from "./chunk-BJSWTHRM.js";
|
|
@@ -197,7 +197,7 @@ import {
|
|
|
197
197
|
buildModelProfileKey,
|
|
198
198
|
getModelManager,
|
|
199
199
|
isDefaultSlowAndCapableModel
|
|
200
|
-
} from "./chunk-
|
|
200
|
+
} from "./chunk-LYMH46VN.js";
|
|
201
201
|
import {
|
|
202
202
|
getCodeStyle,
|
|
203
203
|
getContext,
|
|
@@ -205,16 +205,16 @@ import {
|
|
|
205
205
|
getIsGit,
|
|
206
206
|
getProjectDocs,
|
|
207
207
|
getProjectStructureStatisticsBlock
|
|
208
|
-
} from "./chunk-
|
|
208
|
+
} from "./chunk-IFC2PLAM.js";
|
|
209
209
|
import {
|
|
210
210
|
getRipgrepPath,
|
|
211
211
|
getRipgrepPolicyMode,
|
|
212
212
|
resolveRipgrepPolicy,
|
|
213
213
|
ripGrep
|
|
214
|
-
} from "./chunk-
|
|
214
|
+
} from "./chunk-EN7L7JWN.js";
|
|
215
215
|
import {
|
|
216
216
|
getTheme
|
|
217
|
-
} from "./chunk-
|
|
217
|
+
} from "./chunk-Y2RSIF7P.js";
|
|
218
218
|
import {
|
|
219
219
|
DEFAULT_GLOBAL_CONFIG,
|
|
220
220
|
enableConfigs,
|
|
@@ -227,7 +227,7 @@ import {
|
|
|
227
227
|
saveGlobalConfig,
|
|
228
228
|
setAllPointersToModel,
|
|
229
229
|
setModelPointer
|
|
230
|
-
} from "./chunk-
|
|
230
|
+
} from "./chunk-PMYMUSB4.js";
|
|
231
231
|
import {
|
|
232
232
|
AbortError
|
|
233
233
|
} from "./chunk-RQVLBMP7.js";
|
|
@@ -236,7 +236,7 @@ import {
|
|
|
236
236
|
getCurrentRequest,
|
|
237
237
|
logUserFriendly,
|
|
238
238
|
markPhase
|
|
239
|
-
} from "./chunk-
|
|
239
|
+
} from "./chunk-IKMMFSNJ.js";
|
|
240
240
|
import {
|
|
241
241
|
ASCII_LOGO,
|
|
242
242
|
BunShell,
|
|
@@ -277,10 +277,10 @@ import {
|
|
|
277
277
|
setCwd,
|
|
278
278
|
shouldApplyToolOutputTruncation,
|
|
279
279
|
truncateToolOutput
|
|
280
|
-
} from "./chunk-
|
|
280
|
+
} from "./chunk-TIMEEE5U.js";
|
|
281
281
|
import {
|
|
282
282
|
MACRO
|
|
283
|
-
} from "./chunk-
|
|
283
|
+
} from "./chunk-W4PXRGP3.js";
|
|
284
284
|
import {
|
|
285
285
|
__export
|
|
286
286
|
} from "./chunk-I3J4JYES.js";
|
|
@@ -461,7 +461,7 @@ var getCommandSubcommandPrefix = memoize(
|
|
|
461
461
|
var getCommandPrefix = memoize(
|
|
462
462
|
async (command4, abortSignal) => {
|
|
463
463
|
const { systemPrompt, userPrompt } = buildBashCommandPrefixDetectionPrompt(command4);
|
|
464
|
-
const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-
|
|
464
|
+
const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-T7C6QJWB.js");
|
|
465
465
|
const response = await queryQuick2({
|
|
466
466
|
systemPrompt,
|
|
467
467
|
userPrompt,
|
|
@@ -4263,7 +4263,7 @@ function formatParseError(error) {
|
|
|
4263
4263
|
return error instanceof Error ? error.message : String(error);
|
|
4264
4264
|
}
|
|
4265
4265
|
async function defaultGateQuery(args) {
|
|
4266
|
-
const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-
|
|
4266
|
+
const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-T7C6QJWB.js");
|
|
4267
4267
|
const queryLLMFn = args.queryLLMOverride ?? queryLLM2;
|
|
4268
4268
|
const messages = [
|
|
4269
4269
|
{
|
|
@@ -6624,7 +6624,7 @@ var FileEditTool = {
|
|
|
6624
6624
|
const originalFileContent = currentFileContent;
|
|
6625
6625
|
let totalPatch = [];
|
|
6626
6626
|
const { SmartEdit } = await import("./smart-edit-AWHJDSU6.js");
|
|
6627
|
-
const { findLspAnchor } = await import("./lspAnchor-
|
|
6627
|
+
const { findLspAnchor } = await import("./lspAnchor-IZ7YQJ64.js");
|
|
6628
6628
|
for (const op of editOperations) {
|
|
6629
6629
|
const normalizedSearch = normalizeLineEndings(op.search);
|
|
6630
6630
|
const normalizedReplace = normalizeLineEndings(op.replace);
|
|
@@ -8107,7 +8107,7 @@ import { z as z6 } from "zod";
|
|
|
8107
8107
|
|
|
8108
8108
|
// src/tools/filesystem/GlobTool/prompt.ts
|
|
8109
8109
|
var TOOL_NAME_FOR_PROMPT2 = "Glob";
|
|
8110
|
-
var DESCRIPTION4 =
|
|
8110
|
+
var DESCRIPTION4 = `Fast file pattern matching tool that works with any codebase size
|
|
8111
8111
|
|
|
8112
8112
|
## WhenToUse & Best Practice
|
|
8113
8113
|
- If you have keywords or fuzzy paths, use Glob first to narrow candidates.
|
|
@@ -8134,11 +8134,70 @@ var DESCRIPTION4 = `- Fast file pattern matching tool that works with any codeba
|
|
|
8134
8134
|
|
|
8135
8135
|
## Usage Details
|
|
8136
8136
|
- Supports glob patterns like "**/*.js" or "src/**/*.ts"
|
|
8137
|
-
- Returns
|
|
8137
|
+
- Returns absolute file paths sorted by modification time (most recent first)
|
|
8138
8138
|
- Use this tool when you need to find files by name patterns
|
|
8139
|
-
-
|
|
8140
|
-
-
|
|
8141
|
-
-
|
|
8139
|
+
- Powered by ripgrep with \`--files\` mode for fast pattern matching
|
|
8140
|
+
- \`path\` parameter: Specify the directory to search in. If omitted, uses the current working directory. IMPORTANT: Omit this field to use the default directory. DO NOT enter "undefined" or "null" - simply omit it for the default behavior. Supports both relative and absolute paths.
|
|
8141
|
+
- Results are limited to 100 files by default. If truncated, use a more specific path or pattern to narrow results.
|
|
8142
|
+
- Search ignores .gitignore rules and includes hidden files by default.
|
|
8143
|
+
- **Semantic Search**: Set \`semantic: true\` to enable LSP workspace symbol search as fallback.
|
|
8144
|
+
- Trigger condition: Semantic search only activates when normal glob returns zero results.
|
|
8145
|
+
- In semantic mode, the \`pattern\` parameter is interpreted as a symbol name (e.g., class name, function name) for LSP workspace symbol lookup.
|
|
8146
|
+
- Returns file paths where the symbol is defined, helping locate source files by symbol name rather than filename pattern.
|
|
8147
|
+
- On success: returns notice "Semantic search: added X results. Next: use LspTool for details."
|
|
8148
|
+
- If LSP is unavailable, returns empty results with notice "Semantic search: LSP unavailable."
|
|
8149
|
+
- **Empty Results**: When no files are found, use LS to confirm directory structure, then try broader patterns (e.g., src/**/*) or enable semantic search.
|
|
8150
|
+
- **Error Handling**: Returns error if \`path\` does not exist or is not a valid directory.
|
|
8151
|
+
|
|
8152
|
+
## Typical Usage Examples
|
|
8153
|
+
|
|
8154
|
+
### Example 1: Project Structure Discovery (Unknown Codebase)
|
|
8155
|
+
<example>
|
|
8156
|
+
user: I'm new to this project, what's the structure?
|
|
8157
|
+
assistant: [uses Glob tool with pattern="**/package.json" to find project roots]
|
|
8158
|
+
[uses Glob tool with pattern="src/**/*.{ts,tsx}" to understand source layout]
|
|
8159
|
+
[uses LS tool on key directories to see detailed structure]
|
|
8160
|
+
</example>
|
|
8161
|
+
|
|
8162
|
+
### Example 2: Find Files by Type in Specific Area
|
|
8163
|
+
<example>
|
|
8164
|
+
user: Find all test files in the auth module
|
|
8165
|
+
assistant: [uses Glob tool with pattern="src/auth/**/*.test.ts"]
|
|
8166
|
+
[uses Read tool to examine specific test files]
|
|
8167
|
+
</example>
|
|
8168
|
+
|
|
8169
|
+
### Example 3: Config File Location (Deterministic)
|
|
8170
|
+
<example>
|
|
8171
|
+
user: Where is the webpack configuration?
|
|
8172
|
+
assistant: [uses Glob tool with pattern="**/webpack*.{js,ts,json}"]
|
|
8173
|
+
[uses Read tool on the matched config file]
|
|
8174
|
+
</example>
|
|
8175
|
+
|
|
8176
|
+
### Example 4: Semantic Fallback for Symbol-Based File Lookup
|
|
8177
|
+
<example>
|
|
8178
|
+
user: Find the file that defines \`UserRepository\`
|
|
8179
|
+
assistant: [uses Glob tool with pattern="*UserRepository*" - no results]
|
|
8180
|
+
[uses Glob tool with pattern="UserRepository" semantic:true]
|
|
8181
|
+
[uses LSP goToDefinition to confirm the symbol location]
|
|
8182
|
+
</example>
|
|
8183
|
+
|
|
8184
|
+
### Example 5: Parallel Discovery for Entry Points
|
|
8185
|
+
<example>
|
|
8186
|
+
user: What are the main entry points of this application?
|
|
8187
|
+
assistant: [uses Glob tool with pattern="**/index.{ts,js}"]
|
|
8188
|
+
[uses Glob tool with pattern="**/main.{ts,js}"]
|
|
8189
|
+
[uses Glob tool with pattern="**/app.{ts,js}"]
|
|
8190
|
+
[uses Read tool to examine the entry point files]
|
|
8191
|
+
</example>
|
|
8192
|
+
|
|
8193
|
+
### Example 6: Narrow Down After Broad Results
|
|
8194
|
+
<example>
|
|
8195
|
+
user: Find all TypeScript files in the project
|
|
8196
|
+
assistant: [uses Glob tool with pattern="**/*.ts" - returns 500+ files, truncated]
|
|
8197
|
+
[uses Glob tool with pattern="src/**/*.ts" to focus on source code]
|
|
8198
|
+
[uses Glob tool with pattern="src/core/**/*.ts" to narrow further if needed]
|
|
8199
|
+
</example>
|
|
8200
|
+
`;
|
|
8142
8201
|
|
|
8143
8202
|
// src/tools/filesystem/GlobTool/GlobTool.tsx
|
|
8144
8203
|
import { existsSync as existsSync6, statSync as statSync9 } from "fs";
|
|
@@ -8298,7 +8357,7 @@ import { z as z7 } from "zod";
|
|
|
8298
8357
|
|
|
8299
8358
|
// src/tools/search/GrepTool/prompt.ts
|
|
8300
8359
|
var TOOL_NAME_FOR_PROMPT3 = "Grep";
|
|
8301
|
-
var DESCRIPTION5 = `A powerful search tool
|
|
8360
|
+
var DESCRIPTION5 = `A powerful fast content search tool that works with any codebase size
|
|
8302
8361
|
|
|
8303
8362
|
## Best Practice
|
|
8304
8363
|
- Use Grep as a "Scout" to *find* entry points based on text patterns.
|
|
@@ -8329,17 +8388,90 @@ var DESCRIPTION5 = `A powerful search tool built on ripgrep
|
|
|
8329
8388
|
|
|
8330
8389
|
## Usage Details
|
|
8331
8390
|
- ALWAYS use Grep for search tasks. NEVER invoke \`grep\` or \`rg\` as a Bash command. The Grep tool has been optimized for correct permissions and access.
|
|
8332
|
-
-
|
|
8333
|
-
-
|
|
8334
|
-
-
|
|
8335
|
-
-
|
|
8336
|
-
|
|
8337
|
-
|
|
8338
|
-
-
|
|
8339
|
-
-
|
|
8391
|
+
- Powered by ripgrep for fast text search with full regex support (e.g., "log.*Error", "function\\s+\\w+")
|
|
8392
|
+
- Pattern syntax: Uses ripgrep - literal braces need escaping (use \`interface\\{\\}\` to find \`interface{}\` in Go code)
|
|
8393
|
+
- Excludes version control directories (.git, .svn, .hg, .bzr) automatically
|
|
8394
|
+
- Includes hidden files by default
|
|
8395
|
+
|
|
8396
|
+
**Path & Scope**:
|
|
8397
|
+
- \`path\` parameter: File or directory to search in. Defaults to current working directory.
|
|
8398
|
+
- \`glob\` parameter: Filter files by glob pattern (e.g., "*.js", "*.{ts,tsx}") - maps to rg --glob
|
|
8399
|
+
- \`type\` parameter: Filter by file type (e.g., "js", "py", "rust", "go", "java") - more efficient than glob for standard types
|
|
8400
|
+
- Path guidance: If user provides a path, use it directly. If uncertain, confirm with LS/Glob first.
|
|
8401
|
+
|
|
8402
|
+
**Output Modes**:
|
|
8403
|
+
- \`files_with_matches\` (default): Returns file paths sorted by modification time
|
|
8404
|
+
- \`content\`: Shows matching lines with line numbers (supports -A/-B/-C context)
|
|
8405
|
+
- \`count\`: Shows match counts per file
|
|
8406
|
+
|
|
8407
|
+
**Context & Pagination**:
|
|
8408
|
+
- \`-B\`, \`-A\`, \`-C\`: Context lines before/after/around matches (requires output_mode: "content")
|
|
8409
|
+
- \`-n\`: Show line numbers (default: true, requires output_mode: "content")
|
|
8410
|
+
- \`head_limit\`: Limit output to first N entries (works across all modes)
|
|
8411
|
+
- \`offset\`: Skip first N entries before applying head_limit
|
|
8412
|
+
- \`multiline\`: Enable multiline mode where . matches newlines (default: false)
|
|
8413
|
+
|
|
8414
|
+
**Case Sensitivity**:
|
|
8415
|
+
- \`-i\`: Enable case-insensitive search
|
|
8416
|
+
|
|
8417
|
+
**Semantic Search**:
|
|
8418
|
+
- \`semantic: true\`: Enable LSP workspace symbol search as fallback when text search yields no results.
|
|
8419
|
+
- \`symbol_type\`: Filter semantic search by symbol type (e.g., "class", "function", "variable"). Requires semantic: true.
|
|
8420
|
+
- When \`symbol_type\` is specified, LSP search replaces (not augments) text search results.
|
|
8421
|
+
- Supported types: file, module, namespace, package, class, method, property, field, constructor, enum, interface, function, variable, constant, struct, event, operator, typeparameter
|
|
8340
8422
|
- Semantic output format: \`file:line: name (Kind)\` for quick follow-up reads
|
|
8341
|
-
-
|
|
8342
|
-
-
|
|
8423
|
+
- On success: returns notice "Semantic search: added X results. Next: use LspTool for details."
|
|
8424
|
+
- If LSP is unavailable: returns "Semantic search: LSP unavailable."
|
|
8425
|
+
|
|
8426
|
+
**Result Handling**:
|
|
8427
|
+
- Results are truncated at 20,000 characters if too large
|
|
8428
|
+
- Use Task tool for open-ended searches requiring multiple rounds
|
|
8429
|
+
|
|
8430
|
+
**Typical Usage Examples**:
|
|
8431
|
+
|
|
8432
|
+
Example 1: Exact Error Message Tracing (Deterministic)
|
|
8433
|
+
<example>
|
|
8434
|
+
user: Where does the error "Connection timeout after 30s" come from?
|
|
8435
|
+
assistant: [uses Grep tool with pattern="Connection timeout after 30s"output_mode="content"]
|
|
8436
|
+
[uses Read tool to examine the error source and surrounding context]
|
|
8437
|
+
</example>
|
|
8438
|
+
|
|
8439
|
+
Example 2: Precise Function Definition Lookup (Deterministic)
|
|
8440
|
+
<example>
|
|
8441
|
+
user: Find the implementation of \`calculateCompoundInterest\` function
|
|
8442
|
+
assistant: [uses Grep tool with pattern="calculateCompoundInterest" type="ts"output_mode="content"]
|
|
8443
|
+
[uses Read tool on the matched file to read the full implementation]
|
|
8444
|
+
</example>
|
|
8445
|
+
|
|
8446
|
+
Example 3: Concept Search with Semantic Fallback
|
|
8447
|
+
<example>
|
|
8448
|
+
user: Where is authentication logic implemented?
|
|
8449
|
+
assistant: [uses Grep tool with pattern="auth" type="ts" semantic: true]
|
|
8450
|
+
[uses Read tool to examine the most relevant matches]
|
|
8451
|
+
[uses LSP goToDefinition to trace the core auth flow]
|
|
8452
|
+
</example>
|
|
8453
|
+
|
|
8454
|
+
Example 4: Iterative Narrowing for Broad Patterns
|
|
8455
|
+
<example>
|
|
8456
|
+
user: Find all API route definitions
|
|
8457
|
+
assistant: [uses Grep tool with pattern="router\\.(get|post|put|delete)" type="ts"]
|
|
8458
|
+
[if too many results: adds path="src/routes" to narrow scope]
|
|
8459
|
+
[uses Read tool to inspect specific route handlers]
|
|
8460
|
+
</example>
|
|
8461
|
+
|
|
8462
|
+
Example 5: Handoff to LSP After Entry Point Found
|
|
8463
|
+
<example>
|
|
8464
|
+
user: Find all usages of the \`PaymentService\` class
|
|
8465
|
+
assistant: [uses Grep tool with pattern="class PaymentService" type="ts"output_mode="content"]
|
|
8466
|
+
[uses LSP findReferences at the class definition location to get all references]
|
|
8467
|
+
</example>
|
|
8468
|
+
|
|
8469
|
+
Example 6: Case-Insensitive Search for Config Values
|
|
8470
|
+
<example>
|
|
8471
|
+
user: Where is the database host configured?
|
|
8472
|
+
assistant: [uses Grep tool with pattern="database.*host|db_host|DB_HOST" -i: true]
|
|
8473
|
+
[uses Read tool to examine configuration files]
|
|
8474
|
+
</example>`;
|
|
8343
8475
|
|
|
8344
8476
|
// src/tools/search/GrepTool/GrepTool.tsx
|
|
8345
8477
|
import { isAbsolute as isAbsolute7, relative as relative9, resolve as resolve7 } from "path";
|
|
@@ -11926,7 +12058,7 @@ async function createAndStoreApiKey(accessToken) {
|
|
|
11926
12058
|
}
|
|
11927
12059
|
saveGlobalConfig(config2);
|
|
11928
12060
|
try {
|
|
11929
|
-
const { resetAnthropicClient } = await import("./llm-
|
|
12061
|
+
const { resetAnthropicClient } = await import("./llm-T7C6QJWB.js");
|
|
11930
12062
|
resetAnthropicClient();
|
|
11931
12063
|
} catch {
|
|
11932
12064
|
}
|
|
@@ -16350,7 +16482,7 @@ async function refreshPluginRuntimeFromInstalls() {
|
|
|
16350
16482
|
const existingRoots = getSessionPlugins().map((p) => p.rootDir);
|
|
16351
16483
|
const dirs = Array.from(/* @__PURE__ */ new Set([...existingRoots, ...installedRoots]));
|
|
16352
16484
|
if (dirs.length === 0) return [];
|
|
16353
|
-
const { configureSessionPlugins } = await import("./pluginRuntime-
|
|
16485
|
+
const { configureSessionPlugins } = await import("./pluginRuntime-WNZS26EV.js");
|
|
16354
16486
|
const { errors } = await configureSessionPlugins({ pluginDirs: dirs });
|
|
16355
16487
|
return errors;
|
|
16356
16488
|
}
|
|
@@ -17025,7 +17157,7 @@ async function call(onDone, context) {
|
|
|
17025
17157
|
ModelConfig,
|
|
17026
17158
|
{
|
|
17027
17159
|
onClose: () => {
|
|
17028
|
-
import("./model-
|
|
17160
|
+
import("./model-GBC2PBVJ.js").then(({ reloadModelManager: reloadModelManager2 }) => {
|
|
17029
17161
|
reloadModelManager2();
|
|
17030
17162
|
triggerModelConfigChange();
|
|
17031
17163
|
onDone();
|
|
@@ -25229,7 +25361,7 @@ function useStatusLine() {
|
|
|
25229
25361
|
// src/ui/components/PromptInput.tsx
|
|
25230
25362
|
async function interpretHashCommand(input) {
|
|
25231
25363
|
try {
|
|
25232
|
-
const { queryQuick: queryQuick2 } = await import("./llm-
|
|
25364
|
+
const { queryQuick: queryQuick2 } = await import("./llm-T7C6QJWB.js");
|
|
25233
25365
|
const systemPrompt = [
|
|
25234
25366
|
"You're helping the user structure notes that will be added to their PYB.md file.",
|
|
25235
25367
|
"Format the user's input into a well-structured note that will be useful for later reference.",
|
|
@@ -25542,7 +25674,7 @@ function PromptInput({
|
|
|
25542
25674
|
if (messages2.length) {
|
|
25543
25675
|
if (mode === "bash") {
|
|
25544
25676
|
onQuery(messages2, newAbortController).then(async () => {
|
|
25545
|
-
const { getCwd: getCwd2 } = await import("./state-
|
|
25677
|
+
const { getCwd: getCwd2 } = await import("./state-MAVHRDNE.js");
|
|
25546
25678
|
setCurrentPwd(getCwd2());
|
|
25547
25679
|
});
|
|
25548
25680
|
} else {
|
|
@@ -31928,7 +32060,7 @@ import { homedir as homedir8 } from "os";
|
|
|
31928
32060
|
// src/commands/agents/generation.ts
|
|
31929
32061
|
import { randomUUID as randomUUID6 } from "crypto";
|
|
31930
32062
|
async function generateAgentWithClaude(prompt) {
|
|
31931
|
-
const { queryModel } = await import("./llm-
|
|
32063
|
+
const { queryModel } = await import("./llm-T7C6QJWB.js");
|
|
31932
32064
|
const systemPrompt = `You are an expert at creating AI agent configurations. Based on the user's description, generate a specialized agent configuration.
|
|
31933
32065
|
|
|
31934
32066
|
Return your response as a JSON object with exactly these fields:
|
|
@@ -35539,7 +35671,7 @@ It is critical that you mark tasks as completed as soon as you are done with a t
|
|
|
35539
35671
|
# Cognitive Safety & Sensing
|
|
35540
35672
|
1. **Modification Check**: Before editing, you MUST verify if the change is already present (e.g. use \`grep\` or \`read\`). Do not rely on memory from previous turns.
|
|
35541
35673
|
2. **Precise Targeting**: For code injection, prefer using LSP to find exact function boundaries, or Read the file to get unique context.
|
|
35542
|
-
3. **Artifact Verification**: After completing a complex task, verify the artifacts (e.g. check if files exist using \`ls\`).
|
|
35674
|
+
3. **Artifact Verification**: After completing a complex task, verify the artifacts (e.g. check if files exist using \`ls\` or \`glob\`).
|
|
35543
35675
|
4. **LSP Instinct**: Before modifying any code, you MUST first build structure context (structure tree \u2192 hotspot \u2192 Read). Use \`LSP documentSymbol\` or \`LSP goToDefinition\` only when you have a precise position and need to confirm exact range. Do NOT rely on line numbers from \`read_file\` alone as they may be outdated.
|
|
35544
35676
|
5. **Atomic Verification**: When editing code, especially in critical or complex files, you should strongly consider setting \`verify: true\` in the \`FileEditTool\`. This enables the tool to automatically detect syntax errors and ROLLBACK changes if they are invalid, preventing you from breaking the build.
|
|
35545
35677
|
6. **Semantic Search**: When searching for code concepts (e.g. "AuthLogic", "UserHandler") rather than exact filenames, prefer using \`GlobTool\` with \`semantic: true\`. This leverages LSP to find files by their content definitions.
|
|
@@ -35576,14 +35708,6 @@ user: is 11 a prime number?
|
|
|
35576
35708
|
assistant: Yes
|
|
35577
35709
|
</example>
|
|
35578
35710
|
|
|
35579
|
-
<example>
|
|
35580
|
-
user: locate where auth token refresh is implemented in a large repo
|
|
35581
|
-
assistant: [uses the LS tool to scan top-level structure]
|
|
35582
|
-
[uses the Glob tool to find candidate auth-related files]
|
|
35583
|
-
[uses the Grep tool to search for token refresh patterns]
|
|
35584
|
-
[uses the Read tool to inspect the most likely file]
|
|
35585
|
-
</example>
|
|
35586
|
-
|
|
35587
35711
|
<example>
|
|
35588
35712
|
user: find all .ts and .tsx files under src/
|
|
35589
35713
|
assistant: [uses the Glob tool to match files under src/]
|
|
@@ -35594,11 +35718,6 @@ user: How many golf balls fit inside a jetta?
|
|
|
35594
35718
|
assistant: 150000
|
|
35595
35719
|
</example>
|
|
35596
35720
|
|
|
35597
|
-
<example>
|
|
35598
|
-
user: delete the temp directory and all logs
|
|
35599
|
-
assistant: [uses Delete tool to remove 'temp' directory and all '*.log' files in one call]
|
|
35600
|
-
</example>
|
|
35601
|
-
|
|
35602
35721
|
<example>
|
|
35603
35722
|
user: list files in the directory src/
|
|
35604
35723
|
assistant: [uses the LS tool to list files and sees foo.c, bar.c, baz.c]
|
|
@@ -35636,8 +35755,8 @@ When making changes to files, first understand the file's code conventions. Mimi
|
|
|
35636
35755
|
|
|
35637
35756
|
${includeCodingInstructions ? `# Doing tasks
|
|
35638
35757
|
The user will primarily request you perform software engineering tasks. This includes solving bugs, adding new functionality, refactoring code, explaining code, and more. For these tasks the following steps are recommended:
|
|
35639
|
-
- Use TaskCreate to plan multi-step work and TaskUpdate to track progress; use TaskList/TaskGet to review
|
|
35640
|
-
- Use the available search tools to understand the codebase and the user's query. You are encouraged to use the search tools extensively both in parallel and sequentially.
|
|
35758
|
+
- Use TaskCreate VERY frequently to plan multi-step work required 2 or more distinct steps and TaskUpdate to track progress; use TaskList/TaskGet to review
|
|
35759
|
+
- Use the available search tools\uFF08e.g., Glob\u3001Grep\u3001LSP\u3001LS\uFF09 to understand the codebase and the user's query. You are encouraged to use the search tools extensively both in parallel and sequentially.
|
|
35641
35760
|
- Implement the solution using all tools available to you
|
|
35642
35761
|
- Verify the solution if possible with tests. NEVER assume specific test framework or test script. Check the README or search codebase to determine the testing approach.
|
|
35643
35762
|
- VERY IMPORTANT: When you have completed a task, you MUST run the lint and typecheck commands (eg. npm run lint, npm run typecheck, ruff, etc.) if they were provided to you to ensure your code is correct. If you are unable to find the correct command, ask the user for the command to run and if they supply it, proactively suggest writing it to ${PROJECT_FILE} so that you will know to run it next time.
|
|
@@ -35647,20 +35766,22 @@ NEVER commit changes unless the user explicitly asks you to. It is VERY IMPORTAN
|
|
|
35647
35766
|
` : ""}
|
|
35648
35767
|
|
|
35649
35768
|
# Tool usage policy
|
|
35650
|
-
- **Code Analysis & Exploration Priority**:For **complex** codebase exploration tasks (e.g., searching across 3+ directories, requiring multiple search iterations, or investigating cross-module patterns), prefer using the Task tool with Explore subagent. This isolates exploration context in a separate transcript.For simple tasks (reading known files, single-pattern searches), use Ls/Read/Glob/Grep directly for faster results.
|
|
35651
|
-
- **File Search Priority**:When doing file search, prefer to use the Task tool for open-ended, multi-step exploration to reduce context usage. For known paths or small scopes, prefer Ls/Lsp/Read/Glob/Grep directly.
|
|
35652
|
-
- **File System Exploration Priority**:For file system exploration, decide based on intent: if you need global structure/entry points, prefer LS first; if you have keywords or fuzzy paths, prefer Glob first. If results are too broad, use LS to narrow structure or combine with Grep/LSP. Only use Bash for executing scripts or binaries.
|
|
35653
35769
|
- 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.
|
|
35770
|
+
- **LS vs Glob "dir/*"**: LS provides complexity stats (directory/file ratio, max depth) to guide strategy; Glob "dir/*" is faster but no stats. Use LS when you need structural insights; use Glob for quick one-level checks.
|
|
35654
35771
|
- 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.
|
|
35655
35772
|
- It is always better to speculatively read multiple files as a batch that are potentially useful.
|
|
35656
35773
|
- It is always better to speculatively perform multiple searches as a batch that are potentially useful.
|
|
35657
35774
|
|
|
35775
|
+
|
|
35658
35776
|
# Cognitive Search Strategy
|
|
35659
35777
|
1. **Concept Search**: WHEN searching for high-level concepts (e.g., "Auth Logic", "Payment Flow") OR when you are uncertain about exact naming, you MUST use \`semantic: true\` in Grep/Glob tools. This activates the LSP Workspace Symbol search which is resilient to typos and fuzzy matches.
|
|
35660
35778
|
- Example: \`GrepTool(pattern: "AuthFeatr", semantic: true)\` will find "AuthFeature".
|
|
35661
35779
|
- Example: \`GlobTool(pattern: "tests", semantic: true)\` will find test files based on project structure.
|
|
35662
35780
|
2. **Exact Identifier**: WHEN you know the precise class/function name (e.g., "UserProfile", "initDatabase"), use standard Grep/Glob without \`semantic\` flag.
|
|
35663
35781
|
3. **Exploration**: If standard search returns 0 results, AUTOMATICALLY retry with \`semantic: true\`.
|
|
35782
|
+
4. **File System Exploration Priority**:For file system exploration, decide based on intent: if you need global structure/entry points, prefer LS or Glob "dir/*" first; if you have keywords or fuzzy paths, prefer Glob first. If results are too broad, use LS or Glob "dir/*" to narrow structure or combine with Grep/LSP. Only use Bash for executing scripts or binaries.
|
|
35783
|
+
5. **Code Analysis & Exploration Priority**:For codebase exploration tasks (e.g., searching across 2 or more directories, requiring multiple search iterations, or investigating cross-module patterns), prefer using the Task tool with Explore subagent. This isolates exploration context in a separate transcript.For simple tasks (reading known files, single-pattern searches), use Glob/Grep/Ls/Read/Lsp directly for faster results.
|
|
35784
|
+
6. **File Search Priority**:When doing file search, prefer to use the Task tool for open-ended, multi-step exploration to reduce context usage. For known paths or small scopes, prefer Ls/Lsp/Read/Glob/Grep directly.
|
|
35664
35785
|
|
|
35665
35786
|
# Path Fragmentation Strategy
|
|
35666
35787
|
- Root -> Core Directory -> Secondary Modules
|