nolo-cli 0.80.0-alpha.2 → 0.80.0
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/README.md +2 -2
- package/{_executeModel-T3FPYFVF.js → _executeModel-UXVEB3GO.js} +46 -46
- package/{action-D22U6CTH.js → action-YVYQEAAV.js} +11 -11
- package/{addContentAction-XAPUTGL4.js → addContentAction-O7R66HEX.js} +9 -9
- package/{addDialogAgentAction-M7VLLBZM.js → addDialogAgentAction-74OA7KYP.js} +8 -8
- package/{agentDeleteCommand-JCDEGE35.js → agentDeleteCommand-OODHSL4K.js} +30 -28
- package/{agentEmailCommands-IP5NOVLR.js → agentEmailCommands-3R73WSCD.js} +64 -60
- package/{agentGrantCommands-R3VQEZJR.js → agentGrantCommands-M3XFO6EN.js} +2 -2
- package/{agentListCommands-IWIHYQT3.js → agentListCommands-TBTEXV2E.js} +38 -30
- package/{agentMachineCommands-A2WJJOAL.js → agentMachineCommands-3GKE6ZHG.js} +30 -28
- package/{agentProviderCommands-65ZC2WB4.js → agentProviderCommands-GNPTL5XR.js} +87 -0
- package/{agentPullCommand-N7L2CT7L.js → agentPullCommand-O5MPVJ5E.js} +3 -3
- package/{agentRecordCommands-2URSSQJS.js → agentRecordCommands-3664GLRE.js} +61 -57
- package/{agentRunCommand-HICCPFML.js → agentRunCommand-YNSEOBTR.js} +62 -58
- package/{agentRunControl-T44MESII.js → agentRunControl-XLGD3UZ5.js} +1 -1
- package/{agentRuntimeLocal-C3VUNWAT.js → agentRuntimeLocal-5BX6PI4X.js} +28 -26
- package/{agentSlice-EACXUOWW.js → agentSlice-KTVOEUDX.js} +10 -10
- package/{appDeleteCommands-KYL3Z76U.js → appDeleteCommands-UNTBD55Y.js} +30 -28
- package/{appDeployCommands-3RSNVJ7Q.js → appDeployCommands-LOF4JNBZ.js} +30 -28
- package/{appDeployStatusCommands-2Z4N3G2G.js → appDeployStatusCommands-MMLE6BDW.js} +30 -28
- package/{appGetCommands-J2WLYQRO.js → appGetCommands-WFJAJK6B.js} +30 -28
- package/{appListCommands-XT2ZCBMO.js → appListCommands-NC265RGX.js} +30 -28
- package/{authCommand-EVGFLAHO.js → authCommand-F4EFRRX6.js} +164 -24
- package/{authCommands-ILTBI6JV.js → authCommands-RGOGCPP6.js} +4 -5
- package/builtinSkillRegistry-FUAVTRVZ.js +33 -0
- package/{chatQueueReduxAdapter-XEIJO5WR.js → chatQueueReduxAdapter-4YQF4NHY.js} +24 -24
- package/{chromeCommands-VOIRNJBL.js → chromeCommands-FZYAU75D.js} +1 -1
- package/{chromeOpsCommands-M7DPCX2T.js → chromeOpsCommands-62P2Q2YB.js} +31 -1
- package/{chunk-C3FZR5EC.js → chunk-2F7RJC6L.js} +1 -1
- package/{chunk-IPTKVTHL.js → chunk-35EWBHJO.js} +10 -10
- package/{chunk-HQUORJTM.js → chunk-3BMYXEUW.js} +1 -1
- package/{chunk-3QPYFHAH.js → chunk-3DII57IT.js} +1 -1
- package/{chunk-KIS76A2P.js → chunk-3IIEFNGY.js} +38 -4
- package/{chunk-MEVSATIF.js → chunk-4OZYL5FG.js} +66 -792
- package/{chunk-GBPZKFYK.js → chunk-53HEEOTT.js} +4 -4
- package/{chunk-5XTOKQLW.js → chunk-5UTFL4QJ.js} +6 -2
- package/chunk-5ZUL4CUO.js +10 -0
- package/{chunk-E6RGHPDR.js → chunk-6D6VBVEW.js} +4 -6
- package/{chunk-CMH2SYHX.js → chunk-6OZ36FXI.js} +2 -2
- package/{chunk-QA6YKM3H.js → chunk-76WEAXJB.js} +49 -10
- package/{chunk-BYEJ7K2Z.js → chunk-7S4YWN7P.js} +1 -1
- package/{chunk-SREASRV5.js → chunk-ABQYVJBJ.js} +1 -1
- package/chunk-ACTMNVHM.js +93 -0
- package/{chunk-XWNRAIUL.js → chunk-AFUORTY4.js} +6 -16
- package/{chunk-AFIWC5NH.js → chunk-BLJWCTRL.js} +1 -1
- package/chunk-BNGW5ASC.js +344 -0
- package/{chunk-SZLVDREM.js → chunk-BP4XNZRM.js} +3 -3
- package/{chunk-2KDR4CWE.js → chunk-BYMV6QZG.js} +24 -1
- package/{chunk-HH65VA5U.js → chunk-CPH3W5A7.js} +15 -3
- package/{chunk-U6LKJRJB.js → chunk-D2P6UDPQ.js} +42 -26
- package/{chunk-L2Y24GRM.js → chunk-DEUUPHOO.js} +16 -12
- package/{chunk-MYU3MJCF.js → chunk-DHDMC6FO.js} +175 -7
- package/{chunk-CDVGNZDA.js → chunk-EFVDQUCT.js} +11 -173
- package/{chunk-EXMHJN7C.js → chunk-EYAQT56M.js} +4 -3
- package/{chunk-KSQLYFKT.js → chunk-FLLFOP5L.js} +6 -6
- package/{chunk-H7UKKEIS.js → chunk-GFD4ALW3.js} +1 -1
- package/{chunk-PYXL2CJL.js → chunk-GPCZ7UXG.js} +1 -1
- package/{chunk-K7AG465Q.js → chunk-GQBOR3G6.js} +4 -2
- package/{chunk-QUH3XHL5.js → chunk-H3PIH2EO.js} +7 -7
- package/{chunk-YFADVSZE.js → chunk-H62HCIUP.js} +6 -6
- package/{chunk-PZM3EENV.js → chunk-HJUYAD4A.js} +1 -1
- package/{chunk-ALGK6TIE.js → chunk-HMPEO3ZE.js} +3 -3
- package/{chunk-3JQ2NRYU.js → chunk-HVURBGF3.js} +4 -4
- package/{chunk-FPTQQSS6.js → chunk-IAO6JBYW.js} +26 -5
- package/{chunk-V3ZKNK5D.js → chunk-IIVGDG4I.js} +11 -10
- package/{chunk-UDQWGU7F.js → chunk-J4MOO56S.js} +1 -1
- package/{chunk-DSRXPQWA.js → chunk-JAXOVNM4.js} +43 -43
- package/{chunk-KC5FAHVS.js → chunk-JEDZAO7L.js} +1 -1
- package/{chunk-6XIE5ZGI.js → chunk-JPGCXHNM.js} +1 -1
- package/chunk-JRQFUXY7.js +1625 -0
- package/chunk-KQ4ONNQD.js +677 -0
- package/{chunk-D74EWXL4.js → chunk-LBEDNSMY.js} +419 -72
- package/{chunk-X7Z7U4Z6.js → chunk-LIIKM7DD.js} +15 -15
- package/{chunk-RXX4GDIH.js → chunk-LS2ZANRJ.js} +1 -1
- package/{chunk-BJIRLHJR.js → chunk-M2EJHDJP.js} +4 -0
- package/{chunk-EVBFYPDC.js → chunk-MC4XLIJ7.js} +6 -2
- package/{chunk-THWDM2R6.js → chunk-MPV6E6WR.js} +608 -60
- package/{chunk-HI374WVI.js → chunk-MWAO7TZZ.js} +902 -301
- package/{chunk-QRBAZ5PW.js → chunk-NKRYKK7T.js} +3 -3
- package/{chunk-ZLPA7K55.js → chunk-OA6Q2A4I.js} +29 -10
- package/{chunk-QC5LGHYP.js → chunk-OF7AQZUG.js} +10 -5
- package/{chunk-UJ63UXGE.js → chunk-OIVSQH2O.js} +1006 -801
- package/{chunk-AETZ7AD6.js → chunk-Q554LLSI.js} +1 -1
- package/chunk-Q5FJJ6XI.js +103 -0
- package/{chunk-AJHEFRGJ.js → chunk-Q67DOFOO.js} +214 -5
- package/{chunk-UZ6XXCVR.js → chunk-QDSINZM3.js} +15 -2
- package/{chunk-AFIKMMGC.js → chunk-QIAVMDHY.js} +1 -1
- package/{chunk-QCZX4FTW.js → chunk-SH43IESU.js} +173 -15
- package/{chunk-FSFQ3A7S.js → chunk-SNPMM7H3.js} +137 -12
- package/{chunk-P7FA2HMM.js → chunk-SQZDZXP5.js} +13 -15
- package/{chunk-SPAQ4PVV.js → chunk-SV5IJK6K.js} +1 -1
- package/{chunk-BJCWNHVU.js → chunk-TOP2VXOR.js} +2 -2
- package/{chunk-L5E7NSWK.js → chunk-TRCMIJA7.js} +1198 -50
- package/{chunk-4EJ5QYB5.js → chunk-UKZDAFYT.js} +1 -1
- package/{chunk-PGSKWZCB.js → chunk-UZGQNTVW.js} +1 -1
- package/{chunk-ZZCJUXUI.js → chunk-V4MJDUSR.js} +2 -2
- package/{chunk-JYYZCK2Z.js → chunk-V7E4PXQD.js} +1 -1
- package/{chunk-OZX2IPKM.js → chunk-VLTIYV3X.js} +1 -1
- package/{chunk-NHRQCXIQ.js → chunk-VMFTFOWF.js} +13 -3
- package/{chunk-E36HZARC.js → chunk-WADCY6G6.js} +3 -3
- package/{chunk-5J7W2VWW.js → chunk-WV42OMV7.js} +6 -265
- package/{chunk-DWPNOYMB.js → chunk-YQTQQX2H.js} +1 -1
- package/{chunk-Q6FF2MCK.js → chunk-Z77CRGTW.js} +1 -1
- package/{contentThunks-3SPROFG5.js → contentThunks-2USKJBI4.js} +25 -25
- package/{createAgentAutomationAction-EIP2EG3O.js → createAgentAutomationAction-NTLU42X2.js} +25 -25
- package/{createDialogAction-RLUSTN4D.js → createDialogAction-UCYF4BUN.js} +28 -28
- package/{createPageAction-4Y52G7WG.js → createPageAction-QFGUGZ5M.js} +26 -26
- package/{dbSlice-GKGGFNOB.js → dbSlice-XVWBAGYN.js} +8 -8
- package/{deleteFile-LWSR674W.js → deleteFile-YG6QMJLU.js} +3 -3
- package/{dialogCommands-IPCKBWGL.js → dialogCommands-X4OB6SC6.js} +34 -30
- package/{dialogSlice-THY45JWM.js → dialogSlice-HQFQIQDZ.js} +24 -24
- package/{docCreateCommands-QGJ2IM64.js → docCreateCommands-DFST4PFR.js} +31 -29
- package/{docDeleteCommands-ZZXWBKNG.js → docDeleteCommands-V37JZOSP.js} +32 -30
- package/{docReadCommands-FE37G3KU.js → docReadCommands-Z64VDPDQ.js} +31 -29
- package/{docStore-ZQ3ECOPY.js → docStore-GVWEDN5E.js} +9 -9
- package/{docUpdateCommands-EOHC5LRT.js → docUpdateCommands-I6FB6ENK.js} +31 -29
- package/{fetchMessages-DRABNDPZ.js → fetchMessages-EIU7UFFK.js} +3 -4
- package/{getPricing-HRMSOF3E.js → getPricing-LUSEABA6.js} +4 -4
- package/{handleSendMessageAction-CE4M5XIE.js → handleSendMessageAction-TLB2SAU4.js} +24 -24
- package/index.js +101 -84
- package/{localDialogRead-PUQKFI73.js → localDialogRead-BTFJ4V2I.js} +2 -2
- package/{localRuntimeDb-P37ZTX55.js → localRuntimeDb-SYQGUF4U.js} +1 -1
- package/{machineCommands-KSONYK2P.js → machineCommands-PV5XA7UF.js} +61 -57
- package/{machineWsRunDispatch-RBSOKO6F.js → machineWsRunDispatch-W2DPC7TZ.js} +59 -55
- package/{memberThunks-KATHH3F4.js → memberThunks-QGFLFVCI.js} +9 -9
- package/{models-GS72DVJS.js → models-T3SG6MJ5.js} +2 -2
- package/{offlineMarxistsAgentCommand-GEH6SNNA.js → offlineMarxistsAgentCommand-HGXZV4XJ.js} +1 -1
- package/package.json +1 -1
- package/providerPresetApply-FG6NZ57W.js +214 -0
- package/providerRegistry-757OWH3O.js +31 -0
- package/{read-LC6HVYBN.js → read-COE3ZYR6.js} +5 -4
- package/{readDocTool-N3ERJHHF.js → readDocTool-5USN4A6V.js} +1 -1
- package/{readlineWorkspace-WVK6LIF5.js → readlineWorkspace-PHZXJKJM.js} +187 -108
- package/{removeDialogAgentAction-F5GPTALR.js → removeDialogAgentAction-IX3MN2ZO.js} +11 -11
- package/{runAgentClientLoop-NE5EHXSS.js → runAgentClientLoop-26DG6ZEY.js} +45 -45
- package/{runtimeDoctorCommands-CROTMULY.js → runtimeDoctorCommands-X6WDBEQX.js} +2 -2
- package/{setDialogExtraReferencesAction-AY4ZCF3A.js → setDialogExtraReferencesAction-X4HCPNZL.js} +9 -9
- package/{setPrimaryDialogAgentAction-HPMG7V3R.js → setPrimaryDialogAgentAction-4GMIQLOD.js} +11 -11
- package/{settingSlice-OEJA4NQO.js → settingSlice-ZQZVUPKK.js} +10 -10
- package/{spaceCommands-FRU7SOMI.js → spaceCommands-3QH2QFNW.js} +29 -27
- package/{streamAgentChatTurn-A6L6O22P.js → streamAgentChatTurn-BY7IPY5C.js} +57 -56
- package/{switchDialogAgentAction-HMDZTZ4I.js → switchDialogAgentAction-N52LRPA3.js} +8 -8
- package/{tableCommands-SUNTHAYX.js → tableCommands-O6NWHFKV.js} +1 -1
- package/{toolApiClient-VGYUB4P5.js → toolApiClient-QVJ6HDNN.js} +2 -2
- package/{tools-JS475NYO.js → tools-4Y2EYH5D.js} +41 -39
- package/tuiSummaryLlmCaller-T2SHYMDZ.js +127 -0
- package/{updateCommands-Y363MC3L.js → updateCommands-2M74UL7P.js} +2 -2
- package/{updateDialogTitleAction-GMZUT6RP.js → updateDialogTitleAction-2S4DCP35.js} +45 -28
- package/chunk-3IT2PFHL.js +0 -611
- package/chunk-I42VC5KR.js +0 -15
- package/chunk-NG4UT4K4.js +0 -79
- package/codingSkills-E6KSDNSJ.js +0 -48
- package/tuiSummaryLlmCaller-3Z24VUWM.js +0 -116
- package/{chunk-3RAG2NAD.js → chunk-UKWGR5SS.js} +3 -3
- package/{db-VQSAOWAO.js → db-WK5MDZVN.js} +1 -1
- package/{localRuntimeAuthority-R5UBODT3.js → localRuntimeAuthority-6IR6BBXE.js} +3 -3
|
@@ -4,15 +4,15 @@ import {
|
|
|
4
4
|
refreshAntigravityOAuthToken,
|
|
5
5
|
refreshOpenAiCodexToken,
|
|
6
6
|
xaiRefresh
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-53HEEOTT.js";
|
|
8
|
+
import {
|
|
9
|
+
defaultLoopbackRequest
|
|
10
|
+
} from "./chunk-EADNWBAZ.js";
|
|
8
11
|
import {
|
|
9
12
|
createChromeConnectorClient,
|
|
10
13
|
createVerifiedChromeConnectorClient,
|
|
11
14
|
executeChromeConnectorTool
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import {
|
|
14
|
-
defaultLoopbackRequest
|
|
15
|
-
} from "./chunk-EADNWBAZ.js";
|
|
15
|
+
} from "./chunk-SH43IESU.js";
|
|
16
16
|
import {
|
|
17
17
|
ackRunRecord,
|
|
18
18
|
appendRunQueue,
|
|
@@ -29,7 +29,7 @@ import {
|
|
|
29
29
|
terminateRunProcess,
|
|
30
30
|
transitionRunToTerminal,
|
|
31
31
|
withQueueLock
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-CPH3W5A7.js";
|
|
33
33
|
import {
|
|
34
34
|
clearCredentialAvailability,
|
|
35
35
|
markCredentialUnavailable,
|
|
@@ -40,27 +40,27 @@ import {
|
|
|
40
40
|
} from "./chunk-DWUCB2A3.js";
|
|
41
41
|
import {
|
|
42
42
|
buildLocalAgentLookupKeys
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-Z77CRGTW.js";
|
|
44
44
|
import {
|
|
45
45
|
LOCAL_CODEX_AGENT_ID,
|
|
46
46
|
LOCAL_CODEX_AGENT_KEY,
|
|
47
47
|
NOLO_DEFAULT_AGENT_ID,
|
|
48
48
|
NOLO_DEFAULT_AGENT_KEY
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-SV5IJK6K.js";
|
|
50
50
|
import {
|
|
51
51
|
CliProviderQuotaError,
|
|
52
52
|
executeCli
|
|
53
53
|
} from "./chunk-MP64VFGD.js";
|
|
54
54
|
import {
|
|
55
55
|
inferCaptureIntent
|
|
56
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-3DII57IT.js";
|
|
57
57
|
import {
|
|
58
58
|
buildCliPrompt
|
|
59
59
|
} from "./chunk-ATNTHIZI.js";
|
|
60
60
|
import {
|
|
61
61
|
inlineImageUrlsForCustomProvider,
|
|
62
62
|
prepareTools
|
|
63
|
-
} from "./chunk-
|
|
63
|
+
} from "./chunk-HMPEO3ZE.js";
|
|
64
64
|
import {
|
|
65
65
|
getServerProviderSecret
|
|
66
66
|
} from "./chunk-HS7MLR74.js";
|
|
@@ -78,11 +78,11 @@ import {
|
|
|
78
78
|
rememberMemoryFunctionSchema,
|
|
79
79
|
resolveAgentRequiredPackIds,
|
|
80
80
|
setTodoListFunc
|
|
81
|
-
} from "./chunk-
|
|
81
|
+
} from "./chunk-4OZYL5FG.js";
|
|
82
82
|
import {
|
|
83
83
|
fetchWithTransientRetry,
|
|
84
84
|
isTransientFetchError
|
|
85
|
-
} from "./chunk-
|
|
85
|
+
} from "./chunk-5UTFL4QJ.js";
|
|
86
86
|
import {
|
|
87
87
|
TASK_PREVIEW_MAX,
|
|
88
88
|
formatListRunsCard,
|
|
@@ -95,25 +95,29 @@ import {
|
|
|
95
95
|
resolveRunLabel,
|
|
96
96
|
shortRunId
|
|
97
97
|
} from "./chunk-NTW5GWDM.js";
|
|
98
|
+
import {
|
|
99
|
+
getModelPricing
|
|
100
|
+
} from "./chunk-EYAQT56M.js";
|
|
98
101
|
import {
|
|
99
102
|
applyBuiltinAgentRuntimeOverride,
|
|
100
103
|
applyTokenUsageToDayStats,
|
|
101
104
|
prepareTokenUsageData,
|
|
102
105
|
resolveBuiltinPlatformAgentConfig,
|
|
103
106
|
runKeyed
|
|
104
|
-
} from "./chunk-
|
|
107
|
+
} from "./chunk-LBEDNSMY.js";
|
|
105
108
|
import {
|
|
109
|
+
BUILTIN_DIALOG_LLM_CHAT_FALLBACK_MODEL,
|
|
106
110
|
BUILTIN_TITLE_LLM_CONFIG
|
|
107
|
-
} from "./chunk-
|
|
111
|
+
} from "./chunk-MC4XLIJ7.js";
|
|
108
112
|
import {
|
|
109
113
|
fetchServerSyncedCredential
|
|
110
|
-
} from "./chunk-
|
|
114
|
+
} from "./chunk-H3PIH2EO.js";
|
|
111
115
|
import {
|
|
112
116
|
require_date_fns
|
|
113
117
|
} from "./chunk-M76ECQRD.js";
|
|
114
118
|
import {
|
|
115
119
|
getDefaultCliLocalRuntimeDb
|
|
116
|
-
} from "./chunk-
|
|
120
|
+
} from "./chunk-2F7RJC6L.js";
|
|
117
121
|
import {
|
|
118
122
|
FORCED_TOOLS,
|
|
119
123
|
addDefaultLightWebToolsForConfiguredAgents,
|
|
@@ -123,7 +127,7 @@ import {
|
|
|
123
127
|
applySystemBuiltinSkillFilter,
|
|
124
128
|
expandEnabledPacks,
|
|
125
129
|
resolveEffectiveEnabledPacks
|
|
126
|
-
} from "./chunk-
|
|
130
|
+
} from "./chunk-DHDMC6FO.js";
|
|
127
131
|
import {
|
|
128
132
|
DEFAULT_HYBRID_READ_TIMEOUT_MS,
|
|
129
133
|
Duration_exports,
|
|
@@ -139,6 +143,7 @@ import {
|
|
|
139
143
|
buildLocalWorkspaceToolset,
|
|
140
144
|
buildNoloWorkspaceCliToolExecutors,
|
|
141
145
|
codexStreamFailureStatus,
|
|
146
|
+
createDevinProvider,
|
|
142
147
|
createHybridRecordStore,
|
|
143
148
|
createLocalWorkspaceToolExecutors,
|
|
144
149
|
evaluateFileWritePolicy,
|
|
@@ -159,7 +164,7 @@ import {
|
|
|
159
164
|
resolveOpenAiCompatibleProviderConfig,
|
|
160
165
|
shouldUseGeminiNativeToolRoute,
|
|
161
166
|
summarizeToolArguments
|
|
162
|
-
} from "./chunk-
|
|
167
|
+
} from "./chunk-MWAO7TZZ.js";
|
|
163
168
|
import {
|
|
164
169
|
PlatformStreamInterruptedError,
|
|
165
170
|
buildPlatformChatCompletionRequest,
|
|
@@ -171,53 +176,57 @@ import {
|
|
|
171
176
|
readSseDataValues,
|
|
172
177
|
resolvePlatformChatProviderConfig,
|
|
173
178
|
shouldUsePlatformChatProvider
|
|
174
|
-
} from "./chunk-
|
|
179
|
+
} from "./chunk-OF7AQZUG.js";
|
|
175
180
|
import {
|
|
176
181
|
resolveAgentRuntimeConfigFromRecord,
|
|
177
182
|
resolveHistoricalToolContentCap
|
|
178
|
-
} from "./chunk-
|
|
183
|
+
} from "./chunk-3IIEFNGY.js";
|
|
184
|
+
import {
|
|
185
|
+
isDevinOAuthAgent
|
|
186
|
+
} from "./chunk-5ZUL4CUO.js";
|
|
179
187
|
import {
|
|
180
188
|
collectStablePromptPrefix,
|
|
181
189
|
convertMessagesToResponsesInput,
|
|
182
190
|
stablePromptCacheKey,
|
|
183
191
|
toResponsesTools
|
|
184
192
|
} from "./chunk-PUOC4YRO.js";
|
|
185
|
-
import {
|
|
186
|
-
isAntigravityOAuthAgent
|
|
187
|
-
} from "./chunk-PGSKWZCB.js";
|
|
188
|
-
import {
|
|
189
|
-
resolvePlatformAuthToken
|
|
190
|
-
} from "./chunk-CMH2SYHX.js";
|
|
191
193
|
import {
|
|
192
194
|
buildNoloWorkspaceOpenAiTools,
|
|
193
195
|
parseNoloWorkspaceToolArguments,
|
|
194
196
|
resolveRuntimeToolSurfaceForAgent
|
|
195
|
-
} from "./chunk-
|
|
197
|
+
} from "./chunk-IIVGDG4I.js";
|
|
196
198
|
import {
|
|
197
199
|
mergeAvailabilityDeadline,
|
|
198
200
|
resolveAvailabilityAction,
|
|
199
201
|
resolveCooldownGate
|
|
200
202
|
} from "./chunk-CJCJF5XB.js";
|
|
203
|
+
import {
|
|
204
|
+
isAntigravityOAuthAgent
|
|
205
|
+
} from "./chunk-UZGQNTVW.js";
|
|
206
|
+
import {
|
|
207
|
+
resolvePlatformAuthToken
|
|
208
|
+
} from "./chunk-6OZ36FXI.js";
|
|
201
209
|
import {
|
|
202
210
|
buildDialogFallbackTitleFromUserInput,
|
|
203
211
|
normalizeDialogTitle
|
|
204
212
|
} from "./chunk-2MBTWINN.js";
|
|
205
213
|
import {
|
|
206
214
|
normalizeUsage
|
|
207
|
-
} from "./chunk-
|
|
215
|
+
} from "./chunk-JAXOVNM4.js";
|
|
208
216
|
import {
|
|
209
217
|
clipCompactText,
|
|
210
218
|
createProviderCallTimingTracker,
|
|
211
219
|
finalizeProviderCallTiming,
|
|
212
220
|
observeMeaningfulProviderResponseAt,
|
|
213
221
|
withProviderCallTimingFields
|
|
214
|
-
} from "./chunk-
|
|
222
|
+
} from "./chunk-WADCY6G6.js";
|
|
215
223
|
import {
|
|
216
224
|
estimateTokenCount
|
|
217
225
|
} from "./chunk-PSCNXBYA.js";
|
|
218
226
|
import {
|
|
227
|
+
getModelConfig,
|
|
219
228
|
isAdaptiveThinkingModelId
|
|
220
|
-
} from "./chunk-
|
|
229
|
+
} from "./chunk-OIVSQH2O.js";
|
|
221
230
|
import {
|
|
222
231
|
compactWhitespace
|
|
223
232
|
} from "./chunk-DWLEOOGR.js";
|
|
@@ -226,7 +235,7 @@ import {
|
|
|
226
235
|
resolveCurrentRunRuntimeToolPolicy,
|
|
227
236
|
resolveLocalWorkspaceExecutorOptionsFromPolicy,
|
|
228
237
|
resolveRequestedRuntimeToolNames
|
|
229
|
-
} from "./chunk-
|
|
238
|
+
} from "./chunk-HVURBGF3.js";
|
|
230
239
|
import {
|
|
231
240
|
createOAuthTokenStore,
|
|
232
241
|
isTokenExpired,
|
|
@@ -246,24 +255,42 @@ import {
|
|
|
246
255
|
import {
|
|
247
256
|
DEFAULT_NOLO_SERVER_URL
|
|
248
257
|
} from "./chunk-OLZBQWZU.js";
|
|
258
|
+
import {
|
|
259
|
+
isNoloHostedProvider,
|
|
260
|
+
isPlatformHostedImageModel
|
|
261
|
+
} from "./chunk-Q67DOFOO.js";
|
|
249
262
|
import {
|
|
250
263
|
createTokenKey,
|
|
251
264
|
createTokenStatsKey,
|
|
252
265
|
createUserKey,
|
|
253
266
|
dialogMessageRange
|
|
254
|
-
} from "./chunk-
|
|
267
|
+
} from "./chunk-VMFTFOWF.js";
|
|
255
268
|
import {
|
|
256
269
|
asTrimmedLowercaseString
|
|
257
270
|
} from "./chunk-QSJ3HFEF.js";
|
|
258
271
|
import {
|
|
272
|
+
PUBLIC_DEEPSEEK_V4_FLASH_AGENT_ID,
|
|
273
|
+
PUBLIC_DEEPSEEK_V4_PRO_AGENT_ID,
|
|
274
|
+
PUBLIC_GLM_53_FLASH_AGENT_ID,
|
|
275
|
+
PUBLIC_GPT_IMAGE_2_CONTINUOUS_AGENT_ID,
|
|
276
|
+
PUBLIC_GPT_IMAGE_2_EDITOR_AGENT_ID,
|
|
277
|
+
PUBLIC_GPT_IMAGE_2_GENERATOR_AGENT_ID,
|
|
278
|
+
PUBLIC_NANO_BANANA_2_LITE_AGENT_ID,
|
|
279
|
+
builtinAgentCatalogEntryById,
|
|
280
|
+
isRetiredCatalogEntry,
|
|
259
281
|
isSystemBuiltinTrustedAgentKey
|
|
260
|
-
} from "./chunk-
|
|
282
|
+
} from "./chunk-BNGW5ASC.js";
|
|
261
283
|
import {
|
|
262
|
-
|
|
263
|
-
|
|
284
|
+
parsePublicAgentId,
|
|
285
|
+
parseSystemAgentId,
|
|
286
|
+
publicAgentKey
|
|
287
|
+
} from "./chunk-M2EJHDJP.js";
|
|
264
288
|
import {
|
|
265
289
|
isRecord
|
|
266
290
|
} from "./chunk-KUG52IAP.js";
|
|
291
|
+
import {
|
|
292
|
+
asTrimmedString
|
|
293
|
+
} from "./chunk-3EUW3WEO.js";
|
|
267
294
|
import {
|
|
268
295
|
NOLO_CLUSTER_SERVERS
|
|
269
296
|
} from "./chunk-LCBAMY2M.js";
|
|
@@ -574,6 +601,10 @@ var STRINGS = {
|
|
|
574
601
|
en: "\u2713 Copied the selection to the clipboard.",
|
|
575
602
|
zh: "\u2713 \u5DF2\u590D\u5236\u9009\u533A\u5230\u526A\u8D34\u677F\u3002"
|
|
576
603
|
},
|
|
604
|
+
copiedSelectionBusy: {
|
|
605
|
+
en: "\u2713 Copied the selection to the clipboard. Press Esc to stop generating.",
|
|
606
|
+
zh: "\u2713 \u5DF2\u590D\u5236\u9009\u533A\u5230\u526A\u8D34\u677F\u3002\u6309 Esc \u505C\u6B62\u751F\u6210\u3002"
|
|
607
|
+
},
|
|
577
608
|
copiedAllHistory: {
|
|
578
609
|
en: "\u2713 Copied the full conversation to the clipboard.",
|
|
579
610
|
zh: "\u2713 \u5DF2\u590D\u5236\u5B8C\u6574\u5BF9\u8BDD\u5230\u526A\u8D34\u677F\u3002"
|
|
@@ -1715,6 +1746,9 @@ function buildCliChromeConnectorOpenAiTools(args) {
|
|
|
1715
1746
|
function buildOpenAiTools(args) {
|
|
1716
1747
|
const toolset = buildLocalWorkspaceToolsetForEnv(args);
|
|
1717
1748
|
const workspaceToolNames = toolset.toolNames;
|
|
1749
|
+
const modelWorkspaceToolNames = (args.effectiveToolNames ?? workspaceToolNames).filter(
|
|
1750
|
+
(toolName) => toolName !== "taskWait" || !hasRunWakeChannel(args.env)
|
|
1751
|
+
);
|
|
1718
1752
|
const toolNameSet = new Set(args.toolNames ?? []);
|
|
1719
1753
|
const uiAskChoiceTools = toolNameSet.has("ask_user") ? prepareTools(["ask_user"]) : [];
|
|
1720
1754
|
const readPastedTextTools = toolNameSet.has("readPastedText") ? [
|
|
@@ -1756,7 +1790,7 @@ function buildOpenAiTools(args) {
|
|
|
1756
1790
|
...uiAskChoiceTools,
|
|
1757
1791
|
...readPastedTextTools,
|
|
1758
1792
|
...buildLocalWorkspaceOpenAiTools({
|
|
1759
|
-
toolNames:
|
|
1793
|
+
toolNames: modelWorkspaceToolNames,
|
|
1760
1794
|
exposeShellTools: toolset.exposeShellTools
|
|
1761
1795
|
}),
|
|
1762
1796
|
...buildCliChromeConnectorOpenAiTools({ toolNames: args.toolNames }),
|
|
@@ -9311,6 +9345,59 @@ var resolveCursorTransport = async (ctx) => {
|
|
|
9311
9345
|
return null;
|
|
9312
9346
|
};
|
|
9313
9347
|
|
|
9348
|
+
// packages/cli/client/providerResolution/devinTransport.ts
|
|
9349
|
+
var resolveDevinTransport = async (ctx) => {
|
|
9350
|
+
const {
|
|
9351
|
+
agentConfig,
|
|
9352
|
+
apiKeyRefResolver,
|
|
9353
|
+
deps,
|
|
9354
|
+
buildProviderOpenAiTools,
|
|
9355
|
+
additionalToolNames
|
|
9356
|
+
} = ctx;
|
|
9357
|
+
if (isDevinOAuthAgent(agentConfig)) {
|
|
9358
|
+
const accessToken = await apiKeyRefResolver("devin");
|
|
9359
|
+
if (!accessToken) {
|
|
9360
|
+
throw new Error(
|
|
9361
|
+
'OAuth credential for "devin" not found locally. Run `nolo auth devin`.'
|
|
9362
|
+
);
|
|
9363
|
+
}
|
|
9364
|
+
const model = agentConfig.model || "swe-2-max";
|
|
9365
|
+
const { requestedToolNames, tools } = resolveProviderOpenAiToolBundle(
|
|
9366
|
+
agentConfig,
|
|
9367
|
+
deps.env,
|
|
9368
|
+
buildProviderOpenAiTools,
|
|
9369
|
+
additionalToolNames
|
|
9370
|
+
);
|
|
9371
|
+
const devinProvider = createDevinProvider({
|
|
9372
|
+
token: accessToken,
|
|
9373
|
+
model,
|
|
9374
|
+
fetchImpl: ctx.fetchImpl,
|
|
9375
|
+
tools,
|
|
9376
|
+
// agentConfig.temperature reaches every transport except the Devin one;
|
|
9377
|
+
// forward it so the agent form's sampling knob stops being a no-op here.
|
|
9378
|
+
// Left undefined it keeps the upstream client's value.
|
|
9379
|
+
temperature: typeof agentConfig.temperature === "number" ? agentConfig.temperature : void 0
|
|
9380
|
+
});
|
|
9381
|
+
logLocalRuntimeDiagnostic("provider.selected", {
|
|
9382
|
+
agentKey: agentConfig.key,
|
|
9383
|
+
transport: "devin-connect",
|
|
9384
|
+
provider: "devin",
|
|
9385
|
+
model,
|
|
9386
|
+
hasApiKey: true,
|
|
9387
|
+
toolCount: tools.length,
|
|
9388
|
+
requestedToolNames,
|
|
9389
|
+
temperature: typeof agentConfig.temperature === "number" ? agentConfig.temperature : null
|
|
9390
|
+
});
|
|
9391
|
+
return {
|
|
9392
|
+
model,
|
|
9393
|
+
complete: async (messages, options) => {
|
|
9394
|
+
return devinProvider.complete(messages, options);
|
|
9395
|
+
}
|
|
9396
|
+
};
|
|
9397
|
+
}
|
|
9398
|
+
return null;
|
|
9399
|
+
};
|
|
9400
|
+
|
|
9314
9401
|
// packages/cli/client/providerResolution/directOpenAiCompatibleTransport.ts
|
|
9315
9402
|
var resolveDirectOpenAiCompatibleTransport = async (ctx) => {
|
|
9316
9403
|
const { agentConfig, deps, fetchImpl, loopbackRequest, additionalToolNames, buildProviderOpenAiTools, recordLocalAvailability, apiKeyRefResolver, credentialBroker, syncFetcher, serverUrl, authToken } = ctx;
|
|
@@ -9704,6 +9791,7 @@ var TRANSPORTS = [
|
|
|
9704
9791
|
resolveAnthropicOAuthTransport,
|
|
9705
9792
|
resolveCodexOAuthTransport,
|
|
9706
9793
|
resolveCursorTransport,
|
|
9794
|
+
resolveDevinTransport,
|
|
9707
9795
|
resolveGeminiNativeToolTransport,
|
|
9708
9796
|
resolvePlatformProxyTransport,
|
|
9709
9797
|
// 兜底必须留在最后。
|
|
@@ -10053,6 +10141,446 @@ async function syncLocalDialogEvidenceToRemote(args) {
|
|
|
10053
10141
|
return { attempted: true };
|
|
10054
10142
|
}
|
|
10055
10143
|
|
|
10144
|
+
// packages/core/publicAgentSeeds.ts
|
|
10145
|
+
var AGENT_SEED_DEFAULTS = {
|
|
10146
|
+
isPublic: true,
|
|
10147
|
+
allowFork: true,
|
|
10148
|
+
hasVision: false,
|
|
10149
|
+
tools: []
|
|
10150
|
+
};
|
|
10151
|
+
function deterministicId(prefix, seed) {
|
|
10152
|
+
let h = 2166136261;
|
|
10153
|
+
for (let i = 0; i < seed.length; i++) {
|
|
10154
|
+
h ^= seed.charCodeAt(i);
|
|
10155
|
+
h = h * 16777619 >>> 0;
|
|
10156
|
+
}
|
|
10157
|
+
const suffix = h.toString(36).toUpperCase().padStart(14, "0");
|
|
10158
|
+
return (prefix + suffix).slice(0, 26);
|
|
10159
|
+
}
|
|
10160
|
+
function defineAgentSeed(input) {
|
|
10161
|
+
const providerForLookup = isPlatformHostedImageModel(input.model) ? "nolo" : input.provider || "nolo";
|
|
10162
|
+
const tools = input.tools ? [...input.tools] : [...AGENT_SEED_DEFAULTS.tools];
|
|
10163
|
+
const isPublic = input.isPublic ?? AGENT_SEED_DEFAULTS.isPublic;
|
|
10164
|
+
const allowFork = input.allowFork ?? AGENT_SEED_DEFAULTS.allowFork;
|
|
10165
|
+
const tags = input.tags ? [...input.tags] : [];
|
|
10166
|
+
const isPlatformHosted = isNoloHostedProvider(input.provider);
|
|
10167
|
+
const isPlatformPriced = !isPlatformHostedImageModel(input.model) && (isPlatformHosted || input.apiSource === "platform" || input.isPublic === true && !input.apiSource);
|
|
10168
|
+
let inputPrice = isPlatformPriced ? void 0 : input.inputPrice;
|
|
10169
|
+
let outputPrice = isPlatformPriced ? void 0 : input.outputPrice;
|
|
10170
|
+
let hasVision = input.hasVision;
|
|
10171
|
+
const pricesProvided = input.inputPrice !== void 0 || input.outputPrice !== void 0;
|
|
10172
|
+
if (!isPlatformPriced && (inputPrice === void 0 || outputPrice === void 0)) {
|
|
10173
|
+
const pricing = getModelPricing(providerForLookup, input.model);
|
|
10174
|
+
if (!pricing) {
|
|
10175
|
+
throw new Error(`\u672A\u627E\u5230\u6A21\u578B\u4EF7\u683C\u5143\u6570\u636E: ${providerForLookup}/${input.model}`);
|
|
10176
|
+
}
|
|
10177
|
+
if (inputPrice === void 0) inputPrice = pricing.inputPrice;
|
|
10178
|
+
if (outputPrice === void 0) outputPrice = pricing.outputPrice;
|
|
10179
|
+
}
|
|
10180
|
+
if (hasVision === void 0) {
|
|
10181
|
+
if (pricesProvided) {
|
|
10182
|
+
hasVision = AGENT_SEED_DEFAULTS.hasVision;
|
|
10183
|
+
} else {
|
|
10184
|
+
const modelConfig = getModelConfig(providerForLookup, input.model);
|
|
10185
|
+
hasVision = !!modelConfig.hasVision;
|
|
10186
|
+
}
|
|
10187
|
+
}
|
|
10188
|
+
const userVisibleTexts = [
|
|
10189
|
+
["name", input.name],
|
|
10190
|
+
["introduction", input.introduction],
|
|
10191
|
+
[
|
|
10192
|
+
"greeting",
|
|
10193
|
+
typeof input.greeting === "string" ? input.greeting : input.greeting?.text
|
|
10194
|
+
],
|
|
10195
|
+
["prompt", input.prompt],
|
|
10196
|
+
...(input.tags ?? []).map((tag) => ["tags", tag])
|
|
10197
|
+
];
|
|
10198
|
+
for (const [fieldName, text] of userVisibleTexts) {
|
|
10199
|
+
if (!text) continue;
|
|
10200
|
+
const hit = text.match(/平台托管|runinfra|openrouter|ollama/i);
|
|
10201
|
+
if (hit) {
|
|
10202
|
+
throw new Error(
|
|
10203
|
+
`\u516C\u5F00 agent seed\u300C${input.name}\u300D\u7684\u7528\u6237\u53EF\u89C1\u5B57\u6BB5 ${fieldName} \u542B\u4E0A\u6E38\u8DEF\u7531/\u6258\u7BA1\u6E20\u9053\u8BCD\u300C${hit[0]}\u300D\uFF0C\u7981\u6B62\u5199\u5165\uFF08\u6362\u4F9B\u5E94\u5546\u4E0D\u5E94\u7275\u52A8\u7528\u6237\u6587\u6848\uFF1B\u6A21\u578B\u5382\u5546\u540D\u4E0D\u5728\u6B64\u9650\uFF09`
|
|
10204
|
+
);
|
|
10205
|
+
}
|
|
10206
|
+
}
|
|
10207
|
+
const { inputPrice: _strippedInputPrice, outputPrice: _strippedOutputPrice, ...inputRest } = input;
|
|
10208
|
+
const record = {
|
|
10209
|
+
...inputRest,
|
|
10210
|
+
tools,
|
|
10211
|
+
isPublic,
|
|
10212
|
+
allowFork,
|
|
10213
|
+
tags,
|
|
10214
|
+
hasVision
|
|
10215
|
+
};
|
|
10216
|
+
if (!isPlatformPriced) {
|
|
10217
|
+
record.inputPrice = inputPrice;
|
|
10218
|
+
record.outputPrice = outputPrice;
|
|
10219
|
+
}
|
|
10220
|
+
return record;
|
|
10221
|
+
}
|
|
10222
|
+
var GPT_6_LUNA_DEF = defineAgentSeed({
|
|
10223
|
+
// salt 冻结为历史值 "shared-space-openai-gpt-5-6-luna":deterministicId 由
|
|
10224
|
+
// prefix+salt 哈希得出,改 salt 会换 ID——2026-09-23 Luna 原地换代
|
|
10225
|
+
// (GPT-5.6 Luna → GPT-6 Luna)必须保留稳定 ID,用户收藏/别名/Space
|
|
10226
|
+
// 内容键才不失效。
|
|
10227
|
+
id: deterministicId("01GPT56LUNPB", "shared-space-openai-gpt-5-6-luna"),
|
|
10228
|
+
presetKey: "gpt-6-luna",
|
|
10229
|
+
name: "GPT-6 Luna",
|
|
10230
|
+
// provider 用平台托管命名空间 "nolo"(平台 agent 统一收敛方向):平台价只注册在
|
|
10231
|
+
// nolo 下,agent-run 的托管路由门也只认 nolo。写上游名 "openai" 会让计费落零价
|
|
10232
|
+
// 虚拟模型并绕过 hosted routing(2026-09-24 review CRITICAL)。
|
|
10233
|
+
provider: "nolo",
|
|
10234
|
+
model: "gpt-6-luna",
|
|
10235
|
+
isPublic: true,
|
|
10236
|
+
platformAudit: true,
|
|
10237
|
+
introduction: "OpenAI GPT-6 Luna \u516C\u5F00\u52A9\u624B\uFF08\u8F7B\u91CF\u6863\uFF09\uFF0C\u9002\u5408\u9AD8\u541E\u5410\u3001\u4F4E\u6210\u672C\u3001\u901F\u5EA6\u654F\u611F\u4EFB\u52A1\u3002",
|
|
10238
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F GPT-6 Luna\u3002\u8F7B\u91CF\u6863\u4F4D\uFF0C\u9002\u5408\u5FEB\u901F\u3001\u4F4E\u6210\u672C\u4EFB\u52A1\u3002",
|
|
10239
|
+
prompt: "\u4F18\u5148\u5FEB\u901F\u5B8C\u6210\u4EFB\u52A1\uFF1B\u4FDD\u6301\u56DE\u7B54\u76F4\u63A5\u3001\u7ED3\u8BBA\u660E\u786E\u3002",
|
|
10240
|
+
tools: [],
|
|
10241
|
+
tags: ["openai"]
|
|
10242
|
+
});
|
|
10243
|
+
var DEEPSEEK_V4_FLASH_DEF = defineAgentSeed({
|
|
10244
|
+
id: PUBLIC_DEEPSEEK_V4_FLASH_AGENT_ID,
|
|
10245
|
+
presetKey: "deepseek-v4-flash",
|
|
10246
|
+
name: "DeepSeek Flash",
|
|
10247
|
+
provider: "nolo",
|
|
10248
|
+
model: "deepseek-flash",
|
|
10249
|
+
isPublic: true,
|
|
10250
|
+
introduction: "DeepSeek Flash \u516C\u5F00\u52A9\u624B\uFF0C\u9002\u5408\u9AD8\u6027\u4EF7\u6BD4\u901A\u7528\u95EE\u7B54\u3001\u4EE3\u7801\u4E0E\u957F\u4E0A\u4E0B\u6587\u4EFB\u52A1\u3002",
|
|
10251
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F DeepSeek Flash\u3002\u9002\u5408\u5FEB\u901F\u5904\u7406\u901A\u7528\u95EE\u9898\u3001\u4EE3\u7801\u548C\u957F\u4E0A\u4E0B\u6587\u4EFB\u52A1\u3002",
|
|
10252
|
+
prompt: "\u4F18\u5148\u5FEB\u901F\u3001\u76F4\u63A5\u3001\u7A33\u5B9A\u5730\u5B8C\u6210\u4EFB\u52A1\uFF1B\u9700\u8981\u63A8\u7406\u65F6\u4FDD\u6301\u6B65\u9AA4\u6E05\u6670\u3002",
|
|
10253
|
+
tools: [],
|
|
10254
|
+
tags: ["nolo", "deepseek"]
|
|
10255
|
+
});
|
|
10256
|
+
var DEEPSEEK_V4_PRO_DEF = defineAgentSeed({
|
|
10257
|
+
id: PUBLIC_DEEPSEEK_V4_PRO_AGENT_ID,
|
|
10258
|
+
presetKey: "deepseek-v4-pro",
|
|
10259
|
+
name: "DeepSeek V4 Pro",
|
|
10260
|
+
provider: "nolo",
|
|
10261
|
+
model: "deepseek-v4-pro",
|
|
10262
|
+
hasVision: false,
|
|
10263
|
+
isPublic: true,
|
|
10264
|
+
introduction: "DeepSeek V4 Pro \u516C\u5F00\u52A9\u624B\uFF0C\u9002\u5408\u590D\u6742\u63A8\u7406\u3001\u4EE3\u7801\u3001agentic \u5DE5\u4F5C\u6D41\u4E0E\u957F\u4E0A\u4E0B\u6587\u4EFB\u52A1\u3002",
|
|
10265
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F DeepSeek V4 Pro\u3002\u9002\u5408\u590D\u6742\u63A8\u7406\u3001\u4EE3\u7801\u5206\u6790\u548C\u957F\u4E0A\u4E0B\u6587\u4EFB\u52A1\u3002",
|
|
10266
|
+
prompt: "\u9762\u5BF9\u590D\u6742\u4EFB\u52A1\u4F18\u5148\u62C6\u6E05\u76EE\u6807\u3001\u8BC1\u636E\u548C\u6267\u884C\u8DEF\u5F84\uFF0C\u518D\u7ED9\u51FA\u53EF\u9760\u7ED3\u8BBA\u3002",
|
|
10267
|
+
tools: [],
|
|
10268
|
+
tags: ["nolo", "deepseek"]
|
|
10269
|
+
});
|
|
10270
|
+
var GLM_5_3_DEF = defineAgentSeed({
|
|
10271
|
+
id: "01GLM52DIPB00000000I3E2MY",
|
|
10272
|
+
presetKey: "glm-5.3",
|
|
10273
|
+
name: "GLM 5.3",
|
|
10274
|
+
provider: "nolo",
|
|
10275
|
+
model: "glm-5.3",
|
|
10276
|
+
isPublic: true,
|
|
10277
|
+
hasVision: true,
|
|
10278
|
+
introduction: "GLM 5.3 \u516C\u5F00\u52A9\u624B\uFF0C\u9002\u5408\u590D\u6742\u63A8\u7406\u3001\u957F\u4E0A\u4E0B\u6587\u3001\u4E2D\u6587\u7406\u89E3\u4E0E\u4EE3\u7801\u5206\u6790\u3002",
|
|
10279
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F GLM 5.3\u3002\u9002\u5408\u5904\u7406\u590D\u6742\u5206\u6790\u3001\u9AD8\u8D28\u91CF\u4E2D\u6587\u95EE\u7B54\u4E0E\u4EE3\u7801\u63A8\u7406\u4EFB\u52A1\u3002",
|
|
10280
|
+
prompt: "\u4F18\u5148\u7ED9\u51FA\u76F4\u63A5\u3001\u51C6\u786E\u3001\u53EF\u6267\u884C\u7684\u56DE\u7B54\uFF1B\u590D\u6742\u95EE\u9898\u5148\u7406\u6E05\u76EE\u6807\u548C\u7EA6\u675F\u518D\u63A8\u7406\uFF0C\u4FDD\u6301\u7ED3\u6784\u6E05\u6670\u3001\u4F9D\u636E\u660E\u786E\u3002",
|
|
10281
|
+
tools: [],
|
|
10282
|
+
tags: ["nolo", "glm"]
|
|
10283
|
+
});
|
|
10284
|
+
var GLM_5_3_FLASH_DEF = defineAgentSeed({
|
|
10285
|
+
id: PUBLIC_GLM_53_FLASH_AGENT_ID,
|
|
10286
|
+
presetKey: "glm-5-3-flash",
|
|
10287
|
+
name: "GLM 5.3 Flash",
|
|
10288
|
+
provider: "nolo",
|
|
10289
|
+
model: "glm-5-3-flash",
|
|
10290
|
+
isPublic: true,
|
|
10291
|
+
hasVision: true,
|
|
10292
|
+
introduction: "GLM 5.3 Flash \u516C\u5F00\u52A9\u624B\uFF0C\u5EC9\u4EF7\u5FEB\u6863\uFF0C\u9002\u5408\u9AD8\u9891\u8F7B\u91CF\u95EE\u7B54\u4E0E\u6279\u91CF\u4EFB\u52A1\u3002\u6CE8\u610F\uFF1A\u8BE5\u6A21\u578B\u9ED8\u8BA4\u6DF1\u5EA6\u601D\u8003\uFF0C\u601D\u8003\u8FC7\u7A0B token \u8BA1\u5165\u8F93\u51FA\u8BA1\u8D39\uFF08\u8F93\u51FA 3.2 \u79EF\u5206/\u767E\u4E07 token\uFF09\uFF0C\u5B9E\u9645\u6D88\u8017\u9AD8\u4E8E\u540C\u957F\u5EA6\u53EF\u89C1\u56DE\u590D\uFF1B\u628A agent \u7684 reasoning_effort \u8BBE\u4E3A low \u53EF\u5173\u95ED\u601D\u8003\u2014\u2014\u5355\u8F6E\u95EE\u7B54\u5B9E\u6D4B\u8F93\u51FA token \u964D\u5230\u7EA6 1/5\uFF0C\u591A\u8F6E\u5DE5\u5177\u5FAA\u73AF\u91CC\u7EA6\u964D 4 \u6210\uFF08\u5DE5\u5177\u8F6E\u672C\u8EAB\u601D\u8003\u5C31\u5C11\uFF09\uFF0C\u53EF\u89C1\u56DE\u590D\u957F\u5EA6\u4E0E\u5DE5\u5177\u8C03\u7528\u6B63\u786E\u6027\u5747\u4E0D\u53D8\uFF1Bmedium \u6863 token \u7565\u964D\u4F46\u5EF6\u8FDF\u4E0D\u6539\u5584\u3002",
|
|
10293
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F GLM 5.3 Flash\u3002\u8F7B\u91CF\u5FEB\u901F\u3001\u4EF7\u683C\u4F4E\uFF0C\u9002\u5408\u65E5\u5E38\u95EE\u7B54\u4E0E\u6279\u91CF\u8F7B\u91CF\u4EFB\u52A1\u3002",
|
|
10294
|
+
prompt: "\u76F4\u63A5\u3001\u7B80\u6D01\u5730\u5B8C\u6210\u4EFB\u52A1\uFF1B\u56DE\u7B54\u4FDD\u6301\u7B80\u77ED\uFF0C\u5148\u7ED9\u7ED3\u8BBA\u3002",
|
|
10295
|
+
// 关掉思考:该模型默认档的 reasoning token 计入输出计费,而实测 low 档
|
|
10296
|
+
// reasoning 输出为 0(10/10 样本),单轮问答输出 token 降到约 1/5、多轮工具
|
|
10297
|
+
// 循环降约 4 成,可见回复长度、工具调用正确性与循环完成度均不变。
|
|
10298
|
+
// medium 档只省约 29% token 且延迟不改善,故直接用 low。
|
|
10299
|
+
reasoning_effort: "low",
|
|
10300
|
+
tools: [],
|
|
10301
|
+
tags: ["nolo", "glm", "flash"]
|
|
10302
|
+
});
|
|
10303
|
+
var CLAUDE_FABLE_5_1_DEF = defineAgentSeed({
|
|
10304
|
+
id: deterministicId("01CLDFBL51PB", "shared-space-anthropic-claude-fable-5-1"),
|
|
10305
|
+
presetKey: "claude-fable-5-1",
|
|
10306
|
+
name: "Claude Fable 5.1",
|
|
10307
|
+
provider: "nolo",
|
|
10308
|
+
model: "anthropic/claude-fable-5-1",
|
|
10309
|
+
isPublic: true,
|
|
10310
|
+
hasVision: true,
|
|
10311
|
+
introduction: "Claude Fable 5.1 \u516C\u5F00\u52A9\u624B\uFF0C\u9002\u5408\u590D\u6742\u95EE\u7B54\u3001\u957F\u6587\u5206\u6790\u3001\u4EE3\u7801\u548C\u56FE\u7247\u7406\u89E3\u3002",
|
|
10312
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F Claude Fable 5.1\u3002\u9002\u5408\u590D\u6742\u95EE\u9898\u3001\u957F\u6587\u5206\u6790\u3001\u4EE3\u7801\u548C\u56FE\u7247\u7406\u89E3\u3002",
|
|
10313
|
+
prompt: "\u9762\u5BF9\u590D\u6742\u4EFB\u52A1\u5148\u5398\u6E05\u76EE\u6807\u548C\u7EA6\u675F\uFF0C\u518D\u7ED9\u51FA\u53EF\u9760\u3001\u53EF\u6267\u884C\u3001\u53EF\u590D\u6838\u7684\u7ED3\u679C\u3002",
|
|
10314
|
+
tools: [],
|
|
10315
|
+
tags: ["anthropic", "claude", "fable"]
|
|
10316
|
+
});
|
|
10317
|
+
var CLAUDE_OPUS_5_5_DEF = defineAgentSeed({
|
|
10318
|
+
id: deterministicId("01CLDOPU55PB", "shared-space-anthropic-claude-opus-5-5"),
|
|
10319
|
+
presetKey: "claude-opus-5-5",
|
|
10320
|
+
name: "Claude Opus 5.5",
|
|
10321
|
+
provider: "nolo",
|
|
10322
|
+
model: "anthropic/claude-opus-5-5",
|
|
10323
|
+
isPublic: true,
|
|
10324
|
+
hasVision: true,
|
|
10325
|
+
introduction: "Claude Opus 5.5 \u516C\u5F00\u52A9\u624B\uFF0C\u9002\u5408\u9AD8\u96BE\u63A8\u7406\u3001\u957F\u94FE\u8DEF\u5206\u6790\u548C\u56FE\u7247\u7406\u89E3\u3002",
|
|
10326
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F Claude Opus 5.5\u3002\u9002\u5408\u9AD8\u96BE\u63A8\u7406\u3001\u590D\u6742\u5206\u6790\u548C\u56FE\u7247\u7406\u89E3\u3002",
|
|
10327
|
+
prompt: "\u5148\u786E\u8BA4\u95EE\u9898\u76EE\u6807\u3001\u8BC1\u636E\u548C\u98CE\u9669\uFF0C\u518D\u7ED9\u51FA\u7ED3\u6784\u6E05\u695A\u3001\u7ED3\u8BBA\u660E\u786E\u7684\u56DE\u7B54\u3002",
|
|
10328
|
+
tools: [],
|
|
10329
|
+
tags: ["anthropic", "claude", "opus"]
|
|
10330
|
+
});
|
|
10331
|
+
var GROK_4_6_DEF = defineAgentSeed({
|
|
10332
|
+
id: deterministicId("01GROK46PLAZ", "shared-space-xai-grok-4-6"),
|
|
10333
|
+
presetKey: "grok-4.6",
|
|
10334
|
+
name: "Grok 4.6",
|
|
10335
|
+
provider: "xai",
|
|
10336
|
+
model: "grok-4.6",
|
|
10337
|
+
isPublic: true,
|
|
10338
|
+
hasVision: true,
|
|
10339
|
+
introduction: "xAI Grok 4.6 \u516C\u5F00\u52A9\u624B\uFF0C\u9002\u5408\u5B9E\u65F6\u4FE1\u606F\u5206\u6790\u3001\u590D\u6742\u63A8\u7406\u3001\u4EE3\u7801\u548C\u591A\u6A21\u6001\u4EFB\u52A1\u3002",
|
|
10340
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F Grok 4.6\u3002\u53EF\u4EE5\u5E2E\u4F60\u5206\u6790\u95EE\u9898\u3001\u7F16\u5199\u4EE3\u7801\u3001\u7406\u89E3\u56FE\u7247\u5E76\u5904\u7406\u590D\u6742\u4EFB\u52A1\u3002",
|
|
10341
|
+
prompt: "\u4F18\u5148\u7ED9\u51FA\u76F4\u63A5\u3001\u51C6\u786E\u3001\u53EF\u6267\u884C\u7684\u56DE\u7B54\uFF1B\u9762\u5BF9\u590D\u6742\u95EE\u9898\u5148\u68B3\u7406\u76EE\u6807\u548C\u7EA6\u675F\uFF0C\u518D\u8FDB\u884C\u53EF\u9760\u63A8\u7406\u3002\u5BF9\u4E0D\u786E\u5B9A\u7684\u5185\u5BB9\u660E\u786E\u8BF4\u660E\u4F9D\u636E\u4E0E\u65F6\u6548\u6027\uFF0C\u4E0D\u7F16\u9020\u3002",
|
|
10342
|
+
tools: [],
|
|
10343
|
+
tags: ["xai", "grok"]
|
|
10344
|
+
});
|
|
10345
|
+
var GEMINI_3_8_FLASH_DEF = defineAgentSeed({
|
|
10346
|
+
// 种子串冻结以维持确定性 ID 稳定,勿随版本改名。
|
|
10347
|
+
id: deterministicId("01GEM37FLPB", "shared-space-google-gemini-3-7-flash"),
|
|
10348
|
+
presetKey: "gemini-3.8-flash",
|
|
10349
|
+
name: "Gemini 3.8 Flash",
|
|
10350
|
+
provider: "nolo",
|
|
10351
|
+
model: "gemini-3.8-flash",
|
|
10352
|
+
isPublic: true,
|
|
10353
|
+
introduction: "Gemini 3.8 Flash \u516C\u5F00\u52A9\u624B\uFF0C\u9002\u5408\u5FEB\u901F\u524D\u6CBF\u95EE\u7B54\u3001\u4EE3\u7801\u3001\u591A\u6A21\u6001\u548C\u957F\u4E0A\u4E0B\u6587\u4EFB\u52A1\u3002",
|
|
10354
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F Gemini 3.8 Flash\u3002\u9002\u5408\u5FEB\u901F\u5904\u7406\u957F\u4E0A\u4E0B\u6587\u3001\u591A\u6A21\u6001\u548C\u4EE3\u7801\u4EFB\u52A1\u3002",
|
|
10355
|
+
prompt: "\u4F18\u5148\u76F4\u63A5\u5B8C\u6210\u4EFB\u52A1\uFF1B\u9700\u8981\u63A8\u7406\u6216\u5199\u4EE3\u7801\u65F6\u4FDD\u6301\u6B65\u9AA4\u6E05\u6670\u3001\u7ED3\u8BBA\u53EF\u9760\u3002",
|
|
10356
|
+
tools: [],
|
|
10357
|
+
tags: ["google", "gemini"]
|
|
10358
|
+
});
|
|
10359
|
+
var GPT_IMAGE_2_GENERATOR_DEF = defineAgentSeed({
|
|
10360
|
+
id: PUBLIC_GPT_IMAGE_2_GENERATOR_AGENT_ID,
|
|
10361
|
+
presetKey: "gpt-image-2-generator",
|
|
10362
|
+
name: "GPT Image 2 \u56FE\u7247\u751F\u6210\u5668",
|
|
10363
|
+
provider: "nolo",
|
|
10364
|
+
model: "gpt-6-luna",
|
|
10365
|
+
imageModel: "gpt-image-2",
|
|
10366
|
+
isPublic: true,
|
|
10367
|
+
hasImageOutput: true,
|
|
10368
|
+
imageWorkflow: "generate",
|
|
10369
|
+
imageConfig: { enabled: true },
|
|
10370
|
+
introduction: "\u4E13\u95E8\u8D1F\u8D23 GPT Image 2 \u65B0\u56FE\u751F\u6210\uFF1A\u6587\u672C\u751F\u6210\u65B0\u56FE\u7247\uFF0C\u4E5F\u53EF\u628A\u4E0A\u4F20\u56FE\u7247\u5F53\u4F5C\u53C2\u8003\u56FE\u6765\u751F\u6210\u65B0\u7684\u753B\u9762\u3002",
|
|
10371
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F GPT Image 2 \u56FE\u7247\u751F\u6210\u5668\u3002\u76F4\u63A5\u544A\u8BC9\u6211\u4F60\u60F3\u753B\u4EC0\u4E48\uFF1B\u5982\u679C\u4F60\u4E0A\u4F20\u53C2\u8003\u56FE\uFF0C\u6211\u4F1A\u628A\u5B83\u4EEC\u5F53\u4F5C\u7075\u611F\u53C2\u8003\u6765\u751F\u6210\u4E00\u5F20\u65B0\u7684\u56FE\u7247\u3002",
|
|
10372
|
+
prompt: [
|
|
10373
|
+
"\u5B9A\u4F4D\uFF1A",
|
|
10374
|
+
"- \u4F60\u7684\u4E3B\u4EFB\u52A1\u662F\u6587\u672C\u751F\u6210\u65B0\u56FE\u7247\u3002",
|
|
10375
|
+
"- \u5982\u679C\u7528\u6237\u4E0A\u4F20\u4E86\u53C2\u8003\u56FE\uFF0C\u5B83\u4EEC\u53EA\u7528\u4E8E\u53C2\u8003\u56FE\u5F71\u54CD\u65B0\u56FE\u6784\u56FE\u3001\u98CE\u683C\u3001\u89D2\u8272\u5173\u7CFB\u548C\u89C6\u89C9\u65B9\u5411\u3002",
|
|
10376
|
+
"- \u4E0D\u8981\u628A\u8FD9\u7C7B\u8BF7\u6C42\u5904\u7406\u6210\u591A\u8F6E\u8FDE\u7EED\u7F16\u8F91\u4F1A\u8BDD\uFF1B\u9ED8\u8BA4\u6309\u5355\u6B21\u8BF7\u6C42\u5B8C\u6210\u4E00\u7248\u65B0\u56FE\u3002",
|
|
10377
|
+
"",
|
|
10378
|
+
"\u5DE5\u4F5C\u65B9\u5F0F\uFF1A",
|
|
10379
|
+
"- \u7528\u6237\u7ED9\u51FA\u6E05\u6670\u9700\u6C42\u540E\uFF0C\u76F4\u63A5\u751F\u6210\uFF0C\u4E0D\u5148\u5199\u957F\u7BC7\u89E3\u91CA\u3002",
|
|
10380
|
+
"- prompt \u8981\u660E\u786E\u4E3B\u4F53\u3001\u573A\u666F\u3001\u955C\u5934\u3001\u5149\u7EBF\u3001\u6750\u8D28\u3001\u98CE\u683C\u4E0E\u7981\u6B62\u9879\u3002",
|
|
10381
|
+
"- \u5982\u679C\u7528\u6237\u8981\u6C42\u591A\u7248\u672C\uFF0C\u53EF\u4EE5\u4E00\u6B21\u7ED9\u5C11\u91CF\u5019\u9009\uFF1B\u9ED8\u8BA4\u5148\u7ED9 1 \u5F20\u3002",
|
|
10382
|
+
"- \u5982\u679C\u7528\u6237\u5176\u5B9E\u662F\u5728\u8981\u6C42\u7CBE\u786E\u6539\u56FE\u3001\u5C40\u90E8\u66FF\u6362\u3001\u591A\u56FE\u62FC\u5408\u6216 mask \u4FEE\u6539\uFF0C\u63D0\u9192\u66F4\u9002\u5408\u6539\u7528\u201CGPT Image 2 \u56FE\u7247\u7F16\u8F91\u5668\u201D\u3002",
|
|
10383
|
+
"",
|
|
10384
|
+
"\u56DE\u590D\u65B9\u5F0F\uFF1A",
|
|
10385
|
+
"- \u9ED8\u8BA4\u4E2D\u6587\u8F93\u51FA\uFF0C\u7B80\u77ED\u8BF4\u660E\u7ED3\u679C\uFF0C\u5E76\u7ED9 2-4 \u4E2A\u4E0B\u4E00\u6B65\u53EF\u7EE7\u7EED\u5FAE\u8C03\u7684\u65B9\u5411\u3002"
|
|
10386
|
+
].join("\n"),
|
|
10387
|
+
tools: ["openAIGptImageGenerate"],
|
|
10388
|
+
tags: ["image", "openai", "gpt-image-2", "generate"]
|
|
10389
|
+
});
|
|
10390
|
+
var GPT_IMAGE_2_EDITOR_DEF = defineAgentSeed({
|
|
10391
|
+
id: PUBLIC_GPT_IMAGE_2_EDITOR_AGENT_ID,
|
|
10392
|
+
presetKey: "gpt-image-2-editor",
|
|
10393
|
+
name: "GPT Image 2 \u56FE\u7247\u7F16\u8F91\u5668",
|
|
10394
|
+
provider: "nolo",
|
|
10395
|
+
model: "gpt-6-luna",
|
|
10396
|
+
imageModel: "gpt-image-2",
|
|
10397
|
+
isPublic: true,
|
|
10398
|
+
hasImageOutput: true,
|
|
10399
|
+
imageWorkflow: "edit",
|
|
10400
|
+
imageConfig: { enabled: true },
|
|
10401
|
+
introduction: "\u4E13\u95E8\u8D1F\u8D23 GPT Image 2 \u5355\u6B21\u8BF7\u6C42\u6539\u56FE\uFF1A\u652F\u6301\u5355\u56FE\u7F16\u8F91\u3001\u591A\u56FE\u53C2\u8003\u5408\u6210\uFF0C\u4EE5\u53CA\u5E26 mask \u7684\u7CBE\u786E\u4FEE\u6539\u3002",
|
|
10402
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F GPT Image 2 \u56FE\u7247\u7F16\u8F91\u5668\u3002\u628A\u8981\u4FEE\u6539\u7684\u56FE\u7247\u3001\u53C2\u8003\u56FE\u6216 mask \u53D1\u7ED9\u6211\uFF0C\u6211\u4F1A\u6309\u5355\u6B21\u8BF7\u6C42\u6539\u56FE\u7684\u65B9\u5F0F\u7ED9\u4F60\u4E00\u7248\u7ED3\u679C\u3002",
|
|
10403
|
+
prompt: [
|
|
10404
|
+
"\u5B9A\u4F4D\uFF1A",
|
|
10405
|
+
"- \u4F60\u7684\u4E3B\u4EFB\u52A1\u662F\u5355\u6B21\u8BF7\u6C42\u6539\u56FE\uFF0C\u4E0D\u662F\u957F\u5BF9\u8BDD\u966A\u4F34\u5F0F\u521B\u4F5C\u3002",
|
|
10406
|
+
"- \u4F60\u652F\u6301\u5355\u56FE\u7F16\u8F91\u3001\u591A\u56FE\u53C2\u8003\u3001\u62FC\u5408\u6784\u56FE\uFF0C\u4EE5\u53CA\u53EF\u9009\u7684 mask \u5C40\u90E8\u4FEE\u6539\u3002",
|
|
10407
|
+
"- \u5982\u679C\u7528\u6237\u8981\u7684\u662F\u6301\u7EED\u51E0\u8F6E\u201C\u7EE7\u7EED\u6539\u3001\u518D\u6765\u4E00\u7248\u3001\u5EF6\u7EED\u4E0A\u4E00\u8F6E\u201D\u7684\u521B\u4F5C\u8FC7\u7A0B\uFF0C\u63D0\u9192\u66F4\u9002\u5408\u201CGPT Image 2 \u8FDE\u7EED\u521B\u4F5C\u52A9\u624B\u201D\u3002",
|
|
10408
|
+
"",
|
|
10409
|
+
"\u5DE5\u4F5C\u65B9\u5F0F\uFF1A",
|
|
10410
|
+
"- \u6536\u5230\u56FE\u7247\u540E\uFF0C\u4F18\u5148\u6309\u5355\u6B21\u8BF7\u6C42\u6539\u56FE\u5B8C\u6210\u5F53\u524D\u76EE\u6807\u3002",
|
|
10411
|
+
"- \u591A\u56FE\u53C2\u8003\u65F6\uFF0C\u8981\u660E\u786E\u6BCF\u5F20\u56FE\u5206\u522B\u627F\u62C5\u4E3B\u4F53\u3001\u98CE\u683C\u3001\u80CC\u666F\u6216\u6784\u56FE\u53C2\u8003\u3002",
|
|
10412
|
+
"- \u5982\u679C\u7528\u6237\u63D0\u4F9B\u4E86 mask\uFF0C\u5C31\u628A mask \u89C6\u4E3A\u5FC5\u987B\u9075\u5B88\u7684\u7F16\u8F91\u8303\u56F4\u3002",
|
|
10413
|
+
"- \u5982\u679C\u7F3A\u5C11\u5173\u952E\u539F\u56FE\u3001\u53C2\u8003\u56FE\u6216 mask\uFF0C\u5148\u7528\u4E00\u53E5\u8BDD\u6307\u51FA\u7F3A\u53E3\uFF0C\u518D\u7B49\u7528\u6237\u8865\u9F50\u3002",
|
|
10414
|
+
"- \u8C03\u7528 openAIGptImageEdit \u65F6\uFF0C\u4F18\u5148\u590D\u7528\u7528\u6237\u5DF2\u4E0A\u4F20\u7684\u539F\u59CB http(s) \u56FE\u7247 URL\uFF1B\u4E0D\u8981\u81EA\u5DF1\u624B\u5199 data URL \u6216\u91CD\u7F16\u7801\u7F29\u7565\u56FE\u3002",
|
|
10415
|
+
"- \u8C03\u7528 openAIGptImageEdit \u65F6\uFF0C\u4E0D\u8981\u4F20 transparent background\uFF1Bbackground \u4E00\u5F8B\u7528 opaque\uFF0C\u9664\u975E\u5E95\u5C42\u80FD\u529B\u4EE5\u540E\u660E\u786E\u652F\u6301\u518D\u8C03\u6574\u3002",
|
|
10416
|
+
"- \u5982\u679C outputFormat \u662F png\uFF08\u6216\u6CA1\u6709\u663E\u5F0F\u6539\u6210 jpeg/webp\uFF09\uFF0C\u4E0D\u8981\u4F20 outputCompression\u3002",
|
|
10417
|
+
"",
|
|
10418
|
+
"\u56DE\u590D\u65B9\u5F0F\uFF1A",
|
|
10419
|
+
"- \u9ED8\u8BA4\u4E2D\u6587\u8F93\u51FA\uFF0C\u7B80\u77ED\u8BF4\u660E\u8FD9\u6B21\u6539\u52A8\uFF0C\u5E76\u7ED9 2-4 \u4E2A\u53EF\u7EE7\u7EED\u7EC6\u5316\u7684\u65B9\u5411\u3002"
|
|
10420
|
+
].join("\n"),
|
|
10421
|
+
tools: ["openAIGptImageEdit"],
|
|
10422
|
+
tags: ["image", "openai", "gpt-image-2", "edit"]
|
|
10423
|
+
});
|
|
10424
|
+
var GPT_IMAGE_2_CONTINUOUS_DEF = defineAgentSeed({
|
|
10425
|
+
id: PUBLIC_GPT_IMAGE_2_CONTINUOUS_AGENT_ID,
|
|
10426
|
+
presetKey: "gpt-image-2-continuous",
|
|
10427
|
+
name: "GPT Image 2 \u8FDE\u7EED\u521B\u4F5C\u52A9\u624B",
|
|
10428
|
+
provider: "nolo",
|
|
10429
|
+
model: "gpt-6-luna",
|
|
10430
|
+
imageModel: "gpt-image-2",
|
|
10431
|
+
isPublic: true,
|
|
10432
|
+
hasImageOutput: true,
|
|
10433
|
+
imageWorkflow: "continuous",
|
|
10434
|
+
imageConfig: { enabled: true },
|
|
10435
|
+
introduction: "\u4E13\u95E8\u8D1F\u8D23 GPT Image 2 \u591A\u8F6E\u8FDE\u7EED\u521B\u4F5C\uFF1A\u9002\u5408\u5148\u51FA\u4E00\u7248\uFF0C\u518D\u56F4\u7ED5\u4E0A\u4E00\u8F6E\u56FE\u7247\u7EE7\u7EED\u4FEE\u6539\u3001\u7EE7\u7EED\u6269\u5C55\u548C\u7EE7\u7EED\u8FED\u4EE3\u3002",
|
|
10436
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F GPT Image 2 \u8FDE\u7EED\u521B\u4F5C\u52A9\u624B\u3002\u4F60\u53EF\u4EE5\u5148\u8BA9\u6211\u51FA\u4E00\u7248\u56FE\uFF0C\u518D\u56F4\u7ED5\u4E0A\u4E00\u8F6E\u7EE7\u7EED\u4FEE\u6539\u3001\u7EE7\u7EED\u6269\u5C55\u6216\u7EE7\u7EED\u5B9A\u7A3F\u3002",
|
|
10437
|
+
prompt: [
|
|
10438
|
+
"\u5B9A\u4F4D\uFF1A",
|
|
10439
|
+
"- \u4F60\u7684\u4E3B\u4EFB\u52A1\u662F\u591A\u8F6E\u8FDE\u7EED\u521B\u4F5C\u3002",
|
|
10440
|
+
"- \u7528\u6237\u7ECF\u5E38\u4F1A\u57FA\u4E8E\u4E0A\u4E00\u8F6E\u7ED3\u679C\u7EE7\u7EED\u4FEE\u6539\u3001\u7EE7\u7EED\u7EC6\u5316\u3001\u7EE7\u7EED\u6362\u98CE\u683C\u3001\u7EE7\u7EED\u8865\u5143\u7D20\u3002",
|
|
10441
|
+
"- \u4F60\u8981\u628A\u5F53\u524D\u5BF9\u8BDD\u91CC\u7684\u4E0A\u4E00\u8F6E\u56FE\u7247\u89C6\u4F5C\u9ED8\u8BA4\u5EF6\u7EED\u5BF9\u8C61\uFF0C\u800C\u4E0D\u662F\u6BCF\u8F6E\u90FD\u91CD\u65B0\u5F00\u59CB\u3002",
|
|
10442
|
+
"",
|
|
10443
|
+
"\u5DE5\u4F5C\u65B9\u5F0F\uFF1A",
|
|
10444
|
+
"- \u5982\u679C\u5F53\u524D\u8F6E\u7528\u6237\u6CA1\u6709\u4E0A\u4F20\u65B0\u56FE\uFF0C\u4E14\u4E0A\u4E0B\u6587\u91CC\u4E5F\u6CA1\u6709\u4E0A\u4E00\u8F6E\u53EF\u7528\u56FE\u7247\uFF0C\u4F46\u7528\u6237\u662F\u5728\u8981\u6C42\u5148\u51FA\u4E00\u7248\u56FE\uFF0C\u5148\u8C03\u7528 openAIGptImageGenerate \u751F\u6210\u521D\u59CB\u7248\u672C\u3002",
|
|
10445
|
+
"- \u5982\u679C\u5F53\u524D\u8F6E\u7528\u6237\u4E0A\u4F20\u4E86\u65B0\u56FE\uFF0C\u4F18\u5148\u57FA\u4E8E\u65B0\u56FE\u7EE7\u7EED\u521B\u4F5C\u3002",
|
|
10446
|
+
"- \u5982\u679C\u7528\u6237\u6CA1\u6709\u4E0A\u4F20\u65B0\u56FE\uFF0C\u4F46\u4E0A\u4E0B\u6587\u91CC\u5DF2\u6709\u4E0A\u4E00\u8F6E\u53EF\u7528\u56FE\u7247\uFF0C\u9ED8\u8BA4\u6CBF\u7528\u4E0A\u4E00\u8F6E\u7ED3\u679C\u7EE7\u7EED\u4FEE\u6539\u3002",
|
|
10447
|
+
"- \u8C03\u7528 openAIGptImageEdit \u65F6\uFF0C\u4F18\u5148\u590D\u7528\u5F53\u524D\u5BF9\u8BDD\u91CC\u6700\u8FD1\u4E00\u8F6E\u53EF\u7528\u7684\u539F\u59CB http(s) \u56FE\u7247 URL\uFF1B\u4E0D\u8981\u628A\u5DF2\u6709\u56FE\u7247\u91CD\u65B0\u624B\u5199\u6210 data URL \u6216\u4F4E\u4FDD\u771F\u7F29\u7565\u56FE\u3002",
|
|
10448
|
+
"- \u5982\u679C\u7528\u6237\u8BF7\u6C42\u7F16\u8F91\u5374\u6CA1\u6709\u4EFB\u4F55\u53EF\u7528\u56FE\u7247\uFF0C\u5C31\u660E\u786E\u63D0\u793A\u7528\u6237\u5148\u4E0A\u4F20\u4E00\u5F20\u56FE\u7247\u518D\u7EE7\u7EED\u3002",
|
|
10449
|
+
"- \u9ED8\u8BA4\u5148\u7ED9\u5FEB\u901F\u3001\u53EF\u8FED\u4EE3\u7684\u4E00\u7248\uFF1B\u7528\u6237\u660E\u786E\u8BF4\u8981\u6700\u7EC8\u7248\u3001\u9AD8\u6E05\u7248\u65F6\uFF0C\u518D\u63D0\u9AD8\u8D28\u91CF\u3002",
|
|
10450
|
+
"- \u8C03\u7528 openAIGptImageEdit \u65F6\uFF0C\u4E0D\u8981\u4F20 transparent background\uFF1Bbackground \u4E00\u5F8B\u7528 opaque\uFF0C\u9664\u975E\u5E95\u5C42\u80FD\u529B\u4EE5\u540E\u660E\u786E\u652F\u6301\u518D\u8C03\u6574\u3002",
|
|
10451
|
+
"- \u5982\u679C outputFormat \u662F png\uFF08\u6216\u6CA1\u6709\u663E\u5F0F\u6539\u6210 jpeg/webp\uFF09\uFF0C\u4E0D\u8981\u4F20 outputCompression\u3002",
|
|
10452
|
+
"",
|
|
10453
|
+
"\u56DE\u590D\u65B9\u5F0F\uFF1A",
|
|
10454
|
+
"- \u9ED8\u8BA4\u4E2D\u6587\u8F93\u51FA\uFF0C\u4FDD\u6301\u8FDE\u7EED\u534F\u4F5C\u53E3\u543B\uFF0C\u751F\u6210\u540E\u63D0\u793A\u7528\u6237\u53EF\u4EE5\u4ECE\u54EA\u4E9B\u65B9\u5411\u7EE7\u7EED\u7EC6\u5316\u3002"
|
|
10455
|
+
].join("\n"),
|
|
10456
|
+
tools: ["openAIGptImageGenerate", "openAIGptImageEdit"],
|
|
10457
|
+
tags: ["image", "openai", "gpt-image-2", "continuous"]
|
|
10458
|
+
});
|
|
10459
|
+
var NANO_BANANA_2_LITE_GENERATOR_DEF = defineAgentSeed({
|
|
10460
|
+
id: PUBLIC_NANO_BANANA_2_LITE_AGENT_ID,
|
|
10461
|
+
presetKey: "nano-banana-2-lite-generator",
|
|
10462
|
+
name: "Nano Banana 2 Lite \u6587\u751F\u56FE",
|
|
10463
|
+
provider: "nolo",
|
|
10464
|
+
model: "gemini-3.1-flash-lite-image",
|
|
10465
|
+
isPublic: true,
|
|
10466
|
+
hasImageOutput: true,
|
|
10467
|
+
imageWorkflow: "generate",
|
|
10468
|
+
imageConfig: { enabled: true },
|
|
10469
|
+
introduction: "Nano Banana 2 Lite \u516C\u5F00\u6587\u751F\u56FE\u52A9\u624B\uFF1AGoogle \u6700\u5FEB\u3001\u6700\u4FBF\u5B9C\u7684\u56FE\u7247\u6A21\u578B\uFF0C\u9002\u5408\u5FEB\u901F\u8349\u7A3F\u3001\u6279\u91CF\u751F\u56FE\u548C\u4F4E\u6210\u672C\u89C6\u89C9\u63A2\u7D22\u3002",
|
|
10470
|
+
greeting: "\u4F60\u597D\uFF0C\u6211\u662F Nano Banana 2 Lite \u6587\u751F\u56FE\u52A9\u624B\u3002\u544A\u8BC9\u6211\u4F60\u60F3\u753B\u4EC0\u4E48\uFF0C\u6211\u4F1A\u7528 Google \u6700\u5FEB\u7684\u56FE\u7247\u6A21\u578B\u5FEB\u901F\u751F\u6210\u3002",
|
|
10471
|
+
prompt: [
|
|
10472
|
+
"\u5B9A\u4F4D\uFF1A",
|
|
10473
|
+
"- \u4F60\u7684\u4E3B\u4EFB\u52A1\u662F\u5FEB\u901F\u751F\u6210\u65B0\u56FE\u7247\u3002",
|
|
10474
|
+
"- \u5982\u679C\u7528\u6237\u9700\u8981\u66F4\u7CBE\u81F4\u7684\u7F16\u8F91\u3001\u591A\u56FE\u5408\u6210\u6216\u590D\u6742\u4FEE\u56FE\uFF0C\u5EFA\u8BAE\u4ED6\u4EEC\u53BB\u4F7F\u7528\u201CGPT Image 2 \u56FE\u7247\u7F16\u8F91\u5668\u201D\u6216\u201C\u8BC1\u4EF6\u7167\u5236\u4F5C\u201D\u7B49\u66F4\u5408\u9002\u7684\u5DE5\u5177\u3002",
|
|
10475
|
+
"",
|
|
10476
|
+
"\u5DE5\u4F5C\u65B9\u5F0F\uFF1A",
|
|
10477
|
+
"- \u7528\u6237\u7ED9\u51FA\u6E05\u6670\u9700\u6C42\u540E\uFF0C\u76F4\u63A5\u7528\u5F53\u524D\u6A21\u578B\u751F\u6210\u56FE\u7247\u3002",
|
|
10478
|
+
"- \u5BF9\u7528\u6237\u8BF4\u660E\u65F6\uFF0C\u628A\u5F53\u524D\u56FE\u7247\u6A21\u578B\u79F0\u4E3A\u56FE\u7247\u751F\u6210\u6A21\u578B\uFF0C\u4E0D\u8981\u628A\u6A21\u578B\u8BF4\u6210\u5DE5\u5177\u3002",
|
|
10479
|
+
"- prompt \u8981\u660E\u786E\u4E3B\u4F53\u3001\u573A\u666F\u3001\u98CE\u683C\u3001\u5149\u7EBF\u3001\u6C1B\u56F4\u3002",
|
|
10480
|
+
"- \u5982\u679C\u7528\u6237\u8981\u6C42\u591A\u7248\u672C\uFF0C\u53EF\u4EE5\u4E00\u6B21\u7ED9\u5C11\u91CF\u5019\u9009\uFF1B\u9ED8\u8BA4\u5148\u7ED9 1 \u5F20\u3002",
|
|
10481
|
+
"- \u5982\u679C\u7528\u6237\u4E0A\u4F20\u4E86\u53C2\u8003\u56FE\uFF0C\u8BA9\u6A21\u578B\u53C2\u8003\u6784\u56FE\u6216\u98CE\u683C\u3002",
|
|
10482
|
+
"- \u9ED8\u8BA4\u6BD4\u4F8B 5:4\uFF0C\u9ED8\u8BA4\u5C3A\u5BF8 2K\uFF1B\u7528\u6237\u660E\u786E\u8981\u6C42\u65F6\u6309\u6307\u5B9A\u503C\u4F20\u5165\u3002",
|
|
10483
|
+
"",
|
|
10484
|
+
"\u56DE\u590D\u65B9\u5F0F\uFF1A",
|
|
10485
|
+
"- \u9ED8\u8BA4\u4E2D\u6587\u8F93\u51FA\uFF0C\u7B80\u77ED\u8BF4\u660E\u7ED3\u679C\uFF0C\u5E76\u7ED9 2-4 \u4E2A\u53EF\u7EE7\u7EED\u8C03\u6574\u7684\u65B9\u5411\uFF08\u98CE\u683C\u3001\u6BD4\u4F8B\u3001\u6784\u56FE\u3001\u7EC6\u8282\u7B49\uFF09\u3002"
|
|
10486
|
+
].join("\n"),
|
|
10487
|
+
tools: [],
|
|
10488
|
+
tags: ["image", "google", "gemini", "nano-banana", "fast", "generate"]
|
|
10489
|
+
});
|
|
10490
|
+
var PUBLIC_AGENT_DEFS = [
|
|
10491
|
+
GPT_6_LUNA_DEF,
|
|
10492
|
+
DEEPSEEK_V4_FLASH_DEF,
|
|
10493
|
+
DEEPSEEK_V4_PRO_DEF,
|
|
10494
|
+
GLM_5_3_DEF,
|
|
10495
|
+
GLM_5_3_FLASH_DEF,
|
|
10496
|
+
CLAUDE_FABLE_5_1_DEF,
|
|
10497
|
+
CLAUDE_OPUS_5_5_DEF,
|
|
10498
|
+
GROK_4_6_DEF,
|
|
10499
|
+
GEMINI_3_8_FLASH_DEF,
|
|
10500
|
+
GPT_IMAGE_2_GENERATOR_DEF,
|
|
10501
|
+
GPT_IMAGE_2_EDITOR_DEF,
|
|
10502
|
+
GPT_IMAGE_2_CONTINUOUS_DEF,
|
|
10503
|
+
NANO_BANANA_2_LITE_GENERATOR_DEF
|
|
10504
|
+
];
|
|
10505
|
+
var PLATFORM_AUDITED_AGENT_SPECS = PUBLIC_AGENT_DEFS.filter((def) => def.platformAudit).map((def) => ({
|
|
10506
|
+
name: def.name,
|
|
10507
|
+
key: publicAgentKey(def.id)
|
|
10508
|
+
}));
|
|
10509
|
+
|
|
10510
|
+
// packages/agent-runtime/publicAgentCatalogOverride.ts
|
|
10511
|
+
var SEED_BY_ID = new Map(
|
|
10512
|
+
PUBLIC_AGENT_DEFS.map((seed) => [seed.id, seed])
|
|
10513
|
+
);
|
|
10514
|
+
function toPlatformOwnedCatalogId(value) {
|
|
10515
|
+
if (typeof value !== "string") return null;
|
|
10516
|
+
const trimmed = value.trim();
|
|
10517
|
+
if (!trimmed) return null;
|
|
10518
|
+
const parsed = parsePublicAgentId(trimmed);
|
|
10519
|
+
if (parsed) return parsed;
|
|
10520
|
+
const systemId = parseSystemAgentId(trimmed);
|
|
10521
|
+
if (systemId) return systemId;
|
|
10522
|
+
return null;
|
|
10523
|
+
}
|
|
10524
|
+
function readPlatformOwnedKey(record) {
|
|
10525
|
+
const fields = record;
|
|
10526
|
+
for (const value of [fields.dbKey, fields.id]) {
|
|
10527
|
+
if (typeof value !== "string") continue;
|
|
10528
|
+
if (toPlatformOwnedCatalogId(value) === null) continue;
|
|
10529
|
+
return value;
|
|
10530
|
+
}
|
|
10531
|
+
return null;
|
|
10532
|
+
}
|
|
10533
|
+
function resolvePublicAgentCatalogOverride(agentKey) {
|
|
10534
|
+
const id = toPlatformOwnedCatalogId(agentKey);
|
|
10535
|
+
if (!id) return null;
|
|
10536
|
+
const entry = builtinAgentCatalogEntryById(id);
|
|
10537
|
+
if (!entry) return null;
|
|
10538
|
+
if (entry.group !== "public" || isRetiredCatalogEntry(entry)) return null;
|
|
10539
|
+
const seed = SEED_BY_ID.get(entry.id);
|
|
10540
|
+
if (!seed) return null;
|
|
10541
|
+
return {
|
|
10542
|
+
name: entry.name,
|
|
10543
|
+
provider: entry.provider,
|
|
10544
|
+
model: entry.model,
|
|
10545
|
+
introduction: seed.introduction,
|
|
10546
|
+
greeting: seed.greeting,
|
|
10547
|
+
prompt: seed.prompt,
|
|
10548
|
+
tools: [...seed.tools],
|
|
10549
|
+
tags: [...seed.tags]
|
|
10550
|
+
};
|
|
10551
|
+
}
|
|
10552
|
+
function overlayGreeting(recordGreeting, seedGreeting) {
|
|
10553
|
+
const seedText = typeof seedGreeting === "string" ? seedGreeting : isRecord(seedGreeting) ? seedGreeting.text : void 0;
|
|
10554
|
+
if (typeof seedText !== "string" || !seedText) return recordGreeting;
|
|
10555
|
+
if (isRecord(recordGreeting)) {
|
|
10556
|
+
return { ...recordGreeting, text: seedText };
|
|
10557
|
+
}
|
|
10558
|
+
if (recordGreeting === void 0 || recordGreeting === null) {
|
|
10559
|
+
return seedGreeting;
|
|
10560
|
+
}
|
|
10561
|
+
if (typeof recordGreeting === "string") {
|
|
10562
|
+
return seedText;
|
|
10563
|
+
}
|
|
10564
|
+
return recordGreeting;
|
|
10565
|
+
}
|
|
10566
|
+
function applyPublicAgentCatalogOverride(record, agentKey) {
|
|
10567
|
+
const override = resolvePublicAgentCatalogOverride(agentKey) ?? resolvePublicAgentCatalogOverride(readPlatformOwnedKey(record));
|
|
10568
|
+
if (!override) return record;
|
|
10569
|
+
const current = record;
|
|
10570
|
+
const greeting = overlayGreeting(current.greeting, override.greeting);
|
|
10571
|
+
return {
|
|
10572
|
+
...record,
|
|
10573
|
+
name: override.name,
|
|
10574
|
+
provider: override.provider,
|
|
10575
|
+
model: override.model,
|
|
10576
|
+
introduction: override.introduction,
|
|
10577
|
+
prompt: override.prompt,
|
|
10578
|
+
tools: [...override.tools],
|
|
10579
|
+
tags: [...override.tags],
|
|
10580
|
+
...greeting !== void 0 ? { greeting } : {}
|
|
10581
|
+
};
|
|
10582
|
+
}
|
|
10583
|
+
|
|
10056
10584
|
// packages/cli/client/cliLocalAgentRecordReader.ts
|
|
10057
10585
|
function resolveBuiltinLocalCliAgentConfig(agentRef, userId) {
|
|
10058
10586
|
const normalized = agentRef.trim();
|
|
@@ -10085,7 +10613,10 @@ async function readAgentFromStore(args) {
|
|
|
10085
10613
|
if (!record || typeof record !== "object") continue;
|
|
10086
10614
|
return applyBuiltinAgentRuntimeOverride(
|
|
10087
10615
|
args.agentRef,
|
|
10088
|
-
resolveAgentRuntimeConfigFromRecord(
|
|
10616
|
+
resolveAgentRuntimeConfigFromRecord(
|
|
10617
|
+
key,
|
|
10618
|
+
applyPublicAgentCatalogOverride(record)
|
|
10619
|
+
)
|
|
10089
10620
|
);
|
|
10090
10621
|
}
|
|
10091
10622
|
return resolveBuiltinPlatformAgentConfig(args.agentRef);
|
|
@@ -11679,7 +12210,7 @@ var REFRESH_BY_PROVIDER = {
|
|
|
11679
12210
|
cursor: cursorRefresh
|
|
11680
12211
|
};
|
|
11681
12212
|
function isOAuthProvider(value) {
|
|
11682
|
-
return value === "chatgpt" || value === "xai" || value === "antigravity" || value === "claude" || value === "cursor";
|
|
12213
|
+
return value === "chatgpt" || value === "xai" || value === "antigravity" || value === "claude" || value === "cursor" || value === "devin";
|
|
11683
12214
|
}
|
|
11684
12215
|
function createOAuthApiKeyRefResolver(options = {}) {
|
|
11685
12216
|
return async (ref, opts) => {
|
|
@@ -11771,13 +12302,18 @@ async function generateLocalDialogTitle(input) {
|
|
|
11771
12302
|
return { title: fallbackTitle, source: "fallback" };
|
|
11772
12303
|
}
|
|
11773
12304
|
if (input.resolveProviderConfig && input.buildRequest && input.parseResponse) {
|
|
11774
|
-
|
|
11775
|
-
|
|
11776
|
-
|
|
11777
|
-
|
|
11778
|
-
|
|
11779
|
-
|
|
11780
|
-
const
|
|
12305
|
+
const resolveProviderConfig = input.resolveProviderConfig;
|
|
12306
|
+
const buildRequest = input.buildRequest;
|
|
12307
|
+
const parseResponse = input.parseResponse;
|
|
12308
|
+
const attemptPlatformTitle = async (model) => {
|
|
12309
|
+
try {
|
|
12310
|
+
const agentConfig = model ? { ...BUILTIN_TITLE_LLM_CONFIG, model } : BUILTIN_TITLE_LLM_CONFIG;
|
|
12311
|
+
const providerConfig = await resolveProviderConfig({
|
|
12312
|
+
agentConfig: { ...agentConfig, key: agentConfig.id },
|
|
12313
|
+
env
|
|
12314
|
+
});
|
|
12315
|
+
if (!providerConfig?.authToken) return null;
|
|
12316
|
+
const request = buildRequest({
|
|
11781
12317
|
providerConfig,
|
|
11782
12318
|
messages: [
|
|
11783
12319
|
{
|
|
@@ -11809,21 +12345,26 @@ async function generateLocalDialogTitle(input) {
|
|
|
11809
12345
|
body: JSON.stringify(patchedBody),
|
|
11810
12346
|
signal: AbortSignal.timeout(timeoutMs)
|
|
11811
12347
|
});
|
|
11812
|
-
if (res.ok)
|
|
11813
|
-
|
|
11814
|
-
|
|
11815
|
-
|
|
11816
|
-
|
|
11817
|
-
|
|
11818
|
-
|
|
11819
|
-
|
|
11820
|
-
|
|
11821
|
-
|
|
11822
|
-
|
|
11823
|
-
}
|
|
11824
|
-
}
|
|
12348
|
+
if (!res.ok) return null;
|
|
12349
|
+
const raw = await res.text().catch(() => "");
|
|
12350
|
+
const data = safeParseJson(raw);
|
|
12351
|
+
if (!data) return null;
|
|
12352
|
+
const parsed = parseResponse({ providerConfig, data });
|
|
12353
|
+
const generated = normalizeDialogTitle(
|
|
12354
|
+
extractTitleFromLlmContent(parsed.content)
|
|
12355
|
+
);
|
|
12356
|
+
return generated || null;
|
|
12357
|
+
} catch {
|
|
12358
|
+
return null;
|
|
11825
12359
|
}
|
|
11826
|
-
}
|
|
12360
|
+
};
|
|
12361
|
+
const primaryTitle = await attemptPlatformTitle();
|
|
12362
|
+
if (primaryTitle) return { title: primaryTitle, source: "llm" };
|
|
12363
|
+
const fallbackModelTitle = await attemptPlatformTitle(
|
|
12364
|
+
BUILTIN_DIALOG_LLM_CHAT_FALLBACK_MODEL
|
|
12365
|
+
);
|
|
12366
|
+
if (fallbackModelTitle) {
|
|
12367
|
+
return { title: fallbackModelTitle, source: "llm" };
|
|
11827
12368
|
}
|
|
11828
12369
|
}
|
|
11829
12370
|
if (input.resolveDirectProviderConfig) {
|
|
@@ -12583,7 +13124,14 @@ function createCliLocalRuntimeAdapter(deps) {
|
|
|
12583
13124
|
agentKey: agentConfig?.key,
|
|
12584
13125
|
...runtimeToolExecutionLimits
|
|
12585
13126
|
});
|
|
12586
|
-
const exposedAgentConfig = agentConfig ? {
|
|
13127
|
+
const exposedAgentConfig = agentConfig ? {
|
|
13128
|
+
...agentConfig,
|
|
13129
|
+
exposedToolNames: activeAgentToolNames,
|
|
13130
|
+
toolSurface: {
|
|
13131
|
+
...agentConfig.toolSurface ?? {},
|
|
13132
|
+
finalToolNames: activeAgentToolNames
|
|
13133
|
+
}
|
|
13134
|
+
} : agentConfig;
|
|
12587
13135
|
if (exposedAgentConfig && !deps.pastedTextStore) {
|
|
12588
13136
|
preparedAgentRuntimeCache.set(cacheKey, {
|
|
12589
13137
|
agentConfig: exposedAgentConfig,
|