nolo-cli 0.33.0-alpha.8 → 0.34.0-alpha.1
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/{_executeModel-RI6DRQTP.js → _executeModel-BUYCXZCQ.js} +65 -65
- package/{action-SMLG6OTB.js → action-KMBZ3LCZ.js} +12 -12
- package/{addContentAction-SFO244QN.js → addContentAction-KQ44UT2U.js} +10 -10
- package/{addDialogAgentAction-W44ZCEHB.js → addDialogAgentAction-ILSDCMYL.js} +9 -9
- package/{agentDeleteCommand-F2P4PF6R.js → agentDeleteCommand-WSS2IJVM.js} +40 -39
- package/{agentEmailCommands-BW6ZDQ3C.js → agentEmailCommands-SHTPJTSX.js} +75 -75
- package/{agentListCommands-IC3GH45S.js → agentListCommands-GV6UYVAF.js} +47 -37
- package/{agentMachineCommands-LGYGQX75.js → agentMachineCommands-FLD7TAFH.js} +37 -36
- package/agentProviderCommands-65ZC2WB4.js +122 -0
- package/{agentPullCommand-YH5GEBK4.js → agentPullCommand-TSWAJPS2.js} +1 -1
- package/agentRecordCommands-57W6R7QW.js +113 -0
- package/{agentRunCommand-F5L6GPSK.js → agentRunCommand-HJGXSMDN.js} +78 -76
- package/{agentRunControl-SCIVRZWX.js → agentRunControl-GXOB47YI.js} +5 -1
- package/{agentRuntimeLocal-B7SHOEHJ.js → agentRuntimeLocal-G7ZV55I6.js} +33 -33
- package/{agentSlice-GMKJKCPY.js → agentSlice-HFR7SP3B.js} +12 -12
- package/agentSuperviseCommands-Q64S5SPG.js +640 -0
- package/{appDeleteCommands-63VCZ5CT.js → appDeleteCommands-SHHE56Y2.js} +35 -34
- package/{appDeployCommands-YFTG2P3K.js → appDeployCommands-WUMSO2VS.js} +35 -34
- package/{appDeployStatusCommands-R5ENU5CQ.js → appDeployStatusCommands-VZSVN6SR.js} +35 -34
- package/{appGetCommands-3CH3VMUB.js → appGetCommands-ZJ2C3A5Y.js} +35 -34
- package/{appListCommands-Q2HVYG7J.js → appListCommands-W33L6U5X.js} +35 -34
- package/{authCommand-6Y5LTMZB.js → authCommand-B2XRHNJH.js} +19 -19
- package/{authCommands-EAPFGNHN.js → authCommands-GWABTFMR.js} +6 -6
- package/{chatQueueReduxAdapter-ZRFKEKD3.js → chatQueueReduxAdapter-SYIX4ODY.js} +28 -28
- package/{chunk-57QJXIB6.js → chunk-23KKIMD5.js} +7 -7
- package/{chunk-HUCT7HID.js → chunk-2KO5QQFV.js} +2 -2
- package/{chunk-2UECQ7RE.js → chunk-3AOLVADY.js} +1 -1
- package/{chunk-PVVAWIUN.js → chunk-3LWZNEGQ.js} +1 -1
- package/{chunk-2GKZGZBN.js → chunk-3XZUNRYF.js} +33 -158
- package/{chunk-M2YMQOLC.js → chunk-4APLX2RT.js} +75 -10
- package/{chunk-ZHYK3N56.js → chunk-4AWH4LQA.js} +3 -1
- package/{chunk-3GZXL6FM.js → chunk-4DMPISV6.js} +7 -3
- package/chunk-4HOXB6SY.js +297 -0
- package/{chunk-OIQPORYI.js → chunk-64KIQZA2.js} +175 -2
- package/{chunk-MUCM2MZB.js → chunk-6KYCG5GW.js} +1216 -690
- package/chunk-6XG52ZQ6.js +146 -0
- package/{chunk-XFV2VK7O.js → chunk-74IQ5RRO.js} +21 -8
- package/{chunk-FMEVI5TG.js → chunk-7CH6U3FL.js} +1 -1
- package/{chunk-6FNS3SQF.js → chunk-7YDKVLAE.js} +10 -10
- package/{chunk-LZC5YX6P.js → chunk-AUH2LTIY.js} +7 -7
- package/{chunk-CLP2K7U4.js → chunk-B6H5XCT2.js} +8 -8
- package/{chunk-NNWHHCVP.js → chunk-BMB563Y6.js} +10 -4
- package/{chunk-DFUPZE6V.js → chunk-C6ELZQ7H.js} +249 -34
- package/{chunk-XL7BR2GE.js → chunk-DX6BP4K7.js} +285 -251
- package/{chunk-6HYVJV7B.js → chunk-ESHYE7WU.js} +2 -1
- package/{chunk-JZPBVBIY.js → chunk-FD36SCCD.js} +19 -8
- package/{chunk-W7J5HZI7.js → chunk-FDKEDU7R.js} +14 -14
- package/{chunk-AOXVOC6D.js → chunk-FGLKRJDI.js} +54 -3
- package/{chunk-2QTEYCR7.js → chunk-FTM4KUOZ.js} +17 -17
- package/{chunk-U4TRT5V4.js → chunk-GEPHJJW4.js} +1 -1
- package/{chunk-7YYHKBJP.js → chunk-GKHV4UH5.js} +1 -1
- package/{chunk-2IVEXF7P.js → chunk-GUYMR3JL.js} +6 -33
- package/{chunk-YDTYDA5W.js → chunk-GZRMWK5R.js} +6 -4
- package/{chunk-KBZCACG7.js → chunk-HDT2RB7T.js} +3 -3
- package/{chunk-X664KVEV.js → chunk-HHBXCRJS.js} +204 -123
- package/{chunk-37V5LNEQ.js → chunk-IFS5CUEH.js} +1 -1
- package/{chunk-WLH5BAKX.js → chunk-IIOHYLIG.js} +9 -4
- package/{chunk-ADLYMQB6.js → chunk-IZCHPD7T.js} +52 -3
- package/{chunk-ITIA6OAQ.js → chunk-IZNJDUJ4.js} +5 -5
- package/{chunk-X2DAEZ3X.js → chunk-J5NMOM35.js} +1 -1
- package/{chunk-PREQU5QV.js → chunk-JI2TIPLP.js} +1 -1
- package/{chunk-EGRJC4ZN.js → chunk-JIADXJYU.js} +1 -1
- package/{chunk-IHEC7VBF.js → chunk-K4KIFRIN.js} +1 -1
- package/{chunk-JCGIUBE3.js → chunk-KCBK4MDT.js} +294 -54
- package/{chunk-WJSW43QZ.js → chunk-L3JWI7WX.js} +0 -1
- package/{chunk-VOBUVWP5.js → chunk-LAUUAYLK.js} +39 -2672
- package/{chunk-TFPUAELY.js → chunk-LD6Y6RJY.js} +4 -4
- package/{chunk-NKFMFT4W.js → chunk-LQ6PUHW6.js} +4195 -2631
- package/chunk-M3JQWYBC.js +387 -0
- package/{chunk-GM6PU7B6.js → chunk-MEYIRKDN.js} +0 -1
- package/{chunk-JZ5AMMXU.js → chunk-MGIHZ5CJ.js} +4 -4
- package/chunk-MI2J67UU.js +43 -0
- package/{chunk-JTSGWTYZ.js → chunk-MJWX4JQO.js} +2 -2
- package/{chunk-Q5ITEGIN.js → chunk-N4XRDM26.js} +1 -1
- package/{chunk-5CS33IBL.js → chunk-NQ4N4IGO.js} +11 -12
- package/{chunk-ZZ2MH7LE.js → chunk-O6OSWFZQ.js} +0 -1
- package/{chunk-ZURFOV5J.js → chunk-OFZPJ3NT.js} +13 -4
- package/{chunk-CHYAYZJH.js → chunk-OSCSEJJR.js} +15 -8
- package/{chunk-SCUETSRP.js → chunk-PV734VZX.js} +1 -1
- package/{chunk-7E72JMBB.js → chunk-SMPAUSX5.js} +46 -5
- package/{chunk-XCCGU6QB.js → chunk-U6QQLXWI.js} +1 -1
- package/{chunk-NUO3QFWD.js → chunk-UNHKVD2N.js} +1 -1
- package/{chunk-GE6IWA5N.js → chunk-UNZDCI3O.js} +126 -1
- package/{chunk-CPYYM4RJ.js → chunk-V5GA74HI.js} +19 -5
- package/{chunk-O6W5PZXA.js → chunk-VBD7W4Q6.js} +2057 -212
- package/{chunk-RTJWH72P.js → chunk-VD2SO4RG.js} +4 -4
- package/{chunk-FXFGNOT2.js → chunk-VFVCYIRQ.js} +1 -1
- package/{chunk-7KNERA53.js → chunk-VSA6QAGV.js} +47 -3
- package/{chunk-G7E4NWFE.js → chunk-W445DPVT.js} +1 -1
- package/{chunk-VH2F7ZB6.js → chunk-WN5AJG5I.js} +1 -1
- package/{chunk-KSRFVP36.js → chunk-WRN7L5CS.js} +1 -1
- package/{chunk-4C7K5NXX.js → chunk-WRP5TTM6.js} +4 -84
- package/chunk-X2K2JSO4.js +163 -0
- package/{chunk-OR2HNLVO.js → chunk-X6EN3KJX.js} +279 -477
- package/{chunk-IL545V3E.js → chunk-XQES6LXQ.js} +2 -2
- package/{chunk-UK5JGQVU.js → chunk-XT73C4VH.js} +26 -21
- package/{chunk-RY57GLGW.js → chunk-YPREESF4.js} +42 -5
- package/{chunk-YBPAQV37.js → chunk-YRP7LG4R.js} +4527 -4080
- package/{chunk-BQXOGBFN.js → chunk-YZ2WE6CW.js} +2 -2
- package/{chunk-3WXRAHCG.js → chunk-ZBB3MZR3.js} +3 -3
- package/{cliExecutor-DW3PHGEL.js → cliExecutor-BBUVQU4L.js} +2 -2
- package/{clipboardy-MMBYVRLF.js → clipboardy-PRUHGPGC.js} +4 -3
- package/{codingSkills-DY5MINPG.js → codingSkills-H6N5EKSX.js} +3 -3
- package/cooldownCommands-C2SZLEEO.js +90 -0
- package/{createAgentAutomationAction-6SE7CQ7F.js → createAgentAutomationAction-BH3D2L2H.js} +28 -30
- package/{createDialogAction-AROAXAPM.js → createDialogAction-U4LDV2RW.js} +31 -33
- package/{createPageAction-GCO3R6GR.js → createPageAction-Q2ANG535.js} +30 -32
- package/{dbSlice-3SD5L5H2.js → dbSlice-PIQGICNM.js} +9 -9
- package/{deleteFile-XQXPBFFB.js → deleteFile-NPZ64DFN.js} +4 -4
- package/{dialogCommands-N26NNRRD.js → dialogCommands-C556D6WD.js} +37 -36
- package/{dialogSlice-JVPBOMFB.js → dialogSlice-P2VSKG2X.js} +27 -27
- package/dist-VODFSGNG.js +7442 -0
- package/{docCreateCommands-PON6FF4V.js → docCreateCommands-AAVGLQWE.js} +36 -35
- package/{docDeleteCommands-WWRFONDS.js → docDeleteCommands-PKMKSQD2.js} +37 -36
- package/{docReadCommands-S4Z275LB.js → docReadCommands-2WUH7UXC.js} +36 -35
- package/{docStore-WGDO3I76.js → docStore-J5UWRBB4.js} +29 -31
- package/{docUpdateCommands-TJQB4IJ7.js → docUpdateCommands-B2N4E5HQ.js} +38 -37
- package/{fetchMessages-7QRCCRYK.js → fetchMessages-CUEFN4GQ.js} +4 -4
- package/{getPricing-L2ENXWHV.js → getPricing-P3E2WRIH.js} +5 -5
- package/{handleSendMessageAction-T7AS7DDY.js → handleSendMessageAction-RRZ53YYH.js} +29 -29
- package/index.js +92 -77
- package/{localDialogRead-SLMPV5SK.js → localDialogRead-P7CHFMIC.js} +1 -1
- package/{localRuntimeAuthority-E3R24J4T.js → localRuntimeAuthority-S77B5QVB.js} +6 -2
- package/{localRuntimeDb-DDZCJFQZ.js → localRuntimeDb-N3H3HQ7G.js} +1 -1
- package/{machineCommands-C6CPXZRR.js → machineCommands-CWKMJG33.js} +77 -77
- package/{machineInfo-M6KB6HZN.js → machineInfo-66ZFUMLE.js} +1 -1
- package/{machineWsRunDispatch-27K2P4OP.js → machineWsRunDispatch-UYNVNX4A.js} +69 -69
- package/{models-OX2S5C6Q.js → models-L7S2EKPM.js} +2 -2
- package/package.json +1 -1
- package/{read-6G73BMEY.js → read-6C2XD3YZ.js} +5 -5
- package/{readDocTool-DK4EI2GA.js → readDocTool-Y7AB365O.js} +1 -1
- package/{readlineWorkspace-LBWKTPJE.js → readlineWorkspace-VYELP22P.js} +2851 -1515
- package/{removeDialogAgentAction-E7H557UO.js → removeDialogAgentAction-KG5WMJRZ.js} +13 -13
- package/{runAgentClientLoop-D2T2P36H.js → runAgentClientLoop-35GKZDOZ.js} +62 -61
- package/{runtimeDoctorCommands-KIKM6BIO.js → runtimeDoctorCommands-HT4O2PXL.js} +6 -6
- package/{setDialogExtraReferencesAction-RMMGBR5F.js → setDialogExtraReferencesAction-O2NLXMSM.js} +10 -10
- package/{setPrimaryDialogAgentAction-FWBKKLVA.js → setPrimaryDialogAgentAction-FYYUY7PB.js} +13 -13
- package/{settingSlice-73PV4KG4.js → settingSlice-GPLI6E3M.js} +11 -11
- package/{skillDiscovery-KLLKXPUO.js → skillDiscovery-COX56OBO.js} +3 -3
- package/{slateUtils-VO2FU36K.js → slateUtils-RIZES3PV.js} +1 -1
- package/{spaceCommands-B6LO4U5R.js → spaceCommands-AAKQM2PM.js} +223 -37
- package/{spaceSlice-VUAEZVDS.js → spaceSlice-NSNGR4Y2.js} +28 -30
- package/{streamAgentChatTurn-BBPSFMTZ.js → streamAgentChatTurn-D5IDHXMV.js} +116 -129
- package/{switchDialogAgentAction-US6QNL3N.js → switchDialogAgentAction-GH5P6Q3Z.js} +9 -9
- package/{chunk-IDAU4UFS.js → syncMapping-N6RGXGBW.js} +11 -11
- package/{tableCommands-QE47K72R.js → tableCommands-PQUJ55AS.js} +3 -3
- package/{tools-NWA3J7KE.js → tools-JQOETZP5.js} +44 -45
- package/{tuiSummaryLlmCaller-KC7JCJBB.js → tuiSummaryLlmCaller-LH7F2SP7.js} +18 -18
- package/{updateCommands-AK2RDOFR.js → updateCommands-MNDUIKN7.js} +2 -2
- package/{updateDialogTitleAction-TDDQ4J4L.js → updateDialogTitleAction-WOTSDSFQ.js} +31 -33
- package/agentRecordCommands-FCQ7ZF6C.js +0 -113
- package/chunk-5SBK2MTI.js +0 -528
- package/chunk-M3JEW6N6.js +0 -193
- package/chunk-OOK2ZT5F.js +0 -1800
- package/syncMapping-RK2MANUX.js +0 -43
- package/{chunk-KMSZPTM6.js → chunk-2WKUUY2E.js} +3 -3
- package/{chunk-CWMSB67P.js → chunk-AGGIDPCZ.js} +0 -0
- package/{chunk-SAQQLJZ5.js → chunk-JDSUTNYY.js} +3 -3
|
@@ -66,7 +66,8 @@ function detectRuntimeCapabilities(options = {}) {
|
|
|
66
66
|
// packages/connector-experimental/machineInfo.ts
|
|
67
67
|
var CONNECTOR_VERSION = "0.1.0-experimental";
|
|
68
68
|
function defaultMachineIdPath() {
|
|
69
|
-
|
|
69
|
+
const noloHome = process.env.NOLO_HOME?.trim();
|
|
70
|
+
return noloHome ? join2(noloHome, "machine-id") : join2(homedir(), ".nolo", "machine-id");
|
|
70
71
|
}
|
|
71
72
|
function resolveMachineId(path = defaultMachineIdPath()) {
|
|
72
73
|
try {
|
|
@@ -7,14 +7,24 @@ import {
|
|
|
7
7
|
unlinkSync,
|
|
8
8
|
writeFileSync
|
|
9
9
|
} from "node:fs";
|
|
10
|
+
import { join as join2 } from "node:path";
|
|
11
|
+
|
|
12
|
+
// packages/agent-runtime/noloStateDir.ts
|
|
10
13
|
import { homedir } from "node:os";
|
|
11
14
|
import { join } from "node:path";
|
|
15
|
+
function resolveNoloStateDir(name, homeDir) {
|
|
16
|
+
if (homeDir) return join(homeDir, ".nolo", name);
|
|
17
|
+
const noloHome = process.env.NOLO_HOME?.trim();
|
|
18
|
+
return noloHome ? join(noloHome, name) : join(homedir(), ".nolo", name);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
// packages/agent-runtime/oauthTokenStore.ts
|
|
12
22
|
var DEFAULT_REFRESH_SKEW_MS = 5 * 60 * 1e3;
|
|
13
|
-
function getCredentialsDir(homeDir
|
|
14
|
-
return
|
|
23
|
+
function getCredentialsDir(homeDir) {
|
|
24
|
+
return resolveNoloStateDir("credentials", homeDir);
|
|
15
25
|
}
|
|
16
|
-
function getCredentialPath(provider, homeDir
|
|
17
|
-
return
|
|
26
|
+
function getCredentialPath(provider, homeDir) {
|
|
27
|
+
return join2(getCredentialsDir(homeDir), `${provider}.json`);
|
|
18
28
|
}
|
|
19
29
|
function ensurePrivateDir(dir) {
|
|
20
30
|
mkdirSync(dir, { recursive: true, mode: 448 });
|
|
@@ -30,7 +40,7 @@ function writePrivateFile(path, body) {
|
|
|
30
40
|
} catch {
|
|
31
41
|
}
|
|
32
42
|
}
|
|
33
|
-
function readOAuthCredential(provider, homeDir
|
|
43
|
+
function readOAuthCredential(provider, homeDir) {
|
|
34
44
|
const path = getCredentialPath(provider, homeDir);
|
|
35
45
|
if (!existsSync(path)) return null;
|
|
36
46
|
const raw = readFileSync(path, "utf8");
|
|
@@ -42,18 +52,18 @@ function readOAuthCredential(provider, homeDir = homedir()) {
|
|
|
42
52
|
return null;
|
|
43
53
|
}
|
|
44
54
|
}
|
|
45
|
-
function writeOAuthCredential(provider, credential, homeDir
|
|
55
|
+
function writeOAuthCredential(provider, credential, homeDir) {
|
|
46
56
|
const path = getCredentialPath(provider, homeDir);
|
|
47
57
|
ensurePrivateDir(getCredentialsDir(homeDir));
|
|
48
58
|
writePrivateFile(path, `${JSON.stringify(credential, null, 2)}
|
|
49
59
|
`);
|
|
50
60
|
}
|
|
51
|
-
function removeOAuthCredential(provider, homeDir
|
|
61
|
+
function removeOAuthCredential(provider, homeDir) {
|
|
52
62
|
const path = getCredentialPath(provider, homeDir);
|
|
53
63
|
if (!existsSync(path)) return;
|
|
54
64
|
unlinkSync(path);
|
|
55
65
|
}
|
|
56
|
-
function createOAuthTokenStore(homeDir
|
|
66
|
+
function createOAuthTokenStore(homeDir) {
|
|
57
67
|
return {
|
|
58
68
|
read(provider) {
|
|
59
69
|
return readOAuthCredential(provider, homeDir);
|
|
@@ -85,6 +95,7 @@ async function resolveFreshAccessToken(args) {
|
|
|
85
95
|
}
|
|
86
96
|
|
|
87
97
|
export {
|
|
98
|
+
resolveNoloStateDir,
|
|
88
99
|
getCredentialsDir,
|
|
89
100
|
readOAuthCredential,
|
|
90
101
|
writeOAuthCredential,
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import {
|
|
2
2
|
addContentToSpace
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-LAUUAYLK.js";
|
|
4
4
|
import {
|
|
5
5
|
prepareAndPersistMessage,
|
|
6
6
|
uiAskChoiceFunc,
|
|
7
7
|
uiAskChoiceFunctionSchema
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-DX6BP4K7.js";
|
|
9
9
|
import {
|
|
10
10
|
require_date_fns
|
|
11
11
|
} from "./chunk-M76ECQRD.js";
|
|
12
12
|
import {
|
|
13
13
|
TOOL_PACKS
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-IIOHYLIG.js";
|
|
15
15
|
import {
|
|
16
16
|
buildSkillDocMarkdown
|
|
17
17
|
} from "./chunk-AETZ7AD6.js";
|
|
@@ -19,14 +19,14 @@ import {
|
|
|
19
19
|
PLATFORM_HOSTED_DEEPSEEK_FLASH_MODEL,
|
|
20
20
|
PLATFORM_HOSTED_DEEPSEEK_FLASH_PEAK_PRICE,
|
|
21
21
|
PLATFORM_HOSTED_KIMI_PROVIDER
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-X6EN3KJX.js";
|
|
23
23
|
import {
|
|
24
24
|
read,
|
|
25
25
|
readAndWait,
|
|
26
26
|
removeCachedEntity,
|
|
27
27
|
upsertSSREntity,
|
|
28
28
|
write
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-23KKIMD5.js";
|
|
30
30
|
import {
|
|
31
31
|
createAgentKey,
|
|
32
32
|
createDialogKey,
|
|
@@ -35,25 +35,25 @@ import {
|
|
|
35
35
|
dialogMessageRange,
|
|
36
36
|
memoryOwnerRange,
|
|
37
37
|
memorySubjectKindRange
|
|
38
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-2WKUUY2E.js";
|
|
39
|
+
import {
|
|
40
|
+
extractCustomId
|
|
41
|
+
} from "./chunk-BJIRLHJR.js";
|
|
39
42
|
import {
|
|
40
43
|
selectIdentityUserId
|
|
41
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-HHBXCRJS.js";
|
|
42
45
|
import {
|
|
43
46
|
isDevelopment
|
|
44
|
-
} from "./chunk-
|
|
47
|
+
} from "./chunk-L3JWI7WX.js";
|
|
48
|
+
import {
|
|
49
|
+
isRecord
|
|
50
|
+
} from "./chunk-KUG52IAP.js";
|
|
45
51
|
import {
|
|
46
52
|
asTrimmedString
|
|
47
53
|
} from "./chunk-3EUW3WEO.js";
|
|
48
54
|
import {
|
|
49
55
|
asOptionalPositiveFiniteNumber
|
|
50
56
|
} from "./chunk-U6VC4MU4.js";
|
|
51
|
-
import {
|
|
52
|
-
extractCustomId
|
|
53
|
-
} from "./chunk-BJIRLHJR.js";
|
|
54
|
-
import {
|
|
55
|
-
isRecord
|
|
56
|
-
} from "./chunk-KUG52IAP.js";
|
|
57
57
|
import {
|
|
58
58
|
asOptionalTrimmedString
|
|
59
59
|
} from "./chunk-G3SUCT4W.js";
|
|
@@ -3,13 +3,13 @@ import {
|
|
|
3
3
|
} from "./chunk-DWLEOOGR.js";
|
|
4
4
|
import {
|
|
5
5
|
addContentAction
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-MJWX4JQO.js";
|
|
7
7
|
import {
|
|
8
8
|
upload
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-23KKIMD5.js";
|
|
10
10
|
import {
|
|
11
11
|
getRuntimeServerContext
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-HHBXCRJS.js";
|
|
13
13
|
import {
|
|
14
14
|
API_ENDPOINTS
|
|
15
15
|
} from "./chunk-LCBAMY2M.js";
|
|
@@ -318,6 +318,8 @@ var planContextUsage = (params) => {
|
|
|
318
318
|
// packages/ai/context/planCompression.ts
|
|
319
319
|
var MIN_COMPRESS_COUNT = 5;
|
|
320
320
|
var ACTIVE_SUMMARY_TAIL_KEEP_COUNT = 2;
|
|
321
|
+
var STUB_KEEP_COUNT = 3;
|
|
322
|
+
var TOOL_STUB_TEXT = "[tool output cleared to save context]";
|
|
321
323
|
var getMessageTokenCount = (msg) => {
|
|
322
324
|
const content = serializeMessageContent(msg.content) || "";
|
|
323
325
|
let tokens = estimateTokenCount(content);
|
|
@@ -432,6 +434,45 @@ function calculateCompressCount(pendingMsgs, rawMessageBudget, opts) {
|
|
|
432
434
|
}
|
|
433
435
|
return pendingMsgs.length - keepCount;
|
|
434
436
|
}
|
|
437
|
+
function tryComputeStubPlan(pendingMsgs, totalUsed, historyBudget, startIndex) {
|
|
438
|
+
const toolIndices = [];
|
|
439
|
+
for (let i = 0; i < pendingMsgs.length; i++) {
|
|
440
|
+
if (pendingMsgs[i].role === "tool") {
|
|
441
|
+
const content = serializeMessageContent(pendingMsgs[i].content) || "";
|
|
442
|
+
if (content !== TOOL_STUB_TEXT) toolIndices.push(i);
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
if (toolIndices.length <= STUB_KEEP_COUNT) return null;
|
|
446
|
+
const firstStubbedIdx = toolIndices[toolIndices.length - STUB_KEEP_COUNT - 1];
|
|
447
|
+
const beforeMsg = pendingMsgs[firstStubbedIdx];
|
|
448
|
+
if (!beforeMsg) return null;
|
|
449
|
+
const stubOverhead = estimateTokenCount(TOOL_STUB_TEXT);
|
|
450
|
+
const stubbedMsgs = pendingMsgs.slice(0, firstStubbedIdx + 1).filter(
|
|
451
|
+
(m) => m.role === "tool"
|
|
452
|
+
);
|
|
453
|
+
const originalTokens = stubbedMsgs.reduce(
|
|
454
|
+
(s, m) => s + getMessageTokenCount(m),
|
|
455
|
+
0
|
|
456
|
+
);
|
|
457
|
+
const savedTokens = Math.max(0, originalTokens - stubOverhead * stubbedMsgs.length);
|
|
458
|
+
if (totalUsed - savedTokens > historyBudget) return null;
|
|
459
|
+
const keptMsgs = pendingMsgs.slice(firstStubbedIdx + 1);
|
|
460
|
+
return {
|
|
461
|
+
shouldCompress: true,
|
|
462
|
+
compressCount: stubbedMsgs.length,
|
|
463
|
+
msgsToCompress: stubbedMsgs,
|
|
464
|
+
msgsToKeep: keptMsgs,
|
|
465
|
+
newSummarizedBeforeId: void 0,
|
|
466
|
+
startIndex,
|
|
467
|
+
stub: {
|
|
468
|
+
// beforeId = 第一条被 stub 的 tool 结果的消息 id;投影端按
|
|
469
|
+
// 「abs index <= beforeId 的 index 的 tool 消息」判定是否 stub。
|
|
470
|
+
beforeId: beforeMsg.id,
|
|
471
|
+
stubbedCount: stubbedMsgs.length,
|
|
472
|
+
savedTokens
|
|
473
|
+
}
|
|
474
|
+
};
|
|
475
|
+
}
|
|
435
476
|
function guardToolChainBoundary(pendingMsgs, compressCount) {
|
|
436
477
|
let count = compressCount;
|
|
437
478
|
while (count > 0 && count < pendingMsgs.length && pendingMsgs[count].role === "tool") {
|
|
@@ -479,6 +520,13 @@ function planCompression(input) {
|
|
|
479
520
|
lastMsg: pendingMsgs[pendingMsgs.length - 1]
|
|
480
521
|
});
|
|
481
522
|
if (!trigger) return emptyPlan(startIndex);
|
|
523
|
+
const stubPlan = tryComputeStubPlan(
|
|
524
|
+
pendingMsgs,
|
|
525
|
+
totalUsed,
|
|
526
|
+
historyBudget,
|
|
527
|
+
startIndex
|
|
528
|
+
);
|
|
529
|
+
if (stubPlan) return stubPlan;
|
|
482
530
|
let compressCount = calculateCompressCount(pendingMsgs, rawMessageBudget, {
|
|
483
531
|
keepTailCount: shouldRunActiveSummary || triggeredByRealUsage,
|
|
484
532
|
totalUsed,
|
|
@@ -500,6 +548,7 @@ function planCompression(input) {
|
|
|
500
548
|
}
|
|
501
549
|
|
|
502
550
|
// packages/ai/context/compactionShared.ts
|
|
551
|
+
var COMPACTION_SUMMARY_SCHEMA_VERSION = 1;
|
|
503
552
|
var COMPACTION_SUMMARY_SYSTEM_PROMPT = `\u4F60\u662F\u5BF9\u8BDD\u4E0A\u4E0B\u6587\u538B\u7F29\u5668\u3002\u6839\u636E\u3010\u73B0\u6709\u8BB0\u5FC6\u3011\u548C\u3010\u65B0\u589E\u5BF9\u8BDD\u3011\uFF0C\u8F93\u51FA\u53EF\u66FF\u4EE3\u539F\u59CB\u6D88\u606F\u7684\u4E8B\u5B9E\u6027\u8981\u70B9\uFF0C\u4F9B\u540E\u7EED\u5BF9\u8BDD\u76F4\u63A5\u4F7F\u7528\u3002
|
|
504
553
|
|
|
505
554
|
\u4E25\u683C\u53EA\u8F93\u51FA\u4E0B\u9762\u4E09\u90E8\u5206\uFF0C\u6807\u9898\u5FC5\u987B\u5B8C\u5168\u4E00\u81F4\uFF1A
|
|
@@ -666,7 +715,9 @@ export {
|
|
|
666
715
|
buildDatabaseFileContentUrl,
|
|
667
716
|
serializeMessageContent,
|
|
668
717
|
normalizeAssistantContentBuffer,
|
|
718
|
+
TOOL_STUB_TEXT,
|
|
669
719
|
planCompression,
|
|
720
|
+
COMPACTION_SUMMARY_SCHEMA_VERSION,
|
|
670
721
|
COMPACTION_SUMMARY_SYSTEM_PROMPT,
|
|
671
722
|
buildCompactionUserContent,
|
|
672
723
|
formatFileOperationsFromMessages,
|
|
@@ -1,39 +1,44 @@
|
|
|
1
1
|
import {
|
|
2
2
|
cloudflareModels,
|
|
3
|
-
deepinfraModels,
|
|
4
|
-
fireworksModels,
|
|
5
3
|
gmiModels,
|
|
6
|
-
googleModels,
|
|
7
|
-
openAIModels,
|
|
8
4
|
openrouterModels,
|
|
9
5
|
platformHostedModels,
|
|
10
|
-
xaiModels,
|
|
11
6
|
zaiModels
|
|
12
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-X6EN3KJX.js";
|
|
13
8
|
|
|
14
9
|
// packages/ai/llm/modelAbility.ts
|
|
15
10
|
var MODEL_ABILITY_TABLE = {
|
|
16
|
-
"claude-opus-5": { passAt1: 74, benchmarkScore: 61 },
|
|
17
|
-
"
|
|
11
|
+
"claude-opus-5": { passAt1: 74, benchmarkScore: 61, writingScore: 82 },
|
|
12
|
+
"claude-opus-4-6": { passAt1: 65, benchmarkScore: 68, writingScore: 78 },
|
|
13
|
+
"gpt-5.6-sol": { passAt1: 73, benchmarkScore: 59, writingScore: 80 },
|
|
18
14
|
"claude-fable-5": { passAt1: 70 },
|
|
19
15
|
"gpt-5.6-terra": { passAt1: 70, benchmarkScore: 55 },
|
|
20
|
-
"kimi-k3": { passAt1: 69, benchmarkScore: 57 },
|
|
16
|
+
"kimi-k3": { passAt1: 69, benchmarkScore: 57, writingScore: 81 },
|
|
21
17
|
"gpt-5.5": { passAt1: 67 },
|
|
22
18
|
"gpt-5.6-luna": { passAt1: 67, benchmarkScore: 51 },
|
|
23
19
|
"grok-4.6": { passAt1: 67 },
|
|
24
|
-
"deepseek-v4-pro": { passAt1: 63 },
|
|
25
|
-
"qwen3.8-max": { passAt1: 57 },
|
|
20
|
+
"deepseek-v4-pro": { passAt1: 63, writingScore: 79 },
|
|
21
|
+
"qwen3.8-max": { passAt1: 57, writingScore: 77 },
|
|
26
22
|
"muse-spark-1.2": { passAt1: 55 },
|
|
27
23
|
"grok-4.5": { passAt1: 54, benchmarkScore: 54 },
|
|
28
24
|
"claude-sonnet-5": { passAt1: 54, benchmarkScore: 53 },
|
|
29
25
|
"deepseek-v4-flash": { passAt1: 53 },
|
|
26
|
+
"gemini-3.7-flash": { passAt1: 58, benchmarkScore: 65, writingScore: 88 },
|
|
30
27
|
"muse-spark-1.1": { passAt1: 53 },
|
|
31
28
|
"gpt-5.4": { passAt1: 52 },
|
|
32
29
|
"gemini-3.6-flash": { passAt1: 49, benchmarkScore: 50 },
|
|
33
30
|
"glm-5.3": { passAt1: 52, benchmarkScore: 60 },
|
|
34
31
|
"glm-5.2": { passAt1: 44, benchmarkScore: 51 }
|
|
35
32
|
};
|
|
36
|
-
var EFFORT_SUFFIXES = [
|
|
33
|
+
var EFFORT_SUFFIXES = [
|
|
34
|
+
"-extra-low",
|
|
35
|
+
"-low",
|
|
36
|
+
"-medium",
|
|
37
|
+
"-high",
|
|
38
|
+
"-thinking",
|
|
39
|
+
"-tiered",
|
|
40
|
+
":cloud"
|
|
41
|
+
];
|
|
37
42
|
function normalizeModelName(raw) {
|
|
38
43
|
let name = raw.trim().toLowerCase();
|
|
39
44
|
const slash = name.indexOf("/");
|
|
@@ -55,12 +60,7 @@ function getModelAbility(modelName) {
|
|
|
55
60
|
var withProvider = (provider) => (models) => models.map((model) => ({ ...model, provider }));
|
|
56
61
|
var ALL_MODELS = [
|
|
57
62
|
...withProvider("nolo")(platformHostedModels),
|
|
58
|
-
...withProvider("google")(googleModels),
|
|
59
|
-
...withProvider("openai")(openAIModels),
|
|
60
63
|
...withProvider("openrouter")(openrouterModels),
|
|
61
|
-
...withProvider("xai")(xaiModels),
|
|
62
|
-
...withProvider("deepinfra")(deepinfraModels),
|
|
63
|
-
...withProvider("fireworks")(fireworksModels),
|
|
64
64
|
...withProvider("cloudflare")(cloudflareModels),
|
|
65
65
|
...withProvider("gmi")(gmiModels),
|
|
66
66
|
...withProvider("zai")(zaiModels)
|
|
@@ -194,7 +194,7 @@ function readCliAuthorityDriver(env) {
|
|
|
194
194
|
function resolveCliAuthorityRunDir(options = {}) {
|
|
195
195
|
return path.join(resolveNoloHome({
|
|
196
196
|
...options,
|
|
197
|
-
env: options.env ??
|
|
197
|
+
env: options.env ?? process.env
|
|
198
198
|
}), "run");
|
|
199
199
|
}
|
|
200
200
|
function hashString(value) {
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isOAuthApiKeyRef
|
|
3
3
|
} from "./chunk-YYLHWIW6.js";
|
|
4
|
+
import {
|
|
5
|
+
compareAgentSelection
|
|
6
|
+
} from "./chunk-IZCHPD7T.js";
|
|
4
7
|
import {
|
|
5
8
|
getModelAbility
|
|
6
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-FTM4KUOZ.js";
|
|
7
10
|
import {
|
|
8
11
|
isOwnedAgentKey,
|
|
9
12
|
ownedAgentKey,
|
|
@@ -152,40 +155,10 @@ function toSafeAgentSummary(record, options) {
|
|
|
152
155
|
};
|
|
153
156
|
}
|
|
154
157
|
function sortSafeAgentSummaries(agents) {
|
|
155
|
-
return [...agents].sort(
|
|
156
|
-
const isUserConfigured = (agent) => agent.isOAuth === true || agent.isOwned === true && agent.apiSource === "custom";
|
|
157
|
-
const priority = (agent) => {
|
|
158
|
-
const favorite = agent.isFavorite === true;
|
|
159
|
-
const configured = isUserConfigured(agent);
|
|
160
|
-
if (favorite && configured) return 0;
|
|
161
|
-
if (favorite) return 1;
|
|
162
|
-
if (configured) return 2;
|
|
163
|
-
if (agent.isOwned === true) return 3;
|
|
164
|
-
return 4;
|
|
165
|
-
};
|
|
166
|
-
const priorityDiff = priority(left) - priority(right);
|
|
167
|
-
if (priorityDiff !== 0) return priorityDiff;
|
|
168
|
-
const leftFav = left.isFavorite === true;
|
|
169
|
-
const rightFav = right.isFavorite === true;
|
|
170
|
-
if (leftFav && rightFav) {
|
|
171
|
-
const leftFavAt = parseTimestamp(left.favoritedAt);
|
|
172
|
-
const rightFavAt = parseTimestamp(right.favoritedAt);
|
|
173
|
-
if (leftFavAt !== rightFavAt) return rightFavAt - leftFavAt;
|
|
174
|
-
}
|
|
175
|
-
const leftUpdated = parseTimestamp(left.updatedAt ?? left.createdAt);
|
|
176
|
-
const rightUpdated = parseTimestamp(right.updatedAt ?? right.createdAt);
|
|
177
|
-
return rightUpdated - leftUpdated;
|
|
178
|
-
});
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
// packages/ai/agent/agentAvailabilityShared.ts
|
|
182
|
-
function isAgentUnavailableNow(agent, now = Date.now()) {
|
|
183
|
-
const at = agent?.nextAvailableAt;
|
|
184
|
-
return typeof at === "number" && Number.isFinite(at) && at > now;
|
|
158
|
+
return [...agents].sort(compareAgentSelection);
|
|
185
159
|
}
|
|
186
160
|
|
|
187
161
|
export {
|
|
188
162
|
toSafeAgentSummary,
|
|
189
|
-
sortSafeAgentSummaries
|
|
190
|
-
isAgentUnavailableNow
|
|
163
|
+
sortSafeAgentSummaries
|
|
191
164
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
buildLocalAgentLookupKeys,
|
|
3
3
|
shouldReadAgentKeyRemotely
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-J5NMOM35.js";
|
|
5
5
|
import {
|
|
6
6
|
resolveCliAgentKeyInput
|
|
7
7
|
} from "./chunk-EKLRRZIN.js";
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
} from "./chunk-A7GB5UGH.js";
|
|
22
22
|
import {
|
|
23
23
|
createAgentKey
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-2WKUUY2E.js";
|
|
25
25
|
|
|
26
26
|
// packages/cli/agentRecordHelpers.ts
|
|
27
27
|
import { readFileSync } from "node:fs";
|
|
@@ -458,7 +458,9 @@ function parseAgentUpdateArgs(args) {
|
|
|
458
458
|
const copyProviderFrom = readOption(args, "--copy-provider-from");
|
|
459
459
|
const name = readOption(args, "--name");
|
|
460
460
|
const customProviderUrl = readOption(args, "--custom-provider-url");
|
|
461
|
-
const apiKey = readOption(args, "--api-key");
|
|
461
|
+
const apiKey = readOption(args, "--api-key") ?? readOption(args, "--provider-api-key");
|
|
462
|
+
const verify = args.includes("--verify");
|
|
463
|
+
const verifyPrompt = readOption(args, "--verify-prompt");
|
|
462
464
|
const maxConcurrent = parsePositiveIntegerOption(
|
|
463
465
|
readOption(args, "--max-concurrent"),
|
|
464
466
|
"--max-concurrent"
|
|
@@ -496,7 +498,7 @@ function parseAgentUpdateArgs(args) {
|
|
|
496
498
|
throw new Error("No updates provided. Use --model / --cli-provider / --api-source / --field key=value.");
|
|
497
499
|
}
|
|
498
500
|
}
|
|
499
|
-
return { agentInput, updates, promptDoc, copyProviderFrom };
|
|
501
|
+
return { agentInput, updates, promptDoc, copyProviderFrom, verify, verifyPrompt };
|
|
500
502
|
}
|
|
501
503
|
async function buildCreatedAgentRecord(args) {
|
|
502
504
|
const serverUrl = args.cliArgs ? resolveServerUrl(args.cliArgs, args.env) : resolveServerUrl(args.env);
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
i18n_default,
|
|
3
3
|
toolRegistry
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-6KYCG5GW.js";
|
|
5
5
|
import {
|
|
6
6
|
canonicalizeToolNames
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-O6OSWFZQ.js";
|
|
8
8
|
import {
|
|
9
9
|
isNoloHostedProvider
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-X6EN3KJX.js";
|
|
11
11
|
import {
|
|
12
12
|
asTrimmedLowercaseString
|
|
13
13
|
} from "./chunk-QSJ3HFEF.js";
|