nolo-cli 0.25.1 → 0.26.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/README.md +9 -18
- package/{_executeModel-LXNDVFT2.js → _executeModel-ZPNYAEFW.js} +18 -18
- package/{agentDeleteCommand-DMAYEVOP.js → agentDeleteCommand-5ZV4433K.js} +12 -12
- package/{agentEmailCommands-RVGRDAD6.js → agentEmailCommands-Z7KOYDVQ.js} +23 -23
- package/{agentListCommands-SMW3NENV.js → agentListCommands-UQUXJYUN.js} +14 -14
- package/{agentMachineCommands-VGE5A52U.js → agentMachineCommands-53O6P6L5.js} +12 -12
- package/{agentRecordCommands-UHFL5OLB.js → agentRecordCommands-ZRYNBSSS.js} +22 -22
- package/{agentRunCommand-GG4Z735K.js → agentRunCommand-B73MKVOG.js} +22 -22
- package/{agentRuntimeLocal-7N2SUWO2.js → agentRuntimeLocal-GVNERRKQ.js} +11 -9
- package/{agentSlice-WY7SEYXO.js → agentSlice-OJBHIL34.js} +1 -1
- package/{appDeleteCommands-AUC7KDHU.js → appDeleteCommands-23Z3Z6KE.js} +13 -13
- package/{appDeployCommands-OVYWXTNP.js → appDeployCommands-3MFAR4Z7.js} +13 -13
- package/{appDeployStatusCommands-DNUCH3KK.js → appDeployStatusCommands-JHU6GSN4.js} +13 -13
- package/{appGetCommands-4DLM2P37.js → appGetCommands-24J55H2Y.js} +13 -13
- package/{appListCommands-CL4VLCZW.js → appListCommands-HE5KP3PH.js} +13 -13
- package/{authCommand-W2BDNL4D.js → authCommand-KGRK6MNU.js} +8 -8
- package/{authCommands-NYZM2B2I.js → authCommands-JSOG2H4E.js} +2 -2
- package/{chunk-OBO5YB35.js → chunk-5DWZ46RJ.js} +1 -1
- package/{chunk-E2VQTGUO.js → chunk-5EDKWSQN.js} +8 -8
- package/{chunk-B6RCQ4BM.js → chunk-AAWJ5S3G.js} +1 -1
- package/{chunk-THN2YFSR.js → chunk-ADE6577S.js} +62 -17
- package/{chunk-SDDOGQ6M.js → chunk-AOPOTHFK.js} +1 -1
- package/{chunk-OTIS3VY6.js → chunk-AZW5AHMW.js} +1 -1
- package/{chunk-7HD7MCCZ.js → chunk-CV6BM7LU.js} +1 -1
- package/{chunk-ACBCDO2E.js → chunk-CWTT2NZ6.js} +2 -2
- package/{chunk-OHK3HE4G.js → chunk-CZHE6LLV.js} +74 -11
- package/{chunk-35RYGII3.js → chunk-FXFGNOT2.js} +67 -1
- package/{chunk-T3EOQH72.js → chunk-G36SUBHA.js} +14 -4
- package/{chunk-QJZJW65A.js → chunk-GD23ZX7Z.js} +3 -3
- package/{chunk-DXJS7VSG.js → chunk-GE6IWA5N.js} +9 -2
- package/{chunk-P5AVCQF3.js → chunk-GGB6MPHD.js} +19 -18
- package/{chunk-NZXRTSOY.js → chunk-GNGOZMU2.js} +2 -2
- package/{chunk-6NUG4BJE.js → chunk-J2WT5CEO.js} +1 -1
- package/{chunk-XJBAAOKS.js → chunk-JJ2WUBFN.js} +1 -1
- package/{chunk-ONGWRXVA.js → chunk-KURQBS7S.js} +1 -1
- package/{chunk-J6MEBHAT.js → chunk-LEHTC2FI.js} +1 -1
- package/{chunk-6OMNSBFW.js → chunk-LLDGWLML.js} +8 -8
- package/{chunk-MSBHAQVV.js → chunk-MCXQNEJ3.js} +1 -1
- package/{chunk-WV3WZRYZ.js → chunk-P3RZ6DHN.js} +74 -15
- package/{chunk-5IIJMMC3.js → chunk-PMCKFQYC.js} +1 -1
- package/{chunk-UTADKKM7.js → chunk-PTKI7TIN.js} +101 -23
- package/{chunk-5UI2CDQG.js → chunk-PXPISYEH.js} +14 -9
- package/{chunk-LWHK7TZR.js → chunk-PY7VGC5M.js} +24 -5
- package/{chunk-C4JWF4EX.js → chunk-RM464B7I.js} +2 -2
- package/{chunk-2KPE5HQM.js → chunk-S7AV3NCK.js} +47 -14
- package/{chunk-5TAM6OX3.js → chunk-SIUEKVK4.js} +136 -41
- package/{chunk-XR6PNQ3N.js → chunk-TLYHUIWF.js} +3 -3
- package/{chunk-RRJD2ZUV.js → chunk-TNM27YZ7.js} +3 -3
- package/{chunk-J3HWN4B5.js → chunk-TWA4L7J7.js} +1 -1
- package/{chunk-UZH44DWK.js → chunk-WCP5FDTF.js} +13 -20
- package/{chunk-4POUK2BV.js → chunk-WSQLK2KR.js} +1 -1
- package/{chunk-OMWJXZSZ.js → chunk-XNZJVYFS.js} +1 -1
- package/{chunk-KF3VWOQ6.js → chunk-YJY7HODU.js} +1 -1
- package/{chunk-DZNONG7L.js → chunk-ZFL3LTU7.js} +2 -2
- package/{createAgentAutomationAction-B5G57KMG.js → createAgentAutomationAction-PO62NUR7.js} +6 -6
- package/{createDialogAction-SYKO3ACQ.js → createDialogAction-ORFRYI3C.js} +7 -7
- package/{createPageAction-UBO6CXTT.js → createPageAction-XWVMNTYH.js} +6 -6
- package/{dialogCommands-FQPSK7QE.js → dialogCommands-XTJHROXM.js} +13 -13
- package/{dialogSlice-OFGPXYFS.js → dialogSlice-DJXC53YW.js} +6 -6
- package/{docCreateCommands-ELKBZBHI.js → docCreateCommands-T2XRVXYS.js} +12 -12
- package/{docDeleteCommands-R6X3FKHX.js → docDeleteCommands-L7RXFXY3.js} +13 -13
- package/{docReadCommands-QNVUXQNM.js → docReadCommands-M5PYNADQ.js} +12 -12
- package/{docStore-WFMCDOGV.js → docStore-6LKLLFDW.js} +7 -7
- package/{docUpdateCommands-OOR4CWYI.js → docUpdateCommands-OA5EGPLQ.js} +12 -12
- package/{getPricing-ZOASM7TQ.js → getPricing-6C3C47Y4.js} +3 -3
- package/{handleSendMessageAction-R3AP5MQY.js → handleSendMessageAction-ILFGZTN5.js} +6 -6
- package/index.js +68 -68
- package/{machineCommands-FPZ2UVCS.js → machineCommands-AKAQGPAO.js} +21 -21
- package/{machineWsRunDispatch-XAVKPZLL.js → machineWsRunDispatch-RSBERM64.js} +21 -21
- package/{models-DUNBMXRQ.js → models-ILWKIX2Y.js} +2 -2
- package/package.json +1 -1
- package/{readlineWorkspace-O3D2LRYG.js → readlineWorkspace-TUH3SFHO.js} +112 -62
- package/{runAgentClientLoop-UWNABHIZ.js → runAgentClientLoop-C3QB2EXV.js} +15 -15
- package/{spaceCommands-L6R7DD2L.js → spaceCommands-SXYOFGUJ.js} +12 -12
- package/{spaceSlice-2UQAI6GT.js → spaceSlice-6BHMRP5O.js} +6 -6
- package/{streamAgentChatTurn-SS62OWZZ.js → streamAgentChatTurn-GF5W5OIP.js} +18 -18
- package/{tableCommands-HEQYT2KP.js → tableCommands-QSZILI7I.js} +1 -1
- package/{tools-NVSLAOK4.js → tools-KBCLJ43G.js} +11 -11
- package/{tuiSummaryLlmCaller-A7OO23I4.js → tuiSummaryLlmCaller-ARIMGILF.js} +4 -4
- package/{updateCommands-HTCOBXCA.js → updateCommands-AK2RDOFR.js} +8 -2
- package/{updateDialogTitleAction-WMWZQ764.js → updateDialogTitleAction-LMHZUY4Q.js} +6 -6
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
normalizeDialogRecord,
|
|
4
4
|
readDialogSnapshot,
|
|
5
5
|
sortDialogs
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-YJY7HODU.js";
|
|
7
7
|
import {
|
|
8
8
|
ANSI_ESCAPE_REGEX,
|
|
9
9
|
CLI_AUTO_TIER_AGENT_KEY_TABLE,
|
|
@@ -59,7 +59,7 @@ import {
|
|
|
59
59
|
visibleWidth,
|
|
60
60
|
wrapTextToLines,
|
|
61
61
|
wrapTranscriptLine
|
|
62
|
-
} from "./chunk-
|
|
62
|
+
} from "./chunk-S7AV3NCK.js";
|
|
63
63
|
import "./chunk-DZ3XJVET.js";
|
|
64
64
|
import "./chunk-6HYVJV7B.js";
|
|
65
65
|
import {
|
|
@@ -68,12 +68,12 @@ import {
|
|
|
68
68
|
listRemoteAgents,
|
|
69
69
|
listRemoteAgentsAcrossServers,
|
|
70
70
|
normalizeListedAgent
|
|
71
|
-
} from "./chunk-
|
|
71
|
+
} from "./chunk-TNM27YZ7.js";
|
|
72
72
|
import "./chunk-ID4G2MAR.js";
|
|
73
73
|
import {
|
|
74
74
|
listUserRecordsFromServers,
|
|
75
75
|
readLiveDbRecordAfterTombstoneMerge
|
|
76
|
-
} from "./chunk-
|
|
76
|
+
} from "./chunk-PMCKFQYC.js";
|
|
77
77
|
import {
|
|
78
78
|
createCliLocalRuntimeAdapter,
|
|
79
79
|
initCliLocale,
|
|
@@ -81,8 +81,8 @@ import {
|
|
|
81
81
|
readTimestamp,
|
|
82
82
|
setCliLocale,
|
|
83
83
|
t
|
|
84
|
-
} from "./chunk-
|
|
85
|
-
import "./chunk-
|
|
84
|
+
} from "./chunk-PTKI7TIN.js";
|
|
85
|
+
import "./chunk-TWA4L7J7.js";
|
|
86
86
|
import {
|
|
87
87
|
getReadableCliDb
|
|
88
88
|
} from "./chunk-WFHXMLHZ.js";
|
|
@@ -90,8 +90,8 @@ import {
|
|
|
90
90
|
deleteDbRecord,
|
|
91
91
|
queryUserRecords,
|
|
92
92
|
readDbRecord
|
|
93
|
-
} from "./chunk-
|
|
94
|
-
import "./chunk-
|
|
93
|
+
} from "./chunk-J2WT5CEO.js";
|
|
94
|
+
import "./chunk-AZW5AHMW.js";
|
|
95
95
|
import {
|
|
96
96
|
NOLO_DEFAULT_AGENT_KEY,
|
|
97
97
|
resolveCliAgentKeyInput
|
|
@@ -101,30 +101,30 @@ import "./chunk-54VHTARN.js";
|
|
|
101
101
|
import "./chunk-JEXVIMYZ.js";
|
|
102
102
|
import {
|
|
103
103
|
prepareTools
|
|
104
|
-
} from "./chunk-
|
|
105
|
-
import "./chunk-
|
|
106
|
-
import "./chunk-
|
|
104
|
+
} from "./chunk-ZFL3LTU7.js";
|
|
105
|
+
import "./chunk-XNZJVYFS.js";
|
|
106
|
+
import "./chunk-GGB6MPHD.js";
|
|
107
107
|
import "./chunk-RQSOAMPJ.js";
|
|
108
108
|
import "./chunk-I6RJGORZ.js";
|
|
109
|
-
import "./chunk-
|
|
109
|
+
import "./chunk-AAWJ5S3G.js";
|
|
110
110
|
import "./chunk-KQHGZWSV.js";
|
|
111
111
|
import "./chunk-3LY4F7SV.js";
|
|
112
112
|
import "./chunk-VF4K2QE6.js";
|
|
113
|
-
import "./chunk-
|
|
113
|
+
import "./chunk-CWTT2NZ6.js";
|
|
114
114
|
import "./chunk-MALVZUYL.js";
|
|
115
115
|
import "./chunk-VP4WJWKW.js";
|
|
116
116
|
import "./chunk-63W5N6P3.js";
|
|
117
117
|
import "./chunk-WJRJDX2W.js";
|
|
118
|
-
import "./chunk-
|
|
118
|
+
import "./chunk-GNGOZMU2.js";
|
|
119
119
|
import {
|
|
120
120
|
extractReferenceKeysFromMessage
|
|
121
|
-
} from "./chunk-
|
|
121
|
+
} from "./chunk-ADE6577S.js";
|
|
122
122
|
import {
|
|
123
123
|
buildBuiltinSummaryContent
|
|
124
124
|
} from "./chunk-XOIF2TNF.js";
|
|
125
125
|
import "./chunk-MRC4Q34M.js";
|
|
126
126
|
import "./chunk-SIZQB7BD.js";
|
|
127
|
-
import "./chunk-
|
|
127
|
+
import "./chunk-GD23ZX7Z.js";
|
|
128
128
|
import "./chunk-YYLHWIW6.js";
|
|
129
129
|
import "./chunk-CWMSB67P.js";
|
|
130
130
|
import "./chunk-ROJI6DRT.js";
|
|
@@ -144,14 +144,14 @@ import {
|
|
|
144
144
|
buildLocalWorkspaceOpenAiTools,
|
|
145
145
|
buildLocalWorkspaceToolset,
|
|
146
146
|
getProcessRegistry
|
|
147
|
-
} from "./chunk-
|
|
147
|
+
} from "./chunk-SIUEKVK4.js";
|
|
148
148
|
import "./chunk-ZNFJWEN4.js";
|
|
149
|
-
import "./chunk-
|
|
149
|
+
import "./chunk-MCXQNEJ3.js";
|
|
150
150
|
import "./chunk-OIQPORYI.js";
|
|
151
151
|
import {
|
|
152
152
|
readCommandActionGatePayload,
|
|
153
153
|
resolveAgentImageInputSupport
|
|
154
|
-
} from "./chunk-
|
|
154
|
+
} from "./chunk-P3RZ6DHN.js";
|
|
155
155
|
import "./chunk-N7J63Q6C.js";
|
|
156
156
|
import {
|
|
157
157
|
buildCurrentTimeBlock,
|
|
@@ -161,8 +161,8 @@ import {
|
|
|
161
161
|
import "./chunk-D34RI6NI.js";
|
|
162
162
|
import {
|
|
163
163
|
resolvePlatformAuthToken
|
|
164
|
-
} from "./chunk-
|
|
165
|
-
import "./chunk-
|
|
164
|
+
} from "./chunk-PXPISYEH.js";
|
|
165
|
+
import "./chunk-WCP5FDTF.js";
|
|
166
166
|
import "./chunk-2MBTWINN.js";
|
|
167
167
|
import {
|
|
168
168
|
DEFAULT_CONTEXT_WINDOW,
|
|
@@ -170,13 +170,13 @@ import {
|
|
|
170
170
|
getModelContextWindow,
|
|
171
171
|
planCompression,
|
|
172
172
|
serializeMessageContent
|
|
173
|
-
} from "./chunk-
|
|
173
|
+
} from "./chunk-PY7VGC5M.js";
|
|
174
174
|
import {
|
|
175
175
|
clipCompactText
|
|
176
176
|
} from "./chunk-5MMAK75Q.js";
|
|
177
177
|
import "./chunk-5CS33IBL.js";
|
|
178
178
|
import "./chunk-JZPBVBIY.js";
|
|
179
|
-
import "./chunk-
|
|
179
|
+
import "./chunk-LEHTC2FI.js";
|
|
180
180
|
import "./chunk-ZHXJ6M7T.js";
|
|
181
181
|
import "./chunk-AL2V7U3E.js";
|
|
182
182
|
import "./chunk-4PWB7JRR.js";
|
|
@@ -211,12 +211,13 @@ import {
|
|
|
211
211
|
toErrorMessage
|
|
212
212
|
} from "./chunk-HNMXYYJR.js";
|
|
213
213
|
import {
|
|
214
|
+
checkForCliUpdate,
|
|
214
215
|
runSelfUpdate
|
|
215
|
-
} from "./chunk-
|
|
216
|
+
} from "./chunk-FXFGNOT2.js";
|
|
216
217
|
import {
|
|
217
218
|
saveProfileAgentSelection,
|
|
218
219
|
saveProfileLocale
|
|
219
|
-
} from "./chunk-
|
|
220
|
+
} from "./chunk-GE6IWA5N.js";
|
|
220
221
|
import {
|
|
221
222
|
readPipeText,
|
|
222
223
|
spawnProcess
|
|
@@ -230,8 +231,8 @@ import {
|
|
|
230
231
|
import {
|
|
231
232
|
DEFAULT_NOLO_SERVER_URL
|
|
232
233
|
} from "./chunk-OLZBQWZU.js";
|
|
233
|
-
import "./chunk-
|
|
234
|
-
import "./chunk-
|
|
234
|
+
import "./chunk-G36SUBHA.js";
|
|
235
|
+
import "./chunk-CZHE6LLV.js";
|
|
235
236
|
import "./chunk-JMSCXQUG.js";
|
|
236
237
|
import "./chunk-S6KVFOUG.js";
|
|
237
238
|
import "./chunk-Y5GCAMGP.js";
|
|
@@ -2426,13 +2427,6 @@ var PLATFORM_AGENTS = [
|
|
|
2426
2427
|
model: "-",
|
|
2427
2428
|
kind: "platform",
|
|
2428
2429
|
description: "one assistant that routes work across your agents and data"
|
|
2429
|
-
},
|
|
2430
|
-
{
|
|
2431
|
-
name: "app-builder",
|
|
2432
|
-
key: "agent-pub-01APPBUILDER00000001YAII3I",
|
|
2433
|
-
model: "-",
|
|
2434
|
-
kind: "platform",
|
|
2435
|
-
description: "builds web apps, tools, charts, and product prototypes"
|
|
2436
2430
|
}
|
|
2437
2431
|
];
|
|
2438
2432
|
var AUTO_ROUTE_CATALOG_ENTRY = {
|
|
@@ -2481,7 +2475,7 @@ function mergeCatalogEntries(currentKey, platformAgents, privateAgents, favorite
|
|
|
2481
2475
|
}
|
|
2482
2476
|
const sortablePrivate = privateAgents.map((entry) => ({
|
|
2483
2477
|
key: entry.key,
|
|
2484
|
-
favoritedAt: favoritedAtByKey[entry.key],
|
|
2478
|
+
...favoritedAtByKey[entry.key] !== void 0 ? { favoritedAt: favoritedAtByKey[entry.key] } : {},
|
|
2485
2479
|
isOwned: true,
|
|
2486
2480
|
updatedAt: entry.updatedAt ?? 0
|
|
2487
2481
|
}));
|
|
@@ -2549,27 +2543,7 @@ function refreshAgentCatalogInBackground(args, env, cacheKey) {
|
|
|
2549
2543
|
agentCatalogRefreshInFlight = null;
|
|
2550
2544
|
});
|
|
2551
2545
|
}
|
|
2552
|
-
async function prefillCatalogFromLocalDb(
|
|
2553
|
-
const env = args.env ?? process.env;
|
|
2554
|
-
const authToken = resolveAuthToken([], env);
|
|
2555
|
-
const userId = authToken ? parseUserIdFromAuthToken(authToken) : null;
|
|
2556
|
-
if (!authToken || !userId) return;
|
|
2557
|
-
const cacheKey = `${userId}|${resolveServerUrl(env)}`;
|
|
2558
|
-
if (agentCatalogCache?.cacheKey === cacheKey) return;
|
|
2559
|
-
try {
|
|
2560
|
-
const db = args.getDb ? await args.getDb() : await getReadableCliDb({ write: () => {
|
|
2561
|
-
} });
|
|
2562
|
-
const cached = await listLocalCachedAgents({ db, userId });
|
|
2563
|
-
if (cached.length === 0) return;
|
|
2564
|
-
const entries = mergeCatalogEntries(
|
|
2565
|
-
"",
|
|
2566
|
-
resolveCatalogPlatformAgents(env),
|
|
2567
|
-
cached.map(listedAgentToCatalogEntry),
|
|
2568
|
-
{}
|
|
2569
|
-
);
|
|
2570
|
-
agentCatalogCache = { cacheKey, at: 0, entries };
|
|
2571
|
-
} catch {
|
|
2572
|
-
}
|
|
2546
|
+
async function prefillCatalogFromLocalDb(_args) {
|
|
2573
2547
|
}
|
|
2574
2548
|
function prefetchAgentCatalog(args) {
|
|
2575
2549
|
void (async () => {
|
|
@@ -2623,6 +2597,10 @@ async function fetchRawCatalogData(args, env) {
|
|
|
2623
2597
|
}
|
|
2624
2598
|
const privateAgents = listedAgents.map(listedAgentToCatalogEntry);
|
|
2625
2599
|
const favoritedAtByKey = await favoritesPromise;
|
|
2600
|
+
for (const agent of listedAgents) {
|
|
2601
|
+
const favoritedAt = [agent.privateKey, agent.publicKey, agent.id].map((key) => favoritedAtByKey[key]).find((value) => value !== void 0);
|
|
2602
|
+
if (favoritedAt !== void 0) favoritedAtByKey[agent.privateKey] = favoritedAt;
|
|
2603
|
+
}
|
|
2626
2604
|
const existingKeys = /* @__PURE__ */ new Set();
|
|
2627
2605
|
for (const agent of listedAgents) {
|
|
2628
2606
|
existingKeys.add(agent.privateKey);
|
|
@@ -3320,7 +3298,16 @@ function renderWelcome(state, frame = 0, maxFrames = 0, columns) {
|
|
|
3320
3298
|
if (columns < widestSceneCol) sceneArt = "";
|
|
3321
3299
|
}
|
|
3322
3300
|
const versionLine = colorEnabled ? `${themeColorSequence("accent")}nolo\x1B[0m ${state.cliVersion ?? ""} | server ${state.serverUrl}`.replace(" |", " |") : `nolo ${state.cliVersion ?? ""} | server ${state.serverUrl}`.replace(" |", " |");
|
|
3323
|
-
const
|
|
3301
|
+
const updateLine = state.updateAvailable ? themeText(
|
|
3302
|
+
t(
|
|
3303
|
+
"updateAvailable",
|
|
3304
|
+
state.updateAvailable.latestVersion,
|
|
3305
|
+
state.cliVersion ?? t("versionUnknown")
|
|
3306
|
+
),
|
|
3307
|
+
"accent",
|
|
3308
|
+
colorEnabled
|
|
3309
|
+
) : null;
|
|
3310
|
+
const body = sceneArt ? [sceneArt, versionLine, ...updateLine ? [updateLine] : [], t("welcomeHint"), ""] : [versionLine, ...updateLine ? [updateLine] : [], t("welcomeHint"), ""];
|
|
3324
3311
|
return body.join("\n");
|
|
3325
3312
|
}
|
|
3326
3313
|
function renderPrompt(_state) {
|
|
@@ -4667,6 +4654,17 @@ function createChatQueueTuiBinding(runTurn) {
|
|
|
4667
4654
|
};
|
|
4668
4655
|
}
|
|
4669
4656
|
|
|
4657
|
+
// packages/cli/tui/terminalNotification.ts
|
|
4658
|
+
function shouldEmitTerminalBell(decision) {
|
|
4659
|
+
return !decision.wasAborted && !decision.streamInterrupted && decision.exitCode === 0 && decision.interactive;
|
|
4660
|
+
}
|
|
4661
|
+
function emitTerminalBell(output) {
|
|
4662
|
+
try {
|
|
4663
|
+
output.write("\x07");
|
|
4664
|
+
} catch {
|
|
4665
|
+
}
|
|
4666
|
+
}
|
|
4667
|
+
|
|
4670
4668
|
// packages/cli/tui/tuiHistory.ts
|
|
4671
4669
|
var MAX_TUI_HISTORY_TURNS = 500;
|
|
4672
4670
|
var turnLineCache = /* @__PURE__ */ new WeakMap();
|
|
@@ -5942,16 +5940,22 @@ function waitForActionGate(rl, input, output, gate, spawnRunner) {
|
|
|
5942
5940
|
});
|
|
5943
5941
|
}
|
|
5944
5942
|
function persistAgentSelection(state, env, saveSelection = saveProfileAgentSelection) {
|
|
5943
|
+
const isAuto = state.agentKey === DEFAULT_TUI_AGENT_KEY && state.agentName.trim().toLowerCase() === "auto";
|
|
5945
5944
|
try {
|
|
5946
5945
|
saveSelection({
|
|
5947
|
-
agentKey: state.agentKey,
|
|
5948
|
-
agentName: state.agentName
|
|
5946
|
+
agentKey: isAuto ? "" : state.agentKey,
|
|
5947
|
+
agentName: isAuto ? "" : state.agentName
|
|
5949
5948
|
});
|
|
5950
5949
|
} catch {
|
|
5951
5950
|
}
|
|
5952
5951
|
if (env) {
|
|
5953
|
-
|
|
5954
|
-
|
|
5952
|
+
if (isAuto) {
|
|
5953
|
+
delete env.NOLO_AGENT;
|
|
5954
|
+
delete env.NOLO_AGENT_NAME;
|
|
5955
|
+
} else {
|
|
5956
|
+
env.NOLO_AGENT = state.agentKey;
|
|
5957
|
+
env.NOLO_AGENT_NAME = state.agentName;
|
|
5958
|
+
}
|
|
5955
5959
|
}
|
|
5956
5960
|
}
|
|
5957
5961
|
function isInteractiveInput(input) {
|
|
@@ -6085,7 +6089,9 @@ async function startTuiWorkspace(options) {
|
|
|
6085
6089
|
setActiveTerminalBaseHex(detected.hex);
|
|
6086
6090
|
}
|
|
6087
6091
|
const bannerColumns = output.columns;
|
|
6088
|
-
|
|
6092
|
+
const initialWelcome = renderWelcome(state, 0, 0, bannerColumns);
|
|
6093
|
+
output.write(initialWelcome);
|
|
6094
|
+
const initialBannerLineCount = initialWelcome.split("\n").length;
|
|
6089
6095
|
let lastSentTitle = null;
|
|
6090
6096
|
const syncWindowTitle = () => {
|
|
6091
6097
|
if (!output.isTTY) return;
|
|
@@ -6197,6 +6203,41 @@ async function startTuiWorkspace(options) {
|
|
|
6197
6203
|
scheduleRender();
|
|
6198
6204
|
});
|
|
6199
6205
|
};
|
|
6206
|
+
const repaintBanner = () => {
|
|
6207
|
+
if (!output.isTTY) return;
|
|
6208
|
+
if (fixedInput.isPaused()) return;
|
|
6209
|
+
if (modalOwnsKeyboard) return;
|
|
6210
|
+
const currentColumns = output.columns ?? 80;
|
|
6211
|
+
const welcome = renderWelcome(state, 0, 0, currentColumns);
|
|
6212
|
+
const lines = welcome.split("\n");
|
|
6213
|
+
const safeWidth = Math.max(1, currentColumns);
|
|
6214
|
+
const safeLines = lines.map((line) => padOrTruncateToWidth(line, safeWidth));
|
|
6215
|
+
const clearLines = Math.max(initialBannerLineCount, safeLines.length);
|
|
6216
|
+
output.write("\x1B[?2026h\x1B[?25l");
|
|
6217
|
+
try {
|
|
6218
|
+
let frame = "";
|
|
6219
|
+
for (let i = 0; i < clearLines; i++) frame += `\x1B[${i + 1};1H\x1B[2K`;
|
|
6220
|
+
safeLines.forEach((line, i) => {
|
|
6221
|
+
frame += `\x1B[${i + 1};1H${line}`;
|
|
6222
|
+
});
|
|
6223
|
+
output.write(frame);
|
|
6224
|
+
if (fixedInput.active) fixedInput.repaint(buffer, cursorPos);
|
|
6225
|
+
} finally {
|
|
6226
|
+
output.write("\x1B[?25h\x1B[?2026l");
|
|
6227
|
+
}
|
|
6228
|
+
};
|
|
6229
|
+
void checkForCliUpdate(state.cliVersion, state.serverUrl, {
|
|
6230
|
+
fetchImpl,
|
|
6231
|
+
env: options.env ?? process.env
|
|
6232
|
+
}).then((updateAvailable) => {
|
|
6233
|
+
if (sessionEnded || !updateAvailable) return;
|
|
6234
|
+
state = { ...state, updateAvailable };
|
|
6235
|
+
if (history.turns.length === 0 && history.currentRole === null) {
|
|
6236
|
+
repaintBanner();
|
|
6237
|
+
} else {
|
|
6238
|
+
scheduleRender();
|
|
6239
|
+
}
|
|
6240
|
+
});
|
|
6200
6241
|
let syncingLayout = false;
|
|
6201
6242
|
const renderHistoryToOutput = () => {
|
|
6202
6243
|
if (fixedInput.isPaused()) return;
|
|
@@ -6385,6 +6426,14 @@ async function startTuiWorkspace(options) {
|
|
|
6385
6426
|
}
|
|
6386
6427
|
const wasAborted = activeTurnAbort.signal.aborted;
|
|
6387
6428
|
activeTurnAbort = null;
|
|
6429
|
+
if (shouldEmitTerminalBell({
|
|
6430
|
+
wasAborted,
|
|
6431
|
+
streamInterrupted: runResult.streamInterrupted,
|
|
6432
|
+
exitCode: runResult.exitCode,
|
|
6433
|
+
interactive: isInteractiveInput(input)
|
|
6434
|
+
})) {
|
|
6435
|
+
emitTerminalBell(output);
|
|
6436
|
+
}
|
|
6388
6437
|
explicitAgentSwitch = false;
|
|
6389
6438
|
if (isInteractiveInput(input)) {
|
|
6390
6439
|
finalizeCurrentTurn(history);
|
|
@@ -7320,6 +7369,7 @@ ${renderStatusLine(state)}
|
|
|
7320
7369
|
output.write(`[nolo] ${t("persistentProcessesLeft", String(persistentCount))}
|
|
7321
7370
|
`);
|
|
7322
7371
|
}
|
|
7372
|
+
sessionEnded = true;
|
|
7323
7373
|
rl.close();
|
|
7324
7374
|
}
|
|
7325
7375
|
}
|
|
@@ -1,34 +1,34 @@
|
|
|
1
1
|
import {
|
|
2
2
|
fetchAgentContexts
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-JJ2WUBFN.js";
|
|
4
4
|
import {
|
|
5
5
|
generateRequestBody,
|
|
6
6
|
mergeReferences,
|
|
7
7
|
performFetchRequest
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
} from "./chunk-5EDKWSQN.js";
|
|
9
|
+
import "./chunk-XNZJVYFS.js";
|
|
10
10
|
import {
|
|
11
11
|
findToolExecutor,
|
|
12
12
|
getToolResultErrorData
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-GGB6MPHD.js";
|
|
14
14
|
import "./chunk-RQSOAMPJ.js";
|
|
15
15
|
import "./chunk-I6RJGORZ.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-AAWJ5S3G.js";
|
|
17
17
|
import "./chunk-KQHGZWSV.js";
|
|
18
18
|
import "./chunk-3LY4F7SV.js";
|
|
19
19
|
import "./chunk-VF4K2QE6.js";
|
|
20
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-CWTT2NZ6.js";
|
|
21
21
|
import "./chunk-MALVZUYL.js";
|
|
22
22
|
import "./chunk-VP4WJWKW.js";
|
|
23
23
|
import "./chunk-63W5N6P3.js";
|
|
24
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-GNGOZMU2.js";
|
|
25
25
|
import {
|
|
26
26
|
updateTokensAction
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-ADE6577S.js";
|
|
28
28
|
import "./chunk-XOIF2TNF.js";
|
|
29
29
|
import "./chunk-MRC4Q34M.js";
|
|
30
30
|
import "./chunk-SIZQB7BD.js";
|
|
31
|
-
import "./chunk-
|
|
31
|
+
import "./chunk-GD23ZX7Z.js";
|
|
32
32
|
import "./chunk-YYLHWIW6.js";
|
|
33
33
|
import "./chunk-CWMSB67P.js";
|
|
34
34
|
import "./chunk-ROJI6DRT.js";
|
|
@@ -41,15 +41,15 @@ import "./chunk-ZWJOGMKH.js";
|
|
|
41
41
|
import "./chunk-WZSRQNQG.js";
|
|
42
42
|
import "./chunk-ZUXIXYJI.js";
|
|
43
43
|
import "./chunk-D34RI6NI.js";
|
|
44
|
-
import "./chunk-
|
|
45
|
-
import "./chunk-
|
|
46
|
-
import "./chunk-
|
|
44
|
+
import "./chunk-PXPISYEH.js";
|
|
45
|
+
import "./chunk-WCP5FDTF.js";
|
|
46
|
+
import "./chunk-PY7VGC5M.js";
|
|
47
47
|
import "./chunk-5MMAK75Q.js";
|
|
48
48
|
import "./chunk-5CS33IBL.js";
|
|
49
49
|
import "./chunk-JZPBVBIY.js";
|
|
50
50
|
import {
|
|
51
51
|
getApiEndpoint
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-LEHTC2FI.js";
|
|
53
53
|
import "./chunk-ZHXJ6M7T.js";
|
|
54
54
|
import "./chunk-4PWB7JRR.js";
|
|
55
55
|
import {
|
|
@@ -60,8 +60,8 @@ import "./chunk-3ASDTTEI.js";
|
|
|
60
60
|
import "./chunk-DWLEOOGR.js";
|
|
61
61
|
import "./chunk-KXKQO4Q6.js";
|
|
62
62
|
import "./chunk-HNMXYYJR.js";
|
|
63
|
-
import "./chunk-
|
|
64
|
-
import "./chunk-
|
|
63
|
+
import "./chunk-G36SUBHA.js";
|
|
64
|
+
import "./chunk-CZHE6LLV.js";
|
|
65
65
|
import "./chunk-JMSCXQUG.js";
|
|
66
66
|
import {
|
|
67
67
|
selectCurrentServer
|
|
@@ -1,32 +1,32 @@
|
|
|
1
1
|
import {
|
|
2
2
|
readLiveDbRecordAfterTombstoneMerge
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-PMCKFQYC.js";
|
|
4
4
|
import {
|
|
5
5
|
readDbRecord,
|
|
6
6
|
writeAgentRecord
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-J2WT5CEO.js";
|
|
8
|
+
import "./chunk-AZW5AHMW.js";
|
|
9
9
|
import "./chunk-VHBWHNVT.js";
|
|
10
10
|
import "./chunk-KQHGZWSV.js";
|
|
11
11
|
import {
|
|
12
12
|
authRoutes
|
|
13
13
|
} from "./chunk-MRC4Q34M.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-SIUEKVK4.js";
|
|
15
15
|
import "./chunk-ZNFJWEN4.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-MCXQNEJ3.js";
|
|
17
17
|
import "./chunk-OIQPORYI.js";
|
|
18
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-P3RZ6DHN.js";
|
|
19
19
|
import "./chunk-N7J63Q6C.js";
|
|
20
20
|
import "./chunk-ZUXIXYJI.js";
|
|
21
21
|
import "./chunk-D34RI6NI.js";
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-PXPISYEH.js";
|
|
23
|
+
import "./chunk-WCP5FDTF.js";
|
|
24
24
|
import "./chunk-2MBTWINN.js";
|
|
25
|
-
import "./chunk-
|
|
25
|
+
import "./chunk-PY7VGC5M.js";
|
|
26
26
|
import "./chunk-5MMAK75Q.js";
|
|
27
27
|
import "./chunk-5CS33IBL.js";
|
|
28
28
|
import "./chunk-JZPBVBIY.js";
|
|
29
|
-
import "./chunk-
|
|
29
|
+
import "./chunk-LEHTC2FI.js";
|
|
30
30
|
import "./chunk-ZHXJ6M7T.js";
|
|
31
31
|
import "./chunk-AL2V7U3E.js";
|
|
32
32
|
import "./chunk-4PWB7JRR.js";
|
|
@@ -42,8 +42,8 @@ import {
|
|
|
42
42
|
resolveServerUrl
|
|
43
43
|
} from "./chunk-A7GB5UGH.js";
|
|
44
44
|
import "./chunk-OLZBQWZU.js";
|
|
45
|
-
import "./chunk-
|
|
46
|
-
import "./chunk-
|
|
45
|
+
import "./chunk-G36SUBHA.js";
|
|
46
|
+
import "./chunk-CZHE6LLV.js";
|
|
47
47
|
import "./chunk-KX6YBIHG.js";
|
|
48
48
|
import {
|
|
49
49
|
createSpaceKey,
|
|
@@ -53,28 +53,28 @@ import {
|
|
|
53
53
|
updateContentTitle,
|
|
54
54
|
updateSpace,
|
|
55
55
|
uploadAndAddFileToSpace
|
|
56
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-ADE6577S.js";
|
|
57
57
|
import "./chunk-XOIF2TNF.js";
|
|
58
58
|
import "./chunk-MRC4Q34M.js";
|
|
59
59
|
import "./chunk-SIZQB7BD.js";
|
|
60
|
-
import "./chunk-
|
|
60
|
+
import "./chunk-GD23ZX7Z.js";
|
|
61
61
|
import "./chunk-YYLHWIW6.js";
|
|
62
62
|
import "./chunk-CWMSB67P.js";
|
|
63
63
|
import "./chunk-ROJI6DRT.js";
|
|
64
64
|
import "./chunk-5RGU3J7P.js";
|
|
65
65
|
import "./chunk-M76ECQRD.js";
|
|
66
66
|
import "./chunk-L65QKSVJ.js";
|
|
67
|
-
import "./chunk-
|
|
67
|
+
import "./chunk-PY7VGC5M.js";
|
|
68
68
|
import "./chunk-5MMAK75Q.js";
|
|
69
69
|
import "./chunk-5CS33IBL.js";
|
|
70
70
|
import "./chunk-JZPBVBIY.js";
|
|
71
|
-
import "./chunk-
|
|
71
|
+
import "./chunk-LEHTC2FI.js";
|
|
72
72
|
import "./chunk-ZHXJ6M7T.js";
|
|
73
73
|
import "./chunk-3ASDTTEI.js";
|
|
74
74
|
import "./chunk-DWLEOOGR.js";
|
|
75
75
|
import "./chunk-HNMXYYJR.js";
|
|
76
|
-
import "./chunk-
|
|
77
|
-
import "./chunk-
|
|
76
|
+
import "./chunk-G36SUBHA.js";
|
|
77
|
+
import "./chunk-CZHE6LLV.js";
|
|
78
78
|
import "./chunk-S6KVFOUG.js";
|
|
79
79
|
import "./chunk-Y5GCAMGP.js";
|
|
80
80
|
import "./chunk-UZ6XXCVR.js";
|
|
@@ -17,11 +17,11 @@ import {
|
|
|
17
17
|
sanitizeOutboundResponsesInput,
|
|
18
18
|
sendOpenAICompletionsRequest,
|
|
19
19
|
updateTotalUsage
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-LLDGWLML.js";
|
|
21
21
|
import "./chunk-JEXVIMYZ.js";
|
|
22
22
|
import {
|
|
23
23
|
prepareTools
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-ZFL3LTU7.js";
|
|
25
25
|
import {
|
|
26
26
|
fetchReferenceContents,
|
|
27
27
|
generateRequestBody,
|
|
@@ -35,8 +35,8 @@ import {
|
|
|
35
35
|
resolveToolsFromKeys,
|
|
36
36
|
selectResponsesConversationState,
|
|
37
37
|
updateResponsesConversationState
|
|
38
|
-
} from "./chunk-
|
|
39
|
-
import "./chunk-
|
|
38
|
+
} from "./chunk-5EDKWSQN.js";
|
|
39
|
+
import "./chunk-XNZJVYFS.js";
|
|
40
40
|
import {
|
|
41
41
|
createSSEParser,
|
|
42
42
|
getAllToolRuns,
|
|
@@ -44,22 +44,22 @@ import {
|
|
|
44
44
|
resolveAgentRequiredPackIds,
|
|
45
45
|
shouldBlockForGptPro,
|
|
46
46
|
waitForAbortableDelay
|
|
47
|
-
} from "./chunk-
|
|
47
|
+
} from "./chunk-GGB6MPHD.js";
|
|
48
48
|
import "./chunk-RQSOAMPJ.js";
|
|
49
49
|
import "./chunk-I6RJGORZ.js";
|
|
50
|
-
import "./chunk-
|
|
50
|
+
import "./chunk-AAWJ5S3G.js";
|
|
51
51
|
import "./chunk-KQHGZWSV.js";
|
|
52
52
|
import "./chunk-3LY4F7SV.js";
|
|
53
53
|
import "./chunk-VF4K2QE6.js";
|
|
54
54
|
import {
|
|
55
55
|
getDocState
|
|
56
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-CWTT2NZ6.js";
|
|
57
57
|
import {
|
|
58
58
|
getFinalPrice,
|
|
59
59
|
getModelPricing,
|
|
60
60
|
getPrices,
|
|
61
61
|
hasExplicitAgentPricing
|
|
62
|
-
} from "./chunk-
|
|
62
|
+
} from "./chunk-AOPOTHFK.js";
|
|
63
63
|
import {
|
|
64
64
|
getPublicImageAgentDefaultProfile,
|
|
65
65
|
getPublicImageAgentMode
|
|
@@ -69,7 +69,7 @@ import {
|
|
|
69
69
|
extractCategorizedMentions
|
|
70
70
|
} from "./chunk-VP4WJWKW.js";
|
|
71
71
|
import "./chunk-63W5N6P3.js";
|
|
72
|
-
import "./chunk-
|
|
72
|
+
import "./chunk-GNGOZMU2.js";
|
|
73
73
|
import {
|
|
74
74
|
PERSONALIZATION_DIALOG_CATEGORY,
|
|
75
75
|
addToolMessage,
|
|
@@ -92,11 +92,11 @@ import {
|
|
|
92
92
|
selectTableRows,
|
|
93
93
|
selectViewMode,
|
|
94
94
|
updateTokens
|
|
95
|
-
} from "./chunk-
|
|
95
|
+
} from "./chunk-ADE6577S.js";
|
|
96
96
|
import "./chunk-XOIF2TNF.js";
|
|
97
97
|
import "./chunk-MRC4Q34M.js";
|
|
98
98
|
import "./chunk-SIZQB7BD.js";
|
|
99
|
-
import "./chunk-
|
|
99
|
+
import "./chunk-GD23ZX7Z.js";
|
|
100
100
|
import "./chunk-YYLHWIW6.js";
|
|
101
101
|
import "./chunk-CWMSB67P.js";
|
|
102
102
|
import {
|
|
@@ -128,7 +128,7 @@ import {
|
|
|
128
128
|
import {
|
|
129
129
|
projectToolMessageContent,
|
|
130
130
|
resolveAgentImageInputSupport
|
|
131
|
-
} from "./chunk-
|
|
131
|
+
} from "./chunk-P3RZ6DHN.js";
|
|
132
132
|
import "./chunk-N7J63Q6C.js";
|
|
133
133
|
import "./chunk-ZUXIXYJI.js";
|
|
134
134
|
import {
|
|
@@ -138,16 +138,16 @@ import {
|
|
|
138
138
|
} from "./chunk-D34RI6NI.js";
|
|
139
139
|
import {
|
|
140
140
|
isOpenAiResponsesModel
|
|
141
|
-
} from "./chunk-
|
|
141
|
+
} from "./chunk-PXPISYEH.js";
|
|
142
142
|
import {
|
|
143
143
|
resolveRuntimeToolSurfaceForAgent
|
|
144
|
-
} from "./chunk-
|
|
144
|
+
} from "./chunk-WCP5FDTF.js";
|
|
145
145
|
import {
|
|
146
146
|
estimateTokenCount,
|
|
147
147
|
getModelContextWindow,
|
|
148
148
|
getModelInfo,
|
|
149
149
|
planContextUsage
|
|
150
|
-
} from "./chunk-
|
|
150
|
+
} from "./chunk-PY7VGC5M.js";
|
|
151
151
|
import "./chunk-5MMAK75Q.js";
|
|
152
152
|
import "./chunk-5CS33IBL.js";
|
|
153
153
|
import "./chunk-JZPBVBIY.js";
|
|
@@ -155,7 +155,7 @@ import {
|
|
|
155
155
|
getApiEndpoint,
|
|
156
156
|
getModelConfig,
|
|
157
157
|
getProviderByModelName
|
|
158
|
-
} from "./chunk-
|
|
158
|
+
} from "./chunk-LEHTC2FI.js";
|
|
159
159
|
import "./chunk-ZHXJ6M7T.js";
|
|
160
160
|
import {
|
|
161
161
|
buildLinkedSpacesSection,
|
|
@@ -187,8 +187,8 @@ import {
|
|
|
187
187
|
import {
|
|
188
188
|
toErrorMessage
|
|
189
189
|
} from "./chunk-HNMXYYJR.js";
|
|
190
|
-
import "./chunk-
|
|
191
|
-
import "./chunk-
|
|
190
|
+
import "./chunk-G36SUBHA.js";
|
|
191
|
+
import "./chunk-CZHE6LLV.js";
|
|
192
192
|
import "./chunk-JMSCXQUG.js";
|
|
193
193
|
import {
|
|
194
194
|
selectAiRecentContentLimit,
|