nolo-cli 0.33.0-alpha.3 → 0.33.0-alpha.30
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-RWPVI3YV.js → _executeModel-G2YBBSYF.js} +53 -53
- package/{action-SMLG6OTB.js → action-4KWNL4XI.js} +10 -10
- package/{addContentAction-SFO244QN.js → addContentAction-SUL5AFLY.js} +8 -8
- package/{addDialogAgentAction-W44ZCEHB.js → addDialogAgentAction-T645TULN.js} +7 -7
- package/{agentDeleteCommand-KU2RXQPP.js → agentDeleteCommand-DZPB57QC.js} +47 -43
- package/{agentEmailCommands-MPCMDENS.js → agentEmailCommands-5UPJMRRT.js} +79 -75
- package/{agentListCommands-EPD4N6FX.js → agentListCommands-FHWEJ56M.js} +47 -42
- package/{agentMachineCommands-AF7C3YRT.js → agentMachineCommands-FNVJTZ3J.js} +44 -40
- package/agentProviderCommands-65ZC2WB4.js +122 -0
- package/{agentPullCommand-YH5GEBK4.js → agentPullCommand-NYHSK6EW.js} +3 -3
- package/{agentRecordCommands-EYE6MZZG.js → agentRecordCommands-JN2L5AMM.js} +70 -66
- package/{agentRunCommand-LL22SGTN.js → agentRunCommand-R57HN7XZ.js} +76 -71
- package/{agentRuntimeLocal-JX34G47Z.js → agentRuntimeLocal-MXIGYCZW.js} +32 -29
- package/{agentSlice-TNMFQQOV.js → agentSlice-L3S542FP.js} +10 -10
- package/{appDeleteCommands-43K5VXQB.js → appDeleteCommands-LF6HKT65.js} +39 -35
- package/{appDeployCommands-FEEJSVDZ.js → appDeployCommands-S5M2FFQS.js} +39 -35
- package/{appDeployStatusCommands-H76CG45R.js → appDeployStatusCommands-AVT2B5LY.js} +39 -35
- package/{appGetCommands-MDZYFTYZ.js → appGetCommands-ACH4E3F4.js} +39 -35
- package/{appListCommands-TUJJXPWG.js → appListCommands-LKI2VES7.js} +39 -35
- package/{authCommand-T7UK4CWS.js → authCommand-AECKBG65.js} +21 -20
- package/{authCommands-EAPFGNHN.js → authCommands-W74NRPA6.js} +6 -6
- package/{chatQueueReduxAdapter-LVQXC4ZY.js → chatQueueReduxAdapter-WJXO2JCG.js} +23 -22
- package/{chunk-HDKRSRYU.js → chunk-326E2B5C.js} +289 -93
- package/{chunk-2UECQ7RE.js → chunk-3AOLVADY.js} +1 -1
- package/{chunk-M2YMQOLC.js → chunk-3CPL3LU2.js} +11 -11
- package/chunk-3Z32AD6X.js +22 -0
- package/{chunk-HUCT7HID.js → chunk-42IF53CR.js} +1 -1
- package/{chunk-5SBK2MTI.js → chunk-64M2WCLT.js} +23 -70
- package/{chunk-LOD75GOS.js → chunk-674FTH5U.js} +3751 -1557
- package/{chunk-AOXVOC6D.js → chunk-6O5DMZOS.js} +3 -3
- package/{chunk-GMXWYXAF.js → chunk-7AXGPKX5.js} +3 -3
- package/{chunk-FMEVI5TG.js → chunk-7CH6U3FL.js} +1 -1
- package/{chunk-OR2HNLVO.js → chunk-7EPNNOL4.js} +6 -6
- package/{chunk-DFUPZE6V.js → chunk-7SLMYTSF.js} +1 -1
- package/{chunk-BQXOGBFN.js → chunk-A2YCVTV6.js} +1 -1
- package/{chunk-UK5JGQVU.js → chunk-A3UZKNUI.js} +13 -18
- package/{chunk-3GZXL6FM.js → chunk-AOWETAXX.js} +1 -1
- package/{chunk-B2BSG6QQ.js → chunk-ASWSPCJH.js} +18 -18
- package/{chunk-CLP2K7U4.js → chunk-BP3FSWKY.js} +6 -6
- package/{chunk-IHEC7VBF.js → chunk-BW7JSRVT.js} +1 -1
- package/{chunk-AAGCMVFT.js → chunk-BYXLXABD.js} +495 -148
- package/{chunk-MPZJVZDC.js → chunk-CDSTQJIJ.js} +27 -27
- package/{chunk-2H3XIBY4.js → chunk-D2CTCWWG.js} +4 -82
- package/{chunk-OIQPORYI.js → chunk-ECHNSF4H.js} +178 -2
- package/{chunk-TFPUAELY.js → chunk-EIWIUEOH.js} +2 -2
- package/{chunk-JTSGWTYZ.js → chunk-EMKX4VZW.js} +2 -2
- package/{chunk-6HYVJV7B.js → chunk-ESHYE7WU.js} +2 -1
- package/{chunk-ZURFOV5J.js → chunk-FS5VNMPF.js} +3 -3
- package/{chunk-U4TRT5V4.js → chunk-GEPHJJW4.js} +1 -1
- package/{chunk-5CS33IBL.js → chunk-GKAQBXBO.js} +11 -12
- package/{chunk-M4NC7NF6.js → chunk-GMSUMWFO.js} +2 -2
- package/{chunk-JMPYDFHY.js → chunk-HLXJXFXN.js} +21 -8
- package/{chunk-I6N2UVVY.js → chunk-JZUS5GOM.js} +1 -1
- package/{chunk-RAZOLMJR.js → chunk-KVRWX6K7.js} +2 -2
- package/{chunk-VH2F7ZB6.js → chunk-L4O5JAIW.js} +1 -1
- package/{chunk-57QJXIB6.js → chunk-L7EJWFAP.js} +9 -9
- package/{chunk-DPMBNHOJ.js → chunk-LAZTMWIU.js} +1 -1
- package/{chunk-ADLYMQB6.js → chunk-MBUNBGBE.js} +127 -0
- package/{chunk-Q5ITEGIN.js → chunk-N4XRDM26.js} +1 -1
- package/{chunk-7E72JMBB.js → chunk-N543Q3VR.js} +57 -16
- package/{chunk-WHD6BG7M.js → chunk-NEG2ROC2.js} +45 -41
- package/{chunk-2IVEXF7P.js → chunk-NMB23CNE.js} +2 -9
- package/{chunk-XCCGU6QB.js → chunk-NQWDSCDT.js} +1 -1
- package/{chunk-FSSX3XRY.js → chunk-NTOLFNU3.js} +1 -1
- package/chunk-OH4Q4VVA.js +38 -0
- package/{chunk-37V5LNEQ.js → chunk-OOG3PQCH.js} +1 -1
- package/{chunk-3WXRAHCG.js → chunk-OPSKBBSX.js} +3 -3
- package/{chunk-AFV4FOT2.js → chunk-OQVRTSZ5.js} +4 -91
- package/{chunk-GTYM4HKV.js → chunk-OXLUSM42.js} +5 -5
- package/{chunk-YDTYDA5W.js → chunk-PAW3XFD3.js} +8 -6
- package/{chunk-PREQU5QV.js → chunk-PECRHVNK.js} +1 -1
- package/{chunk-O6GEBMIY.js → chunk-PVJS353C.js} +8861 -8608
- package/{chunk-JZPBVBIY.js → chunk-QTZD6HBK.js} +18 -8
- package/chunk-TVXJEOU2.js +78 -0
- package/{chunk-3VAQHAXT.js → chunk-UFMFWBSG.js} +26 -26
- package/{chunk-73GINUCW.js → chunk-UGWIRZO6.js} +129 -50
- package/{chunk-NUO3QFWD.js → chunk-UNHKVD2N.js} +1 -1
- package/{chunk-GE6IWA5N.js → chunk-UNZDCI3O.js} +126 -1
- package/chunk-UOLENXLQ.js +1132 -0
- package/{chunk-FXFGNOT2.js → chunk-VFVCYIRQ.js} +1 -1
- package/chunk-VIRTYWWE.js +97 -0
- package/{chunk-6SXC35F4.js → chunk-VMAK5YKS.js} +12 -12
- package/{chunk-ZJMME4DS.js → chunk-W6NT2FW3.js} +6 -6
- package/{chunk-2QTEYCR7.js → chunk-X65PIFJI.js} +17 -7
- package/{chunk-JZ5AMMXU.js → chunk-XBNLE3MR.js} +3 -3
- package/{chunk-WLH5BAKX.js → chunk-YYTTDOWA.js} +2 -2
- package/{chunk-X2DAEZ3X.js → chunk-ZFGAPMSF.js} +1 -1
- package/{chunk-IL545V3E.js → chunk-ZJVSRWOP.js} +7 -7
- package/{cliExecutor-DW3PHGEL.js → cliExecutor-BBUVQU4L.js} +2 -2
- package/{codingSkills-DY5MINPG.js → codingSkills-5VOV3JVB.js} +3 -3
- package/{createAgentAutomationAction-INQT23LX.js → createAgentAutomationAction-RMKFWLA3.js} +24 -23
- package/{createDialogAction-LDCPDI73.js → createDialogAction-BLNYPWJ6.js} +27 -26
- package/{createPageAction-5YXOG2M4.js → createPageAction-MSJTHWS7.js} +28 -27
- package/{dbSlice-3SD5L5H2.js → dbSlice-YBUD2NZB.js} +7 -7
- package/{deleteFile-XQXPBFFB.js → deleteFile-74VF4EAJ.js} +4 -4
- package/{dialogCommands-CHJO47AX.js → dialogCommands-JI6X34PB.js} +38 -34
- package/{dialogSlice-DOWKOILN.js → dialogSlice-MJAX2T2X.js} +23 -22
- package/{docCreateCommands-OVZARUFX.js → docCreateCommands-KNLITDCK.js} +40 -36
- package/{docDeleteCommands-E2XJ62LD.js → docDeleteCommands-6SBOU75S.js} +41 -37
- package/{docReadCommands-I7OSREPJ.js → docReadCommands-NX77P5X4.js} +40 -36
- package/{docStore-UAWSKZ2Y.js → docStore-472FHNNN.js} +25 -24
- package/{docUpdateCommands-X4Z26VJM.js → docUpdateCommands-IHWNHH4O.js} +43 -39
- package/emscripten-module-EDQBMDVK.js +576 -0
- package/emscripten-module-LCBQ7VWY.js +1506 -0
- package/emscripten-module-OFHQ7EL3.js +482 -0
- package/emscripten-module-XM7NDJQA.js +4536 -0
- package/fetchMessages-7QRCCRYK.js +1 -1
- package/ffi-6ZSX3QJ4.js +80 -0
- package/ffi-742Y76PE.js +92 -0
- package/ffi-AEYWSYLM.js +80 -0
- package/ffi-KQC27OUM.js +92 -0
- package/{getPricing-L2ENXWHV.js → getPricing-J4VXWR5B.js} +4 -4
- package/{handleSendMessageAction-C3TSDWKH.js → handleSendMessageAction-V3SKWOOV.js} +26 -25
- package/index.js +78 -74
- package/{localRuntimeAuthority-E3R24J4T.js → localRuntimeAuthority-S77B5QVB.js} +6 -2
- package/{localRuntimeDb-DDZCJFQZ.js → localRuntimeDb-N3H3HQ7G.js} +1 -1
- package/{machineCommands-BUOIYJAD.js → machineCommands-ZDULQKUU.js} +80 -76
- package/{machineInfo-M6KB6HZN.js → machineInfo-66ZFUMLE.js} +1 -1
- package/{machineWsRunDispatch-7CRWAA6O.js → machineWsRunDispatch-XX2LNRJT.js} +68 -64
- package/{models-OX2S5C6Q.js → models-FM7YJ47W.js} +2 -2
- package/module-ES6BEMUI-AFCVSBMS.js +14 -0
- package/module-asyncify-2EFITU5U-DEP2F2QP.js +9 -0
- package/package.json +1 -1
- package/{read-6G73BMEY.js → read-7SIURKBF.js} +5 -5
- package/{readDocTool-DK4EI2GA.js → readDocTool-NWQFQ4IG.js} +1 -1
- package/{readlineWorkspace-ZDWEASJV.js → readlineWorkspace-NXB4IBLM.js} +3886 -3344
- package/{removeDialogAgentAction-E7H557UO.js → removeDialogAgentAction-S3LYHK4M.js} +11 -11
- package/{runAgentClientLoop-U7HYA3O5.js → runAgentClientLoop-TNETRJFJ.js} +50 -49
- package/{runtimeDoctorCommands-KIKM6BIO.js → runtimeDoctorCommands-HT4O2PXL.js} +6 -6
- package/{setDialogExtraReferencesAction-RMMGBR5F.js → setDialogExtraReferencesAction-L5ET3HEX.js} +8 -8
- package/{setPrimaryDialogAgentAction-FWBKKLVA.js → setPrimaryDialogAgentAction-ZZJOZQEM.js} +11 -11
- package/{settingSlice-73PV4KG4.js → settingSlice-ZFOZPBI2.js} +9 -9
- package/{skillDiscovery-KLLKXPUO.js → skillDiscovery-6YSTRCQ7.js} +3 -3
- package/{spaceCommands-GEWZXGHM.js → spaceCommands-CAWUGXJS.js} +44 -40
- package/{spaceSlice-B6MOVY4N.js → spaceSlice-J5D3LTMO.js} +24 -23
- package/{streamAgentChatTurn-T527EQTT.js → streamAgentChatTurn-YI5O3T4X.js} +104 -114
- package/{switchDialogAgentAction-US6QNL3N.js → switchDialogAgentAction-ZWCYLWVK.js} +7 -7
- package/{tableCommands-QE47K72R.js → tableCommands-5OKD2DKN.js} +8 -8
- package/{tools-XMWCVMPM.js → tools-HI4U6J6S.js} +39 -38
- package/{tuiSummaryLlmCaller-NCAJSVSD.js → tuiSummaryLlmCaller-3RC6WWRV.js} +15 -14
- package/{updateCommands-AK2RDOFR.js → updateCommands-MNDUIKN7.js} +2 -2
- package/{updateDialogTitleAction-XPJZRJEL.js → updateDialogTitleAction-V5H4LWFR.js} +30 -29
- package/chunk-6PO2SYCS.js +0 -1800
- package/{agentGrantCommands-2LEZDADN.js → agentGrantCommands-OPIGFRDO.js} +2 -2
- package/{chunk-ZHYK3N56.js → chunk-G7HTVVFL.js} +3 -3
- package/{chunk-SAQQLJZ5.js → chunk-JDSUTNYY.js} +3 -3
- package/{chunk-X664KVEV.js → chunk-QM6EN2ES.js} +3 -3
- package/{offlineMarxistsAgentCommand-GEH6SNNA.js → offlineMarxistsAgentCommand-HDIQVGKN.js} +3 -3
|
@@ -11,21 +11,29 @@ import {
|
|
|
11
11
|
deleteDialog,
|
|
12
12
|
resetMsgs,
|
|
13
13
|
toast
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-UGWIRZO6.js";
|
|
15
15
|
import {
|
|
16
16
|
deleteServerSyncedCredential
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-W6NT2FW3.js";
|
|
18
18
|
import {
|
|
19
19
|
require_date_fns
|
|
20
20
|
} from "./chunk-M76ECQRD.js";
|
|
21
|
-
import {
|
|
22
|
-
createFileCredentialBroker
|
|
23
|
-
} from "./chunk-5CS33IBL.js";
|
|
24
21
|
import {
|
|
25
22
|
clearPendingAttachments,
|
|
26
23
|
clearPendingUserInputQueue,
|
|
27
24
|
require_react
|
|
28
25
|
} from "./chunk-MRWGHF56.js";
|
|
26
|
+
import {
|
|
27
|
+
createFileCredentialBroker
|
|
28
|
+
} from "./chunk-GKAQBXBO.js";
|
|
29
|
+
import {
|
|
30
|
+
UNCATEGORIZED_ID,
|
|
31
|
+
addContentAction,
|
|
32
|
+
checkSpaceMembership,
|
|
33
|
+
createSpaceKey,
|
|
34
|
+
localSpaceAuthorityPatchStamp,
|
|
35
|
+
normalizeSpaceId
|
|
36
|
+
} from "./chunk-EMKX4VZW.js";
|
|
29
37
|
import {
|
|
30
38
|
toErrorMessage
|
|
31
39
|
} from "./chunk-HNMXYYJR.js";
|
|
@@ -33,18 +41,10 @@ import {
|
|
|
33
41
|
isSystemAdmin,
|
|
34
42
|
selectRemoteServer,
|
|
35
43
|
selectRemoteSyncServers
|
|
36
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-BP3FSWKY.js";
|
|
37
45
|
import {
|
|
38
46
|
asRecordOrEmpty
|
|
39
47
|
} from "./chunk-KX6YBIHG.js";
|
|
40
|
-
import {
|
|
41
|
-
UNCATEGORIZED_ID,
|
|
42
|
-
addContentAction,
|
|
43
|
-
checkSpaceMembership,
|
|
44
|
-
createSpaceKey,
|
|
45
|
-
localSpaceAuthorityPatchStamp,
|
|
46
|
-
normalizeSpaceId
|
|
47
|
-
} from "./chunk-JTSGWTYZ.js";
|
|
48
48
|
import {
|
|
49
49
|
patch,
|
|
50
50
|
read,
|
|
@@ -57,7 +57,7 @@ import {
|
|
|
57
57
|
uploadFileAction,
|
|
58
58
|
upsertSSREntity,
|
|
59
59
|
write
|
|
60
|
-
} from "./chunk-
|
|
60
|
+
} from "./chunk-L7EJWFAP.js";
|
|
61
61
|
import {
|
|
62
62
|
DB_PREFIX,
|
|
63
63
|
SEPARATOR,
|
|
@@ -86,7 +86,10 @@ import {
|
|
|
86
86
|
} from "./chunk-I42VC5KR.js";
|
|
87
87
|
import {
|
|
88
88
|
readAction
|
|
89
|
-
} from "./chunk-
|
|
89
|
+
} from "./chunk-A3UZKNUI.js";
|
|
90
|
+
import {
|
|
91
|
+
extractUserId
|
|
92
|
+
} from "./chunk-BJIRLHJR.js";
|
|
90
93
|
import {
|
|
91
94
|
DEVICE_LOCAL_OWNER_ID,
|
|
92
95
|
asyncThunkCreator,
|
|
@@ -102,7 +105,7 @@ import {
|
|
|
102
105
|
scheduleWriteReplication,
|
|
103
106
|
selectIdentityUserId,
|
|
104
107
|
selectRuntimeSnapshot
|
|
105
|
-
} from "./chunk-
|
|
108
|
+
} from "./chunk-QM6EN2ES.js";
|
|
106
109
|
import {
|
|
107
110
|
createClientLogger,
|
|
108
111
|
fetchFromServer,
|
|
@@ -114,18 +117,15 @@ import {
|
|
|
114
117
|
buildTombstoneRecord,
|
|
115
118
|
isTombstoneRecord
|
|
116
119
|
} from "./chunk-GBRG75BQ.js";
|
|
120
|
+
import {
|
|
121
|
+
isRecord
|
|
122
|
+
} from "./chunk-KUG52IAP.js";
|
|
117
123
|
import {
|
|
118
124
|
asTrimmedString
|
|
119
125
|
} from "./chunk-3EUW3WEO.js";
|
|
120
126
|
import {
|
|
121
127
|
asOptionalPositiveFiniteNumber
|
|
122
128
|
} from "./chunk-U6VC4MU4.js";
|
|
123
|
-
import {
|
|
124
|
-
extractUserId
|
|
125
|
-
} from "./chunk-BJIRLHJR.js";
|
|
126
|
-
import {
|
|
127
|
-
isRecord
|
|
128
|
-
} from "./chunk-KUG52IAP.js";
|
|
129
129
|
import {
|
|
130
130
|
API_ENDPOINTS,
|
|
131
131
|
API_VERSION
|
|
@@ -6257,11 +6257,11 @@ var ENTITY_DELETE_STRATEGIES = {
|
|
|
6257
6257
|
await dispatch(deleteTable({ dbKey: key })).unwrap();
|
|
6258
6258
|
},
|
|
6259
6259
|
file: async (key, { thunkAPI }) => {
|
|
6260
|
-
const { deleteFileAction } = await import("./deleteFile-
|
|
6260
|
+
const { deleteFileAction } = await import("./deleteFile-74VF4EAJ.js");
|
|
6261
6261
|
await deleteFileAction(key, thunkAPI);
|
|
6262
6262
|
},
|
|
6263
6263
|
image: async (key, { thunkAPI }) => {
|
|
6264
|
-
const { deleteFileAction } = await import("./deleteFile-
|
|
6264
|
+
const { deleteFileAction } = await import("./deleteFile-74VF4EAJ.js");
|
|
6265
6265
|
await deleteFileAction(key, thunkAPI);
|
|
6266
6266
|
},
|
|
6267
6267
|
agent: async (key, { dispatch, userId, sourceServerOrigin }) => {
|
|
@@ -9686,7 +9686,7 @@ var fetchSpaceAction = async (input, thunkAPI) => {
|
|
|
9686
9686
|
const spaceKey = createSpaceKey.space(spaceId);
|
|
9687
9687
|
const readSpace = async (dbKey) => {
|
|
9688
9688
|
try {
|
|
9689
|
-
const { read: read2, readAndWait: readAndWait2 } = await import("./dbSlice-
|
|
9689
|
+
const { read: read2, readAndWait: readAndWait2 } = await import("./dbSlice-YBUD2NZB.js");
|
|
9690
9690
|
if (fresh) {
|
|
9691
9691
|
return await dispatch(readAndWait2(dbKey)).unwrap();
|
|
9692
9692
|
}
|
|
@@ -10100,7 +10100,7 @@ var spaceSlice = createSliceWithThunks3({
|
|
|
10100
10100
|
markDialogRead: create.asyncThunk(
|
|
10101
10101
|
async (payload, thunkAPI) => {
|
|
10102
10102
|
if (payload.dialogKey) {
|
|
10103
|
-
const { patch: patch2 } = await import("./dbSlice-
|
|
10103
|
+
const { patch: patch2 } = await import("./dbSlice-YBUD2NZB.js");
|
|
10104
10104
|
try {
|
|
10105
10105
|
await thunkAPI.dispatch(
|
|
10106
10106
|
patch2({ dbKey: payload.dialogKey, changes: { unreadAt: null } })
|
|
@@ -1,87 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
MODEL_LOOKUP_MAP
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-7SLMYTSF.js";
|
|
4
4
|
import {
|
|
5
5
|
ALL_MODELS
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-X65PIFJI.js";
|
|
7
7
|
import {
|
|
8
|
-
PUBLIC_DEEPSEEK_V4_FLASH_AGENT_KEY
|
|
9
|
-
|
|
10
|
-
builtinRuntimeFallbackEntries,
|
|
11
|
-
isBuiltinPlatformAgentKey
|
|
12
|
-
} from "./chunk-UK5JGQVU.js";
|
|
13
|
-
import {
|
|
14
|
-
parsePublicAgentId,
|
|
15
|
-
publicAgentKey
|
|
16
|
-
} from "./chunk-BJIRLHJR.js";
|
|
17
|
-
|
|
18
|
-
// packages/agent-runtime/builtinPlatformAgentConfigs.ts
|
|
19
|
-
function buildConfig(e) {
|
|
20
|
-
const key = publicAgentKey(e.id);
|
|
21
|
-
const rawRecord = {
|
|
22
|
-
dbKey: key,
|
|
23
|
-
isPublic: true,
|
|
24
|
-
provider: e.provider,
|
|
25
|
-
model: e.model,
|
|
26
|
-
apiSource: e.apiSource ?? "platform",
|
|
27
|
-
useServerProxy: e.useServerProxy ?? true
|
|
28
|
-
};
|
|
29
|
-
if (e.hasImageOutput) rawRecord.hasImageOutput = true;
|
|
30
|
-
if (e.imageModel) rawRecord.imageModel = e.imageModel;
|
|
31
|
-
if (e.imageWorkflow) rawRecord.imageWorkflow = e.imageWorkflow;
|
|
32
|
-
if (e.imageConfig) rawRecord.imageConfig = e.imageConfig;
|
|
33
|
-
return {
|
|
34
|
-
key,
|
|
35
|
-
name: e.name,
|
|
36
|
-
provider: e.provider,
|
|
37
|
-
model: e.model,
|
|
38
|
-
apiSource: e.apiSource ?? "platform",
|
|
39
|
-
useServerProxy: e.useServerProxy ?? true,
|
|
40
|
-
rawRecord
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
var BUILTIN_PLATFORM_AGENT_CONFIGS = Object.fromEntries(
|
|
44
|
-
builtinRuntimeFallbackEntries().map((e) => [publicAgentKey(e.id), buildConfig(e)])
|
|
45
|
-
);
|
|
46
|
-
function resolveBuiltinPlatformAgentConfig(agentRef) {
|
|
47
|
-
return BUILTIN_PLATFORM_AGENT_CONFIGS[agentRef] ?? null;
|
|
48
|
-
}
|
|
49
|
-
function resolveBuiltinPlatformAgentRecord(agentRef) {
|
|
50
|
-
const config = resolveBuiltinPlatformAgentConfig(agentRef);
|
|
51
|
-
if (!config) return null;
|
|
52
|
-
return {
|
|
53
|
-
...config.rawRecord,
|
|
54
|
-
dbKey: agentRef,
|
|
55
|
-
...config.name ? { name: config.name } : {}
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
function resolveBuiltinAgentRuntimeFields(agentKey) {
|
|
59
|
-
if (!isBuiltinPlatformAgentKey(agentKey)) return null;
|
|
60
|
-
const entry = builtinAgentCatalogEntryById(parsePublicAgentId(agentKey));
|
|
61
|
-
if (!entry) return null;
|
|
62
|
-
return { provider: entry.provider, model: entry.model };
|
|
63
|
-
}
|
|
64
|
-
function applyBuiltinAgentRuntimeOverride(agentKey, record) {
|
|
65
|
-
const fields = resolveBuiltinAgentRuntimeFields(agentKey);
|
|
66
|
-
if (!fields) return record;
|
|
67
|
-
const current = record;
|
|
68
|
-
const rawNeedsOverride = current.rawRecord != null && (current.rawRecord.provider !== fields.provider || current.rawRecord.model !== fields.model);
|
|
69
|
-
if (current.provider === fields.provider && current.model === fields.model && !rawNeedsOverride) {
|
|
70
|
-
return record;
|
|
71
|
-
}
|
|
72
|
-
return {
|
|
73
|
-
...record,
|
|
74
|
-
provider: fields.provider,
|
|
75
|
-
model: fields.model,
|
|
76
|
-
...current.rawRecord ? {
|
|
77
|
-
rawRecord: {
|
|
78
|
-
...current.rawRecord,
|
|
79
|
-
provider: fields.provider,
|
|
80
|
-
model: fields.model
|
|
81
|
-
}
|
|
82
|
-
} : {}
|
|
83
|
-
};
|
|
84
|
-
}
|
|
8
|
+
PUBLIC_DEEPSEEK_V4_FLASH_AGENT_KEY
|
|
9
|
+
} from "./chunk-A3UZKNUI.js";
|
|
85
10
|
|
|
86
11
|
// packages/ai/llm/getModelContextWindow.ts
|
|
87
12
|
var DEFAULT_CONTEXT_WINDOW = 256e3;
|
|
@@ -228,9 +153,6 @@ var DEFAULT_AUTO_EXECUTION_PROFILE = AUTO_EXECUTION_PROFILES[DEFAULT_AUTO_EXECUT
|
|
|
228
153
|
var resolveAutoExecutionProfile = (tier) => AUTO_EXECUTION_PROFILES[tier ?? DEFAULT_AUTO_EXECUTION_TIER] ?? DEFAULT_AUTO_EXECUTION_PROFILE;
|
|
229
154
|
|
|
230
155
|
export {
|
|
231
|
-
resolveBuiltinPlatformAgentConfig,
|
|
232
|
-
resolveBuiltinPlatformAgentRecord,
|
|
233
|
-
applyBuiltinAgentRuntimeOverride,
|
|
234
156
|
DEFAULT_CONTEXT_WINDOW,
|
|
235
157
|
getModelContextWindow,
|
|
236
158
|
getModelInfo,
|
|
@@ -1,16 +1,125 @@
|
|
|
1
|
+
import {
|
|
2
|
+
findModelConfig,
|
|
3
|
+
getProviderByModelName
|
|
4
|
+
} from "./chunk-7SLMYTSF.js";
|
|
1
5
|
import {
|
|
2
6
|
asOptionalFiniteNumber
|
|
3
7
|
} from "./chunk-WWC7I6TA.js";
|
|
4
8
|
import {
|
|
5
|
-
|
|
6
|
-
} from "./chunk-
|
|
9
|
+
asTrimmedLowercaseString
|
|
10
|
+
} from "./chunk-QSJ3HFEF.js";
|
|
7
11
|
import {
|
|
8
12
|
isRecord
|
|
9
13
|
} from "./chunk-KUG52IAP.js";
|
|
14
|
+
import {
|
|
15
|
+
asTrimmedString
|
|
16
|
+
} from "./chunk-3EUW3WEO.js";
|
|
10
17
|
import {
|
|
11
18
|
asOptionalTrimmedString
|
|
12
19
|
} from "./chunk-G3SUCT4W.js";
|
|
13
20
|
|
|
21
|
+
// packages/ai/llm/agentCapabilities.ts
|
|
22
|
+
var ANTIGRAVITY_EFFORT_SUFFIXES = [
|
|
23
|
+
"-tiered",
|
|
24
|
+
"-extra-low",
|
|
25
|
+
"-low",
|
|
26
|
+
"-medium",
|
|
27
|
+
"-high"
|
|
28
|
+
];
|
|
29
|
+
function stripEffortSuffix(model) {
|
|
30
|
+
for (const suffix of ANTIGRAVITY_EFFORT_SUFFIXES) {
|
|
31
|
+
if (model.endsWith(suffix) && model.length > suffix.length) {
|
|
32
|
+
return model.slice(0, -suffix.length);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return model;
|
|
36
|
+
}
|
|
37
|
+
function stripPreviewSuffix(model) {
|
|
38
|
+
const suffix = "-preview";
|
|
39
|
+
if (model.endsWith(suffix) && model.length > suffix.length) {
|
|
40
|
+
return model.slice(0, -suffix.length);
|
|
41
|
+
}
|
|
42
|
+
return model;
|
|
43
|
+
}
|
|
44
|
+
var lookupKnownModelVision = (provider, model) => {
|
|
45
|
+
if (!model) return void 0;
|
|
46
|
+
const candidates = [model];
|
|
47
|
+
const strippedEffort = stripEffortSuffix(model);
|
|
48
|
+
if (strippedEffort !== model) candidates.push(strippedEffort);
|
|
49
|
+
const strippedPreview = stripPreviewSuffix(model);
|
|
50
|
+
if (strippedPreview !== model) candidates.push(strippedPreview);
|
|
51
|
+
for (const candidate of candidates) {
|
|
52
|
+
if (provider && provider !== "custom") {
|
|
53
|
+
const direct = findModelConfig(provider, candidate);
|
|
54
|
+
if (direct && typeof direct.hasVision === "boolean") return direct.hasVision;
|
|
55
|
+
}
|
|
56
|
+
const detected = getProviderByModelName(candidate);
|
|
57
|
+
if (detected) {
|
|
58
|
+
const found = findModelConfig(detected, candidate)?.hasVision;
|
|
59
|
+
if (found !== void 0) return found;
|
|
60
|
+
}
|
|
61
|
+
if (candidate.includes("/")) {
|
|
62
|
+
const slash = candidate.indexOf("/");
|
|
63
|
+
const modelProvider = candidate.slice(0, slash).toLowerCase();
|
|
64
|
+
const modelName = candidate.slice(slash + 1);
|
|
65
|
+
const nested = findModelConfig(modelProvider, modelName);
|
|
66
|
+
if (nested && typeof nested.hasVision === "boolean") return nested.hasVision;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return void 0;
|
|
70
|
+
};
|
|
71
|
+
var resolveAgentImageInputSupport = (agent) => {
|
|
72
|
+
if (!agent) return true;
|
|
73
|
+
const provider = asTrimmedLowercaseString(agent.provider) || null;
|
|
74
|
+
const model = asOptionalTrimmedString(agent.model) ?? "";
|
|
75
|
+
const catalogHasVision = lookupKnownModelVision(
|
|
76
|
+
provider,
|
|
77
|
+
model
|
|
78
|
+
);
|
|
79
|
+
if (catalogHasVision !== void 0) {
|
|
80
|
+
return catalogHasVision;
|
|
81
|
+
}
|
|
82
|
+
if (typeof agent.hasVision === "boolean") {
|
|
83
|
+
return agent.hasVision;
|
|
84
|
+
}
|
|
85
|
+
return true;
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
// packages/ai/agent/imagePreprocessing.ts
|
|
89
|
+
function extractImageUrlsFromMessages(messages) {
|
|
90
|
+
const urls = [];
|
|
91
|
+
for (const msg of messages) {
|
|
92
|
+
if (!Array.isArray(msg.content)) continue;
|
|
93
|
+
for (const part of msg.content) {
|
|
94
|
+
if (part && typeof part === "object" && part.type === "image_url" && part.image_url && typeof part.image_url.url === "string" && part.image_url.url.trim()) {
|
|
95
|
+
urls.push(part.image_url.url);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return urls;
|
|
100
|
+
}
|
|
101
|
+
function hasImageInRuntimeMessages(messages) {
|
|
102
|
+
return extractImageUrlsFromMessages(messages).length > 0;
|
|
103
|
+
}
|
|
104
|
+
var IMAGE_OMITTED_PLACEHOLDER = "[Image content omitted: model does not support image input]";
|
|
105
|
+
function stripImagePartsFromContent(content) {
|
|
106
|
+
if (!Array.isArray(content)) return content;
|
|
107
|
+
const filtered = content.filter((part) => part?.type !== "image_url");
|
|
108
|
+
if (filtered.length === 0) return IMAGE_OMITTED_PLACEHOLDER;
|
|
109
|
+
return filtered;
|
|
110
|
+
}
|
|
111
|
+
function stripImagePartsFromMessages(messages) {
|
|
112
|
+
return messages.map((msg) => ({
|
|
113
|
+
...msg,
|
|
114
|
+
content: stripImagePartsFromContent(msg.content)
|
|
115
|
+
}));
|
|
116
|
+
}
|
|
117
|
+
async function stripImagePartsForTextOnlyAgent(messages, agentConfig) {
|
|
118
|
+
const supportsVision = resolveAgentImageInputSupport(agentConfig);
|
|
119
|
+
const hasImages = hasImageInRuntimeMessages(messages);
|
|
120
|
+
return { messages: !supportsVision && hasImages ? stripImagePartsFromMessages(messages) : messages };
|
|
121
|
+
}
|
|
122
|
+
|
|
14
123
|
// packages/agent-runtime/agentRecordConfig.ts
|
|
15
124
|
function stringField(record, key) {
|
|
16
125
|
const value = record[key];
|
|
@@ -97,6 +206,63 @@ function resolveAgentRuntimeConfigFromRecord(key, record) {
|
|
|
97
206
|
};
|
|
98
207
|
}
|
|
99
208
|
|
|
209
|
+
// packages/ai/agent/toolOutputPolicy.ts
|
|
210
|
+
var MAX_HISTORICAL_TOOL_CONTENT_CHARS = 1600;
|
|
211
|
+
var MAX_IN_TURN_TOOL_CONTENT_CHARS = 4e3;
|
|
212
|
+
var FRESH_TOOL_OUTPUT_MAX_CHARS = 32e3;
|
|
213
|
+
var DEFAULT_TOOL_OUTPUT_PROFILE = {
|
|
214
|
+
maxChars: MAX_IN_TURN_TOOL_CONTENT_CHARS,
|
|
215
|
+
headRatio: 0.5
|
|
216
|
+
};
|
|
217
|
+
var TOOL_OUTPUT_PROFILES = {
|
|
218
|
+
readFile: { maxChars: 4800, headRatio: 0.68, historicalMaxChars: 4800 },
|
|
219
|
+
read_file: { maxChars: 4800, headRatio: 0.68, historicalMaxChars: 4800 },
|
|
220
|
+
readWorkspaceFile: { maxChars: 4800, headRatio: 0.68, historicalMaxChars: 4800 },
|
|
221
|
+
searchFiles: { maxChars: 3600, headRatio: 0.78 },
|
|
222
|
+
search_files: { maxChars: 3600, headRatio: 0.78 },
|
|
223
|
+
listFiles: { maxChars: 2800, headRatio: 0.85 },
|
|
224
|
+
globFiles: { maxChars: 2800, headRatio: 0.85 },
|
|
225
|
+
execShell: { maxChars: 4e3, headRatio: 0.35 },
|
|
226
|
+
runCommand: { maxChars: 4e3, headRatio: 0.35 },
|
|
227
|
+
launchProcess: { maxChars: 2800, headRatio: 0.35 },
|
|
228
|
+
editFile: { maxChars: 2800, headRatio: 0.62 },
|
|
229
|
+
writeFile: { maxChars: 2400, headRatio: 0.62 },
|
|
230
|
+
readPastedText: { maxChars: 4800, headRatio: 0.5, historicalMaxChars: 4800 }
|
|
231
|
+
};
|
|
232
|
+
function resolveToolOutputProfile(toolName) {
|
|
233
|
+
return (toolName ? TOOL_OUTPUT_PROFILES[toolName] : void 0) ?? DEFAULT_TOOL_OUTPUT_PROFILE;
|
|
234
|
+
}
|
|
235
|
+
function resolveHistoricalToolContentCap(toolName, historicalMaxChars) {
|
|
236
|
+
const profile = toolName ? TOOL_OUTPUT_PROFILES[toolName] : void 0;
|
|
237
|
+
return profile?.historicalMaxChars !== void 0 ? Math.max(historicalMaxChars, profile.historicalMaxChars) : historicalMaxChars;
|
|
238
|
+
}
|
|
239
|
+
function projectToolMessageContent(input) {
|
|
240
|
+
const { content, isFresh, toolName, historicalMaxChars } = input;
|
|
241
|
+
if (isFresh) {
|
|
242
|
+
if (content.length <= FRESH_TOOL_OUTPUT_MAX_CHARS) return content;
|
|
243
|
+
return clipToolText(
|
|
244
|
+
content,
|
|
245
|
+
FRESH_TOOL_OUTPUT_MAX_CHARS,
|
|
246
|
+
resolveToolOutputProfile(toolName).headRatio,
|
|
247
|
+
`
|
|
248
|
+
\u2026[\u622A\u65AD\uFF0C\u539F\u59CB\u957F\u5EA6 ${content.length} \u5B57\u7B26]`
|
|
249
|
+
);
|
|
250
|
+
}
|
|
251
|
+
const cap = resolveHistoricalToolContentCap(toolName, historicalMaxChars);
|
|
252
|
+
if (content.length <= cap) return content;
|
|
253
|
+
return content.slice(0, cap) + `
|
|
254
|
+
\u2026[\u622A\u65AD\uFF0C\u539F\u59CB\u957F\u5EA6 ${content.length} \u5B57\u7B26]`;
|
|
255
|
+
}
|
|
256
|
+
function clipToolText(content, maxChars, headRatio, marker = "\n\n[... tool output middle omitted; head/tail preserved ...]\n\n") {
|
|
257
|
+
const normalized = content.replace(/\r\n/g, "\n").trim();
|
|
258
|
+
if (normalized.length <= maxChars) return normalized;
|
|
259
|
+
if (maxChars <= marker.length + 2) return normalized.slice(0, maxChars);
|
|
260
|
+
const available = maxChars - marker.length;
|
|
261
|
+
const headChars = Math.max(1, Math.floor(available * headRatio));
|
|
262
|
+
const tailChars = Math.max(1, available - headChars);
|
|
263
|
+
return `${normalized.slice(0, headChars)}${marker}${normalized.slice(-tailChars)}`;
|
|
264
|
+
}
|
|
265
|
+
|
|
100
266
|
// packages/agent-runtime/desktopRequestSnapshot.ts
|
|
101
267
|
var DESKTOP_AGENT_CONFIG_SNAPSHOT_STRING_FIELDS = [
|
|
102
268
|
"name",
|
|
@@ -376,6 +542,16 @@ function assertDesktopAgentRuntimeTurnBodyHasNoRawSecrets(body) {
|
|
|
376
542
|
}
|
|
377
543
|
|
|
378
544
|
export {
|
|
545
|
+
resolveAgentImageInputSupport,
|
|
546
|
+
hasImageInRuntimeMessages,
|
|
547
|
+
stripImagePartsFromMessages,
|
|
548
|
+
stripImagePartsForTextOnlyAgent,
|
|
549
|
+
MAX_HISTORICAL_TOOL_CONTENT_CHARS,
|
|
550
|
+
FRESH_TOOL_OUTPUT_MAX_CHARS,
|
|
551
|
+
resolveToolOutputProfile,
|
|
552
|
+
resolveHistoricalToolContentCap,
|
|
553
|
+
projectToolMessageContent,
|
|
554
|
+
clipToolText,
|
|
379
555
|
resolveAgentRuntimeConfigFromRecord,
|
|
380
556
|
buildDesktopAgentRuntimeAgentConfigSnapshot,
|
|
381
557
|
buildDesktopAgentRuntimeDialogHistorySnapshot,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
selectCurrentServer,
|
|
3
3
|
selectRemoteServers
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-BP3FSWKY.js";
|
|
5
5
|
import {
|
|
6
6
|
createUserKey,
|
|
7
7
|
extractAgentInfo,
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
noloWriteRequest,
|
|
17
17
|
selectIdentityUser,
|
|
18
18
|
selectIdentityUserId
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-QM6EN2ES.js";
|
|
20
20
|
import {
|
|
21
21
|
normalizeTimeFields
|
|
22
22
|
} from "./chunk-WJSW43QZ.js";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
patch,
|
|
3
3
|
read
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-L7EJWFAP.js";
|
|
5
5
|
import {
|
|
6
6
|
DEVICE_LOCAL_OWNER_ID,
|
|
7
7
|
isDeviceLocalSpaceBody,
|
|
8
8
|
selectIdentityUserId
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-QM6EN2ES.js";
|
|
10
10
|
|
|
11
11
|
// packages/create/space/spaceKeys.ts
|
|
12
12
|
var SEPARATOR = "-";
|
|
@@ -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 {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
buildSkillDiscoveryLayer
|
|
3
|
-
} from "./chunk-2UECQ7RE.js";
|
|
4
1
|
import {
|
|
5
2
|
load
|
|
6
3
|
} from "./chunk-KHCLMKZZ.js";
|
|
4
|
+
import {
|
|
5
|
+
buildSkillDiscoveryLayer
|
|
6
|
+
} from "./chunk-3AOLVADY.js";
|
|
7
7
|
|
|
8
8
|
// packages/agent-runtime/skillDiscovery.ts
|
|
9
9
|
import { existsSync, readFileSync, readdirSync, statSync } from "node:fs";
|
|
@@ -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,18 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getCredentialsDir
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-QTZD6HBK.js";
|
|
4
4
|
import {
|
|
5
5
|
asNonEmptyStringArray
|
|
6
6
|
} from "./chunk-I42VC5KR.js";
|
|
7
|
+
import {
|
|
8
|
+
isRecord
|
|
9
|
+
} from "./chunk-KUG52IAP.js";
|
|
7
10
|
import {
|
|
8
11
|
asTrimmedString
|
|
9
12
|
} from "./chunk-3EUW3WEO.js";
|
|
10
13
|
import {
|
|
11
14
|
asOptionalPositiveFiniteNumber
|
|
12
15
|
} from "./chunk-U6VC4MU4.js";
|
|
13
|
-
import {
|
|
14
|
-
isRecord
|
|
15
|
-
} from "./chunk-KUG52IAP.js";
|
|
16
16
|
|
|
17
17
|
// packages/agent-runtime/fileCredentialBroker.ts
|
|
18
18
|
import {
|
|
@@ -23,7 +23,6 @@ import {
|
|
|
23
23
|
unlinkSync,
|
|
24
24
|
writeFileSync
|
|
25
25
|
} from "node:fs";
|
|
26
|
-
import { homedir } from "node:os";
|
|
27
26
|
import { join } from "node:path";
|
|
28
27
|
|
|
29
28
|
// packages/agent-runtime/credentialBroker.ts
|
|
@@ -39,7 +38,7 @@ function assertCredentialRef(ref) {
|
|
|
39
38
|
}
|
|
40
39
|
|
|
41
40
|
// packages/agent-runtime/fileCredentialBroker.ts
|
|
42
|
-
function getApiKeyCredentialsDir(homeDir
|
|
41
|
+
function getApiKeyCredentialsDir(homeDir) {
|
|
43
42
|
return join(getCredentialsDir(homeDir), "keys");
|
|
44
43
|
}
|
|
45
44
|
function credentialRefToFileName(ref) {
|
|
@@ -49,7 +48,7 @@ function credentialRefToFileName(ref) {
|
|
|
49
48
|
}
|
|
50
49
|
return `${safe}.json`;
|
|
51
50
|
}
|
|
52
|
-
function getApiKeyCredentialPath(ref, homeDir
|
|
51
|
+
function getApiKeyCredentialPath(ref, homeDir) {
|
|
53
52
|
return join(getApiKeyCredentialsDir(homeDir), credentialRefToFileName(ref));
|
|
54
53
|
}
|
|
55
54
|
function ensurePrivateDir(dir) {
|
|
@@ -66,7 +65,7 @@ function writePrivateFile(path, body) {
|
|
|
66
65
|
} catch {
|
|
67
66
|
}
|
|
68
67
|
}
|
|
69
|
-
function readApiKeyCredential(ref, homeDir
|
|
68
|
+
function readApiKeyCredential(ref, homeDir) {
|
|
70
69
|
const path = getApiKeyCredentialPath(ref, homeDir);
|
|
71
70
|
if (!existsSync(path)) return null;
|
|
72
71
|
try {
|
|
@@ -78,7 +77,7 @@ function readApiKeyCredential(ref, homeDir = homedir()) {
|
|
|
78
77
|
return null;
|
|
79
78
|
}
|
|
80
79
|
}
|
|
81
|
-
function writeApiKeyCredential(ref, secret, homeDir
|
|
80
|
+
function writeApiKeyCredential(ref, secret, homeDir, now = Date.now()) {
|
|
82
81
|
const trimmedSecret = secret.trim();
|
|
83
82
|
if (!trimmedSecret) {
|
|
84
83
|
throw new Error("Cannot store an empty credential secret.");
|
|
@@ -94,17 +93,17 @@ function writeApiKeyCredential(ref, secret, homeDir = homedir(), now = Date.now(
|
|
|
94
93
|
writePrivateFile(path, `${JSON.stringify(payload, null, 2)}
|
|
95
94
|
`);
|
|
96
95
|
}
|
|
97
|
-
function removeApiKeyCredential(ref, homeDir
|
|
96
|
+
function removeApiKeyCredential(ref, homeDir) {
|
|
98
97
|
assertCredentialRef(ref);
|
|
99
98
|
const path = getApiKeyCredentialPath(ref, homeDir);
|
|
100
99
|
if (!existsSync(path)) return;
|
|
101
100
|
unlinkSync(path);
|
|
102
101
|
}
|
|
103
|
-
function hasApiKeyCredential(ref, homeDir
|
|
102
|
+
function hasApiKeyCredential(ref, homeDir) {
|
|
104
103
|
return readApiKeyCredential(ref, homeDir) !== null;
|
|
105
104
|
}
|
|
106
105
|
function createFileCredentialBroker(options = {}) {
|
|
107
|
-
const homeDir = options.homeDir
|
|
106
|
+
const homeDir = options.homeDir;
|
|
108
107
|
const now = options.now ?? Date.now;
|
|
109
108
|
return {
|
|
110
109
|
get(ref) {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
i18n_default,
|
|
3
3
|
toolRegistry
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-326E2B5C.js";
|
|
5
5
|
import {
|
|
6
6
|
canonicalizeToolNames
|
|
7
7
|
} from "./chunk-ZZ2MH7LE.js";
|
|
8
8
|
import {
|
|
9
9
|
isNoloHostedProvider
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-7EPNNOL4.js";
|
|
11
11
|
import {
|
|
12
12
|
asTrimmedLowercaseString
|
|
13
13
|
} from "./chunk-QSJ3HFEF.js";
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
import {
|
|
2
|
+
clearCliLocalRuntimePreparedAgentCache
|
|
3
|
+
} from "./chunk-PVJS353C.js";
|
|
1
4
|
import {
|
|
2
5
|
getReadableCliDb
|
|
3
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-UNHKVD2N.js";
|
|
4
7
|
import {
|
|
5
8
|
buildCreatedAgentRecord,
|
|
6
9
|
buildUpdatedAgentRecord,
|
|
@@ -9,10 +12,7 @@ import {
|
|
|
9
12
|
resolveAgentRecordFromHybridStore,
|
|
10
13
|
sanitizeAgentRecordForCliOutput,
|
|
11
14
|
writeAgentRecord
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import {
|
|
14
|
-
clearCliLocalRuntimePreparedAgentCache
|
|
15
|
-
} from "./chunk-O6GEBMIY.js";
|
|
15
|
+
} from "./chunk-PAW3XFD3.js";
|
|
16
16
|
import {
|
|
17
17
|
resolveCliAgentKeyInput
|
|
18
18
|
} from "./chunk-EKLRRZIN.js";
|
|
@@ -94,7 +94,7 @@ async function runAgentUpdateCommand(args, deps = {}) {
|
|
|
94
94
|
}
|
|
95
95
|
if (!parsed) {
|
|
96
96
|
output.write(
|
|
97
|
-
"Usage: nolo agent update <agent> [--model <id>] [--cli-provider <provider>] [--api-source <source>] [--max-concurrent <n>] [--expires-at <iso>] [--prompt <text> | --prompt-file <path> | --prompt-doc <pageKey>] [--tools <json>] [--copy-provider-from <agent>] [--field key=value]\n".replace("[--field key=value]", `[--handle <name>] [--field key=value] (e.g. --field disabledTools='["exa_search"]' to disable default tools)`)
|
|
97
|
+
"Usage: nolo agent update <agent> [--model <id>] [--cli-provider <provider>] [--api-source <source>] [--max-concurrent <n>] [--expires-at <iso>] [--prompt <text> | --prompt-file <path> | --prompt-doc <pageKey>] [--tools <json>] [--copy-provider-from <agent>] [--name <name>] [--custom-provider-url <url>] [--api-key <key>|--provider-api-key <key>] [--field key=value]\n".replace("[--field key=value]", `[--handle <name>] [--field key=value] (e.g. --field disabledTools='["exa_search"]' to disable default tools)`)
|
|
98
98
|
);
|
|
99
99
|
return args[0] ? 0 : 1;
|
|
100
100
|
}
|
|
@@ -167,7 +167,7 @@ async function runAgentCreateCommand(args, deps = {}) {
|
|
|
167
167
|
}
|
|
168
168
|
if (!parsed) {
|
|
169
169
|
output.write(
|
|
170
|
-
"Usage: nolo agent create <agent> [--model <id>] [--cli-provider <provider>] [--api-source <source>] [--max-concurrent <n>] [--expires-at <iso>] [--prompt <text> | --prompt-file <path> | --prompt-doc <pageKey>] [--tools <json>] [--copy-provider-from <agent>] [--name <name>] [--custom-provider-url <url>] [--provider-api-key <key>] [--field key=value]\n".replace("[--field key=value]", "[--handle <name>] [--field key=value]")
|
|
170
|
+
"Usage: nolo agent create <agent> [--model <id>] [--cli-provider <provider>] [--api-source <source>] [--max-concurrent <n>] [--expires-at <iso>] [--prompt <text> | --prompt-file <path> | --prompt-doc <pageKey>] [--tools <json>] [--copy-provider-from <agent>] [--name <name>] [--custom-provider-url <url>] [--api-key <key>|--provider-api-key <key>] [--verify] [--field key=value]\n".replace("[--field key=value]", "[--handle <name>] [--field key=value]")
|
|
171
171
|
);
|
|
172
172
|
return args[0] ? 0 : 1;
|
|
173
173
|
}
|
|
@@ -210,12 +210,25 @@ async function runAgentCreateCommand(args, deps = {}) {
|
|
|
210
210
|
serverOrigin: built.serverUrl
|
|
211
211
|
});
|
|
212
212
|
clearCliLocalRuntimePreparedAgentCache();
|
|
213
|
+
let verifyResult;
|
|
214
|
+
if (parsed.verify) {
|
|
215
|
+
const { verifyCustomProvider } = await import("./agentProviderCommands-65ZC2WB4.js");
|
|
216
|
+
const rec = built.nextRecord;
|
|
217
|
+
verifyResult = await verifyCustomProvider({
|
|
218
|
+
providerUrl: rec.customProviderUrl,
|
|
219
|
+
apiKey: rec.apiKey,
|
|
220
|
+
model: rec.model,
|
|
221
|
+
prompt: parsed.verifyPrompt,
|
|
222
|
+
fetchImpl
|
|
223
|
+
});
|
|
224
|
+
}
|
|
213
225
|
output.write(JSON.stringify({
|
|
214
226
|
ok: true,
|
|
215
227
|
agentKey: built.agentKey,
|
|
216
228
|
baseUrl: built.serverUrl,
|
|
217
229
|
updates: sanitizeAgentRecordForCliOutput(built.updates),
|
|
218
|
-
record: sanitizeAgentRecordForCliOutput(built.nextRecord)
|
|
230
|
+
record: sanitizeAgentRecordForCliOutput(built.nextRecord),
|
|
231
|
+
...verifyResult ? { verify: verifyResult } : {}
|
|
219
232
|
}, null, 2));
|
|
220
233
|
output.write("\n");
|
|
221
234
|
return 0;
|