nolo-cli 0.81.0-alpha.1 → 0.81.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-L4LCNFID.js → _executeModel-JIG7MRXQ.js} +48 -48
- 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-D2WHTH7S.js → agentDeleteCommand-THAZ5GQS.js} +31 -29
- package/{agentEmailCommands-IHSX56GO.js → agentEmailCommands-A7T7AJA4.js} +67 -63
- package/{agentGrantCommands-R3VQEZJR.js → agentGrantCommands-M3XFO6EN.js} +2 -2
- package/{agentListCommands-R2DGZMFP.js → agentListCommands-BRZFEJQM.js} +40 -32
- package/{agentMachineCommands-UYDID3HQ.js → agentMachineCommands-DM4N5PK3.js} +31 -29
- package/{agentProviderCommands-65ZC2WB4.js → agentProviderCommands-GNPTL5XR.js} +87 -0
- package/{agentPullCommand-N7L2CT7L.js → agentPullCommand-O5MPVJ5E.js} +3 -3
- package/agentRecordCommands-TTAEMNHB.js +128 -0
- package/{agentRunCommand-5PJF27JP.js → agentRunCommand-JVSTGVG2.js} +65 -61
- package/{agentRunControl-T44MESII.js → agentRunControl-WCTKX5VL.js} +2 -2
- package/{agentRuntimeLocal-VD4O2QFQ.js → agentRuntimeLocal-73CVIWBB.js} +27 -25
- package/{agentSlice-43ORUHTC.js → agentSlice-6X4JL2E3.js} +10 -10
- package/{appDeleteCommands-DXJA7XOZ.js → appDeleteCommands-S7CK4OYL.js} +31 -29
- package/{appDeployCommands-JL6XJZJE.js → appDeployCommands-U6TMS5GO.js} +31 -29
- package/{appDeployStatusCommands-MS2D2R6R.js → appDeployStatusCommands-DTNQJ3LJ.js} +31 -29
- package/{appGetCommands-BV2RDCEV.js → appGetCommands-3SHZEQD5.js} +31 -29
- package/{appListCommands-E2AM636N.js → appListCommands-E2ZMIUB6.js} +31 -29
- 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-F3IRDXDQ.js → chatQueueReduxAdapter-LAQEZQKE.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-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-NTW5GWDM.js → chunk-3VNWWVKB.js} +2 -0
- package/{chunk-JQBONKAV.js → chunk-3WD6RUUJ.js} +11 -173
- package/{chunk-DWUCB2A3.js → chunk-42V6BK2E.js} +1 -1
- package/{chunk-GBPZKFYK.js → chunk-53HEEOTT.js} +4 -4
- package/{chunk-GEH7MMBB.js → chunk-54ADB4W7.js} +1 -1
- 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-QNWHWBB7.js → chunk-6FVRQBRR.js} +52 -30
- package/{chunk-CMH2SYHX.js → chunk-6OZ36FXI.js} +2 -2
- package/{chunk-NRALD3CC.js → chunk-76WEAXJB.js} +49 -10
- package/{chunk-DFJFH53D.js → chunk-7OLPQSMQ.js} +6 -6
- 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-WL2RKIBF.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-MYU3MJCF.js → chunk-DHDMC6FO.js} +175 -7
- package/{chunk-4YCRJUQ2.js → chunk-ESWUWEFS.js} +10 -10
- package/{chunk-EXMHJN7C.js → chunk-EYAQT56M.js} +4 -3
- package/{chunk-CJCJF5XB.js → chunk-FDTR4QJ6.js} +4 -2
- package/{chunk-PYXL2CJL.js → chunk-GPCZ7UXG.js} +1 -1
- package/{chunk-K7AG465Q.js → chunk-GQBOR3G6.js} +4 -2
- package/{chunk-YFADVSZE.js → chunk-H62HCIUP.js} +6 -6
- package/{chunk-PZM3EENV.js → chunk-HJUYAD4A.js} +1 -1
- package/{chunk-3JQ2NRYU.js → chunk-HVURBGF3.js} +4 -4
- package/{chunk-DAIOZ3ZO.js → chunk-HWIZU4OL.js} +13 -15
- package/{chunk-ZVN6I33J.js → chunk-IIVGDG4I.js} +6 -5
- package/{chunk-UDQWGU7F.js → chunk-J4MOO56S.js} +1 -1
- package/{chunk-DSRXPQWA.js → chunk-JAXOVNM4.js} +43 -43
- package/{chunk-QQ7SX52C.js → chunk-JCIHVIVG.js} +15 -15
- 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-J4R5XRX5.js → chunk-K4YGZD3P.js} +419 -72
- package/chunk-KQ4ONNQD.js +677 -0
- package/{chunk-RXX4GDIH.js → chunk-LS2ZANRJ.js} +1 -1
- package/{chunk-ODWEZBU6.js → chunk-LXF6XQDT.js} +1219 -57
- package/{chunk-CPSZJBLK.js → chunk-LZIWMYX4.js} +105 -26
- package/{chunk-BJIRLHJR.js → chunk-M2EJHDJP.js} +4 -0
- package/{chunk-EVBFYPDC.js → chunk-MC4XLIJ7.js} +6 -2
- 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-D6XYLSOS.js → chunk-QIAVMDHY.js} +1 -1
- package/{chunk-IHTVDCWH.js → chunk-R2B3MIZA.js} +3 -3
- package/{chunk-YWG6EMH3.js → chunk-RG6JBBX5.js} +10 -6
- package/{chunk-QCZX4FTW.js → chunk-SH43IESU.js} +173 -15
- package/{chunk-FNGAF7C4.js → chunk-SNPMM7H3.js} +137 -12
- package/{chunk-XKNBWXDH.js → chunk-SQQVLHMH.js} +7 -7
- package/{chunk-SPAQ4PVV.js → chunk-SV5IJK6K.js} +1 -1
- package/{chunk-KVDUCO4Q.js → chunk-TDRTS7QW.js} +16 -12
- package/{chunk-BJCWNHVU.js → chunk-TOP2VXOR.js} +2 -2
- package/{chunk-QQBO3LQW.js → chunk-TZJJ77KQ.js} +155 -795
- 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-HH65VA5U.js → chunk-WGR3J4Q6.js} +101 -4
- package/{chunk-5J7W2VWW.js → chunk-WV42OMV7.js} +6 -265
- package/{chunk-7QHSEMMD.js → chunk-Y5HW6GM2.js} +3 -3
- package/{chunk-DUJWWUGV.js → chunk-YQTQQX2H.js} +1 -1
- package/{chunk-QPJBFU7R.js → chunk-YVIV7WT4.js} +752 -80
- package/{chunk-BOYUESO7.js → chunk-Z77CRGTW.js} +1 -1
- package/{chunk-KSHYBTYH.js → chunk-ZWUOR654.js} +932 -299
- package/{contentThunks-FSQPOFYG.js → contentThunks-ATLWNC2D.js} +25 -25
- package/{cooldownCommands-BSCH2W7P.js → cooldownCommands-REAWYVTY.js} +2 -2
- package/{createAgentAutomationAction-VCHDRJ6X.js → createAgentAutomationAction-QYYWTVUR.js} +25 -25
- package/{createDialogAction-KZM5IE4P.js → createDialogAction-7I5VGWCR.js} +28 -28
- package/{createPageAction-IGMXJOY3.js → createPageAction-WNURYCWU.js} +26 -26
- package/{dbSlice-GKGGFNOB.js → dbSlice-XVWBAGYN.js} +8 -8
- package/{deleteFile-LWSR674W.js → deleteFile-YG6QMJLU.js} +3 -3
- package/{dialogCommands-KJS57EDF.js → dialogCommands-RILHDRQ5.js} +35 -31
- package/{dialogSlice-YBTC3GAW.js → dialogSlice-W5BYELVR.js} +24 -24
- package/{docCreateCommands-MRGXJTB4.js → docCreateCommands-GSTPU7SG.js} +32 -30
- package/{docDeleteCommands-YCI75CBU.js → docDeleteCommands-2FC3LSUT.js} +33 -31
- package/{docReadCommands-JN3VHTQY.js → docReadCommands-27POBA34.js} +32 -30
- package/{docStore-SDPT23I6.js → docStore-7LAHBFP2.js} +9 -9
- package/{docUpdateCommands-7KBOENX7.js → docUpdateCommands-U4II6VCO.js} +32 -30
- package/{fetchMessages-DRABNDPZ.js → fetchMessages-EIU7UFFK.js} +3 -4
- package/{getPricing-HRMSOF3E.js → getPricing-LUSEABA6.js} +4 -4
- package/{handleSendMessageAction-356IDG72.js → handleSendMessageAction-SKMJMVRU.js} +24 -24
- package/index.js +102 -85
- package/{localDialogRead-PUQKFI73.js → localDialogRead-BTFJ4V2I.js} +2 -2
- package/{localRuntimeDb-P37ZTX55.js → localRuntimeDb-SYQGUF4U.js} +1 -1
- package/{machineCommands-FYIRYMDE.js → machineCommands-S2RNYKVJ.js} +64 -60
- package/{machineWsRunDispatch-J2FEYI4T.js → machineWsRunDispatch-JC44LBLP.js} +62 -58
- 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-OWBGR7QO.js → readlineWorkspace-VZSBXUH4.js} +188 -109
- package/{removeDialogAgentAction-F5GPTALR.js → removeDialogAgentAction-IX3MN2ZO.js} +11 -11
- package/{runAgentClientLoop-DKUUFUKT.js → runAgentClientLoop-ZYENU7GH.js} +47 -47
- 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-SSLCOSBH.js → spaceCommands-QB3NNEMN.js} +30 -28
- package/{streamAgentChatTurn-FHZZCANP.js → streamAgentChatTurn-43GPPQSN.js} +59 -58
- 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-QZJX3BIC.js → tools-SX6Y4STZ.js} +43 -43
- package/tuiSummaryLlmCaller-T2SHYMDZ.js +127 -0
- package/{updateCommands-Y363MC3L.js → updateCommands-2M74UL7P.js} +2 -2
- package/{updateDialogTitleAction-JJPNGTAP.js → updateDialogTitleAction-VAKA4ZNY.js} +45 -28
- package/agentRecordCommands-OFYTWZAA.js +0 -124
- 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,11 +4,11 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
patch,
|
|
6
6
|
read
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-H62HCIUP.js";
|
|
8
8
|
import {
|
|
9
9
|
DEVICE_LOCAL_OWNER_ID,
|
|
10
10
|
isDeviceLocalSpaceBody
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-UKWGR5SS.js";
|
|
12
12
|
import {
|
|
13
13
|
selectIdentityUserId
|
|
14
14
|
} from "./chunk-SEJ5OS6F.js";
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
asOptionalFiniteNumber
|
|
3
3
|
} from "./chunk-WWC7I6TA.js";
|
|
4
|
-
import {
|
|
5
|
-
asNonEmptyStringArray
|
|
6
|
-
} from "./chunk-I42VC5KR.js";
|
|
7
4
|
import {
|
|
8
5
|
asTrimmedString
|
|
9
6
|
} from "./chunk-3EUW3WEO.js";
|
|
@@ -2393,6 +2390,17 @@ var require_rambda = __commonJS({
|
|
|
2393
2390
|
}
|
|
2394
2391
|
});
|
|
2395
2392
|
|
|
2393
|
+
// packages/core/stringArray.ts
|
|
2394
|
+
function asNonEmptyStringArray(value) {
|
|
2395
|
+
if (!Array.isArray(value)) return [];
|
|
2396
|
+
return value.filter(
|
|
2397
|
+
(item) => typeof item === "string" && !!item.trim()
|
|
2398
|
+
);
|
|
2399
|
+
}
|
|
2400
|
+
function asTrimmedNonEmptyStringArray(value) {
|
|
2401
|
+
return asNonEmptyStringArray(value).map((item) => item.trim());
|
|
2402
|
+
}
|
|
2403
|
+
|
|
2396
2404
|
// packages/core/toTrimmedString.ts
|
|
2397
2405
|
function toTrimmedString(value) {
|
|
2398
2406
|
return typeof value === "string" ? value.trim() : value == null ? "" : String(value).trim();
|
|
@@ -3169,6 +3177,8 @@ var sanitizeShareData = (data) => {
|
|
|
3169
3177
|
};
|
|
3170
3178
|
|
|
3171
3179
|
export {
|
|
3180
|
+
asNonEmptyStringArray,
|
|
3181
|
+
asTrimmedNonEmptyStringArray,
|
|
3172
3182
|
ulid,
|
|
3173
3183
|
toTrimmedString,
|
|
3174
3184
|
toNonEmptyString,
|
|
@@ -6,13 +6,13 @@ import {
|
|
|
6
6
|
} from "./chunk-DWLEOOGR.js";
|
|
7
7
|
import {
|
|
8
8
|
addContentAction
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-V4MJDUSR.js";
|
|
10
10
|
import {
|
|
11
11
|
upload
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-H62HCIUP.js";
|
|
13
13
|
import {
|
|
14
14
|
getRuntimeServerContext
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-UKWGR5SS.js";
|
|
16
16
|
import {
|
|
17
17
|
API_ENDPOINTS
|
|
18
18
|
} from "./chunk-LCBAMY2M.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isAgentRunTerminalStatus
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3VNWWVKB.js";
|
|
4
4
|
import {
|
|
5
5
|
isCompiledBinary,
|
|
6
6
|
resolveCliEntrypointPath
|
|
@@ -11,6 +11,60 @@ import { homedir as nodeHomedir } from "node:os";
|
|
|
11
11
|
import { dirname, isAbsolute, join, resolve } from "node:path";
|
|
12
12
|
import * as nodeFs from "node:fs";
|
|
13
13
|
import { execFileSync as nodeExecFileSync, spawn as nodeSpawn } from "node:child_process";
|
|
14
|
+
|
|
15
|
+
// packages/ai/tools/agent/runFailureClass.ts
|
|
16
|
+
var RATE_LIMIT_PATTERN = /429|rate.?limit|quota|insufficient.?balance|UPSTREAM_402|cooling|冷却/i;
|
|
17
|
+
var PROVIDER_ERROR_PATTERN = /provider|upstream|5\d\d|bad.?gateway|service.?unavailable|overloaded/i;
|
|
18
|
+
var MALFORMED_PATTERN = /MALFORMED_FUNCTION_CALL|malformed|invalid.?function.?call|invalid.?tool.?call/i;
|
|
19
|
+
var STALLED_PATTERN = /stall|no.?progress|repetition|stagnant|无进展|卡死/i;
|
|
20
|
+
var TOOL_ERROR_PATTERN = /tool.?error|tool.?fail|工具/i;
|
|
21
|
+
function classifyRunFailure(input) {
|
|
22
|
+
const status = typeof input.status === "string" ? input.status : "";
|
|
23
|
+
if (status === "done" || status === "killed" || status === "cancelled") {
|
|
24
|
+
return void 0;
|
|
25
|
+
}
|
|
26
|
+
const reason = typeof input.failureReason === "string" ? input.failureReason : "";
|
|
27
|
+
const message = typeof input.errorMessage === "string" ? input.errorMessage : "";
|
|
28
|
+
switch (reason) {
|
|
29
|
+
case "provider_rate_limited":
|
|
30
|
+
return { failureClass: "rate_limited", retryable: true };
|
|
31
|
+
case "provider_error":
|
|
32
|
+
return MALFORMED_PATTERN.test(message) ? { failureClass: "provider_error", retryable: false } : { failureClass: "provider_error", retryable: true };
|
|
33
|
+
case "stalled":
|
|
34
|
+
return { failureClass: "stalled", retryable: false };
|
|
35
|
+
case "tool_error":
|
|
36
|
+
return { failureClass: "tool_error", retryable: false };
|
|
37
|
+
case "config_unresolved":
|
|
38
|
+
return { failureClass: "unknown", retryable: false };
|
|
39
|
+
case "cancelled":
|
|
40
|
+
return void 0;
|
|
41
|
+
default:
|
|
42
|
+
break;
|
|
43
|
+
}
|
|
44
|
+
if (message) {
|
|
45
|
+
if (RATE_LIMIT_PATTERN.test(message)) {
|
|
46
|
+
return { failureClass: "rate_limited", retryable: true };
|
|
47
|
+
}
|
|
48
|
+
if (MALFORMED_PATTERN.test(message)) {
|
|
49
|
+
return { failureClass: "provider_error", retryable: false };
|
|
50
|
+
}
|
|
51
|
+
if (STALLED_PATTERN.test(message)) {
|
|
52
|
+
return { failureClass: "stalled", retryable: false };
|
|
53
|
+
}
|
|
54
|
+
if (TOOL_ERROR_PATTERN.test(message)) {
|
|
55
|
+
return { failureClass: "tool_error", retryable: false };
|
|
56
|
+
}
|
|
57
|
+
if (PROVIDER_ERROR_PATTERN.test(message)) {
|
|
58
|
+
return { failureClass: "provider_error", retryable: true };
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
if (status === "failed" || status === "timeout" || status === "orphaned") {
|
|
62
|
+
return { failureClass: "unknown", retryable: false };
|
|
63
|
+
}
|
|
64
|
+
return void 0;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
// packages/cli/agentRunControl.ts
|
|
14
68
|
var RUN_TERMINAL_STATUSES = /* @__PURE__ */ new Set([
|
|
15
69
|
"done",
|
|
16
70
|
"failed",
|
|
@@ -405,6 +459,8 @@ function createRunActivityTracker(runId, deps = {}, options = {}) {
|
|
|
405
459
|
const fs = deps.fs ?? nodeFs;
|
|
406
460
|
const now = deps.now ?? (() => /* @__PURE__ */ new Date());
|
|
407
461
|
const minWriteIntervalMs = options.minWriteIntervalMs ?? DEFAULT_ACTIVITY_WRITE_INTERVAL_MS;
|
|
462
|
+
const keepAlive = options.keepAlive ?? true;
|
|
463
|
+
let disposed = false;
|
|
408
464
|
let lastEventAt = now().toISOString();
|
|
409
465
|
let inFlight = null;
|
|
410
466
|
const counters = { llmCalls: 0, toolCalls: 0, fileEdits: 0 };
|
|
@@ -425,7 +481,9 @@ function createRunActivityTracker(runId, deps = {}, options = {}) {
|
|
|
425
481
|
};
|
|
426
482
|
}
|
|
427
483
|
function doWrite() {
|
|
484
|
+
if (disposed) return;
|
|
428
485
|
writeTimer = void 0;
|
|
486
|
+
const attemptAt = now().getTime();
|
|
429
487
|
withRunRecordLock(
|
|
430
488
|
runId,
|
|
431
489
|
deps,
|
|
@@ -438,7 +496,10 @@ function createRunActivityTracker(runId, deps = {}, options = {}) {
|
|
|
438
496
|
},
|
|
439
497
|
{ strict: true }
|
|
440
498
|
);
|
|
499
|
+
if (lastWriteAt < attemptAt) lastWriteAt = attemptAt;
|
|
500
|
+
if (keepAlive) scheduleWrite();
|
|
441
501
|
}
|
|
502
|
+
scheduleWrite();
|
|
442
503
|
function scheduleWrite() {
|
|
443
504
|
if (writeTimer !== void 0) return;
|
|
444
505
|
const elapsed = now().getTime() - lastWriteAt;
|
|
@@ -446,6 +507,7 @@ function createRunActivityTracker(runId, deps = {}, options = {}) {
|
|
|
446
507
|
writeTimer = setTimeout(doWrite, delay);
|
|
447
508
|
}
|
|
448
509
|
function onLoopEvent(event) {
|
|
510
|
+
if (disposed) return;
|
|
449
511
|
lastEventAt = new Date(event.atMs).toISOString();
|
|
450
512
|
switch (event.kind) {
|
|
451
513
|
case "llm-start":
|
|
@@ -480,6 +542,7 @@ function createRunActivityTracker(runId, deps = {}, options = {}) {
|
|
|
480
542
|
doWrite();
|
|
481
543
|
}
|
|
482
544
|
function dispose() {
|
|
545
|
+
disposed = true;
|
|
483
546
|
if (writeTimer !== void 0) {
|
|
484
547
|
clearTimeout(writeTimer);
|
|
485
548
|
writeTimer = void 0;
|
|
@@ -785,6 +848,7 @@ async function spawnLocalBackgroundRun(input, deps = {}) {
|
|
|
785
848
|
logPath,
|
|
786
849
|
queuePath,
|
|
787
850
|
batchId,
|
|
851
|
+
...typeof input.credentialGroup === "string" && input.credentialGroup.trim() ? { credentialGroup: input.credentialGroup.trim() } : {},
|
|
788
852
|
...typeof input.parentDialogId === "string" && input.parentDialogId.trim() ? { parentDialogId: input.parentDialogId.trim() } : {},
|
|
789
853
|
...dodCommands && dodCommands.length > 0 ? { dodCommands } : {},
|
|
790
854
|
...spawnHead ? { spawnHead } : {},
|
|
@@ -817,10 +881,13 @@ async function spawnLocalBackgroundRun(input, deps = {}) {
|
|
|
817
881
|
});
|
|
818
882
|
proc.unref();
|
|
819
883
|
if (typeof proc.pid === "number") {
|
|
820
|
-
record.pid = proc.pid;
|
|
821
884
|
const processStartedAt = (deps.getProcessStartTime ?? defaultGetProcessStartTime)(proc.pid);
|
|
822
|
-
|
|
823
|
-
|
|
885
|
+
withRunRecordLock(runId, deps, () => {
|
|
886
|
+
const latest = readRunRecord(runId, deps) ?? record;
|
|
887
|
+
latest.pid = proc.pid;
|
|
888
|
+
if (processStartedAt) latest.processStartedAt = processStartedAt.toISOString();
|
|
889
|
+
writeRunRecord(latest, deps);
|
|
890
|
+
});
|
|
824
891
|
}
|
|
825
892
|
return { runId, pid: proc.pid, logPath, queuePath, batchId };
|
|
826
893
|
}
|
|
@@ -913,6 +980,15 @@ function transitionRunToTerminal(runId, update, deps = {}, options = {}) {
|
|
|
913
980
|
} else if (update.status === "killed") {
|
|
914
981
|
record2.failureReason = "cancelled";
|
|
915
982
|
}
|
|
983
|
+
const classification = classifyRunFailure({
|
|
984
|
+
status: update.status,
|
|
985
|
+
failureReason: record2.failureReason,
|
|
986
|
+
errorMessage: update.note ?? record2.note
|
|
987
|
+
});
|
|
988
|
+
if (classification) {
|
|
989
|
+
record2.failureClass = classification.failureClass;
|
|
990
|
+
record2.retryable = classification.retryable;
|
|
991
|
+
}
|
|
916
992
|
const resolvedToolCount = typeof update.toolCallCount === "number" ? update.toolCallCount : record2.activity?.counters?.toolCalls;
|
|
917
993
|
if (typeof resolvedToolCount === "number") {
|
|
918
994
|
record2.toolCallCount = resolvedToolCount;
|
|
@@ -1032,6 +1108,15 @@ function checkStaleRun(runId, deps = {}) {
|
|
|
1032
1108
|
const at = now().toISOString();
|
|
1033
1109
|
latest.status = "orphaned";
|
|
1034
1110
|
latest.note = pidReused ? "orphaned: process gone (pid reused by another process)" : "orphaned: process gone without writing terminal status";
|
|
1111
|
+
const orphanClassification = classifyRunFailure({
|
|
1112
|
+
status: "orphaned",
|
|
1113
|
+
failureReason: latest.failureReason,
|
|
1114
|
+
errorMessage: latest.note
|
|
1115
|
+
});
|
|
1116
|
+
if (orphanClassification) {
|
|
1117
|
+
latest.failureClass = orphanClassification.failureClass;
|
|
1118
|
+
latest.retryable = orphanClassification.retryable;
|
|
1119
|
+
}
|
|
1035
1120
|
latest.endedAt = at;
|
|
1036
1121
|
latest.reconciledAt = at;
|
|
1037
1122
|
latest.pid = void 0;
|
|
@@ -1247,6 +1332,18 @@ function printStatusOnce(record, deps) {
|
|
|
1247
1332
|
}
|
|
1248
1333
|
if (record.note) deps.output.write(`note: ${record.note}
|
|
1249
1334
|
`);
|
|
1335
|
+
if (record.failureReason) deps.output.write(`failure: ${record.failureReason}
|
|
1336
|
+
`);
|
|
1337
|
+
if (record.failureClass) {
|
|
1338
|
+
deps.output.write(
|
|
1339
|
+
`class: ${record.failureClass}${typeof record.retryable === "boolean" ? ` (retryable=${record.retryable})` : ""}
|
|
1340
|
+
`
|
|
1341
|
+
);
|
|
1342
|
+
}
|
|
1343
|
+
if (record.credentialGroup) {
|
|
1344
|
+
deps.output.write(`credGroup: ${record.credentialGroup}
|
|
1345
|
+
`);
|
|
1346
|
+
}
|
|
1250
1347
|
const activitySummary = formatActivitySummary(record.activity);
|
|
1251
1348
|
if (activitySummary) deps.output.write(`${activitySummary}
|
|
1252
1349
|
`);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
} from "./chunk-
|
|
2
|
+
BUILTIN_PLATFORM_AGENT_KEYS
|
|
3
|
+
} from "./chunk-BNGW5ASC.js";
|
|
4
4
|
import {
|
|
5
5
|
getRuntimeServerContext,
|
|
6
6
|
partitionReadServers,
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
scheduleExistingRecordReplication,
|
|
11
11
|
shouldReplaceLocalWithRemoteRecord,
|
|
12
12
|
shouldReplicateLocalRecord
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-UKWGR5SS.js";
|
|
14
14
|
import {
|
|
15
15
|
fetchFromClientDb,
|
|
16
16
|
fetchFromServer,
|
|
@@ -29,273 +29,21 @@ import {
|
|
|
29
29
|
normalizeServerOrigin
|
|
30
30
|
} from "./chunk-CF7PE763.js";
|
|
31
31
|
|
|
32
|
-
// packages/core/builtinAgentCatalog.ts
|
|
33
|
-
var BUILTIN_AGENT_CATALOG = [
|
|
34
|
-
// ── 平台内置 6 个(builtinAgents BUILTIN_*)──
|
|
35
|
-
{
|
|
36
|
-
id: "01NOLOAPPBLD000000019KCKT0",
|
|
37
|
-
group: "builtin",
|
|
38
|
-
name: "nolo",
|
|
39
|
-
provider: "nolo",
|
|
40
|
-
model: "deepseek-flash",
|
|
41
|
-
runtimeFallback: true
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
id: "01APPBUILDER00000001YAII3I",
|
|
45
|
-
group: "builtin",
|
|
46
|
-
name: "\u5E94\u7528\u6784\u5EFA\u52A9\u624B",
|
|
47
|
-
provider: "nolo",
|
|
48
|
-
model: "deepseek-flash"
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
id: "01ECOMMERCEAG00000001PYQ2J",
|
|
52
|
-
group: "builtin",
|
|
53
|
-
name: "\u7535\u5546\u5546\u54C1\u53C2\u6570\u52A9\u624B",
|
|
54
|
-
provider: "openai",
|
|
55
|
-
model: "gpt-5.6-luna"
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
id: "01NOLOAGENTCRT000000000001",
|
|
59
|
-
group: "builtin",
|
|
60
|
-
name: "AI \u521B\u5EFA\u52A9\u624B",
|
|
61
|
-
provider: "nolo",
|
|
62
|
-
model: "deepseek-flash"
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
id: "01NOLOFEEDBACKA000000000R2",
|
|
66
|
-
group: "builtin",
|
|
67
|
-
name: "\u53CD\u9988\u5165\u53E3",
|
|
68
|
-
provider: "nolo",
|
|
69
|
-
model: "deepseek-flash"
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
id: "01CHROMEOPR000000000001",
|
|
73
|
-
group: "builtin",
|
|
74
|
-
name: "Chrome \u64CD\u4F5C\u5458",
|
|
75
|
-
provider: "nolo",
|
|
76
|
-
model: "deepseek-flash"
|
|
77
|
-
},
|
|
78
|
-
// ── quick-chat 档位 public(图片助手已无 runtimeFallback,见下方图片档段) ──
|
|
79
|
-
// 2026-09-10 兜底最小化:runtimeFallback 只保留产品代码显式引用的条目
|
|
80
|
-
// (nolo 默认档、PLATFORM_TIER_AGENT_KEYS 的 flash/image-compat、
|
|
81
|
-
// SYSTEM_BUILTIN_TRUSTED 的 flash/pro/glm-flash)。广场档与图片助手不再
|
|
82
|
-
// 兜底——记录缺失时明确报 Agent not found,而不是合成无 prompt 的裸配置。
|
|
83
|
-
{
|
|
84
|
-
id: "01DSV4FLASHPB00000000JFPFD",
|
|
85
|
-
group: "public",
|
|
86
|
-
name: "DeepSeek Flash",
|
|
87
|
-
provider: "nolo",
|
|
88
|
-
model: "deepseek-flash",
|
|
89
|
-
runtimeFallback: true
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
id: "01DSV4PRONPB00000001VIR3EK",
|
|
93
|
-
group: "public",
|
|
94
|
-
name: "DeepSeek V4 Pro",
|
|
95
|
-
provider: "nolo",
|
|
96
|
-
model: "deepseek-v4-pro",
|
|
97
|
-
runtimeFallback: true
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
id: "01GLM52DIPB00000000I3E2MY",
|
|
101
|
-
group: "public",
|
|
102
|
-
name: "GLM 5.3",
|
|
103
|
-
provider: "nolo",
|
|
104
|
-
model: "glm-5.3"
|
|
105
|
-
},
|
|
106
|
-
{
|
|
107
|
-
id: "01GLMFLASHPB00000000BT20BC",
|
|
108
|
-
group: "public",
|
|
109
|
-
name: "GLM 5.3 Flash",
|
|
110
|
-
provider: "nolo",
|
|
111
|
-
model: "glm-5-3-flash",
|
|
112
|
-
runtimeFallback: true
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
id: "01KIMIK26OLLAMA0000000001",
|
|
116
|
-
// 已下架的公共入口:保留 internal catalog entry 仅用于旧 Agent 记录的运行时兼容。
|
|
117
|
-
group: "internal",
|
|
118
|
-
name: "Kimi K2.6\uFF08\u517C\u5BB9\uFF09",
|
|
119
|
-
provider: "nolo",
|
|
120
|
-
model: "kimi-k2.6",
|
|
121
|
-
runtimeFallback: true
|
|
122
|
-
},
|
|
123
|
-
// ── 广场公开聊天档(从 createSpaceAgents PUBLIC_AGENT_DEFS 收编,2026-08-19)──
|
|
124
|
-
// ID 与 createSpaceAgents 的 deterministicId 结果一致;provider 按 agentSeedBuilder
|
|
125
|
-
// 默认规则:显式 provider 用显式值,未写则 openai。
|
|
126
|
-
// 2026-09-10 预设收敛:GPT-5.6 Sol/Terra、GPT-5.5 Pro 从广场退场转 internal 兼容,
|
|
127
|
-
// 公开聊天档只保留 Luna + nolo 托管组 + 图片档(图片档仍在广场,但不再 runtimeFallback)。
|
|
128
|
-
{
|
|
129
|
-
id: "01GPT56SOLPB00000000VXMGCW",
|
|
130
|
-
// 已从广场/预设退场(2026-09-10):保留 internal 兼容条目,仅为存量 agent
|
|
131
|
-
// 记录提供运行时路由;不再出现在广场与 createSpaceAgents 播种清单。
|
|
132
|
-
group: "internal",
|
|
133
|
-
name: "GPT-5.6 Sol\uFF08\u517C\u5BB9\uFF09",
|
|
134
|
-
provider: "openai",
|
|
135
|
-
model: "gpt-5.6-sol"
|
|
136
|
-
},
|
|
137
|
-
{
|
|
138
|
-
id: "01GPT56TERPB00000001UX7RKW",
|
|
139
|
-
// 已从广场/预设退场(2026-09-10):同 Sol,internal 兼容。
|
|
140
|
-
group: "internal",
|
|
141
|
-
name: "GPT-5.6 Terra\uFF08\u517C\u5BB9\uFF09",
|
|
142
|
-
provider: "openai",
|
|
143
|
-
model: "gpt-5.6-terra"
|
|
144
|
-
},
|
|
145
|
-
{
|
|
146
|
-
id: "01GPT56LUNPB00000001VVVZHS",
|
|
147
|
-
group: "public",
|
|
148
|
-
name: "GPT-5.6 Luna",
|
|
149
|
-
provider: "openai",
|
|
150
|
-
model: "gpt-5.6-luna"
|
|
151
|
-
},
|
|
152
|
-
{
|
|
153
|
-
id: "01GPT55PROPUB00000000IV47M",
|
|
154
|
-
// 已从广场/预设退场(2026-09-10):internal 兼容,理由同 Sol。
|
|
155
|
-
group: "internal",
|
|
156
|
-
name: "GPT-5.5 Pro\uFF08\u517C\u5BB9\uFF09",
|
|
157
|
-
provider: "openai",
|
|
158
|
-
model: "gpt-5.5-pro"
|
|
159
|
-
},
|
|
160
|
-
// Claude Sonnet/Opus/Fable 5 广场入口 2026-09-01 下架;平台托管通道已于
|
|
161
|
-
// 2026-09-15 恢复真实 DeepInfra 模型(nolo 目录重新上架)。广场重新上架另行决策。
|
|
162
|
-
// Gemini 文本档只上架最新一代:旧版留在广场只会分散选择、拉长列表,而
|
|
163
|
-
// 用户想要的是「最新的那个 Gemini」。旧版模型仍可保留用于兼容历史请求,
|
|
164
|
-
// (modelAbility / 定价表照旧),下架的只是广场入口。
|
|
165
|
-
{
|
|
166
|
-
id: "01GEM37FLPB00000000FJCRNC",
|
|
167
|
-
group: "public",
|
|
168
|
-
name: "Gemini 3.8 Flash",
|
|
169
|
-
provider: "google",
|
|
170
|
-
model: "gemini-3.8-flash"
|
|
171
|
-
},
|
|
172
|
-
{
|
|
173
|
-
id: "01GROK46PLAZ00000001PTJZ3K",
|
|
174
|
-
group: "public",
|
|
175
|
-
name: "Grok 4.6",
|
|
176
|
-
provider: "xai",
|
|
177
|
-
model: "grok-4.6"
|
|
178
|
-
},
|
|
179
|
-
{
|
|
180
|
-
id: "01GPTIMG2GEN00000000SSEBOS",
|
|
181
|
-
group: "public",
|
|
182
|
-
name: "GPT Image 2 \u56FE\u7247\u751F\u6210\u5668",
|
|
183
|
-
provider: "openai",
|
|
184
|
-
model: "gpt-5.6-luna",
|
|
185
|
-
hasImageOutput: true,
|
|
186
|
-
imageModel: "gpt-image-2",
|
|
187
|
-
imageWorkflow: "generate",
|
|
188
|
-
imageConfig: { enabled: true }
|
|
189
|
-
},
|
|
190
|
-
{
|
|
191
|
-
id: "01GPTIMG2EDT00000001R4R4H4",
|
|
192
|
-
group: "public",
|
|
193
|
-
name: "GPT Image 2 \u56FE\u7247\u7F16\u8F91\u5668",
|
|
194
|
-
provider: "openai",
|
|
195
|
-
model: "gpt-5.6-luna",
|
|
196
|
-
hasImageOutput: true,
|
|
197
|
-
imageModel: "gpt-image-2",
|
|
198
|
-
imageWorkflow: "edit",
|
|
199
|
-
imageConfig: { enabled: true }
|
|
200
|
-
},
|
|
201
|
-
{
|
|
202
|
-
id: "01GPTIMG2CNT00000000USKZFO",
|
|
203
|
-
group: "public",
|
|
204
|
-
name: "GPT Image 2 \u8FDE\u7EED\u521B\u4F5C\u52A9\u624B",
|
|
205
|
-
provider: "openai",
|
|
206
|
-
model: "gpt-5.6-luna",
|
|
207
|
-
hasImageOutput: true,
|
|
208
|
-
imageModel: "gpt-image-2",
|
|
209
|
-
imageWorkflow: "continuous",
|
|
210
|
-
imageConfig: { enabled: true }
|
|
211
|
-
},
|
|
212
|
-
{
|
|
213
|
-
id: "01NB2LITEGEN00000001XE1MNO",
|
|
214
|
-
group: "public",
|
|
215
|
-
name: "Nano Banana 2 Lite \u6587\u751F\u56FE",
|
|
216
|
-
provider: "google",
|
|
217
|
-
model: "gemini-3.1-flash-lite-image",
|
|
218
|
-
hasImageOutput: true
|
|
219
|
-
}
|
|
220
|
-
];
|
|
221
|
-
var CATALOG_BY_ID = new Map(BUILTIN_AGENT_CATALOG.map((e) => [e.id, e]));
|
|
222
|
-
function builtinAgentCatalogEntryById(id) {
|
|
223
|
-
if (!id) return void 0;
|
|
224
|
-
return CATALOG_BY_ID.get(id);
|
|
225
|
-
}
|
|
226
|
-
function builtinRuntimeFallbackEntries() {
|
|
227
|
-
return BUILTIN_AGENT_CATALOG.filter((e) => e.runtimeFallback === true);
|
|
228
|
-
}
|
|
229
|
-
function builtinPlatformEntries() {
|
|
230
|
-
return BUILTIN_AGENT_CATALOG.filter((e) => e.group === "builtin");
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
// packages/core/builtinAgents.ts
|
|
234
|
-
var entry = (id) => {
|
|
235
|
-
const e = builtinAgentCatalogEntryById(id);
|
|
236
|
-
if (!e) throw new Error(`missing builtin agent catalog entry: ${id}`);
|
|
237
|
-
return e;
|
|
238
|
-
};
|
|
239
|
-
var BUILTIN_NOLO_AGENT_ID = entry("01NOLOAPPBLD000000019KCKT0").id;
|
|
240
|
-
var BUILTIN_NOLO_AGENT_KEY = publicAgentKey(BUILTIN_NOLO_AGENT_ID);
|
|
241
|
-
var BUILTIN_NOLO_AGENT_NAME = entry("01NOLOAPPBLD000000019KCKT0").name;
|
|
242
|
-
var BUILTIN_NOLO_AGENT_MODEL = entry("01NOLOAPPBLD000000019KCKT0").model;
|
|
243
|
-
var BUILTIN_APP_BUILDER_AGENT_ID = entry("01APPBUILDER00000001YAII3I").id;
|
|
244
|
-
var BUILTIN_APP_BUILDER_AGENT_KEY = publicAgentKey(BUILTIN_APP_BUILDER_AGENT_ID);
|
|
245
|
-
var BUILTIN_ECOMMERCE_AGENT_ID = entry("01ECOMMERCEAG00000001PYQ2J").id;
|
|
246
|
-
var BUILTIN_ECOMMERCE_AGENT_KEY = publicAgentKey(BUILTIN_ECOMMERCE_AGENT_ID);
|
|
247
|
-
var BUILTIN_AGENT_CREATOR_AGENT_ID = entry("01NOLOAGENTCRT000000000001").id;
|
|
248
|
-
var BUILTIN_AGENT_CREATOR_AGENT_KEY = publicAgentKey(BUILTIN_AGENT_CREATOR_AGENT_ID);
|
|
249
|
-
var BUILTIN_FEEDBACK_AGENT_ID = entry("01NOLOFEEDBACKA000000000R2").id;
|
|
250
|
-
var BUILTIN_FEEDBACK_AGENT_KEY = publicAgentKey(BUILTIN_FEEDBACK_AGENT_ID);
|
|
251
|
-
var BUILTIN_CHROME_OPERATOR_AGENT_ID = entry("01CHROMEOPR000000000001").id;
|
|
252
|
-
var BUILTIN_CHROME_OPERATOR_AGENT_KEY = publicAgentKey(BUILTIN_CHROME_OPERATOR_AGENT_ID);
|
|
253
|
-
var BUILTIN_PLATFORM_AGENT_KEYS = builtinPlatformEntries().map(
|
|
254
|
-
(e) => publicAgentKey(e.id)
|
|
255
|
-
);
|
|
256
|
-
var BUILTIN_PLATFORM_AGENT_KEY_SET = new Set(BUILTIN_PLATFORM_AGENT_KEYS);
|
|
257
|
-
var PUBLIC_DEEPSEEK_V4_FLASH_AGENT_ID = entry("01DSV4FLASHPB00000000JFPFD").id;
|
|
258
|
-
var PUBLIC_DEEPSEEK_V4_FLASH_AGENT_KEY = publicAgentKey(PUBLIC_DEEPSEEK_V4_FLASH_AGENT_ID);
|
|
259
|
-
var PUBLIC_DEEPSEEK_V4_PRO_AGENT_ID = entry("01DSV4PRONPB00000001VIR3EK").id;
|
|
260
|
-
var PUBLIC_DEEPSEEK_V4_PRO_AGENT_KEY = publicAgentKey(PUBLIC_DEEPSEEK_V4_PRO_AGENT_ID);
|
|
261
|
-
var PUBLIC_GLM_53_FLASH_AGENT_ID = entry("01GLMFLASHPB00000000BT20BC").id;
|
|
262
|
-
var PUBLIC_GLM_53_FLASH_AGENT_KEY = publicAgentKey(PUBLIC_GLM_53_FLASH_AGENT_ID);
|
|
263
|
-
var PUBLIC_KIMI_K26_IMAGE_AGENT_ID = entry("01KIMIK26OLLAMA0000000001").id;
|
|
264
|
-
var PUBLIC_KIMI_K26_IMAGE_AGENT_KEY = publicAgentKey(PUBLIC_KIMI_K26_IMAGE_AGENT_ID);
|
|
265
|
-
var PUBLIC_GPT_IMAGE_2_GENERATOR_AGENT_ID = entry("01GPTIMG2GEN00000000SSEBOS").id;
|
|
266
|
-
var PUBLIC_GPT_IMAGE_2_GENERATOR_AGENT_KEY = publicAgentKey(PUBLIC_GPT_IMAGE_2_GENERATOR_AGENT_ID);
|
|
267
|
-
var PUBLIC_GPT_IMAGE_2_EDITOR_AGENT_ID = entry("01GPTIMG2EDT00000001R4R4H4").id;
|
|
268
|
-
var PUBLIC_GPT_IMAGE_2_EDITOR_AGENT_KEY = publicAgentKey(PUBLIC_GPT_IMAGE_2_EDITOR_AGENT_ID);
|
|
269
|
-
var PUBLIC_GPT_IMAGE_2_CONTINUOUS_AGENT_ID = entry("01GPTIMG2CNT00000000USKZFO").id;
|
|
270
|
-
var PUBLIC_GPT_IMAGE_2_CONTINUOUS_AGENT_KEY = publicAgentKey(PUBLIC_GPT_IMAGE_2_CONTINUOUS_AGENT_ID);
|
|
271
|
-
var PUBLIC_NANO_BANANA_2_LITE_AGENT_ID = entry("01NB2LITEGEN00000001XE1MNO").id;
|
|
272
|
-
var PUBLIC_NANO_BANANA_2_LITE_AGENT_KEY = publicAgentKey(PUBLIC_NANO_BANANA_2_LITE_AGENT_ID);
|
|
273
|
-
var SYSTEM_BUILTIN_TRUSTED_AGENT_KEYS = [
|
|
274
|
-
PUBLIC_DEEPSEEK_V4_FLASH_AGENT_KEY,
|
|
275
|
-
PUBLIC_DEEPSEEK_V4_PRO_AGENT_KEY,
|
|
276
|
-
PUBLIC_GLM_53_FLASH_AGENT_KEY
|
|
277
|
-
];
|
|
278
|
-
var SYSTEM_BUILTIN_TRUSTED_AGENT_KEY_SET = new Set(
|
|
279
|
-
SYSTEM_BUILTIN_TRUSTED_AGENT_KEYS
|
|
280
|
-
);
|
|
281
|
-
var isSystemBuiltinTrustedAgentKey = (key) => typeof key === "string" && SYSTEM_BUILTIN_TRUSTED_AGENT_KEY_SET.has(key);
|
|
282
|
-
var isBuiltinPlatformAgentKey = (key) => typeof key === "string" && BUILTIN_PLATFORM_AGENT_KEY_SET.has(key);
|
|
283
|
-
|
|
284
32
|
// packages/database/actions/agentReadResolution.ts
|
|
285
33
|
var BUILTIN_PLATFORM_AGENT_KEYS2 = [
|
|
286
34
|
...BUILTIN_PLATFORM_AGENT_KEYS
|
|
287
35
|
];
|
|
288
|
-
var
|
|
36
|
+
var BUILTIN_PLATFORM_AGENT_KEY_SET = new Set(
|
|
289
37
|
BUILTIN_PLATFORM_AGENT_KEYS2
|
|
290
38
|
);
|
|
291
39
|
var normalizeServer = (server) => normalizeKnownServerOrigin(server) ?? normalizeServerOrigin(server);
|
|
292
|
-
var
|
|
40
|
+
var isBuiltinPlatformAgentKey = (dbKey) => typeof dbKey === "string" && BUILTIN_PLATFORM_AGENT_KEY_SET.has(dbKey);
|
|
293
41
|
var resolveAgentReadServers = ({
|
|
294
42
|
dbKey,
|
|
295
43
|
configuredServers
|
|
296
44
|
}) => {
|
|
297
45
|
const normalized = configuredServers.map(normalizeServer);
|
|
298
|
-
if (!
|
|
46
|
+
if (!isBuiltinPlatformAgentKey(dbKey)) {
|
|
299
47
|
return Array.from(new Set(normalized));
|
|
300
48
|
}
|
|
301
49
|
return Array.from(/* @__PURE__ */ new Set([...normalized, ...NOLO_CLUSTER_SERVERS]));
|
|
@@ -695,13 +443,6 @@ var readAction = async (payload, thunkApi) => {
|
|
|
695
443
|
|
|
696
444
|
export {
|
|
697
445
|
readRequestManager,
|
|
698
|
-
builtinAgentCatalogEntryById,
|
|
699
|
-
builtinRuntimeFallbackEntries,
|
|
700
|
-
BUILTIN_NOLO_AGENT_KEY,
|
|
701
|
-
BUILTIN_NOLO_AGENT_NAME,
|
|
702
|
-
BUILTIN_NOLO_AGENT_MODEL,
|
|
703
|
-
isSystemBuiltinTrustedAgentKey,
|
|
704
|
-
isBuiltinPlatformAgentKey,
|
|
705
446
|
resolveAgentReadServers,
|
|
706
447
|
readAction
|
|
707
448
|
};
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
toolRegistry
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-TZJJ77KQ.js";
|
|
4
4
|
import {
|
|
5
5
|
i18n_default
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-K4YGZD3P.js";
|
|
7
7
|
import {
|
|
8
8
|
canonicalizeToolNames
|
|
9
9
|
} from "./chunk-O6OSWFZQ.js";
|
|
10
10
|
import {
|
|
11
11
|
isNoloHostedProvider
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-Q67DOFOO.js";
|
|
13
13
|
import {
|
|
14
14
|
asTrimmedLowercaseString
|
|
15
15
|
} from "./chunk-QSJ3HFEF.js";
|