pybao-cli 1.3.44 → 1.3.46
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-ANRALQZB.js +42 -0
- package/dist/{acp-KOOPOS2V.js → acp-37ZYIFLI.js} +26 -26
- package/dist/{agentsValidate-TUW56FGR.js → agentsValidate-ZT2GD2IR.js} +7 -7
- package/dist/{ask-BXDD3HZZ.js → ask-PSYWFNDP.js} +25 -25
- package/dist/{autoUpdater-MJTULRNL.js → autoUpdater-HHBVZBYE.js} +3 -3
- package/dist/{chunk-QVUJ6WJZ.js → chunk-2B56EMQC.js} +1 -1
- package/dist/{chunk-QVUJ6WJZ.js.map → chunk-2B56EMQC.js.map} +1 -1
- package/dist/{chunk-NAEAT6CC.js → chunk-2TG6N7RM.js} +3 -3
- package/dist/{chunk-AIE6TFWI.js → chunk-AHDLGGNV.js} +1 -1
- package/dist/{chunk-AVJMRJOF.js → chunk-AKPC4FCY.js} +2 -2
- package/dist/{chunk-3VMVNZBA.js → chunk-BKP3JI3M.js} +9 -10
- package/dist/{chunk-3VMVNZBA.js.map → chunk-BKP3JI3M.js.map} +3 -3
- package/dist/{chunk-R5B3QREX.js → chunk-BSKDTFG4.js} +2 -2
- package/dist/{chunk-RHOMDJ4W.js → chunk-EL65JN4A.js} +1 -1
- package/dist/{chunk-NBLIMAPB.js → chunk-FJROYNRY.js} +1 -1
- package/dist/{chunk-NDUV7XH4.js → chunk-FREXXRCP.js} +113 -113
- package/dist/chunk-FREXXRCP.js.map +7 -0
- package/dist/{chunk-LZUURGDV.js → chunk-GCQTTFVA.js} +3 -3
- package/dist/{chunk-WZQQI3WY.js → chunk-HKQR7WT7.js} +2 -2
- package/dist/{chunk-3GPQ33I5.js → chunk-HZDNEHQ4.js} +3 -3
- package/dist/{chunk-LBHF6BS2.js → chunk-J2QBYXHQ.js} +4 -4
- package/dist/{chunk-FBVDMTHQ.js → chunk-JWIWFXZH.js} +2 -2
- package/dist/{chunk-7L3BKVS2.js → chunk-K25LUESX.js} +12 -12
- package/dist/{chunk-S5PEPGE4.js → chunk-MLEJ32DL.js} +2 -2
- package/dist/{chunk-FE3MRJ7F.js → chunk-O77VW2OG.js} +3 -3
- package/dist/{chunk-DTLOHNDH.js → chunk-PN4VJABA.js} +3 -3
- package/dist/{chunk-KAWPVVO4.js → chunk-QXB5JU22.js} +3 -3
- package/dist/{chunk-I4OD44YI.js → chunk-UH5XH34C.js} +1 -1
- package/dist/{chunk-FPSETIH6.js → chunk-UJV74XPJ.js} +3 -3
- package/dist/{chunk-DTDUB7LG.js → chunk-VWOTB6OP.js} +1 -1
- package/dist/{chunk-5CTMULCY.js → chunk-WCSNMHIZ.js} +1 -1
- package/dist/{chunk-6GSWJDP7.js → chunk-XPNI6T7J.js} +4 -4
- package/dist/{chunk-A7BD4CXP.js → chunk-YCIJ2LZ5.js} +1 -1
- package/dist/{chunk-5XDINARX.js → chunk-YOMMEAP6.js} +1 -1
- package/dist/{chunk-G22THW43.js → chunk-ZCIAAXXX.js} +2 -2
- package/dist/{cli-6X6S6JUI.js → cli-7ZDUHVBY.js} +77 -77
- package/dist/commands-FGYR52JP.js +46 -0
- package/dist/{config-EAVBRMJZ.js → config-GPGGIEEU.js} +4 -4
- package/dist/{context-6ZFVEBNJ.js → context-XHGQOQ7L.js} +5 -5
- package/dist/{customCommands-6QGGYZEX.js → customCommands-SYMV4ZBK.js} +4 -4
- package/dist/{env-4VFOICHG.js → env-3UORUGI7.js} +2 -2
- package/dist/index.js +3 -3
- package/dist/{llm-22YH2ZPY.js → llm-Q5CFDHRJ.js} +26 -26
- package/dist/{llmLazy-NXKJNC2G.js → llmLazy-SZPYON2Y.js} +1 -1
- package/dist/{loader-AHVOZTJN.js → loader-DYMAU5JI.js} +4 -4
- package/dist/{mcp-F4JQTEPJ.js → mcp-HYFQC5V2.js} +7 -7
- package/dist/{mentionProcessor-KR6BJB44.js → mentionProcessor-Y6I42D6Q.js} +5 -5
- package/dist/{messages-4SGWZDEN.js → messages-BCVGUQ7P.js} +1 -1
- package/dist/{model-W6KAPOMM.js → model-TCTZSQL7.js} +5 -5
- package/dist/{openai-5YOQ2GOC.js → openai-KH7QFYJN.js} +5 -5
- package/dist/{outputStyles-DIT6QLSL.js → outputStyles-C6NCFK57.js} +4 -4
- package/dist/{pluginRuntime-ULGPYEC2.js → pluginRuntime-T5ID6ROB.js} +6 -6
- package/dist/{pluginValidation-VMTZMQF4.js → pluginValidation-C5BVZ5KJ.js} +6 -6
- package/dist/prompts-IWS65CSD.js +48 -0
- package/dist/{pybAgentSessionLoad-OS3SBDUL.js → pybAgentSessionLoad-Z2HXKCCU.js} +4 -4
- package/dist/{pybAgentSessionResume-BY2OINUM.js → pybAgentSessionResume-4SEGOPFC.js} +4 -4
- package/dist/{pybAgentStreamJsonSession-S2EVD25H.js → pybAgentStreamJsonSession-4K7VFMRX.js} +1 -1
- package/dist/{pybHooks-J4TIBPPX.js → pybHooks-QSPLL3AR.js} +4 -4
- package/dist/query-5OQI4E7J.js +50 -0
- package/dist/{ripgrep-XJ7BRKLV.js → ripgrep-D2EUEDNQ.js} +3 -3
- package/dist/{skillMarketplace-ADUM7ZZM.js → skillMarketplace-Q4PH6E25.js} +3 -3
- package/dist/{state-LIRDPMWY.js → state-Q4M7BXGL.js} +2 -2
- package/dist/{theme-VPF6NLPH.js → theme-B3FIK2UP.js} +5 -5
- package/dist/{toolPermissionSettings-G7R7IURS.js → toolPermissionSettings-66WEVSDI.js} +6 -6
- package/dist/tools-HJT5SK6H.js +47 -0
- package/dist/{userInput-FC4VH2WA.js → userInput-UKA36YDI.js} +27 -27
- package/package.json +1 -1
- package/dist/REPL-XGU3QBB4.js +0 -42
- package/dist/chunk-NDUV7XH4.js.map +0 -7
- package/dist/commands-D4K3WP4Q.js +0 -46
- package/dist/prompts-V5GQOXVP.js +0 -48
- package/dist/query-PEGPPHCH.js +0 -50
- package/dist/tools-LPMBKXBZ.js +0 -47
- /package/dist/{REPL-XGU3QBB4.js.map → REPL-ANRALQZB.js.map} +0 -0
- /package/dist/{acp-KOOPOS2V.js.map → acp-37ZYIFLI.js.map} +0 -0
- /package/dist/{agentsValidate-TUW56FGR.js.map → agentsValidate-ZT2GD2IR.js.map} +0 -0
- /package/dist/{ask-BXDD3HZZ.js.map → ask-PSYWFNDP.js.map} +0 -0
- /package/dist/{autoUpdater-MJTULRNL.js.map → autoUpdater-HHBVZBYE.js.map} +0 -0
- /package/dist/{chunk-NAEAT6CC.js.map → chunk-2TG6N7RM.js.map} +0 -0
- /package/dist/{chunk-AIE6TFWI.js.map → chunk-AHDLGGNV.js.map} +0 -0
- /package/dist/{chunk-AVJMRJOF.js.map → chunk-AKPC4FCY.js.map} +0 -0
- /package/dist/{chunk-R5B3QREX.js.map → chunk-BSKDTFG4.js.map} +0 -0
- /package/dist/{chunk-RHOMDJ4W.js.map → chunk-EL65JN4A.js.map} +0 -0
- /package/dist/{chunk-NBLIMAPB.js.map → chunk-FJROYNRY.js.map} +0 -0
- /package/dist/{chunk-LZUURGDV.js.map → chunk-GCQTTFVA.js.map} +0 -0
- /package/dist/{chunk-WZQQI3WY.js.map → chunk-HKQR7WT7.js.map} +0 -0
- /package/dist/{chunk-3GPQ33I5.js.map → chunk-HZDNEHQ4.js.map} +0 -0
- /package/dist/{chunk-LBHF6BS2.js.map → chunk-J2QBYXHQ.js.map} +0 -0
- /package/dist/{chunk-FBVDMTHQ.js.map → chunk-JWIWFXZH.js.map} +0 -0
- /package/dist/{chunk-7L3BKVS2.js.map → chunk-K25LUESX.js.map} +0 -0
- /package/dist/{chunk-S5PEPGE4.js.map → chunk-MLEJ32DL.js.map} +0 -0
- /package/dist/{chunk-FE3MRJ7F.js.map → chunk-O77VW2OG.js.map} +0 -0
- /package/dist/{chunk-DTLOHNDH.js.map → chunk-PN4VJABA.js.map} +0 -0
- /package/dist/{chunk-KAWPVVO4.js.map → chunk-QXB5JU22.js.map} +0 -0
- /package/dist/{chunk-I4OD44YI.js.map → chunk-UH5XH34C.js.map} +0 -0
- /package/dist/{chunk-FPSETIH6.js.map → chunk-UJV74XPJ.js.map} +0 -0
- /package/dist/{chunk-DTDUB7LG.js.map → chunk-VWOTB6OP.js.map} +0 -0
- /package/dist/{chunk-5CTMULCY.js.map → chunk-WCSNMHIZ.js.map} +0 -0
- /package/dist/{chunk-6GSWJDP7.js.map → chunk-XPNI6T7J.js.map} +0 -0
- /package/dist/{chunk-A7BD4CXP.js.map → chunk-YCIJ2LZ5.js.map} +0 -0
- /package/dist/{chunk-5XDINARX.js.map → chunk-YOMMEAP6.js.map} +0 -0
- /package/dist/{chunk-G22THW43.js.map → chunk-ZCIAAXXX.js.map} +0 -0
- /package/dist/{cli-6X6S6JUI.js.map → cli-7ZDUHVBY.js.map} +0 -0
- /package/dist/{commands-D4K3WP4Q.js.map → commands-FGYR52JP.js.map} +0 -0
- /package/dist/{config-EAVBRMJZ.js.map → config-GPGGIEEU.js.map} +0 -0
- /package/dist/{context-6ZFVEBNJ.js.map → context-XHGQOQ7L.js.map} +0 -0
- /package/dist/{customCommands-6QGGYZEX.js.map → customCommands-SYMV4ZBK.js.map} +0 -0
- /package/dist/{env-4VFOICHG.js.map → env-3UORUGI7.js.map} +0 -0
- /package/dist/{llm-22YH2ZPY.js.map → llm-Q5CFDHRJ.js.map} +0 -0
- /package/dist/{llmLazy-NXKJNC2G.js.map → llmLazy-SZPYON2Y.js.map} +0 -0
- /package/dist/{loader-AHVOZTJN.js.map → loader-DYMAU5JI.js.map} +0 -0
- /package/dist/{mcp-F4JQTEPJ.js.map → mcp-HYFQC5V2.js.map} +0 -0
- /package/dist/{mentionProcessor-KR6BJB44.js.map → mentionProcessor-Y6I42D6Q.js.map} +0 -0
- /package/dist/{messages-4SGWZDEN.js.map → messages-BCVGUQ7P.js.map} +0 -0
- /package/dist/{model-W6KAPOMM.js.map → model-TCTZSQL7.js.map} +0 -0
- /package/dist/{openai-5YOQ2GOC.js.map → openai-KH7QFYJN.js.map} +0 -0
- /package/dist/{outputStyles-DIT6QLSL.js.map → outputStyles-C6NCFK57.js.map} +0 -0
- /package/dist/{pluginRuntime-ULGPYEC2.js.map → pluginRuntime-T5ID6ROB.js.map} +0 -0
- /package/dist/{pluginValidation-VMTZMQF4.js.map → pluginValidation-C5BVZ5KJ.js.map} +0 -0
- /package/dist/{prompts-V5GQOXVP.js.map → prompts-IWS65CSD.js.map} +0 -0
- /package/dist/{pybAgentSessionLoad-OS3SBDUL.js.map → pybAgentSessionLoad-Z2HXKCCU.js.map} +0 -0
- /package/dist/{pybAgentSessionResume-BY2OINUM.js.map → pybAgentSessionResume-4SEGOPFC.js.map} +0 -0
- /package/dist/{pybAgentStreamJsonSession-S2EVD25H.js.map → pybAgentStreamJsonSession-4K7VFMRX.js.map} +0 -0
- /package/dist/{pybHooks-J4TIBPPX.js.map → pybHooks-QSPLL3AR.js.map} +0 -0
- /package/dist/{query-PEGPPHCH.js.map → query-5OQI4E7J.js.map} +0 -0
- /package/dist/{ripgrep-XJ7BRKLV.js.map → ripgrep-D2EUEDNQ.js.map} +0 -0
- /package/dist/{skillMarketplace-ADUM7ZZM.js.map → skillMarketplace-Q4PH6E25.js.map} +0 -0
- /package/dist/{state-LIRDPMWY.js.map → state-Q4M7BXGL.js.map} +0 -0
- /package/dist/{theme-VPF6NLPH.js.map → theme-B3FIK2UP.js.map} +0 -0
- /package/dist/{toolPermissionSettings-G7R7IURS.js.map → toolPermissionSettings-66WEVSDI.js.map} +0 -0
- /package/dist/{tools-LPMBKXBZ.js.map → tools-HJT5SK6H.js.map} +0 -0
- /package/dist/{userInput-FC4VH2WA.js.map → userInput-UKA36YDI.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-VWOTB6OP.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-J2QBYXHQ.js";
|
|
20
20
|
import {
|
|
21
21
|
formatValidationResult,
|
|
22
22
|
validatePluginOrMarketplacePath
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-PN4VJABA.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-AHDLGGNV.js";
|
|
37
37
|
import {
|
|
38
38
|
loadPybAgentSessionMessages
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-YOMMEAP6.js";
|
|
40
40
|
import {
|
|
41
41
|
appendSessionCustomTitleRecord,
|
|
42
42
|
appendSessionJsonlFromMessage,
|
|
43
43
|
appendSessionTagRecord
|
|
44
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-JWIWFXZH.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-QXB5JU22.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-HKQR7WT7.js";
|
|
75
75
|
import {
|
|
76
76
|
fetchCustomModels,
|
|
77
77
|
getModelFeatures
|
|
78
|
-
} from "./chunk-
|
|
78
|
+
} from "./chunk-ZCIAAXXX.js";
|
|
79
79
|
import {
|
|
80
80
|
queryLLM,
|
|
81
81
|
queryQuick,
|
|
82
82
|
verifyApiKey
|
|
83
|
-
} from "./chunk-
|
|
83
|
+
} from "./chunk-XPNI6T7J.js";
|
|
84
84
|
import {
|
|
85
85
|
listAllContentFiles,
|
|
86
86
|
ripGrep,
|
|
87
87
|
tree
|
|
88
|
-
} from "./chunk-
|
|
88
|
+
} from "./chunk-EL65JN4A.js";
|
|
89
89
|
import {
|
|
90
90
|
getCustomCommandDirectories,
|
|
91
91
|
hasCustomCommands,
|
|
92
92
|
loadCustomCommands,
|
|
93
93
|
reloadCustomCommands
|
|
94
|
-
} from "./chunk-
|
|
94
|
+
} from "./chunk-AKPC4FCY.js";
|
|
95
95
|
import {
|
|
96
96
|
loadToolPermissionContextFromDisk,
|
|
97
97
|
persistToolPermissionUpdateToDisk
|
|
98
|
-
} from "./chunk-
|
|
98
|
+
} from "./chunk-2TG6N7RM.js";
|
|
99
99
|
import {
|
|
100
100
|
getSettingsFileCandidates,
|
|
101
101
|
loadSettingsWithLegacyFallback
|
|
102
|
-
} from "./chunk-
|
|
102
|
+
} from "./chunk-UH5XH34C.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-BSKDTFG4.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-MLEJ32DL.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-WCSNMHIZ.js";
|
|
158
158
|
import {
|
|
159
159
|
ModelManager,
|
|
160
160
|
getModelManager,
|
|
161
161
|
isDefaultSlowAndCapableModel
|
|
162
|
-
} from "./chunk-
|
|
162
|
+
} from "./chunk-O77VW2OG.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-UJV74XPJ.js";
|
|
170
170
|
import {
|
|
171
171
|
getTheme
|
|
172
|
-
} from "./chunk-
|
|
172
|
+
} from "./chunk-YCIJ2LZ5.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-GCQTTFVA.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-FJROYNRY.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-BKP3JI3M.js";
|
|
231
231
|
import {
|
|
232
232
|
MACRO
|
|
233
|
-
} from "./chunk-
|
|
233
|
+
} from "./chunk-2B56EMQC.js";
|
|
234
234
|
import {
|
|
235
235
|
formatTotalCost,
|
|
236
236
|
getTotalAPIDuration,
|
|
@@ -245,7 +245,7 @@ import {
|
|
|
245
245
|
// src/tools/system/BashTool/BashTool.tsx
|
|
246
246
|
import { statSync as statSync12 } from "fs";
|
|
247
247
|
import { EOL as EOL3 } from "os";
|
|
248
|
-
import { isAbsolute as isAbsolute10, relative as relative13, resolve as
|
|
248
|
+
import { isAbsolute as isAbsolute10, relative as relative13, resolve as resolve11 } from "path";
|
|
249
249
|
import * as React109 from "react";
|
|
250
250
|
import { z as z16 } from "zod";
|
|
251
251
|
|
|
@@ -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-Q5CFDHRJ.js");
|
|
422
422
|
const response = await queryQuick2({
|
|
423
423
|
systemPrompt,
|
|
424
424
|
userPrompt,
|
|
@@ -941,8 +941,8 @@ async function shouldAllowNetworkRequest(query2) {
|
|
|
941
941
|
}
|
|
942
942
|
async function serializePermissionPrompt(task) {
|
|
943
943
|
let release = null;
|
|
944
|
-
const next = new Promise((
|
|
945
|
-
release =
|
|
944
|
+
const next = new Promise((resolve12) => {
|
|
945
|
+
release = resolve12;
|
|
946
946
|
});
|
|
947
947
|
const prev = active.permissionPromptChain;
|
|
948
948
|
active.permissionPromptChain = prev.then(() => next);
|
|
@@ -975,18 +975,18 @@ async function cleanupSandboxNetworkInfrastructure() {
|
|
|
975
975
|
active.sessionDeniedHosts.clear();
|
|
976
976
|
active.inflightPermissionRequests.clear();
|
|
977
977
|
await Promise.allSettled([
|
|
978
|
-
httpServer ? new Promise((
|
|
978
|
+
httpServer ? new Promise((resolve12) => {
|
|
979
979
|
try {
|
|
980
|
-
httpServer.close(() =>
|
|
980
|
+
httpServer.close(() => resolve12());
|
|
981
981
|
} catch {
|
|
982
|
-
|
|
982
|
+
resolve12();
|
|
983
983
|
}
|
|
984
984
|
}) : Promise.resolve(),
|
|
985
|
-
socksServer ? new Promise((
|
|
985
|
+
socksServer ? new Promise((resolve12) => {
|
|
986
986
|
try {
|
|
987
|
-
socksServer.close(() =>
|
|
987
|
+
socksServer.close(() => resolve12());
|
|
988
988
|
} catch {
|
|
989
|
-
|
|
989
|
+
resolve12();
|
|
990
990
|
}
|
|
991
991
|
}) : Promise.resolve()
|
|
992
992
|
]);
|
|
@@ -1176,7 +1176,7 @@ async function startHttpProxy() {
|
|
|
1176
1176
|
clientSocket.on("data", onData);
|
|
1177
1177
|
});
|
|
1178
1178
|
active.httpProxyServer = server;
|
|
1179
|
-
return new Promise((
|
|
1179
|
+
return new Promise((resolve12, reject) => {
|
|
1180
1180
|
server.once("error", reject);
|
|
1181
1181
|
server.once("listening", () => {
|
|
1182
1182
|
const addr = server.address();
|
|
@@ -1185,7 +1185,7 @@ async function startHttpProxy() {
|
|
|
1185
1185
|
return;
|
|
1186
1186
|
}
|
|
1187
1187
|
server.unref();
|
|
1188
|
-
|
|
1188
|
+
resolve12(addr.port);
|
|
1189
1189
|
});
|
|
1190
1190
|
server.listen(0, "127.0.0.1");
|
|
1191
1191
|
});
|
|
@@ -1295,7 +1295,7 @@ async function startSocks5Proxy() {
|
|
|
1295
1295
|
socket.on("data", onData);
|
|
1296
1296
|
});
|
|
1297
1297
|
active.socksProxyServer = server;
|
|
1298
|
-
return new Promise((
|
|
1298
|
+
return new Promise((resolve12, reject) => {
|
|
1299
1299
|
server.once("error", reject);
|
|
1300
1300
|
server.once("listening", () => {
|
|
1301
1301
|
const addr = server.address();
|
|
@@ -1304,7 +1304,7 @@ async function startSocks5Proxy() {
|
|
|
1304
1304
|
return;
|
|
1305
1305
|
}
|
|
1306
1306
|
server.unref();
|
|
1307
|
-
|
|
1307
|
+
resolve12(addr.port);
|
|
1308
1308
|
});
|
|
1309
1309
|
server.listen(0, "127.0.0.1");
|
|
1310
1310
|
});
|
|
@@ -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-Q5CFDHRJ.js");
|
|
4462
4462
|
const messages = [
|
|
4463
4463
|
{
|
|
4464
4464
|
type: "user",
|
|
@@ -9721,9 +9721,9 @@ function setTerminalTitle(title) {
|
|
|
9721
9721
|
}
|
|
9722
9722
|
}
|
|
9723
9723
|
function clearTerminal() {
|
|
9724
|
-
return new Promise((
|
|
9724
|
+
return new Promise((resolve12) => {
|
|
9725
9725
|
process.stdout.write("\x1B[2J\x1B[3J\x1B[H", () => {
|
|
9726
|
-
|
|
9726
|
+
resolve12();
|
|
9727
9727
|
});
|
|
9728
9728
|
});
|
|
9729
9729
|
}
|
|
@@ -10841,8 +10841,8 @@ var OAuthService = class {
|
|
|
10841
10841
|
await authURLHandler(manualUrl);
|
|
10842
10842
|
await openBrowser(autoUrl);
|
|
10843
10843
|
};
|
|
10844
|
-
const { authorizationCode, useManualRedirect } = await new Promise((
|
|
10845
|
-
this.pendingCodePromise = { resolve:
|
|
10844
|
+
const { authorizationCode, useManualRedirect } = await new Promise((resolve12, reject) => {
|
|
10845
|
+
this.pendingCodePromise = { resolve: resolve12, reject };
|
|
10846
10846
|
this.startLocalServer(state, onReady);
|
|
10847
10847
|
});
|
|
10848
10848
|
const {
|
|
@@ -11013,7 +11013,7 @@ async function createAndStoreApiKey(accessToken) {
|
|
|
11013
11013
|
}
|
|
11014
11014
|
saveGlobalConfig(config2);
|
|
11015
11015
|
try {
|
|
11016
|
-
const { resetAnthropicClient } = await import("./llm-
|
|
11016
|
+
const { resetAnthropicClient } = await import("./llm-Q5CFDHRJ.js");
|
|
11017
11017
|
resetAnthropicClient();
|
|
11018
11018
|
} catch {
|
|
11019
11019
|
}
|
|
@@ -13383,7 +13383,7 @@ function ModelSelector({
|
|
|
13383
13383
|
setModelLoadError(
|
|
13384
13384
|
`Attempt ${attempt}/${MAX_RETRIES}: Retrying model discovery...`
|
|
13385
13385
|
);
|
|
13386
|
-
await new Promise((
|
|
13386
|
+
await new Promise((resolve12) => setTimeout(resolve12, 1e3));
|
|
13387
13387
|
}
|
|
13388
13388
|
try {
|
|
13389
13389
|
const models = await fetchModels();
|
|
@@ -15295,7 +15295,7 @@ async function refreshPluginRuntimeFromInstalls() {
|
|
|
15295
15295
|
const existingRoots = getSessionPlugins().map((p) => p.rootDir);
|
|
15296
15296
|
const dirs = Array.from(/* @__PURE__ */ new Set([...existingRoots, ...installedRoots]));
|
|
15297
15297
|
if (dirs.length === 0) return [];
|
|
15298
|
-
const { configureSessionPlugins } = await import("./pluginRuntime-
|
|
15298
|
+
const { configureSessionPlugins } = await import("./pluginRuntime-T5ID6ROB.js");
|
|
15299
15299
|
const { errors } = await configureSessionPlugins({ pluginDirs: dirs });
|
|
15300
15300
|
return errors;
|
|
15301
15301
|
}
|
|
@@ -15964,7 +15964,7 @@ async function call(onDone, context) {
|
|
|
15964
15964
|
ModelConfig,
|
|
15965
15965
|
{
|
|
15966
15966
|
onClose: () => {
|
|
15967
|
-
import("./model-
|
|
15967
|
+
import("./model-TCTZSQL7.js").then(({ reloadModelManager: reloadModelManager2 }) => {
|
|
15968
15968
|
reloadModelManager2();
|
|
15969
15969
|
triggerModelConfigChange();
|
|
15970
15970
|
onDone();
|
|
@@ -20023,7 +20023,7 @@ async function launchExternalEditor(initialText) {
|
|
|
20023
20023
|
}
|
|
20024
20024
|
}
|
|
20025
20025
|
try {
|
|
20026
|
-
await new Promise((
|
|
20026
|
+
await new Promise((resolve12, reject) => {
|
|
20027
20027
|
const child = spawn(
|
|
20028
20028
|
editorCommand.command,
|
|
20029
20029
|
[...editorCommand.args, filePath],
|
|
@@ -20035,7 +20035,7 @@ async function launchExternalEditor(initialText) {
|
|
|
20035
20035
|
child.on("error", reject);
|
|
20036
20036
|
child.on("exit", (code, signal) => {
|
|
20037
20037
|
if (code === 0 || code === null) {
|
|
20038
|
-
|
|
20038
|
+
resolve12();
|
|
20039
20039
|
} else {
|
|
20040
20040
|
reject(
|
|
20041
20041
|
new Error(
|
|
@@ -20086,7 +20086,7 @@ async function launchExternalEditorForFilePath(filePath) {
|
|
|
20086
20086
|
}
|
|
20087
20087
|
}
|
|
20088
20088
|
try {
|
|
20089
|
-
await new Promise((
|
|
20089
|
+
await new Promise((resolve12, reject) => {
|
|
20090
20090
|
const child = spawn(
|
|
20091
20091
|
editorCommand.command,
|
|
20092
20092
|
[...editorCommand.args, filePath],
|
|
@@ -20098,7 +20098,7 @@ async function launchExternalEditorForFilePath(filePath) {
|
|
|
20098
20098
|
child.on("error", reject);
|
|
20099
20099
|
child.on("exit", (code, signal) => {
|
|
20100
20100
|
if (code === 0 || code === null) {
|
|
20101
|
-
|
|
20101
|
+
resolve12();
|
|
20102
20102
|
} else {
|
|
20103
20103
|
reject(
|
|
20104
20104
|
new Error(
|
|
@@ -23223,7 +23223,7 @@ function useStatusLine() {
|
|
|
23223
23223
|
// src/ui/components/PromptInput.tsx
|
|
23224
23224
|
async function interpretHashCommand(input) {
|
|
23225
23225
|
try {
|
|
23226
|
-
const { queryQuick: queryQuick2 } = await import("./llm-
|
|
23226
|
+
const { queryQuick: queryQuick2 } = await import("./llm-Q5CFDHRJ.js");
|
|
23227
23227
|
const systemPrompt = [
|
|
23228
23228
|
"You're helping the user structure notes that will be added to their PYB.md file.",
|
|
23229
23229
|
"Format the user's input into a well-structured note that will be useful for later reference.",
|
|
@@ -23428,7 +23428,7 @@ function PromptInput({
|
|
|
23428
23428
|
abortController.abort();
|
|
23429
23429
|
}
|
|
23430
23430
|
setIsLoading(false);
|
|
23431
|
-
await new Promise((
|
|
23431
|
+
await new Promise((resolve12) => setTimeout(resolve12, 0));
|
|
23432
23432
|
setIsLoading(true);
|
|
23433
23433
|
let finalInput2 = cleanInput;
|
|
23434
23434
|
for (const { placeholder: placeholder2, text } of pastedTexts) {
|
|
@@ -23536,7 +23536,7 @@ function PromptInput({
|
|
|
23536
23536
|
if (messages2.length) {
|
|
23537
23537
|
if (mode === "bash") {
|
|
23538
23538
|
onQuery(messages2, newAbortController).then(async () => {
|
|
23539
|
-
const { getCwd: getCwd2 } = await import("./state-
|
|
23539
|
+
const { getCwd: getCwd2 } = await import("./state-Q4M7BXGL.js");
|
|
23540
23540
|
setCurrentPwd(getCwd2());
|
|
23541
23541
|
});
|
|
23542
23542
|
} else {
|
|
@@ -23896,11 +23896,11 @@ import { useCallback as useCallback14 } from "react";
|
|
|
23896
23896
|
function useCanUseTool(setToolUseConfirm) {
|
|
23897
23897
|
return useCallback14(
|
|
23898
23898
|
async (tool, input, toolUseContext, assistantMessage) => {
|
|
23899
|
-
return new Promise((
|
|
23899
|
+
return new Promise((resolve12) => {
|
|
23900
23900
|
function logCancelledEvent() {
|
|
23901
23901
|
}
|
|
23902
23902
|
function resolveWithCancelledAndAbortAllToolCalls(message) {
|
|
23903
|
-
|
|
23903
|
+
resolve12({
|
|
23904
23904
|
result: false,
|
|
23905
23905
|
message: message ? `${REJECT_MESSAGE_WITH_FEEDBACK_PREFIX}${message}` : REJECT_MESSAGE
|
|
23906
23906
|
});
|
|
@@ -23918,12 +23918,12 @@ function useCanUseTool(setToolUseConfirm) {
|
|
|
23918
23918
|
assistantMessage
|
|
23919
23919
|
).then(async (result) => {
|
|
23920
23920
|
if (result.result === true) {
|
|
23921
|
-
|
|
23921
|
+
resolve12({ result: true });
|
|
23922
23922
|
return;
|
|
23923
23923
|
}
|
|
23924
23924
|
const deniedResult = result;
|
|
23925
23925
|
if (deniedResult.shouldPromptUser === false) {
|
|
23926
|
-
|
|
23926
|
+
resolve12({ result: false, message: deniedResult.message });
|
|
23927
23927
|
return;
|
|
23928
23928
|
}
|
|
23929
23929
|
const [description2, commandPrefix] = await Promise.all([
|
|
@@ -23955,7 +23955,7 @@ function useCanUseTool(setToolUseConfirm) {
|
|
|
23955
23955
|
if (type2 === "permanent") {
|
|
23956
23956
|
} else {
|
|
23957
23957
|
}
|
|
23958
|
-
|
|
23958
|
+
resolve12({ result: true });
|
|
23959
23959
|
},
|
|
23960
23960
|
onReject(rejectionMessage) {
|
|
23961
23961
|
resolveWithCancelledAndAbortAllToolCalls(rejectionMessage);
|
|
@@ -24607,8 +24607,8 @@ var ToolUseQueue = class {
|
|
|
24607
24607
|
}
|
|
24608
24608
|
if (this.hasExecutingTools() && !this.hasCompletedResults() && !this.hasPendingProgress()) {
|
|
24609
24609
|
const promises = this.tools.filter((t) => t.status === "executing" && t.promise).map((t) => t.promise);
|
|
24610
|
-
const progressPromise = new Promise((
|
|
24611
|
-
this.progressAvailableResolve =
|
|
24610
|
+
const progressPromise = new Promise((resolve12) => {
|
|
24611
|
+
this.progressAvailableResolve = resolve12;
|
|
24612
24612
|
});
|
|
24613
24613
|
if (promises.length > 0) {
|
|
24614
24614
|
await Promise.race([...promises, progressPromise]);
|
|
@@ -25473,7 +25473,7 @@ function BinaryFeedbackView({
|
|
|
25473
25473
|
function BinaryFeedback({
|
|
25474
25474
|
m1,
|
|
25475
25475
|
m2,
|
|
25476
|
-
resolve:
|
|
25476
|
+
resolve: resolve12,
|
|
25477
25477
|
debug: debug2,
|
|
25478
25478
|
erroredToolUseIDs,
|
|
25479
25479
|
inProgressToolUseIDs,
|
|
@@ -25485,9 +25485,9 @@ function BinaryFeedback({
|
|
|
25485
25485
|
const onChoose = useCallback15(
|
|
25486
25486
|
(choice) => {
|
|
25487
25487
|
logBinaryFeedbackEvent(m1, m2, choice);
|
|
25488
|
-
|
|
25488
|
+
resolve12(getBinaryFeedbackResultForChoice(m1, m2, choice));
|
|
25489
25489
|
},
|
|
25490
|
-
[m1, m2,
|
|
25490
|
+
[m1, m2, resolve12]
|
|
25491
25491
|
);
|
|
25492
25492
|
useNotifyAfterTimeout(
|
|
25493
25493
|
`${PRODUCT_NAME} needs your input on a response comparison`
|
|
@@ -26322,7 +26322,7 @@ import { homedir as homedir7 } from "os";
|
|
|
26322
26322
|
// src/commands/agents/generation.ts
|
|
26323
26323
|
import { randomUUID as randomUUID5 } from "crypto";
|
|
26324
26324
|
async function generateAgentWithClaude(prompt) {
|
|
26325
|
-
const { queryModel } = await import("./llm-
|
|
26325
|
+
const { queryModel } = await import("./llm-Q5CFDHRJ.js");
|
|
26326
26326
|
const systemPrompt = `You are an expert at creating AI agent configurations. Based on the user's description, generate a specialized agent configuration.
|
|
26327
26327
|
|
|
26328
26328
|
Return your response as a JSON object with exactly these fields:
|
|
@@ -26619,7 +26619,7 @@ var COLOR_OPTIONS = [
|
|
|
26619
26619
|
"cyan"
|
|
26620
26620
|
];
|
|
26621
26621
|
function openInEditor(filePath) {
|
|
26622
|
-
return new Promise((
|
|
26622
|
+
return new Promise((resolve12, reject) => {
|
|
26623
26623
|
const platform = process.platform;
|
|
26624
26624
|
let command4;
|
|
26625
26625
|
let args;
|
|
@@ -26642,7 +26642,7 @@ function openInEditor(filePath) {
|
|
|
26642
26642
|
child.on("error", (err) => reject(err));
|
|
26643
26643
|
child.on(
|
|
26644
26644
|
"exit",
|
|
26645
|
-
(code) => code === 0 ?
|
|
26645
|
+
(code) => code === 0 ? resolve12() : reject(new Error(`Editor exited with ${code}`))
|
|
26646
26646
|
);
|
|
26647
26647
|
});
|
|
26648
26648
|
}
|
|
@@ -29491,25 +29491,14 @@ function WebFetchPermissionRequest({
|
|
|
29491
29491
|
}
|
|
29492
29492
|
|
|
29493
29493
|
// src/utils/tree-sitter/loader.ts
|
|
29494
|
-
import
|
|
29495
|
-
import treeSitterBashWasm from "tree-sitter-bash/tree-sitter-bash.wasm";
|
|
29494
|
+
import { createRequire } from "module";
|
|
29496
29495
|
import { Parser, Language } from "web-tree-sitter";
|
|
29497
|
-
|
|
29498
|
-
// src/utils/tree-sitter/resolve-wasm.ts
|
|
29499
|
-
import { fileURLToPath } from "url";
|
|
29500
|
-
var resolveWasm = (asset) => {
|
|
29501
|
-
if (asset.startsWith("file://")) return fileURLToPath(asset);
|
|
29502
|
-
if (asset.startsWith("/") || /^[a-z]:/i.test(asset)) return asset;
|
|
29503
|
-
const url2 = new URL(asset, import.meta.url);
|
|
29504
|
-
return fileURLToPath(url2);
|
|
29505
|
-
};
|
|
29506
|
-
|
|
29507
|
-
// src/utils/tree-sitter/loader.ts
|
|
29508
29496
|
var parserInstance = null;
|
|
29509
29497
|
var initParser = async () => {
|
|
29510
29498
|
if (parserInstance) return parserInstance;
|
|
29511
|
-
const
|
|
29512
|
-
const
|
|
29499
|
+
const require2 = createRequire(import.meta.url);
|
|
29500
|
+
const treeWasmPath = require2.resolve("web-tree-sitter/web-tree-sitter.wasm");
|
|
29501
|
+
const bashWasmPath = require2.resolve("tree-sitter-bash/tree-sitter-bash.wasm");
|
|
29513
29502
|
await Parser.init({
|
|
29514
29503
|
locateFile: () => treeWasmPath
|
|
29515
29504
|
});
|
|
@@ -29551,21 +29540,22 @@ var BashParser = class {
|
|
|
29551
29540
|
};
|
|
29552
29541
|
|
|
29553
29542
|
// src/utils/bash-parser/validator.ts
|
|
29554
|
-
|
|
29543
|
+
import { resolve as resolve10 } from "path";
|
|
29544
|
+
async function validateSafety(script, cwd2 = process.cwd()) {
|
|
29555
29545
|
const tree2 = await BashParser.parse(script);
|
|
29556
29546
|
const root = tree2.rootNode;
|
|
29557
|
-
validateNode(root, script);
|
|
29547
|
+
validateNode(root, script, cwd2);
|
|
29558
29548
|
}
|
|
29559
|
-
function validateNode(node, script) {
|
|
29549
|
+
function validateNode(node, script, cwd2) {
|
|
29560
29550
|
if (node.type === "command") {
|
|
29561
|
-
checkCommand(node, script);
|
|
29551
|
+
checkCommand(node, script, cwd2);
|
|
29562
29552
|
}
|
|
29563
29553
|
for (let i = 0; i < node.childCount; i++) {
|
|
29564
29554
|
const child = node.child(i);
|
|
29565
|
-
if (child) validateNode(child, script);
|
|
29555
|
+
if (child) validateNode(child, script, cwd2);
|
|
29566
29556
|
}
|
|
29567
29557
|
}
|
|
29568
|
-
function checkCommand(node, script) {
|
|
29558
|
+
function checkCommand(node, script, cwd2) {
|
|
29569
29559
|
const nameNode = node.childForFieldName("name");
|
|
29570
29560
|
if (!nameNode) return;
|
|
29571
29561
|
const commandName = nameNode.text.trim();
|
|
@@ -29582,7 +29572,6 @@ function checkCommand(node, script) {
|
|
|
29582
29572
|
const isRecursive = args.some((arg) => /^-.*r/.test(arg));
|
|
29583
29573
|
const criticalPaths = [
|
|
29584
29574
|
"/",
|
|
29585
|
-
"/*",
|
|
29586
29575
|
"/etc",
|
|
29587
29576
|
"/var",
|
|
29588
29577
|
"/usr",
|
|
@@ -29595,27 +29584,38 @@ function checkCommand(node, script) {
|
|
|
29595
29584
|
"/lib",
|
|
29596
29585
|
"/lib64",
|
|
29597
29586
|
"/opt",
|
|
29598
|
-
"C:\\",
|
|
29599
29587
|
"C:/",
|
|
29600
|
-
"C:\\Windows",
|
|
29601
29588
|
"C:/Windows",
|
|
29602
|
-
"C:\\Program Files",
|
|
29603
29589
|
"C:/Program Files"
|
|
29604
29590
|
];
|
|
29605
29591
|
const targetsCritical = args.some((arg) => {
|
|
29606
|
-
|
|
29607
|
-
|
|
29608
|
-
|
|
29592
|
+
if (arg.startsWith("-") || arg.startsWith("$")) return false;
|
|
29593
|
+
try {
|
|
29594
|
+
const absPath = resolve10(cwd2, arg).replace(/\\/g, "/");
|
|
29595
|
+
return criticalPaths.some((critical) => {
|
|
29596
|
+
const normalizedCritical = critical.endsWith("/") ? critical : critical + "/";
|
|
29597
|
+
if (absPath === critical || absPath === critical.replace(/\/$/, "")) return true;
|
|
29598
|
+
if (absPath.startsWith(normalizedCritical)) return true;
|
|
29599
|
+
return false;
|
|
29600
|
+
});
|
|
29601
|
+
} catch (e) {
|
|
29602
|
+
return criticalPaths.includes(arg);
|
|
29603
|
+
}
|
|
29609
29604
|
});
|
|
29610
29605
|
const originalCommand = node.text;
|
|
29611
29606
|
if (isRecursive && targetsCritical) {
|
|
29612
29607
|
throw new Error(`Security Alert: Potentially dangerous recursive deletion detected: "${originalCommand}". Execution blocked.`);
|
|
29613
29608
|
}
|
|
29614
|
-
const
|
|
29615
|
-
|
|
29616
|
-
|
|
29617
|
-
|
|
29618
|
-
|
|
29609
|
+
const targetsRoot = args.some((arg) => {
|
|
29610
|
+
if (arg.startsWith("-") || arg.startsWith("$")) return false;
|
|
29611
|
+
try {
|
|
29612
|
+
const absPath = resolve10(cwd2, arg).replace(/\\/g, "/");
|
|
29613
|
+
return absPath === "/" || /^[a-z]:\/?$/i.test(absPath);
|
|
29614
|
+
} catch {
|
|
29615
|
+
return arg === "/" || /^[a-z]:\/?$/i.test(arg);
|
|
29616
|
+
}
|
|
29617
|
+
});
|
|
29618
|
+
if (targetsRoot) {
|
|
29619
29619
|
throw new Error(`Security Alert: Root deletion detected: "${originalCommand}". Execution blocked.`);
|
|
29620
29620
|
}
|
|
29621
29621
|
}
|
|
@@ -29717,7 +29717,7 @@ var BashTool = {
|
|
|
29717
29717
|
async validateInput({ command: command4, timeout, dangerouslyDisableSandbox, cwd: cwd2 }, context) {
|
|
29718
29718
|
const trimmed = command4.trim();
|
|
29719
29719
|
try {
|
|
29720
|
-
await validateSafety(trimmed);
|
|
29720
|
+
await validateSafety(trimmed, cwd2 ? resolve11(getCwd(), cwd2) : getCwd());
|
|
29721
29721
|
} catch (e) {
|
|
29722
29722
|
return {
|
|
29723
29723
|
result: false,
|
|
@@ -29757,7 +29757,7 @@ var BashTool = {
|
|
|
29757
29757
|
};
|
|
29758
29758
|
}
|
|
29759
29759
|
if (cwd2) {
|
|
29760
|
-
const fullTargetDir = isAbsolute10(cwd2) ? cwd2 :
|
|
29760
|
+
const fullTargetDir = isAbsolute10(cwd2) ? cwd2 : resolve11(getCwd(), cwd2);
|
|
29761
29761
|
if (!isInDirectory(
|
|
29762
29762
|
relative13(getOriginalCwd(), fullTargetDir),
|
|
29763
29763
|
relative13(getCwd(), getOriginalCwd())
|
|
@@ -29777,7 +29777,7 @@ var BashTool = {
|
|
|
29777
29777
|
continue;
|
|
29778
29778
|
}
|
|
29779
29779
|
const targetDir = parts[1].replace(/^['"]|['"]$/g, "");
|
|
29780
|
-
const fullTargetDir = isAbsolute10(targetDir) ? targetDir :
|
|
29780
|
+
const fullTargetDir = isAbsolute10(targetDir) ? targetDir : resolve11(getCwd(), targetDir);
|
|
29781
29781
|
if (!isInDirectory(
|
|
29782
29782
|
relative13(getOriginalCwd(), fullTargetDir),
|
|
29783
29783
|
relative13(getCwd(), getOriginalCwd())
|
|
@@ -29862,9 +29862,9 @@ var BashTool = {
|
|
|
29862
29862
|
const safeMode = Boolean(context?.safeMode ?? context?.options?.safeMode);
|
|
29863
29863
|
const userPrompt = typeof context?.options?.lastUserPrompt === "string" ? context.options.lastUserPrompt.trim() : "";
|
|
29864
29864
|
const commandDescription = typeof description2 === "string" ? description2.trim() : "";
|
|
29865
|
-
const effectiveCwd = cwd2 ? isAbsolute10(cwd2) ? cwd2 :
|
|
29865
|
+
const effectiveCwd = cwd2 ? isAbsolute10(cwd2) ? cwd2 : resolve11(getCwd(), cwd2) : getCwd();
|
|
29866
29866
|
try {
|
|
29867
|
-
await validateSafety(command4);
|
|
29867
|
+
await validateSafety(command4, effectiveCwd);
|
|
29868
29868
|
} catch (error) {
|
|
29869
29869
|
const msg = error instanceof Error ? error.message : String(error);
|
|
29870
29870
|
const data = {
|
|
@@ -30012,7 +30012,7 @@ var BashTool = {
|
|
|
30012
30012
|
if (abortController.signal.aborted) return false;
|
|
30013
30013
|
const hostForUrl = host.includes(":") && !host.startsWith("[") ? `[${host}]` : host;
|
|
30014
30014
|
const url2 = `http://${hostForUrl}:${port}/`;
|
|
30015
|
-
return await new Promise((
|
|
30015
|
+
return await new Promise((resolve12) => {
|
|
30016
30016
|
const assistantMessage = createAssistantMessage("");
|
|
30017
30017
|
if (context.messageId) {
|
|
30018
30018
|
;
|
|
@@ -30028,13 +30028,13 @@ var BashTool = {
|
|
|
30028
30028
|
suggestions: void 0,
|
|
30029
30029
|
riskScore: null,
|
|
30030
30030
|
onAbort() {
|
|
30031
|
-
|
|
30031
|
+
resolve12(false);
|
|
30032
30032
|
},
|
|
30033
30033
|
onAllow() {
|
|
30034
|
-
|
|
30034
|
+
resolve12(true);
|
|
30035
30035
|
},
|
|
30036
30036
|
onReject() {
|
|
30037
|
-
|
|
30037
|
+
resolve12(false);
|
|
30038
30038
|
}
|
|
30039
30039
|
};
|
|
30040
30040
|
setToolJSX({
|
|
@@ -30128,8 +30128,8 @@ var BashTool = {
|
|
|
30128
30128
|
);
|
|
30129
30129
|
let backgroundRequested = false;
|
|
30130
30130
|
let resolveBackground = null;
|
|
30131
|
-
const backgroundPromise = new Promise((
|
|
30132
|
-
resolveBackground =
|
|
30131
|
+
const backgroundPromise = new Promise((resolve12) => {
|
|
30132
|
+
resolveBackground = resolve12;
|
|
30133
30133
|
});
|
|
30134
30134
|
const requestBackground = () => {
|
|
30135
30135
|
if (backgroundRequested) return;
|
|
@@ -30172,7 +30172,7 @@ ${footerParts.join(" ")}`;
|
|
|
30172
30172
|
bashId
|
|
30173
30173
|
})),
|
|
30174
30174
|
new Promise(
|
|
30175
|
-
(
|
|
30175
|
+
(resolve12) => setTimeout(() => resolve12({ kind: "tick" }), waitMs)
|
|
30176
30176
|
)
|
|
30177
30177
|
]);
|
|
30178
30178
|
if (race.kind === "background") {
|
|
@@ -30206,7 +30206,7 @@ ${footerParts.join(" ")}`;
|
|
|
30206
30206
|
if (process.env.NODE_ENV !== "test") {
|
|
30207
30207
|
getCommandFilePaths(command4, stdout).then((filePaths) => {
|
|
30208
30208
|
for (const filePath of filePaths) {
|
|
30209
|
-
const fullFilePath = isAbsolute10(filePath) ? filePath :
|
|
30209
|
+
const fullFilePath = isAbsolute10(filePath) ? filePath : resolve11(getCwd(), filePath);
|
|
30210
30210
|
try {
|
|
30211
30211
|
readFileTimestamps[fullFilePath] = statSync12(fullFilePath).mtimeMs;
|
|
30212
30212
|
} catch (e) {
|