nolo-cli 0.108.0-alpha.1 → 0.108.0-alpha.2

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.
Files changed (72) hide show
  1. package/{_executeModel-GTYLDSJW.js → _executeModel-BY3P5LBB.js} +12 -12
  2. package/{agentDeleteCommand-OWYHN6D6.js → agentDeleteCommand-66KXCSRR.js} +7 -6
  3. package/{agentEmailCommands-C6J2KUL2.js → agentEmailCommands-63UTONDK.js} +18 -17
  4. package/{agentListCommands-B2V4YAC4.js → agentListCommands-NXCOTTZL.js} +9 -8
  5. package/{agentMachineCommands-UDEXV472.js → agentMachineCommands-Z6RGPZSG.js} +7 -6
  6. package/{agentProviderCommands-GNPTL5XR.js → agentProviderCommands-X3UNW77C.js} +1 -1
  7. package/{agentRecordCommands-XBVDEYVC.js → agentRecordCommands-JP54ZWND.js} +17 -16
  8. package/{agentRunCommand-V6RTNFRH.js → agentRunCommand-RMQWWSHF.js} +17 -16
  9. package/{agentRuntimeLocal-KCMC2TBD.js → agentRuntimeLocal-E67CTV45.js} +5 -4
  10. package/{agentSlice-TNH7BSUC.js → agentSlice-DG5TIQHE.js} +1 -1
  11. package/{appDeleteCommands-JEPA3EWE.js → appDeleteCommands-Z36CLGUK.js} +8 -7
  12. package/{appDeployCommands-UTB76XFM.js → appDeployCommands-ECMUWG6S.js} +8 -7
  13. package/{appDeployStatusCommands-LGHF2SBD.js → appDeployStatusCommands-CL24TDMA.js} +8 -7
  14. package/{appGetCommands-PX2BFHOB.js → appGetCommands-ITHGOYGJ.js} +8 -7
  15. package/{appListCommands-BSMPTWKC.js → appListCommands-EEOSI6RC.js} +8 -7
  16. package/{authCommand-YW42YZA4.js → authCommand-HGP2XTKC.js} +99 -7
  17. package/{chatQueueReduxAdapter-XMFWRG3P.js → chatQueueReduxAdapter-DKLWTT3G.js} +2 -2
  18. package/{chunk-PQFHGD77.js → chunk-2OASQKU2.js} +1 -1
  19. package/{chunk-62CATUYY.js → chunk-4NNTATRH.js} +12 -769
  20. package/{chunk-EEGDMATE.js → chunk-AODJ7WSF.js} +3 -3
  21. package/{chunk-CSC3CU4K.js → chunk-CW67PN7L.js} +3 -3
  22. package/{chunk-7U6P3PHS.js → chunk-DOTZ5GTO.js} +1 -1
  23. package/chunk-FV3JEYR3.js +870 -0
  24. package/{chunk-RRM7AJ3M.js → chunk-G4VIHCGJ.js} +3 -3
  25. package/chunk-GMZLP5DV.js +82 -0
  26. package/{chunk-UZGQNTVW.js → chunk-GNCCNNZD.js} +3 -1
  27. package/{chunk-GO3Z72MT.js → chunk-H4AHY5BU.js} +3 -80
  28. package/{chunk-NA35QHCF.js → chunk-HSSRGGXJ.js} +1 -1
  29. package/{chunk-GEPUP7OO.js → chunk-IQPFGYO3.js} +1 -1
  30. package/{chunk-XT35TTFG.js → chunk-KZJP33ZK.js} +1 -1
  31. package/{chunk-GPCZ7UXG.js → chunk-LJ5VW2UJ.js} +1 -1
  32. package/{chunk-AG2AZ6GX.js → chunk-LPIYPEME.js} +9 -9
  33. package/{chunk-AEOE4Z6Q.js → chunk-LWKP7AWH.js} +1 -1
  34. package/{chunk-QQWJUHSL.js → chunk-P3GYTNDF.js} +1 -1
  35. package/{chunk-ETI2NYVF.js → chunk-PHXD6JTX.js} +1 -1
  36. package/{chunk-TYYSADX4.js → chunk-PWBDVI4R.js} +5 -5
  37. package/{chunk-KQ4ONNQD.js → chunk-QU7KDSZX.js} +1 -1
  38. package/{chunk-RRPWH4LX.js → chunk-RVE4DCV3.js} +2 -2
  39. package/{chunk-R7RHOSZU.js → chunk-RZGLXO2B.js} +26 -22
  40. package/{chunk-DUK4OQNO.js → chunk-SYXOBWOC.js} +4 -4
  41. package/{chunk-L7OXGGBN.js → chunk-T3GEOSRJ.js} +2 -2
  42. package/{chunk-QWL5QZGU.js → chunk-TR22GEUU.js} +2 -2
  43. package/{chunk-BVGTK7MR.js → chunk-UDIIVXKA.js} +41 -28
  44. package/{chunk-PVZT43MU.js → chunk-YTLRHRH3.js} +3 -3
  45. package/{chunk-TWQWYIMJ.js → chunk-YWIEQS6H.js} +8 -8
  46. package/{chunk-53HEEOTT.js → chunk-Z5625XML.js} +1 -1
  47. package/{contentThunks-3Z6NAUW6.js → contentThunks-JHK6X2KU.js} +3 -3
  48. package/{createAgentAutomationAction-OBH7GPW5.js → createAgentAutomationAction-7HX7KBES.js} +3 -3
  49. package/{createDialogAction-7XW3RX2A.js → createDialogAction-VUUUZL54.js} +4 -4
  50. package/{createPageAction-JJ7UUTWC.js → createPageAction-QWNMGO3O.js} +3 -3
  51. package/{dialogCommands-H7FPUYUQ.js → dialogCommands-EN7TYD3I.js} +8 -7
  52. package/{dialogSlice-6Z2BPC3T.js → dialogSlice-P2K47T3P.js} +2 -2
  53. package/{docCreateCommands-WRG2JLGM.js → docCreateCommands-43JKQEIH.js} +7 -6
  54. package/{docDeleteCommands-SHWJIBJS.js → docDeleteCommands-RL6D46XE.js} +8 -7
  55. package/{docReadCommands-WJN3WT6O.js → docReadCommands-TOEUEQDG.js} +7 -6
  56. package/{docStore-7WUS6XXX.js → docStore-3AHKTJRI.js} +1 -1
  57. package/{docUpdateCommands-IE32IL6O.js → docUpdateCommands-FWU5G2XB.js} +7 -6
  58. package/{handleSendMessageAction-GUBOMCGM.js → handleSendMessageAction-ID5IKXUE.js} +2 -2
  59. package/index.js +51 -51
  60. package/{machineCommands-KSN4COGR.js → machineCommands-TTKK4F7C.js} +16 -15
  61. package/{machineWsRunDispatch-AAG6PDBY.js → machineWsRunDispatch-RX64L3ET.js} +16 -15
  62. package/package.json +1 -1
  63. package/{providerPresetApply-FG6NZ57W.js → providerPresetApply-XI3WUPTI.js} +2 -2
  64. package/{providerRegistry-757OWH3O.js → providerRegistry-KEPWWGXD.js} +2 -2
  65. package/{readlineWorkspace-HO62DKCG.js → readlineWorkspace-KIMUDPPV.js} +20 -19
  66. package/{runAgentClientLoop-JLRJIF3F.js → runAgentClientLoop-AN4WIRPQ.js} +10 -10
  67. package/{spaceCommands-5GLCWZPO.js → spaceCommands-NA4JMIGT.js} +7 -6
  68. package/{streamAgentChatTurn-DZ3PP7ZH.js → streamAgentChatTurn-3TYTHZPJ.js} +11 -11
  69. package/{tools-XA4ZWLH4.js → tools-34SEJSLQ.js} +8 -8
  70. package/{tuiSummaryLlmCaller-OHHFTHMG.js → tuiSummaryLlmCaller-UFGFOIIW.js} +2 -1
  71. package/{updateDialogTitleAction-VWZT4J6J.js → updateDialogTitleAction-RDHNT265.js} +3 -3
  72. package/chunk-Q5FJJ6XI.js +0 -103
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  createCliLocalRuntimeAdapter,
3
3
  summarizeEndpoint
4
- } from "./chunk-BVGTK7MR.js";
4
+ } from "./chunk-UDIIVXKA.js";
5
5
  import {
6
6
  clipMultilineText
7
- } from "./chunk-AG2AZ6GX.js";
7
+ } from "./chunk-LPIYPEME.js";
8
8
  import {
9
9
  runLocalAgentTurn
10
- } from "./chunk-62CATUYY.js";
10
+ } from "./chunk-4NNTATRH.js";
11
11
  import {
12
12
  applyToolSurfaceConstraints
13
13
  } from "./chunk-IIVGDG4I.js";
@@ -0,0 +1,82 @@
1
+ // packages/agent-runtime/sseFrames.ts
2
+ async function* readSseFrames(response) {
3
+ const reader = response.body?.getReader();
4
+ if (!reader) {
5
+ throw new Error("SSE response did not include a readable body.");
6
+ }
7
+ const decoder = new TextDecoder();
8
+ let buffer = "";
9
+ while (true) {
10
+ const { done, value } = await reader.read();
11
+ if (done) break;
12
+ buffer += decoder.decode(value, { stream: true });
13
+ let boundary = findSseFrameBoundary(buffer);
14
+ while (boundary) {
15
+ yield buffer.slice(0, boundary.index);
16
+ buffer = buffer.slice(boundary.index + boundary.separatorLength);
17
+ boundary = findSseFrameBoundary(buffer);
18
+ }
19
+ }
20
+ const remaining = decoder.decode();
21
+ if (remaining) {
22
+ buffer += remaining;
23
+ let boundary = findSseFrameBoundary(buffer);
24
+ while (boundary) {
25
+ yield buffer.slice(0, boundary.index);
26
+ buffer = buffer.slice(boundary.index + boundary.separatorLength);
27
+ boundary = findSseFrameBoundary(buffer);
28
+ }
29
+ }
30
+ if (buffer.trim()) yield buffer;
31
+ }
32
+ function findSseFrameBoundary(buffer) {
33
+ const lfLf = buffer.indexOf("\n\n");
34
+ const crLfCrLf = buffer.indexOf("\r\n\r\n");
35
+ if (lfLf === -1 && crLfCrLf === -1) return null;
36
+ const useLf = lfLf !== -1 && (crLfCrLf === -1 || lfLf < crLfCrLf);
37
+ return useLf ? { index: lfLf, separatorLength: 2 } : { index: crLfCrLf, separatorLength: 4 };
38
+ }
39
+ async function* streamSseDataValues(response, parse) {
40
+ const reader = response.body?.getReader();
41
+ if (!reader) return;
42
+ const decoder = new TextDecoder();
43
+ let buffer = "";
44
+ while (true) {
45
+ const { done, value } = await reader.read();
46
+ if (done) break;
47
+ buffer += decoder.decode(value, { stream: true });
48
+ const lines = buffer.split("\n");
49
+ buffer = lines.pop() ?? "";
50
+ for (const line of lines) {
51
+ const parsed = parse(line);
52
+ if (parsed) yield parsed;
53
+ }
54
+ }
55
+ const remaining = decoder.decode();
56
+ if (remaining) {
57
+ buffer += remaining;
58
+ const lines = buffer.split("\n");
59
+ buffer = lines.pop() ?? "";
60
+ for (const line of lines) {
61
+ const parsed = parse(line);
62
+ if (parsed) yield parsed;
63
+ }
64
+ }
65
+ if (buffer.trim()) {
66
+ const parsed = parse(buffer);
67
+ if (parsed) yield parsed;
68
+ }
69
+ }
70
+ async function readSseDataValues(response, parse) {
71
+ const values = [];
72
+ for await (const value of streamSseDataValues(response, parse)) {
73
+ values.push(value);
74
+ }
75
+ return values;
76
+ }
77
+
78
+ export {
79
+ readSseFrames,
80
+ streamSseDataValues,
81
+ readSseDataValues
82
+ };
@@ -129,7 +129,9 @@ async function refreshAntigravityToken(credential, deps = {}) {
129
129
  payload = {};
130
130
  }
131
131
  if (!response.ok) {
132
- const detail = typeof payload.error_description === "string" && payload.error_description.trim() ? payload.error_description.trim() : typeof payload.error === "string" && payload.error.trim() ? payload.error.trim() : rawBodyText.trim() || `HTTP ${response.status}`;
132
+ const errorCode = typeof payload.error === "string" && payload.error.trim() ? payload.error.trim() : void 0;
133
+ const errorDescription = typeof payload.error_description === "string" && payload.error_description.trim() ? payload.error_description.trim() : void 0;
134
+ const detail = (errorCode && errorDescription && errorDescription !== errorCode ? `${errorCode}: ${errorDescription}` : errorCode ?? errorDescription ?? rawBodyText.trim()) || `HTTP ${response.status}`;
133
135
  throw new Error(`Antigravity token refresh failed: ${detail}`);
134
136
  }
135
137
  if (typeof payload.access_token !== "string" || !payload.access_token.trim()) {
@@ -1,3 +1,6 @@
1
+ import {
2
+ readSseFrames
3
+ } from "./chunk-GMZLP5DV.js";
1
4
  import {
2
5
  sanitizeForOutbound
3
6
  } from "./chunk-CQ3WA2NE.js";
@@ -347,83 +350,6 @@ function flushChatCompletionStream(state) {
347
350
  }
348
351
  }
349
352
 
350
- // packages/agent-runtime/sseFrames.ts
351
- async function* readSseFrames(response) {
352
- const reader = response.body?.getReader();
353
- if (!reader) {
354
- throw new Error("SSE response did not include a readable body.");
355
- }
356
- const decoder = new TextDecoder();
357
- let buffer = "";
358
- while (true) {
359
- const { done, value } = await reader.read();
360
- if (done) break;
361
- buffer += decoder.decode(value, { stream: true });
362
- let boundary = findSseFrameBoundary(buffer);
363
- while (boundary) {
364
- yield buffer.slice(0, boundary.index);
365
- buffer = buffer.slice(boundary.index + boundary.separatorLength);
366
- boundary = findSseFrameBoundary(buffer);
367
- }
368
- }
369
- const remaining = decoder.decode();
370
- if (remaining) {
371
- buffer += remaining;
372
- let boundary = findSseFrameBoundary(buffer);
373
- while (boundary) {
374
- yield buffer.slice(0, boundary.index);
375
- buffer = buffer.slice(boundary.index + boundary.separatorLength);
376
- boundary = findSseFrameBoundary(buffer);
377
- }
378
- }
379
- if (buffer.trim()) yield buffer;
380
- }
381
- function findSseFrameBoundary(buffer) {
382
- const lfLf = buffer.indexOf("\n\n");
383
- const crLfCrLf = buffer.indexOf("\r\n\r\n");
384
- if (lfLf === -1 && crLfCrLf === -1) return null;
385
- const useLf = lfLf !== -1 && (crLfCrLf === -1 || lfLf < crLfCrLf);
386
- return useLf ? { index: lfLf, separatorLength: 2 } : { index: crLfCrLf, separatorLength: 4 };
387
- }
388
- async function* streamSseDataValues(response, parse) {
389
- const reader = response.body?.getReader();
390
- if (!reader) return;
391
- const decoder = new TextDecoder();
392
- let buffer = "";
393
- while (true) {
394
- const { done, value } = await reader.read();
395
- if (done) break;
396
- buffer += decoder.decode(value, { stream: true });
397
- const lines = buffer.split("\n");
398
- buffer = lines.pop() ?? "";
399
- for (const line of lines) {
400
- const parsed = parse(line);
401
- if (parsed) yield parsed;
402
- }
403
- }
404
- const remaining = decoder.decode();
405
- if (remaining) {
406
- buffer += remaining;
407
- const lines = buffer.split("\n");
408
- buffer = lines.pop() ?? "";
409
- for (const line of lines) {
410
- const parsed = parse(line);
411
- if (parsed) yield parsed;
412
- }
413
- }
414
- if (buffer.trim()) {
415
- const parsed = parse(buffer);
416
- if (parsed) yield parsed;
417
- }
418
- }
419
- async function readSseDataValues(response, parse) {
420
- const values = [];
421
- for await (const value of streamSseDataValues(response, parse)) {
422
- values.push(value);
423
- }
424
- return values;
425
- }
426
-
427
353
  // packages/agent-runtime/platformChatProvider.ts
428
354
  var PlatformStreamInterruptedError = class extends Error {
429
355
  code = "PLATFORM_STREAM_INTERRUPTED";
@@ -926,9 +852,6 @@ export {
926
852
  applyChatCompletionDelta,
927
853
  flushChatCompletionStream,
928
854
  providerHttpFailure,
929
- readSseFrames,
930
- streamSseDataValues,
931
- readSseDataValues,
932
855
  createResponsesToolAccumulator,
933
856
  applyResponsesToolEvent,
934
857
  finalizeResponsesToolCalls,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  requireTokenUser
3
- } from "./chunk-ETI2NYVF.js";
3
+ } from "./chunk-PHXD6JTX.js";
4
4
  import {
5
5
  resolveServerUrl
6
6
  } from "./chunk-A7GB5UGH.js";
@@ -2,7 +2,7 @@ import {
2
2
  deleteDbRecord,
3
3
  queryUserRecords,
4
4
  readDbRecord
5
- } from "./chunk-AEOE4Z6Q.js";
5
+ } from "./chunk-LWKP7AWH.js";
6
6
  import {
7
7
  mergeAndDedupUserData
8
8
  } from "./chunk-KQHGZWSV.js";
@@ -7,7 +7,7 @@ import {
7
7
  listUserRecordsFromServers,
8
8
  readDbRecordFromServers,
9
9
  readLiveDbRecordAfterTombstoneMerge
10
- } from "./chunk-GEPUP7OO.js";
10
+ } from "./chunk-IQPFGYO3.js";
11
11
  import {
12
12
  fetchWithTransientRetry
13
13
  } from "./chunk-5UTFL4QJ.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  generatePkcePair,
3
3
  startCallbackServer
4
- } from "./chunk-53HEEOTT.js";
4
+ } from "./chunk-Z5625XML.js";
5
5
  import {
6
6
  toErrorMessage
7
7
  } from "./chunk-HNMXYYJR.js";
@@ -29,7 +29,7 @@ import {
29
29
  toCompactAgentSummary,
30
30
  toSafeAgentSummary,
31
31
  toUnavailableAgentSummary
32
- } from "./chunk-PQFHGD77.js";
32
+ } from "./chunk-2OASQKU2.js";
33
33
  import {
34
34
  getUserDataItemTimestamp,
35
35
  mergeAndDedupUserData
@@ -81,10 +81,10 @@ import {
81
81
  } from "./chunk-VF4K2QE6.js";
82
82
  import {
83
83
  createDocState
84
- } from "./chunk-QWL5QZGU.js";
84
+ } from "./chunk-TR22GEUU.js";
85
85
  import {
86
86
  createDialogAction
87
- } from "./chunk-RRPWH4LX.js";
87
+ } from "./chunk-RVE4DCV3.js";
88
88
  import {
89
89
  DEFAULT_COLLAPSED_CATEGORIES,
90
90
  addContentToSpace,
@@ -102,7 +102,7 @@ import {
102
102
  updateContentCategory,
103
103
  updateContentTitle,
104
104
  writeStoredCollapsedCategories
105
- } from "./chunk-7U6P3PHS.js";
105
+ } from "./chunk-DOTZ5GTO.js";
106
106
  import {
107
107
  getCurrentSpaceId,
108
108
  getCurrentSpaceIdRaw,
@@ -124,14 +124,14 @@ import {
124
124
  selectMsgById,
125
125
  uiAskChoiceFunc,
126
126
  uiAskChoiceFunctionSchema
127
- } from "./chunk-TWQWYIMJ.js";
127
+ } from "./chunk-YWIEQS6H.js";
128
128
  import {
129
129
  createAgent,
130
130
  deleteServerSyncedCredential,
131
131
  runLlm,
132
132
  streamAgentChatTurn,
133
133
  updateAgent
134
- } from "./chunk-PVZT43MU.js";
134
+ } from "./chunk-YTLRHRH3.js";
135
135
  import {
136
136
  getActiveDialogKey,
137
137
  selectCurrentDialogKey,
@@ -3970,7 +3970,7 @@ async function deleteDialogsFunc(args, thunkApi) {
3970
3970
  const deletedDialogIds = [];
3971
3971
  const deletedDialogKeys = [];
3972
3972
  const failures = [];
3973
- const { deleteDialog: deleteDialog2 } = await import("./dialogSlice-6Z2BPC3T.js");
3973
+ const { deleteDialog: deleteDialog2 } = await import("./dialogSlice-P2K47T3P.js");
3974
3974
  for (const target of targets) {
3975
3975
  try {
3976
3976
  await thunkApi.dispatch(deleteDialog2(target.dbKey)).unwrap();
@@ -15044,7 +15044,7 @@ var executeToolRun = createAsyncThunk(
15044
15044
  if (!executionInput) {
15045
15045
  throw new Error(`ToolRun ${id} has no input to execute with.`);
15046
15046
  }
15047
- const { findToolExecutor: findToolExecutor2 } = await import("./tools-XA4ZWLH4.js");
15047
+ const { findToolExecutor: findToolExecutor2 } = await import("./tools-34SEJSLQ.js");
15048
15048
  const { executor } = findToolExecutor2(run.toolName);
15049
15049
  toolRunStarted({
15050
15050
  id: run.id,
@@ -17551,7 +17551,7 @@ async function updateDocFunc(args, thunkApi) {
17551
17551
  updated_at: (/* @__PURE__ */ new Date()).toISOString()
17552
17552
  };
17553
17553
  await dispatch(write({ data: updatedPageData, customKey: id })).unwrap();
17554
- const { getDocState, applyExternalDocUpdate } = await import("./docStore-7WUS6XXX.js");
17554
+ const { getDocState, applyExternalDocUpdate } = await import("./docStore-3AHKTJRI.js");
17555
17555
  if (getDocState().pageKey === id) {
17556
17556
  applyExternalDocUpdate({
17557
17557
  slateData: finalSlateData,
@@ -523,7 +523,7 @@ async function buildCreatedAgentRecord(args) {
523
523
  const resolvedAgentInput = resolveCliAgentKeyInput(args.parsed.agentInput);
524
524
  const agentKey = resolvedAgentInput.startsWith("agent-") ? resolvedAgentInput : createAgentKey.private(userId || "local", resolvedAgentInput);
525
525
  if (args.parsed.presetId) {
526
- const { resolveProviderPresetFields } = await import("./providerPresetApply-FG6NZ57W.js");
526
+ const { resolveProviderPresetFields } = await import("./providerPresetApply-XI3WUPTI.js");
527
527
  const fields = resolveProviderPresetFields(args.parsed.presetId);
528
528
  if (fields.kind === "manual") {
529
529
  throw new Error(
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  fetchReferenceContents,
3
3
  resolveReferenceAssets
4
- } from "./chunk-DUK4OQNO.js";
4
+ } from "./chunk-SYXOBWOC.js";
5
5
 
6
6
  // packages/ai/agent/fetchAgentContexts.ts
7
7
  async function fetchAgentContexts(references, dispatch) {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  readDbRecord,
3
3
  writeAgentRecord
4
- } from "./chunk-AEOE4Z6Q.js";
4
+ } from "./chunk-LWKP7AWH.js";
5
5
  import {
6
6
  buildSkillSummaryMarker
7
7
  } from "./chunk-VF4K2QE6.js";
@@ -5,14 +5,14 @@ import {
5
5
  inlineImageUrlsForCustomProvider,
6
6
  prepareTools,
7
7
  shouldInlineImageUrlsForAgent
8
- } from "./chunk-L7OXGGBN.js";
8
+ } from "./chunk-T3GEOSRJ.js";
9
9
  import {
10
10
  INVALID_TOOL_ARGS_REPLACEMENT,
11
11
  buildInvalidToolCallSelfHealResult,
12
12
  parseToolCallArguments,
13
13
  performFetchRequest,
14
14
  sanitizeOutboundMessages
15
- } from "./chunk-DUK4OQNO.js";
15
+ } from "./chunk-SYXOBWOC.js";
16
16
  import {
17
17
  createSSEParser,
18
18
  createToolRunId,
@@ -23,7 +23,7 @@ import {
23
23
  toolRunSetPending,
24
24
  toolRunStarted,
25
25
  toolRunSucceeded
26
- } from "./chunk-AG2AZ6GX.js";
26
+ } from "./chunk-LPIYPEME.js";
27
27
  import {
28
28
  getPublicImageAgentMode
29
29
  } from "./chunk-VIDPVFP3.js";
@@ -35,10 +35,10 @@ import {
35
35
  messageStreamEnd,
36
36
  messageStreaming,
37
37
  updateToolMessage
38
- } from "./chunk-TWQWYIMJ.js";
38
+ } from "./chunk-YWIEQS6H.js";
39
39
  import {
40
40
  streamAgentChatTurn
41
- } from "./chunk-PVZT43MU.js";
41
+ } from "./chunk-YTLRHRH3.js";
42
42
  import {
43
43
  addActiveController,
44
44
  removeActiveController,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  ANTIGRAVITY_CLOUD_CODE_BASE_URL
3
- } from "./chunk-UZGQNTVW.js";
3
+ } from "./chunk-GNCCNNZD.js";
4
4
  import {
5
5
  kimiCodeModels,
6
6
  moonshotModels,
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  addContentToSpace
3
- } from "./chunk-7U6P3PHS.js";
3
+ } from "./chunk-DOTZ5GTO.js";
4
4
  import {
5
5
  prepareAndPersistMessage,
6
6
  uiAskChoiceFunc,
7
7
  uiAskChoiceFunctionSchema
8
- } from "./chunk-TWQWYIMJ.js";
8
+ } from "./chunk-YWIEQS6H.js";
9
9
  import {
10
10
  require_date_fns
11
11
  } from "./chunk-M76ECQRD.js";
@@ -30,7 +30,7 @@ import {
30
30
  resolveLocalUserId,
31
31
  t,
32
32
  toolLabel
33
- } from "./chunk-BVGTK7MR.js";
33
+ } from "./chunk-UDIIVXKA.js";
34
34
  import {
35
35
  createRunActivityTracker,
36
36
  popSingleQueueMessage,
@@ -51,7 +51,7 @@ import {
51
51
  import {
52
52
  readDbRecord,
53
53
  resolveAgentRecordFromHybridStore
54
- } from "./chunk-AEOE4Z6Q.js";
54
+ } from "./chunk-LWKP7AWH.js";
55
55
  import {
56
56
  isLocalCliAgentKey
57
57
  } from "./chunk-SV5IJK6K.js";
@@ -64,7 +64,7 @@ import {
64
64
  } from "./chunk-LTRXGFMS.js";
65
65
  import {
66
66
  formatAgentListCard
67
- } from "./chunk-AG2AZ6GX.js";
67
+ } from "./chunk-LPIYPEME.js";
68
68
  import {
69
69
  isTransientFetchError
70
70
  } from "./chunk-5UTFL4QJ.js";
@@ -88,11 +88,11 @@ import {
88
88
  chooseMemoryOwners,
89
89
  loadMemoryCandidatesFromDb,
90
90
  resolveAgentMemoryPolicy
91
- } from "./chunk-RRPWH4LX.js";
91
+ } from "./chunk-RVE4DCV3.js";
92
92
  import {
93
93
  API_REPORTED_COST_MULTIPLIER,
94
94
  parseUiAskChoiceContent
95
- } from "./chunk-TWQWYIMJ.js";
95
+ } from "./chunk-YWIEQS6H.js";
96
96
  import {
97
97
  isOAuthApiKeyRef
98
98
  } from "./chunk-YYLHWIW6.js";
@@ -115,7 +115,7 @@ import {
115
115
  LOCAL_AGENT_CONFIG_MISSING_CODE,
116
116
  LOCAL_TURN_ABORTED_CODE,
117
117
  readActionGate
118
- } from "./chunk-62CATUYY.js";
118
+ } from "./chunk-4NNTATRH.js";
119
119
  import {
120
120
  resolveAgentRuntimeConfigFromRecord
121
121
  } from "./chunk-4MK3I7Y4.js";
@@ -133,7 +133,7 @@ import {
133
133
  } from "./chunk-FDTR4QJ6.js";
134
134
  import {
135
135
  isAntigravityOAuthAgent
136
- } from "./chunk-UZGQNTVW.js";
136
+ } from "./chunk-GNCCNNZD.js";
137
137
  import {
138
138
  resolveClientVersion
139
139
  } from "./chunk-6OZ36FXI.js";
@@ -10459,7 +10459,7 @@ function findCollapsedPasteSpanAt(buffer, pos, opts = {}) {
10459
10459
  // packages/cli/client/agentRun.ts
10460
10460
  import { ulid as ulid2 } from "ulid";
10461
10461
  async function loadRunLocalAgentTurn() {
10462
- const { runLocalAgentTurn } = await import("./agentRuntimeLocal-KCMC2TBD.js");
10462
+ const { runLocalAgentTurn } = await import("./agentRuntimeLocal-E67CTV45.js");
10463
10463
  return runLocalAgentTurn;
10464
10464
  }
10465
10465
  var stripDebugNoise = (s) => s.replace(/\s*raw="[\s\S]*"/g, "").replace(/\s*raw=\S+/g, "").replace(/\s*headers=\[[^\]]*\]/g, "").replace(/\s*headers=\S+/g, "").trim();
@@ -10788,19 +10788,21 @@ function buildAuthFailure(ctx) {
10788
10788
  const fix = platformNoToken ? `This install is not logged in \u2014 run \`nolo login\`, or set AUTH_TOKEN / NOLO_SERVER` : ctx.where === "server chat proxy" ? `Check the agent's provider/api-key settings on nolo.chat` : `Fix the local credential/config and retry`;
10789
10789
  const { url: validationUrl, text: validationText } = extractGoogleValidationLink(ctx.message);
10790
10790
  const validationLabel = validationText || "Verify your account";
10791
- const validationHint = validationUrl ? `
10792
- \u24D8 This provider requires a one-time account verification. Open this link in a browser signed into that account, then retry:
10793
- ${formatCliHyperlink(
10794
- validationUrl,
10795
- validationLabel
10796
- )}` + // A 200-char Google url wraps on a narrow terminal, and a wrapped link
10797
- // loses its hit area in several terminals — so even when the clickable
10798
- // form is available, the raw url still gets its own copyable line. (In
10799
- // the disabled path `label (url)` already carries it.)
10800
- (resolveCliHyperlinkEnabled() ? `
10801
- \u6216\u590D\u5236\u6B64\u94FE\u63A5: ${validationUrl}` : "") : "";
10802
- return `${RUN_UNAVAILABLE_PREFIX} (${ctx.where} returned HTTP ${ctx.status}, auth rejected).${validationHint ? `${validationHint}
10803
- ` : " "}Detail: ${ctx.message} ${NO_FALLBACK} ${fix}, ${SERVER_FALLBACK_HINT}.
10791
+ if (validationUrl) {
10792
+ const linkLine = `
10793
+ ${formatCliHyperlink(validationUrl, validationLabel)}`;
10794
+ const rawLine = resolveCliHyperlinkEnabled() ? `
10795
+ \u70B9\u4E0D\u4E86\u5C31\u590D\u5236\u8FD9\u884C: ${validationUrl}` : "";
10796
+ const verifyHint = `
10797
+ \u24D8 \u60F3\u4E00\u952E\u6253\u5F00\uFF1F\u8DD1 \`nolo auth antigravity --verify\` \u2014\u2014 \u5B83\u4F1A\u7528\u672C\u5730\u51ED\u8BC1\u62FF\u5230\u5F53\u524D\u9A8C\u8BC1\u94FE\u63A5\u5E76\u76F4\u63A5\u62C9\u8D77\u6D4F\u89C8\u5668\u3002`;
10798
+ const retryLine = `
10799
+ \u9A8C\u8BC1\u5B8C\u6210\u540E\u76F4\u63A5\u91CD\u8BD5\u521A\u624D\u7684\u547D\u4EE4\u5373\u53EF\uFF0Ctoken \u4E0D\u7528\u91CD\u65B0\u767B\u5F55\u3002`;
10800
+ return `${RUN_UNAVAILABLE_PREFIX} (${ctx.where} returned HTTP ${ctx.status}: Google requires a one-time account verification \u2014 your credential is fine).
10801
+ Open this link in a browser signed into ${ctx.credentialAccountId ? `\`${ctx.credentialAccountId}\`` : "the Google account behind this credential"}:${linkLine}${rawLine}${verifyHint}${retryLine}
10802
+ Detail: ${ctx.message} ${NO_FALLBACK} Use --server to run on the server explicitly.
10803
+ `;
10804
+ }
10805
+ return `${RUN_UNAVAILABLE_PREFIX} (${ctx.where} returned HTTP ${ctx.status}, auth rejected). Detail: ${ctx.message} ${NO_FALLBACK} ${fix}, ${SERVER_FALLBACK_HINT}.
10804
10806
  `;
10805
10807
  }
10806
10808
  function isAuthNoTokenBody(message) {
@@ -10843,6 +10845,7 @@ var FAILURE_BUILDERS = {
10843
10845
  upstream: buildUpstreamFailure
10844
10846
  };
10845
10847
  function describeLocalRunFailure(message, rawError) {
10848
+ const credentialAccountId = rawError && typeof rawError === "object" && typeof rawError.credentialAccountId === "string" ? rawError.credentialAccountId.trim() || void 0 : void 0;
10846
10849
  if (rawError && typeof rawError === "object" && "code" in rawError && rawError.code === "PLATFORM_STREAM_INTERRUPTED") {
10847
10850
  return "[nolo] The platform LLM stream was interrupted before the turn completed. Your conversation was preserved. Send another message to continue.\n";
10848
10851
  }
@@ -10920,7 +10923,8 @@ function describeLocalRunFailure(message, rawError) {
10920
10923
  status: cls.status,
10921
10924
  ...cls.statusInferred ? { statusInferred: true } : {},
10922
10925
  ...cls.quotaExhausted ? { quotaExhausted: true } : {},
10923
- ...cooldownUntil ? { cooldownUntil } : {}
10926
+ ...cooldownUntil ? { cooldownUntil } : {},
10927
+ ...credentialAccountId ? { credentialAccountId } : {}
10924
10928
  };
10925
10929
  return FAILURE_BUILDERS[cls.kind](ctx);
10926
10930
  }
@@ -7,7 +7,7 @@ import {
7
7
  import {
8
8
  clipMultilineText,
9
9
  fetchAndSerializeTable
10
- } from "./chunk-AG2AZ6GX.js";
10
+ } from "./chunk-LPIYPEME.js";
11
11
  import {
12
12
  isGatewayHttpStatus
13
13
  } from "./chunk-NF64D32W.js";
@@ -28,13 +28,13 @@ import {
28
28
  } from "./chunk-MEYIRKDN.js";
29
29
  import {
30
30
  fetchAndCacheMessages
31
- } from "./chunk-TWQWYIMJ.js";
31
+ } from "./chunk-YWIEQS6H.js";
32
32
  import {
33
33
  shouldUseServerProxy
34
34
  } from "./chunk-YYLHWIW6.js";
35
35
  import {
36
36
  fetchServerSyncedCredential
37
- } from "./chunk-PVZT43MU.js";
37
+ } from "./chunk-YTLRHRH3.js";
38
38
  import {
39
39
  buildSkillGuidancePromptBlock,
40
40
  extractRuntimePageCapabilities,
@@ -58,7 +58,7 @@ import {
58
58
  import {
59
59
  ANTIGRAVITY_CLOUD_CODE_BASE_URL,
60
60
  isAntigravityOAuthAgent
61
- } from "./chunk-UZGQNTVW.js";
61
+ } from "./chunk-GNCCNNZD.js";
62
62
  import {
63
63
  buildProviderAuthHeaders
64
64
  } from "./chunk-6OZ36FXI.js";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  toolRegistry
3
- } from "./chunk-AG2AZ6GX.js";
3
+ } from "./chunk-LPIYPEME.js";
4
4
  import {
5
5
  i18n_default
6
- } from "./chunk-TWQWYIMJ.js";
6
+ } from "./chunk-YWIEQS6H.js";
7
7
  import {
8
8
  canonicalizeToolNames
9
9
  } from "./chunk-O6OSWFZQ.js";
@@ -326,7 +326,7 @@ async function saveDocState(arg, { dispatch, getState }) {
326
326
  ).unwrap();
327
327
  if (dbSpaceId) {
328
328
  try {
329
- const { updateContentTitle } = await import("./contentThunks-3Z6NAUW6.js");
329
+ const { updateContentTitle } = await import("./contentThunks-JHK6X2KU.js");
330
330
  await dispatch(
331
331
  updateContentTitle({
332
332
  spaceId: dbSpaceId,
@@ -365,7 +365,7 @@ async function saveDocState(arg, { dispatch, getState }) {
365
365
  }
366
366
  }
367
367
  async function createDocState(args, thunkApi) {
368
- const { createPageAction } = await import("./createPageAction-JJ7UUTWC.js");
368
+ const { createPageAction } = await import("./createPageAction-QWNMGO3O.js");
369
369
  return createPageAction(args, thunkApi);
370
370
  }
371
371
  function subscribe(listener) {