pybao-cli 1.5.25 → 1.5.26
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-IGB7EIAW.js +51 -0
- package/dist/{acp-3G6FUTMV.js → acp-2ADDKTRM.js} +31 -31
- package/dist/{agentsValidate-7J62UR4G.js → agentsValidate-OVPBAEZK.js} +7 -7
- package/dist/{ask-DPX5KTMK.js → ask-Q26NIN3B.js} +30 -30
- package/dist/{autoUpdater-7CK6CMUK.js → autoUpdater-TVOBGQY2.js} +3 -3
- package/dist/{chunk-BOOTTYGZ.js → chunk-5IDQK3OD.js} +4 -4
- package/dist/{chunk-WIQFF44D.js → chunk-66OAFWT3.js} +3 -3
- package/dist/{chunk-2JSYG54Z.js → chunk-6F5PJYF4.js} +15 -15
- package/dist/{chunk-FXUTVJRS.js → chunk-6SRO6NZW.js} +1 -1
- package/dist/{chunk-KNPPPVBG.js → chunk-7MOPJWTA.js} +1 -1
- package/dist/{chunk-6PW6SJXE.js → chunk-CESDUQBF.js} +1 -1
- package/dist/{chunk-VGFXCETY.js → chunk-CGENEGDI.js} +1 -1
- package/dist/{chunk-CVPWG3IX.js → chunk-DG7LOR3Q.js} +3 -3
- package/dist/{chunk-6UGNUC4K.js → chunk-E27P7H7H.js} +3 -3
- package/dist/{chunk-THSULC47.js → chunk-EJPGPTY6.js} +4 -4
- package/dist/{chunk-I377E5OW.js → chunk-EKZGVP53.js} +3 -3
- package/dist/{chunk-SVRRQBLT.js → chunk-F3BMDQBD.js} +1 -1
- package/dist/{chunk-3JZI3ZBU.js → chunk-FBHVDOJT.js} +3 -3
- package/dist/{chunk-SAVBIJ5O.js → chunk-FVQTUBDM.js} +2 -2
- package/dist/{chunk-RBLKS6FX.js → chunk-GASKENL5.js} +1 -1
- package/dist/{chunk-K3DSRWYV.js → chunk-GYSKHPUA.js} +2 -2
- package/dist/{chunk-NSPYODPF.js → chunk-GZBJPLTJ.js} +4 -4
- package/dist/{chunk-WLEPTDKU.js → chunk-HAFYP74Q.js} +1 -1
- package/dist/{chunk-V4UJI656.js → chunk-HI6YJWFI.js} +2 -2
- package/dist/{chunk-IBRK4QMC.js → chunk-JPPQJANN.js} +3 -3
- package/dist/{chunk-OZBYDL7N.js → chunk-LP3EJS77.js} +2 -2
- package/dist/{chunk-BDHA3QOT.js → chunk-NYOAEEVC.js} +4 -4
- package/dist/{chunk-RVTZE6UF.js → chunk-OKEIG3UC.js} +1 -1
- package/dist/{chunk-3COHIXJE.js → chunk-PFFVDJ52.js} +3 -3
- package/dist/{chunk-HSAO34GP.js → chunk-QFXHC754.js} +2 -2
- package/dist/{chunk-HL6ARNBJ.js → chunk-SK7JIWXO.js} +1 -1
- package/dist/{chunk-3RKGBZUV.js → chunk-TLHF4J72.js} +1 -1
- package/dist/{chunk-Z75SOPJ5.js → chunk-US44CZRL.js} +87 -45
- package/dist/{chunk-Z75SOPJ5.js.map → chunk-US44CZRL.js.map} +2 -2
- package/dist/{chunk-VJFKQQTV.js → chunk-WXZUYR6V.js} +1 -1
- package/dist/{chunk-LGQJPZKC.js → chunk-X3BQA3YE.js} +3 -3
- package/dist/{chunk-KP3LQCMR.js → chunk-YLBWF7D2.js} +1 -1
- package/dist/{chunk-KP3LQCMR.js.map → chunk-YLBWF7D2.js.map} +1 -1
- package/dist/{chunk-TO2NPV6U.js → chunk-ZIVDHAMU.js} +2 -2
- package/dist/{cli-2DWH2RIO.js → cli-QO4CZMZN.js} +91 -91
- package/dist/commands-RMFLUJUJ.js +55 -0
- package/dist/{config-MDAX3T7G.js → config-2LQL44YC.js} +4 -4
- package/dist/{context-S4ASBZ3O.js → context-BRQF7CQG.js} +6 -6
- package/dist/{conversationPersistence-WIBFJR62.js → conversationPersistence-K5Q3ECQV.js} +3 -3
- package/dist/{conversationTracker-X53D6RLQ.js → conversationTracker-WUDYHEVC.js} +4 -4
- package/dist/{customCommands-S3CSA3GB.js → customCommands-PU3SY76P.js} +4 -4
- package/dist/{env-P2GOYAXV.js → env-ZOU5EXCO.js} +2 -2
- package/dist/{file-HUPYIU7Y.js → file-I63YOZ2P.js} +4 -4
- package/dist/index.js +3 -3
- package/dist/{llm-KOMOHPJY.js → llm-CTECH6IG.js} +31 -31
- package/dist/{llmLazy-MXAQT2DG.js → llmLazy-RAULGERZ.js} +1 -1
- package/dist/{loader-CFPDXJTQ.js → loader-W26YZI25.js} +4 -4
- package/dist/{lsp-XR7JCI4Q.js → lsp-QECQTZHX.js} +6 -6
- package/dist/{lspAnchor-CY46EOLW.js → lspAnchor-A6JOWYTF.js} +6 -6
- package/dist/{mcp-MACS532E.js → mcp-JR5GCFVI.js} +7 -7
- package/dist/{mentionProcessor-WT7DIUO6.js → mentionProcessor-43TRFZTC.js} +5 -5
- package/dist/{messages-TQAKPPWM.js → messages-6B56FWB6.js} +1 -1
- package/dist/{model-R7YMMBAR.js → model-KVO3Q5GQ.js} +5 -5
- package/dist/{openai-BISFRGPN.js → openai-CMN6BQ26.js} +5 -5
- package/dist/{outputStyles-HLA3OEH2.js → outputStyles-S4EHIOBW.js} +4 -4
- package/dist/{pluginRuntime-LD6VPBWN.js → pluginRuntime-WP7C7MEW.js} +6 -6
- package/dist/{pluginValidation-MQFVM3M5.js → pluginValidation-YNVAU2ZN.js} +6 -6
- package/dist/prompts-WRRAU4DE.js +57 -0
- package/dist/{pybAgentSessionLoad-BQJ2JPPT.js → pybAgentSessionLoad-EWFESYAH.js} +4 -4
- package/dist/{pybAgentSessionResume-BBX6KVFN.js → pybAgentSessionResume-BRGB733X.js} +4 -4
- package/dist/{pybAgentStreamJsonSession-N2AYCHRN.js → pybAgentStreamJsonSession-54U673FL.js} +1 -1
- package/dist/{pybHooks-U4ATAT57.js → pybHooks-IQDSHJJZ.js} +4 -4
- package/dist/query-LG26S5UL.js +55 -0
- package/dist/{registry-G2FLVWSF.js → registry-HZRLFYJP.js} +5 -5
- package/dist/{ripgrep-NPYGQPV3.js → ripgrep-USRMP7QC.js} +3 -3
- package/dist/{skillMarketplace-H5P3PRHJ.js → skillMarketplace-H6L3SYVR.js} +3 -3
- package/dist/{state-RM2QGI3K.js → state-6C746QMJ.js} +2 -2
- package/dist/{theme-6GGT3D7J.js → theme-AXEVVVRT.js} +5 -5
- package/dist/{toolPermissionSettings-IC6ELOVR.js → toolPermissionSettings-XJT57SRI.js} +6 -6
- package/dist/tools-DRXBA76X.js +56 -0
- package/dist/{userInput-O26M5EYX.js → userInput-FE6BKWOK.js} +32 -32
- package/package.json +1 -1
- package/dist/REPL-AWUJ6DTI.js +0 -51
- package/dist/commands-OXOLWX75.js +0 -55
- package/dist/prompts-BFS3LOCS.js +0 -57
- package/dist/query-PZKEVMJY.js +0 -55
- package/dist/tools-F4GLOVTV.js +0 -56
- /package/dist/{REPL-AWUJ6DTI.js.map → REPL-IGB7EIAW.js.map} +0 -0
- /package/dist/{acp-3G6FUTMV.js.map → acp-2ADDKTRM.js.map} +0 -0
- /package/dist/{agentsValidate-7J62UR4G.js.map → agentsValidate-OVPBAEZK.js.map} +0 -0
- /package/dist/{ask-DPX5KTMK.js.map → ask-Q26NIN3B.js.map} +0 -0
- /package/dist/{autoUpdater-7CK6CMUK.js.map → autoUpdater-TVOBGQY2.js.map} +0 -0
- /package/dist/{chunk-BOOTTYGZ.js.map → chunk-5IDQK3OD.js.map} +0 -0
- /package/dist/{chunk-WIQFF44D.js.map → chunk-66OAFWT3.js.map} +0 -0
- /package/dist/{chunk-2JSYG54Z.js.map → chunk-6F5PJYF4.js.map} +0 -0
- /package/dist/{chunk-FXUTVJRS.js.map → chunk-6SRO6NZW.js.map} +0 -0
- /package/dist/{chunk-KNPPPVBG.js.map → chunk-7MOPJWTA.js.map} +0 -0
- /package/dist/{chunk-6PW6SJXE.js.map → chunk-CESDUQBF.js.map} +0 -0
- /package/dist/{chunk-VGFXCETY.js.map → chunk-CGENEGDI.js.map} +0 -0
- /package/dist/{chunk-CVPWG3IX.js.map → chunk-DG7LOR3Q.js.map} +0 -0
- /package/dist/{chunk-6UGNUC4K.js.map → chunk-E27P7H7H.js.map} +0 -0
- /package/dist/{chunk-THSULC47.js.map → chunk-EJPGPTY6.js.map} +0 -0
- /package/dist/{chunk-I377E5OW.js.map → chunk-EKZGVP53.js.map} +0 -0
- /package/dist/{chunk-SVRRQBLT.js.map → chunk-F3BMDQBD.js.map} +0 -0
- /package/dist/{chunk-3JZI3ZBU.js.map → chunk-FBHVDOJT.js.map} +0 -0
- /package/dist/{chunk-SAVBIJ5O.js.map → chunk-FVQTUBDM.js.map} +0 -0
- /package/dist/{chunk-RBLKS6FX.js.map → chunk-GASKENL5.js.map} +0 -0
- /package/dist/{chunk-K3DSRWYV.js.map → chunk-GYSKHPUA.js.map} +0 -0
- /package/dist/{chunk-NSPYODPF.js.map → chunk-GZBJPLTJ.js.map} +0 -0
- /package/dist/{chunk-WLEPTDKU.js.map → chunk-HAFYP74Q.js.map} +0 -0
- /package/dist/{chunk-V4UJI656.js.map → chunk-HI6YJWFI.js.map} +0 -0
- /package/dist/{chunk-IBRK4QMC.js.map → chunk-JPPQJANN.js.map} +0 -0
- /package/dist/{chunk-OZBYDL7N.js.map → chunk-LP3EJS77.js.map} +0 -0
- /package/dist/{chunk-BDHA3QOT.js.map → chunk-NYOAEEVC.js.map} +0 -0
- /package/dist/{chunk-RVTZE6UF.js.map → chunk-OKEIG3UC.js.map} +0 -0
- /package/dist/{chunk-3COHIXJE.js.map → chunk-PFFVDJ52.js.map} +0 -0
- /package/dist/{chunk-HSAO34GP.js.map → chunk-QFXHC754.js.map} +0 -0
- /package/dist/{chunk-HL6ARNBJ.js.map → chunk-SK7JIWXO.js.map} +0 -0
- /package/dist/{chunk-3RKGBZUV.js.map → chunk-TLHF4J72.js.map} +0 -0
- /package/dist/{chunk-VJFKQQTV.js.map → chunk-WXZUYR6V.js.map} +0 -0
- /package/dist/{chunk-LGQJPZKC.js.map → chunk-X3BQA3YE.js.map} +0 -0
- /package/dist/{chunk-TO2NPV6U.js.map → chunk-ZIVDHAMU.js.map} +0 -0
- /package/dist/{cli-2DWH2RIO.js.map → cli-QO4CZMZN.js.map} +0 -0
- /package/dist/{commands-OXOLWX75.js.map → commands-RMFLUJUJ.js.map} +0 -0
- /package/dist/{config-MDAX3T7G.js.map → config-2LQL44YC.js.map} +0 -0
- /package/dist/{context-S4ASBZ3O.js.map → context-BRQF7CQG.js.map} +0 -0
- /package/dist/{conversationPersistence-WIBFJR62.js.map → conversationPersistence-K5Q3ECQV.js.map} +0 -0
- /package/dist/{conversationTracker-X53D6RLQ.js.map → conversationTracker-WUDYHEVC.js.map} +0 -0
- /package/dist/{customCommands-S3CSA3GB.js.map → customCommands-PU3SY76P.js.map} +0 -0
- /package/dist/{env-P2GOYAXV.js.map → env-ZOU5EXCO.js.map} +0 -0
- /package/dist/{file-HUPYIU7Y.js.map → file-I63YOZ2P.js.map} +0 -0
- /package/dist/{llm-KOMOHPJY.js.map → llm-CTECH6IG.js.map} +0 -0
- /package/dist/{llmLazy-MXAQT2DG.js.map → llmLazy-RAULGERZ.js.map} +0 -0
- /package/dist/{loader-CFPDXJTQ.js.map → loader-W26YZI25.js.map} +0 -0
- /package/dist/{lsp-XR7JCI4Q.js.map → lsp-QECQTZHX.js.map} +0 -0
- /package/dist/{lspAnchor-CY46EOLW.js.map → lspAnchor-A6JOWYTF.js.map} +0 -0
- /package/dist/{mcp-MACS532E.js.map → mcp-JR5GCFVI.js.map} +0 -0
- /package/dist/{mentionProcessor-WT7DIUO6.js.map → mentionProcessor-43TRFZTC.js.map} +0 -0
- /package/dist/{messages-TQAKPPWM.js.map → messages-6B56FWB6.js.map} +0 -0
- /package/dist/{model-R7YMMBAR.js.map → model-KVO3Q5GQ.js.map} +0 -0
- /package/dist/{openai-BISFRGPN.js.map → openai-CMN6BQ26.js.map} +0 -0
- /package/dist/{outputStyles-HLA3OEH2.js.map → outputStyles-S4EHIOBW.js.map} +0 -0
- /package/dist/{pluginRuntime-LD6VPBWN.js.map → pluginRuntime-WP7C7MEW.js.map} +0 -0
- /package/dist/{pluginValidation-MQFVM3M5.js.map → pluginValidation-YNVAU2ZN.js.map} +0 -0
- /package/dist/{prompts-BFS3LOCS.js.map → prompts-WRRAU4DE.js.map} +0 -0
- /package/dist/{pybAgentSessionLoad-BQJ2JPPT.js.map → pybAgentSessionLoad-EWFESYAH.js.map} +0 -0
- /package/dist/{pybAgentSessionResume-BBX6KVFN.js.map → pybAgentSessionResume-BRGB733X.js.map} +0 -0
- /package/dist/{pybAgentStreamJsonSession-N2AYCHRN.js.map → pybAgentStreamJsonSession-54U673FL.js.map} +0 -0
- /package/dist/{pybHooks-U4ATAT57.js.map → pybHooks-IQDSHJJZ.js.map} +0 -0
- /package/dist/{query-PZKEVMJY.js.map → query-LG26S5UL.js.map} +0 -0
- /package/dist/{registry-G2FLVWSF.js.map → registry-HZRLFYJP.js.map} +0 -0
- /package/dist/{ripgrep-NPYGQPV3.js.map → ripgrep-USRMP7QC.js.map} +0 -0
- /package/dist/{skillMarketplace-H5P3PRHJ.js.map → skillMarketplace-H6L3SYVR.js.map} +0 -0
- /package/dist/{state-RM2QGI3K.js.map → state-6C746QMJ.js.map} +0 -0
- /package/dist/{theme-6GGT3D7J.js.map → theme-AXEVVVRT.js.map} +0 -0
- /package/dist/{toolPermissionSettings-IC6ELOVR.js.map → toolPermissionSettings-XJT57SRI.js.map} +0 -0
- /package/dist/{tools-F4GLOVTV.js.map → tools-DRXBA76X.js.map} +0 -0
- /package/dist/{userInput-O26M5EYX.js.map → userInput-FE6BKWOK.js.map} +0 -0
|
@@ -8,12 +8,12 @@ import {
|
|
|
8
8
|
} from "./chunk-BJSWTHRM.js";
|
|
9
9
|
import {
|
|
10
10
|
debug
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-TLHF4J72.js";
|
|
12
12
|
import {
|
|
13
13
|
getCwd,
|
|
14
14
|
getXdgConfigDir,
|
|
15
15
|
logError
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-HAFYP74Q.js";
|
|
17
17
|
|
|
18
18
|
// src/utils/agent/loader.ts
|
|
19
19
|
import {
|
|
@@ -3,7 +3,7 @@ const require = __pybCreateRequire(import.meta.url);
|
|
|
3
3
|
|
|
4
4
|
// src/services/ai/llmLazy.ts
|
|
5
5
|
async function queryLLM(messages, systemPrompt, maxThinkingTokens, tools, signal, options) {
|
|
6
|
-
const { queryLLM: inner } = await import("./llm-
|
|
6
|
+
const { queryLLM: inner } = await import("./llm-CTECH6IG.js");
|
|
7
7
|
return inner(
|
|
8
8
|
messages,
|
|
9
9
|
systemPrompt,
|
|
@@ -14,15 +14,15 @@ async function queryLLM(messages, systemPrompt, maxThinkingTokens, tools, signal
|
|
|
14
14
|
);
|
|
15
15
|
}
|
|
16
16
|
async function queryQuick(args) {
|
|
17
|
-
const { queryQuick: inner } = await import("./llm-
|
|
17
|
+
const { queryQuick: inner } = await import("./llm-CTECH6IG.js");
|
|
18
18
|
return inner(args);
|
|
19
19
|
}
|
|
20
20
|
async function verifyApiKey(apiKey, baseURL, provider) {
|
|
21
|
-
const { verifyApiKey: inner } = await import("./llm-
|
|
21
|
+
const { verifyApiKey: inner } = await import("./llm-CTECH6IG.js");
|
|
22
22
|
return inner(apiKey, baseURL, provider);
|
|
23
23
|
}
|
|
24
24
|
async function fetchAnthropicModels(apiKey, baseURL) {
|
|
25
|
-
const { fetchAnthropicModels: inner } = await import("./llm-
|
|
25
|
+
const { fetchAnthropicModels: inner } = await import("./llm-CTECH6IG.js");
|
|
26
26
|
return inner(apiKey, baseURL);
|
|
27
27
|
}
|
|
28
28
|
|
|
@@ -2,7 +2,7 @@ import { createRequire as __pybCreateRequire } from "node:module";
|
|
|
2
2
|
const require = __pybCreateRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
MACRO
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-YLBWF7D2.js";
|
|
6
6
|
|
|
7
7
|
// src/utils/state/index.ts
|
|
8
8
|
import { cwd } from "process";
|
|
@@ -2,10 +2,10 @@ import { createRequire as __pybCreateRequire } from "node:module";
|
|
|
2
2
|
const require = __pybCreateRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
debug
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-TLHF4J72.js";
|
|
6
6
|
import {
|
|
7
7
|
logError
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-HAFYP74Q.js";
|
|
9
9
|
|
|
10
10
|
// src/services/system/systemReminder.ts
|
|
11
11
|
var SystemReminderService = class {
|
|
@@ -8,14 +8,14 @@ import {
|
|
|
8
8
|
getSettingsFileCandidates,
|
|
9
9
|
loadSettingsWithLegacyFallback,
|
|
10
10
|
saveSettingsToPrimaryAndSyncLegacy
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-CESDUQBF.js";
|
|
12
12
|
import {
|
|
13
13
|
getCurrentProjectConfig
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-X3BQA3YE.js";
|
|
15
15
|
import {
|
|
16
16
|
getCwd,
|
|
17
17
|
logError
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-HAFYP74Q.js";
|
|
19
19
|
|
|
20
20
|
// src/utils/permissions/toolPermissionSettings.ts
|
|
21
21
|
function uniqueStrings(value) {
|
|
@@ -6,12 +6,12 @@ import {
|
|
|
6
6
|
} from "./chunk-XKYHFZEC.js";
|
|
7
7
|
import {
|
|
8
8
|
getGlobalConfig
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-X3BQA3YE.js";
|
|
10
10
|
import {
|
|
11
11
|
debug,
|
|
12
12
|
getCurrentRequest,
|
|
13
13
|
logAPIError
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-TLHF4J72.js";
|
|
15
15
|
|
|
16
16
|
// src/services/ai/openai.ts
|
|
17
17
|
import { ProxyAgent, fetch } from "undici";
|
|
@@ -3,13 +3,13 @@ const require = __pybCreateRequire(import.meta.url);
|
|
|
3
3
|
import {
|
|
4
4
|
getSettingsFileCandidates,
|
|
5
5
|
loadSettingsWithLegacyFallback
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-CESDUQBF.js";
|
|
7
7
|
import {
|
|
8
8
|
getSessionPlugins
|
|
9
9
|
} from "./chunk-BJSWTHRM.js";
|
|
10
10
|
import {
|
|
11
11
|
getTheme
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-GASKENL5.js";
|
|
13
13
|
import {
|
|
14
14
|
addMcprcServerForTesting,
|
|
15
15
|
getCurrentProjectConfig,
|
|
@@ -19,13 +19,13 @@ import {
|
|
|
19
19
|
safeParseJSON,
|
|
20
20
|
saveCurrentProjectConfig,
|
|
21
21
|
saveGlobalConfig
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-X3BQA3YE.js";
|
|
23
23
|
import {
|
|
24
24
|
PRODUCT_COMMAND,
|
|
25
25
|
PRODUCT_NAME,
|
|
26
26
|
getCwd,
|
|
27
27
|
logMCPError
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-HAFYP74Q.js";
|
|
29
29
|
|
|
30
30
|
// src/services/mcp/client.ts
|
|
31
31
|
import { existsSync as existsSync2, readFileSync as readFileSync2 } from "fs";
|
|
@@ -3,13 +3,13 @@ const require = __pybCreateRequire(import.meta.url);
|
|
|
3
3
|
import {
|
|
4
4
|
getGlobalConfig,
|
|
5
5
|
saveGlobalConfig
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-X3BQA3YE.js";
|
|
7
7
|
import {
|
|
8
8
|
debug
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-TLHF4J72.js";
|
|
10
10
|
import {
|
|
11
11
|
logError
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-HAFYP74Q.js";
|
|
13
13
|
|
|
14
14
|
// src/utils/model/index.ts
|
|
15
15
|
import { memoize } from "lodash-es";
|
|
@@ -2,11 +2,11 @@ import { createRequire as __pybCreateRequire } from "node:module";
|
|
|
2
2
|
const require = __pybCreateRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
listAllContentFiles
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-7MOPJWTA.js";
|
|
6
6
|
import {
|
|
7
7
|
getCwd,
|
|
8
8
|
logError
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-HAFYP74Q.js";
|
|
10
10
|
|
|
11
11
|
// src/utils/fs/file.ts
|
|
12
12
|
import {
|
|
@@ -2,7 +2,7 @@ import { createRequire as __pybCreateRequire } from "node:module";
|
|
|
2
2
|
const require = __pybCreateRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
PERSISTENCE_VERSION
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-6SRO6NZW.js";
|
|
6
6
|
|
|
7
7
|
// src/utils/session/conversationMessageState.ts
|
|
8
8
|
function mapFinishReason(rawReason) {
|
|
@@ -5,11 +5,11 @@ import {
|
|
|
5
5
|
appendSessionJsonlFromMessage,
|
|
6
6
|
appendSessionTagRecord,
|
|
7
7
|
listPybAgentSessions
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-EKZGVP53.js";
|
|
9
9
|
import {
|
|
10
10
|
formatValidationResult,
|
|
11
11
|
validatePluginOrMarketplacePath
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-FBHVDOJT.js";
|
|
13
13
|
import {
|
|
14
14
|
ConversationTracker,
|
|
15
15
|
appendFinishState,
|
|
@@ -17,16 +17,16 @@ import {
|
|
|
17
17
|
getConversationTrackerForContext,
|
|
18
18
|
isFinishComplete,
|
|
19
19
|
mapFinishReason
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-SK7JIWXO.js";
|
|
21
21
|
import {
|
|
22
22
|
FileSystemConversationPersistence
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-6SRO6NZW.js";
|
|
24
24
|
import {
|
|
25
25
|
beginReplSessionScope
|
|
26
26
|
} from "./chunk-F4AXICO7.js";
|
|
27
27
|
import {
|
|
28
28
|
loadPybAgentSessionMessages
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-WXZUYR6V.js";
|
|
30
30
|
import {
|
|
31
31
|
drainHookSystemPromptAdditions,
|
|
32
32
|
getHookTranscriptPath,
|
|
@@ -38,7 +38,7 @@ import {
|
|
|
38
38
|
runStopHooks,
|
|
39
39
|
runUserPromptSubmitHooks,
|
|
40
40
|
updateHookTranscriptForMessages
|
|
41
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-DG7LOR3Q.js";
|
|
42
42
|
import {
|
|
43
43
|
DEFAULT_OUTPUT_STYLE,
|
|
44
44
|
getAvailableOutputStyles,
|
|
@@ -47,11 +47,11 @@ import {
|
|
|
47
47
|
getOutputStyleSystemPromptAdditions,
|
|
48
48
|
resolveOutputStyleName,
|
|
49
49
|
setCurrentOutputStyle
|
|
50
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-FVQTUBDM.js";
|
|
51
51
|
import {
|
|
52
52
|
fetchCustomModels,
|
|
53
53
|
getModelFeatures
|
|
54
|
-
} from "./chunk-
|
|
54
|
+
} from "./chunk-LP3EJS77.js";
|
|
55
55
|
import {
|
|
56
56
|
getSessionState
|
|
57
57
|
} from "./chunk-XKYHFZEC.js";
|
|
@@ -59,7 +59,7 @@ import {
|
|
|
59
59
|
queryLLM,
|
|
60
60
|
queryQuick,
|
|
61
61
|
verifyApiKey
|
|
62
|
-
} from "./chunk-
|
|
62
|
+
} from "./chunk-GZBJPLTJ.js";
|
|
63
63
|
import {
|
|
64
64
|
DEFAULT_TIMEOUT_MS,
|
|
65
65
|
FallbackToolUseRejectedMessage,
|
|
@@ -73,7 +73,7 @@ import {
|
|
|
73
73
|
listMCPServers,
|
|
74
74
|
loadMergedSettings,
|
|
75
75
|
normalizeSandboxRuntimeConfigFromSettings
|
|
76
|
-
} from "./chunk-
|
|
76
|
+
} from "./chunk-NYOAEEVC.js";
|
|
77
77
|
import {
|
|
78
78
|
addMarketplace,
|
|
79
79
|
disableSkillPlugin,
|
|
@@ -86,11 +86,11 @@ import {
|
|
|
86
86
|
refreshMarketplaceAsync,
|
|
87
87
|
removeMarketplace,
|
|
88
88
|
uninstallSkillPlugin
|
|
89
|
-
} from "./chunk-
|
|
89
|
+
} from "./chunk-F3BMDQBD.js";
|
|
90
90
|
import {
|
|
91
91
|
loadToolPermissionContextFromDisk,
|
|
92
92
|
persistToolPermissionUpdateToDisk
|
|
93
|
-
} from "./chunk-
|
|
93
|
+
} from "./chunk-JPPQJANN.js";
|
|
94
94
|
import {
|
|
95
95
|
applyToolPermissionContextUpdate,
|
|
96
96
|
applyToolPermissionContextUpdates,
|
|
@@ -101,13 +101,13 @@ import {
|
|
|
101
101
|
generateSystemReminders,
|
|
102
102
|
resetReminderSession,
|
|
103
103
|
systemReminderService
|
|
104
|
-
} from "./chunk-
|
|
104
|
+
} from "./chunk-HI6YJWFI.js";
|
|
105
105
|
import {
|
|
106
106
|
clearAgentCache,
|
|
107
107
|
getActiveAgents,
|
|
108
108
|
getAgentByType,
|
|
109
109
|
getAllAgents
|
|
110
|
-
} from "./chunk-
|
|
110
|
+
} from "./chunk-GYSKHPUA.js";
|
|
111
111
|
import {
|
|
112
112
|
API_ERROR_MESSAGE_PREFIX,
|
|
113
113
|
CANCEL_MESSAGE,
|
|
@@ -144,7 +144,7 @@ import {
|
|
|
144
144
|
reorderMessages,
|
|
145
145
|
resetAutoCompactTelemetry,
|
|
146
146
|
stripSystemMessages
|
|
147
|
-
} from "./chunk-
|
|
147
|
+
} from "./chunk-CGENEGDI.js";
|
|
148
148
|
import {
|
|
149
149
|
getRequestStatus,
|
|
150
150
|
setRequestStatus,
|
|
@@ -174,7 +174,7 @@ import {
|
|
|
174
174
|
normalizeFilePath,
|
|
175
175
|
readTextContent,
|
|
176
176
|
writeTextContent
|
|
177
|
-
} from "./chunk-
|
|
177
|
+
} from "./chunk-QFXHC754.js";
|
|
178
178
|
import {
|
|
179
179
|
parseBlockEdits
|
|
180
180
|
} from "./chunk-QWIBSCDN.js";
|
|
@@ -184,18 +184,18 @@ import {
|
|
|
184
184
|
ParserRegistry,
|
|
185
185
|
initParser,
|
|
186
186
|
loadLanguage
|
|
187
|
-
} from "./chunk-
|
|
187
|
+
} from "./chunk-5IDQK3OD.js";
|
|
188
188
|
import {
|
|
189
189
|
getSettingsFileCandidates,
|
|
190
190
|
loadSettingsWithLegacyFallback,
|
|
191
191
|
readSettingsFile
|
|
192
|
-
} from "./chunk-
|
|
192
|
+
} from "./chunk-CESDUQBF.js";
|
|
193
193
|
import {
|
|
194
194
|
getCustomCommandDirectories,
|
|
195
195
|
hasCustomCommands,
|
|
196
196
|
loadCustomCommands,
|
|
197
197
|
reloadCustomCommands
|
|
198
|
-
} from "./chunk-
|
|
198
|
+
} from "./chunk-ZIVDHAMU.js";
|
|
199
199
|
import {
|
|
200
200
|
getSessionPlugins
|
|
201
201
|
} from "./chunk-BJSWTHRM.js";
|
|
@@ -204,7 +204,7 @@ import {
|
|
|
204
204
|
buildModelProfileKey,
|
|
205
205
|
getModelManager,
|
|
206
206
|
isDefaultSlowAndCapableModel
|
|
207
|
-
} from "./chunk-
|
|
207
|
+
} from "./chunk-PFFVDJ52.js";
|
|
208
208
|
import {
|
|
209
209
|
getCodeStyle,
|
|
210
210
|
getContext,
|
|
@@ -212,16 +212,16 @@ import {
|
|
|
212
212
|
getIsGit,
|
|
213
213
|
getProjectDocs,
|
|
214
214
|
getProjectStructureStatisticsBlock
|
|
215
|
-
} from "./chunk-
|
|
215
|
+
} from "./chunk-EJPGPTY6.js";
|
|
216
216
|
import {
|
|
217
217
|
getRipgrepPath,
|
|
218
218
|
getRipgrepPolicyMode,
|
|
219
219
|
resolveRipgrepPolicy,
|
|
220
220
|
ripGrep
|
|
221
|
-
} from "./chunk-
|
|
221
|
+
} from "./chunk-7MOPJWTA.js";
|
|
222
222
|
import {
|
|
223
223
|
getTheme
|
|
224
|
-
} from "./chunk-
|
|
224
|
+
} from "./chunk-GASKENL5.js";
|
|
225
225
|
import {
|
|
226
226
|
DEFAULT_GLOBAL_CONFIG,
|
|
227
227
|
enableConfigs,
|
|
@@ -234,7 +234,7 @@ import {
|
|
|
234
234
|
saveGlobalConfig,
|
|
235
235
|
setAllPointersToModel,
|
|
236
236
|
setModelPointer
|
|
237
|
-
} from "./chunk-
|
|
237
|
+
} from "./chunk-X3BQA3YE.js";
|
|
238
238
|
import {
|
|
239
239
|
AbortError
|
|
240
240
|
} from "./chunk-RQVLBMP7.js";
|
|
@@ -243,7 +243,7 @@ import {
|
|
|
243
243
|
getCurrentRequest,
|
|
244
244
|
logUserFriendly,
|
|
245
245
|
markPhase
|
|
246
|
-
} from "./chunk-
|
|
246
|
+
} from "./chunk-TLHF4J72.js";
|
|
247
247
|
import {
|
|
248
248
|
ASCII_LOGO,
|
|
249
249
|
BunShell,
|
|
@@ -284,10 +284,10 @@ import {
|
|
|
284
284
|
setCwd,
|
|
285
285
|
shouldApplyToolOutputTruncation,
|
|
286
286
|
truncateToolOutput
|
|
287
|
-
} from "./chunk-
|
|
287
|
+
} from "./chunk-HAFYP74Q.js";
|
|
288
288
|
import {
|
|
289
289
|
MACRO
|
|
290
|
-
} from "./chunk-
|
|
290
|
+
} from "./chunk-YLBWF7D2.js";
|
|
291
291
|
import {
|
|
292
292
|
__export
|
|
293
293
|
} from "./chunk-I3J4JYES.js";
|
|
@@ -468,7 +468,7 @@ var getCommandSubcommandPrefix = memoize(
|
|
|
468
468
|
var getCommandPrefix = memoize(
|
|
469
469
|
async (command4, abortSignal) => {
|
|
470
470
|
const { systemPrompt, userPrompt } = buildBashCommandPrefixDetectionPrompt(command4);
|
|
471
|
-
const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-
|
|
471
|
+
const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryQuick: queryQuick2 } = await import("./llm-CTECH6IG.js");
|
|
472
472
|
const response = await queryQuick2({
|
|
473
473
|
systemPrompt,
|
|
474
474
|
userPrompt,
|
|
@@ -4270,7 +4270,7 @@ function formatParseError(error) {
|
|
|
4270
4270
|
return error instanceof Error ? error.message : String(error);
|
|
4271
4271
|
}
|
|
4272
4272
|
async function defaultGateQuery(args) {
|
|
4273
|
-
const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-
|
|
4273
|
+
const { API_ERROR_MESSAGE_PREFIX: API_ERROR_MESSAGE_PREFIX2, queryLLM: queryLLM2 } = await import("./llm-CTECH6IG.js");
|
|
4274
4274
|
const queryLLMFn = args.queryLLMOverride ?? queryLLM2;
|
|
4275
4275
|
const messages = [
|
|
4276
4276
|
{
|
|
@@ -6663,7 +6663,7 @@ var FileEditTool = {
|
|
|
6663
6663
|
const originalFileContent = currentFileContent;
|
|
6664
6664
|
let totalPatch = [];
|
|
6665
6665
|
const { SmartEdit } = await import("./smart-edit-AWHJDSU6.js");
|
|
6666
|
-
const { findLspAnchor } = await import("./lspAnchor-
|
|
6666
|
+
const { findLspAnchor } = await import("./lspAnchor-A6JOWYTF.js");
|
|
6667
6667
|
for (const op of editOperations) {
|
|
6668
6668
|
const normalizedSearch = normalizeLineEndings(op.search);
|
|
6669
6669
|
const normalizedReplace = normalizeLineEndings(op.replace);
|
|
@@ -12148,7 +12148,7 @@ async function createAndStoreApiKey(accessToken) {
|
|
|
12148
12148
|
}
|
|
12149
12149
|
saveGlobalConfig(config2);
|
|
12150
12150
|
try {
|
|
12151
|
-
const { resetAnthropicClient } = await import("./llm-
|
|
12151
|
+
const { resetAnthropicClient } = await import("./llm-CTECH6IG.js");
|
|
12152
12152
|
resetAnthropicClient();
|
|
12153
12153
|
} catch {
|
|
12154
12154
|
}
|
|
@@ -16572,7 +16572,7 @@ async function refreshPluginRuntimeFromInstalls() {
|
|
|
16572
16572
|
const existingRoots = getSessionPlugins().map((p) => p.rootDir);
|
|
16573
16573
|
const dirs = Array.from(/* @__PURE__ */ new Set([...existingRoots, ...installedRoots]));
|
|
16574
16574
|
if (dirs.length === 0) return [];
|
|
16575
|
-
const { configureSessionPlugins } = await import("./pluginRuntime-
|
|
16575
|
+
const { configureSessionPlugins } = await import("./pluginRuntime-WP7C7MEW.js");
|
|
16576
16576
|
const { errors } = await configureSessionPlugins({ pluginDirs: dirs });
|
|
16577
16577
|
return errors;
|
|
16578
16578
|
}
|
|
@@ -17247,7 +17247,7 @@ async function call(onDone, context) {
|
|
|
17247
17247
|
ModelConfig,
|
|
17248
17248
|
{
|
|
17249
17249
|
onClose: () => {
|
|
17250
|
-
import("./model-
|
|
17250
|
+
import("./model-KVO3Q5GQ.js").then(({ reloadModelManager: reloadModelManager2 }) => {
|
|
17251
17251
|
reloadModelManager2();
|
|
17252
17252
|
triggerModelConfigChange();
|
|
17253
17253
|
onDone();
|
|
@@ -25427,16 +25427,46 @@ var SentryErrorBoundary = class extends React89.Component {
|
|
|
25427
25427
|
// src/ui/components/TokenWarning.tsx
|
|
25428
25428
|
import { Box as Box67, Text as Text72 } from "ink";
|
|
25429
25429
|
import * as React90 from "react";
|
|
25430
|
-
var
|
|
25431
|
-
var
|
|
25432
|
-
var
|
|
25433
|
-
function
|
|
25430
|
+
var DEFAULT_CONTEXT_LIMIT = 2e5;
|
|
25431
|
+
var WARNING_RATIO = 0.8;
|
|
25432
|
+
var ERROR_RATIO = 0.95;
|
|
25433
|
+
function resolveTokenWarningSeverity(tokenUsage, contextLimit = DEFAULT_CONTEXT_LIMIT) {
|
|
25434
|
+
const safeContextLimit = Number.isFinite(contextLimit) && contextLimit > 0 ? contextLimit : DEFAULT_CONTEXT_LIMIT;
|
|
25435
|
+
const warningThreshold = safeContextLimit * WARNING_RATIO;
|
|
25436
|
+
if (tokenUsage < warningThreshold) {
|
|
25437
|
+
return "normal";
|
|
25438
|
+
}
|
|
25439
|
+
const errorThreshold = safeContextLimit * ERROR_RATIO;
|
|
25440
|
+
if (tokenUsage >= errorThreshold) {
|
|
25441
|
+
return "error";
|
|
25442
|
+
}
|
|
25443
|
+
return "warning";
|
|
25444
|
+
}
|
|
25445
|
+
function buildTokenWarningState(tokenUsage, contextLimit = DEFAULT_CONTEXT_LIMIT) {
|
|
25446
|
+
const safeContextLimit = Number.isFinite(contextLimit) && contextLimit > 0 ? contextLimit : DEFAULT_CONTEXT_LIMIT;
|
|
25447
|
+
const severity = resolveTokenWarningSeverity(tokenUsage, safeContextLimit);
|
|
25448
|
+
if (severity === "normal") {
|
|
25449
|
+
return null;
|
|
25450
|
+
}
|
|
25451
|
+
const remainingPercent = Math.max(
|
|
25452
|
+
0,
|
|
25453
|
+
100 - Math.round(tokenUsage / safeContextLimit * 100)
|
|
25454
|
+
);
|
|
25455
|
+
return {
|
|
25456
|
+
remainingPercent,
|
|
25457
|
+
isError: severity === "error"
|
|
25458
|
+
};
|
|
25459
|
+
}
|
|
25460
|
+
function TokenWarning({
|
|
25461
|
+
tokenUsage,
|
|
25462
|
+
contextLimit = DEFAULT_CONTEXT_LIMIT
|
|
25463
|
+
}) {
|
|
25434
25464
|
const theme = getTheme();
|
|
25435
|
-
|
|
25465
|
+
const state = buildTokenWarningState(tokenUsage, contextLimit);
|
|
25466
|
+
if (!state) {
|
|
25436
25467
|
return null;
|
|
25437
25468
|
}
|
|
25438
|
-
|
|
25439
|
-
return /* @__PURE__ */ React90.createElement(Box67, { flexDirection: "row" }, /* @__PURE__ */ React90.createElement(Text72, { color: isError ? theme.error : theme.warning }, "Context low (", Math.max(0, 100 - Math.round(tokenUsage / MAX_TOKENS * 100)), "% remaining) \xB7 Run /compact to compact & continue"));
|
|
25469
|
+
return /* @__PURE__ */ React90.createElement(Box67, { flexDirection: "row" }, /* @__PURE__ */ React90.createElement(Text72, { color: state.isError ? theme.error : theme.warning }, "Context low (", state.remainingPercent, "% remaining) \xB7 Run /compact to compact & continue"));
|
|
25440
25470
|
}
|
|
25441
25471
|
|
|
25442
25472
|
// src/utils/system/externalEditor.ts
|
|
@@ -25818,7 +25848,7 @@ function useStatusLine() {
|
|
|
25818
25848
|
// src/ui/components/PromptInput.tsx
|
|
25819
25849
|
async function interpretHashCommand(input) {
|
|
25820
25850
|
try {
|
|
25821
|
-
const { queryQuick: queryQuick2 } = await import("./llm-
|
|
25851
|
+
const { queryQuick: queryQuick2 } = await import("./llm-CTECH6IG.js");
|
|
25822
25852
|
const systemPrompt = [
|
|
25823
25853
|
"You're helping the user structure notes that will be added to their PYB.md file.",
|
|
25824
25854
|
"Format the user's input into a well-structured note that will be useful for later reference.",
|
|
@@ -26131,7 +26161,7 @@ function PromptInput({
|
|
|
26131
26161
|
if (messages2.length) {
|
|
26132
26162
|
if (mode === "bash") {
|
|
26133
26163
|
onQuery(messages2, newAbortController).then(async () => {
|
|
26134
|
-
const { getCwd: getCwd2 } = await import("./state-
|
|
26164
|
+
const { getCwd: getCwd2 } = await import("./state-6C746QMJ.js");
|
|
26135
26165
|
setCurrentPwd(getCwd2());
|
|
26136
26166
|
});
|
|
26137
26167
|
} else {
|
|
@@ -26365,7 +26395,13 @@ function PromptInput({
|
|
|
26365
26395
|
))), /* @__PURE__ */ React92.createElement(Box69, { justifyContent: "flex-end" }, /* @__PURE__ */ React92.createElement(Text74, { dimColor: true, wrap: "truncate-end" }, statusLine ? `${statusLine} \xB7 ESC to interrupt \xB7 2\xD7ESC for undo` : "ESC to interrupt \xB7 2\xD7ESC for undo"))), !exitMessage.show && !message.show && !modelSwitchMessage.show && !rewindMessagePending && /* @__PURE__ */ React92.createElement(Box69, { flexDirection: "row", justifyContent: "space-between" }, /* @__PURE__ */ React92.createElement(Box69, { justifyContent: "flex-start", gap: 1 }, /* @__PURE__ */ React92.createElement(Text74, { dimColor: true, wrap: "truncate-end" }, "option+enter: newline \xB7", " ", showQuickModelSwitchShortcut ? "option+m: switch model \xB7 " : "", "option+g: external editor \xB7 ", modeCycleShortcut.displayText, ": switch mode")), /* @__PURE__ */ React92.createElement(
|
|
26366
26396
|
SentryErrorBoundary,
|
|
26367
26397
|
{
|
|
26368
|
-
children: /* @__PURE__ */ React92.createElement(Box69, { justifyContent: "flex-end", gap: 1 }, /* @__PURE__ */ React92.createElement(
|
|
26398
|
+
children: /* @__PURE__ */ React92.createElement(Box69, { justifyContent: "flex-end", gap: 1 }, /* @__PURE__ */ React92.createElement(
|
|
26399
|
+
TokenWarning,
|
|
26400
|
+
{
|
|
26401
|
+
tokenUsage,
|
|
26402
|
+
contextLimit: modelInfo?.contextLength || 2e5
|
|
26403
|
+
}
|
|
26404
|
+
))
|
|
26369
26405
|
}
|
|
26370
26406
|
))), suggestions.length > 0 && /* @__PURE__ */ React92.createElement(
|
|
26371
26407
|
Box69,
|
|
@@ -26407,7 +26443,13 @@ function PromptInput({
|
|
|
26407
26443
|
/* @__PURE__ */ React92.createElement(
|
|
26408
26444
|
SentryErrorBoundary,
|
|
26409
26445
|
{
|
|
26410
|
-
children: /* @__PURE__ */ React92.createElement(Box69, { justifyContent: "flex-end", gap: 1 }, /* @__PURE__ */ React92.createElement(
|
|
26446
|
+
children: /* @__PURE__ */ React92.createElement(Box69, { justifyContent: "flex-end", gap: 1 }, /* @__PURE__ */ React92.createElement(
|
|
26447
|
+
TokenWarning,
|
|
26448
|
+
{
|
|
26449
|
+
tokenUsage: countTokens(messages),
|
|
26450
|
+
contextLimit: modelInfo?.contextLength || 2e5
|
|
26451
|
+
}
|
|
26452
|
+
))
|
|
26411
26453
|
}
|
|
26412
26454
|
)
|
|
26413
26455
|
));
|
|
@@ -34168,7 +34210,7 @@ import { homedir as homedir8 } from "os";
|
|
|
34168
34210
|
// src/commands/agents/generation.ts
|
|
34169
34211
|
import { randomUUID as randomUUID6 } from "crypto";
|
|
34170
34212
|
async function generateAgentWithClaude(prompt) {
|
|
34171
|
-
const { queryModel } = await import("./llm-
|
|
34213
|
+
const { queryModel } = await import("./llm-CTECH6IG.js");
|
|
34172
34214
|
const systemPrompt = `You are an expert at creating AI agent configurations. Based on the user's description, generate a specialized agent configuration.
|
|
34173
34215
|
|
|
34174
34216
|
Return your response as a JSON object with exactly these fields:
|