nolo-cli 0.16.0-alpha.12 → 0.16.0-alpha.14

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 (69) hide show
  1. package/{_executeModel-LGHYA5XS.js → _executeModel-UU2JO5OB.js} +16 -15
  2. package/{agentDeleteCommand-PBIUC4FT.js → agentDeleteCommand-L6JRXPYK.js} +10 -10
  3. package/{agentEmailCommands-KC2QCPQV.js → agentEmailCommands-FE3GY3T5.js} +19 -18
  4. package/{agentListCommands-N64PHBXM.js → agentListCommands-ZWSAIC4W.js} +11 -11
  5. package/{agentMachineCommands-P7S5WAVA.js → agentMachineCommands-VWQ2GZBY.js} +10 -10
  6. package/{agentRecordCommands-JKZR2TZJ.js → agentRecordCommands-PYVZMRZM.js} +19 -18
  7. package/{agentRunCommand-2ELKCBWR.js → agentRunCommand-3ADJ2J5U.js} +24 -20
  8. package/{agentRunControl-6ADXVYMR.js → agentRunControl-YVLQ4BW5.js} +24 -1
  9. package/{agentRuntimeLocal-T6YECTNF.js → agentRuntimeLocal-LXTR6SAU.js} +7 -7
  10. package/{agentSlice-NXLMDKR7.js → agentSlice-TI6ECUGN.js} +1 -1
  11. package/{appDeleteCommands-D6B6Z4ZQ.js → appDeleteCommands-QIS37SXE.js} +11 -11
  12. package/{appDeployCommands-YMO5FK4T.js → appDeployCommands-WBHB7T5B.js} +11 -11
  13. package/{appDeployStatusCommands-EO5DWWPQ.js → appDeployStatusCommands-A3OUV6GO.js} +11 -11
  14. package/{appGetCommands-6SMZ3URQ.js → appGetCommands-LCVYIH63.js} +11 -11
  15. package/{appListCommands-RZXSWR2G.js → appListCommands-PC7QOBUO.js} +11 -11
  16. package/{chunk-4LXOVZ4W.js → chunk-2OK7P5XF.js} +54 -13
  17. package/{chunk-MSA4JAOZ.js → chunk-2ZLEOGS5.js} +1 -1
  18. package/{chunk-KKY4B2Q2.js → chunk-4PWB7JRR.js} +4 -1
  19. package/{chunk-VHXXRWNL.js → chunk-5QJFYG2N.js} +15 -5
  20. package/{chunk-F3UOACU4.js → chunk-64IEIMN4.js} +1 -1
  21. package/{chunk-XEWUC53Z.js → chunk-6IGLIDDE.js} +21 -9
  22. package/{chunk-AS3ZQ3O2.js → chunk-7OBMZCRD.js} +1 -1
  23. package/{chunk-QLUFR47U.js → chunk-AL2V7U3E.js} +1 -1
  24. package/{chunk-22NGXGN3.js → chunk-BOBNE3XT.js} +2 -2
  25. package/{chunk-MYMMNKYL.js → chunk-E5CLOOG5.js} +153 -6
  26. package/{chunk-ZXQ52OY2.js → chunk-ECGTEOC2.js} +3 -3
  27. package/chunk-FKXFCYVO.js +221 -0
  28. package/{chunk-6KBBMW4D.js → chunk-FTNTMGXT.js} +1 -1
  29. package/{chunk-6CRACQXW.js → chunk-GFPESFS6.js} +2 -2
  30. package/{chunk-47QUPRHO.js → chunk-GM37ZF7R.js} +2 -2
  31. package/{chunk-A7O4KKLZ.js → chunk-HGDFFA6T.js} +2 -2
  32. package/{chunk-C4MMO7W4.js → chunk-NZBK3ZET.js} +1 -1
  33. package/{chunk-JTMNCCWF.js → chunk-OSIJVBXP.js} +2 -2
  34. package/{chunk-OVBVEXZ7.js → chunk-PFW2ZEON.js} +53 -1
  35. package/{chunk-BXXECNBU.js → chunk-Q6B6XJBG.js} +15 -6
  36. package/{chunk-GPELDE6I.js → chunk-SOW2GCA5.js} +1 -1
  37. package/{chunk-HSASSW4L.js → chunk-TUWPYUVR.js} +7 -7
  38. package/{chunk-EQTZPEID.js → chunk-U3DCTSPN.js} +31 -49
  39. package/{chunk-D4NCEGGR.js → chunk-URVWRKFU.js} +166 -242
  40. package/{chunk-WBA6SIBB.js → chunk-UUDRNDC7.js} +1 -1
  41. package/{chunk-2WXMU64E.js → chunk-W63ZTRQU.js} +3 -3
  42. package/{chunk-ZH62XNZE.js → chunk-W6OKITU6.js} +678 -39
  43. package/{chunk-PU4LXVAC.js → chunk-XG7CSGP3.js} +1 -1
  44. package/{chunk-XRSPI6CP.js → chunk-YZXEEGKV.js} +1 -1
  45. package/{chunk-RIF3XLXK.js → chunk-ZDDHKIWB.js} +8 -4
  46. package/{createAgentAutomationAction-RKWIMKHW.js → createAgentAutomationAction-N4ZB7VX2.js} +3 -3
  47. package/{createDialogAction-VN7MEBS3.js → createDialogAction-KF6HXCCZ.js} +4 -4
  48. package/{createPageAction-JBUWBHHC.js → createPageAction-FXWSJONZ.js} +3 -3
  49. package/{dialogCommands-DFY5HJ6M.js → dialogCommands-ULS6HV5V.js} +11 -11
  50. package/{dialogSlice-NNYBU35K.js → dialogSlice-K32QLYS7.js} +3 -3
  51. package/{docCreateCommands-5L76YTI2.js → docCreateCommands-RZTRTRU4.js} +10 -10
  52. package/{docDeleteCommands-3GASP3VR.js → docDeleteCommands-FU36A663.js} +11 -11
  53. package/{docReadCommands-ALA77AZM.js → docReadCommands-IX4JXD4X.js} +10 -10
  54. package/{docStore-DR22GGF3.js → docStore-L6HBNJ3R.js} +4 -4
  55. package/{docUpdateCommands-6AZGXE5M.js → docUpdateCommands-W4OCR55Z.js} +10 -10
  56. package/{handleSendMessageAction-FHITDM7H.js → handleSendMessageAction-MFKKZXV7.js} +3 -3
  57. package/index.js +45 -45
  58. package/{machineCommands-3B4IHHVK.js → machineCommands-4MFLZERH.js} +18 -17
  59. package/{machineWsRunDispatch-AXZ6OL3V.js → machineWsRunDispatch-AAHRNKIR.js} +18 -17
  60. package/package.json +1 -1
  61. package/{readlineWorkspace-DBZCXS7Y.js → readlineWorkspace-7OPITHTN.js} +38 -29
  62. package/{runAgentClientLoop-AB7PQ3TB.js → runAgentClientLoop-HRWV7KE2.js} +12 -11
  63. package/{setPrimaryDialogAgentAction-IIVDCY5C.js → setPrimaryDialogAgentAction-57GRIGX5.js} +16 -8
  64. package/{skillDiscovery-6M2BZUFN.js → skillDiscovery-KJWT7JBU.js} +3 -3
  65. package/{spaceCommands-AB2D7A2R.js → spaceCommands-GMMQTMHK.js} +10 -10
  66. package/{spaceSlice-TEJDCU6A.js → spaceSlice-V2P5TTQU.js} +3 -3
  67. package/{streamAgentChatTurn-NZ3HLAXS.js → streamAgentChatTurn-ZANOYOUR.js} +64 -43
  68. package/{tools-M4USUF3R.js → tools-YHZP6NXU.js} +8 -7
  69. package/{updateDialogTitleAction-SMPQVKWT.js → updateDialogTitleAction-IKTPGPPE.js} +3 -3
@@ -3,7 +3,7 @@ import {
3
3
  prepareAndPersistMessage,
4
4
  uiAskChoiceFunc,
5
5
  uiAskChoiceFunctionSchema
6
- } from "./chunk-4LXOVZ4W.js";
6
+ } from "./chunk-2OK7P5XF.js";
7
7
  import {
8
8
  require_date_fns
9
9
  } from "./chunk-M76ECQRD.js";
@@ -333,8 +333,9 @@ function resolveAgentMemoryPolicy(input) {
333
333
  }
334
334
  function buildMemorySubjectsForAgent(input) {
335
335
  const policy = input.policy ?? resolveAgentMemoryPolicy({ agentKey: input.agentKey });
336
+ const subjectId = input.memorySubjectId?.trim() || input.agentKey;
336
337
  return [
337
- { subjectType: "agent", subjectId: input.agentKey },
338
+ { subjectType: "agent", subjectId },
338
339
  policy.includeUserSubject && input.userId ? { subjectType: "user", subjectId: input.userId } : null,
339
340
  input.spaceId ? { subjectType: "space", subjectId: input.spaceId } : null
340
341
  ].filter(Boolean);
@@ -832,7 +833,9 @@ var notifyUserDataUpdated = () => {
832
833
  };
833
834
  var createDialogAction = async (args, thunkApi) => {
834
835
  const {
835
- cybots,
836
+ cybots: requestedCybots = [],
837
+ agentMode: requestedAgentMode,
838
+ autoRoute,
836
839
  category,
837
840
  spaceId: explicitSpaceId,
838
841
  inheritFromDialogKey,
@@ -846,6 +849,8 @@ var createDialogAction = async (args, thunkApi) => {
846
849
  } = args;
847
850
  const { dispatch: dispatchRaw, getState, extra } = thunkApi;
848
851
  const dispatch = dispatchRaw;
852
+ const agentMode = requestedAgentMode ?? (requestedCybots.length > 0 ? "fixed" : "auto");
853
+ const cybots = agentMode === "auto" ? [] : requestedCybots;
849
854
  const agentKey = cybots[0];
850
855
  const currentUserId = selectIdentityUserId(getState()) ?? null;
851
856
  const isDeviceLocalDialog = isLocalOwnerDialogAgents(cybots);
@@ -861,6 +866,7 @@ var createDialogAction = async (args, thunkApi) => {
861
866
  } catch {
862
867
  }
863
868
  const readAgentConfig = async () => {
869
+ if (!agentKey) return null;
864
870
  const existing = await dispatch(
865
871
  readAndWait({
866
872
  dbKey: agentKey,
@@ -884,9 +890,9 @@ var createDialogAction = async (args, thunkApi) => {
884
890
  ).unwrap();
885
891
  return recoveredBuiltinAgent;
886
892
  };
887
- const canSkipAgentConfigRead = !!skipAgentConfigRead && !!args.skipGreeting && !!titleOverride;
893
+ const canSkipAgentConfigRead = agentMode === "auto" || !!skipAgentConfigRead && !!args.skipGreeting && !!titleOverride;
888
894
  const agentConfig = canSkipAgentConfigRead ? null : await readAgentConfig();
889
- if (!agentConfig && !canSkipAgentConfigRead) {
895
+ if (agentMode === "fixed" && !agentConfig && !canSkipAgentConfigRead) {
890
896
  throw new Error(`Agent with key ${agentKey} not found.`);
891
897
  }
892
898
  const shouldUseRelationshipGreeting = shouldUseRecentRelationshipRecap({
@@ -919,7 +925,7 @@ var createDialogAction = async (args, thunkApi) => {
919
925
  });
920
926
  }
921
927
  const time = (0, import_date_fns.format)(/* @__PURE__ */ new Date(), "MM-dd HH:mm");
922
- const title = titleOverride || (agentConfig?.name || "Agent") + " " + time;
928
+ const title = titleOverride || (agentMode === "auto" ? "\u65B0\u5BF9\u8BDD" : agentConfig?.name || "Agent") + " " + time;
923
929
  const spaceId = explicitSpaceId;
924
930
  const dialogPath = createDialogKey(userId);
925
931
  const dialogId = extractCustomId(dialogPath);
@@ -954,7 +960,10 @@ var createDialogAction = async (args, thunkApi) => {
954
960
  id: dialogId,
955
961
  dbKey: dialogPath,
956
962
  userId,
963
+ agentMode,
957
964
  cybots,
965
+ ...agentMode === "fixed" && agentKey ? { primaryAgentKey: agentKey } : {},
966
+ ...agentMode === "auto" && autoRoute ? { autoRoute } : {},
958
967
  title,
959
968
  type: "dialog" /* DIALOG */,
960
969
  createdAt: (0, import_date_fns.formatISO)(/* @__PURE__ */ new Date()),
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-KFEVY3ST.js";
4
4
  import {
5
5
  canonicalizeToolNames
6
- } from "./chunk-JTMNCCWF.js";
6
+ } from "./chunk-OSIJVBXP.js";
7
7
  import {
8
8
  asTrimmedLowercaseString
9
9
  } from "./chunk-QSJ3HFEF.js";
@@ -5,10 +5,10 @@ import {
5
5
  inlineImageUrlsForCustomProvider,
6
6
  prepareTools,
7
7
  shouldInlineImageUrlsForAgent
8
- } from "./chunk-47QUPRHO.js";
8
+ } from "./chunk-GM37ZF7R.js";
9
9
  import {
10
10
  performFetchRequest
11
- } from "./chunk-XEWUC53Z.js";
11
+ } from "./chunk-6IGLIDDE.js";
12
12
  import {
13
13
  createSSEParser,
14
14
  createToolRunId,
@@ -19,7 +19,7 @@ import {
19
19
  toolRunSetPending,
20
20
  toolRunStarted,
21
21
  toolRunSucceeded
22
- } from "./chunk-D4NCEGGR.js";
22
+ } from "./chunk-URVWRKFU.js";
23
23
  import {
24
24
  getPublicImageAgentMode
25
25
  } from "./chunk-VIDPVFP3.js";
@@ -29,13 +29,13 @@ import {
29
29
  messageStreaming,
30
30
  selectCurrentSpaceId,
31
31
  updateToolMessage
32
- } from "./chunk-4LXOVZ4W.js";
32
+ } from "./chunk-2OK7P5XF.js";
33
33
  import {
34
34
  streamAgentChatTurn
35
- } from "./chunk-ZXQ52OY2.js";
35
+ } from "./chunk-ECGTEOC2.js";
36
36
  import {
37
37
  EMPTY_ASSISTANT_REPAIR_PROMPT
38
- } from "./chunk-RIF3XLXK.js";
38
+ } from "./chunk-ZDDHKIWB.js";
39
39
  import {
40
40
  accumulateToolCallDelta,
41
41
  createThinkParserState,
@@ -47,7 +47,7 @@ import {
47
47
  } from "./chunk-LSFAWXKC.js";
48
48
  import {
49
49
  getModelInfo
50
- } from "./chunk-OVBVEXZ7.js";
50
+ } from "./chunk-PFW2ZEON.js";
51
51
  import {
52
52
  getApiEndpoint
53
53
  } from "./chunk-HQPG2PIV.js";
@@ -16,20 +16,21 @@ import {
16
16
  createCliLocalRuntimeAdapter,
17
17
  getCliLocale,
18
18
  isBuiltinNoloAgentRef,
19
+ isQuotaExhaustedError,
19
20
  parseAgentRunEvent,
20
21
  t,
21
22
  toolLabel
22
- } from "./chunk-ZH62XNZE.js";
23
+ } from "./chunk-W6OKITU6.js";
23
24
  import {
24
25
  getReadableCliDb
25
26
  } from "./chunk-W4NVOSFF.js";
26
27
  import {
27
28
  readDbRecord,
28
29
  resolveAgentRecordFromHybridStore
29
- } from "./chunk-C4MMO7W4.js";
30
+ } from "./chunk-NZBK3ZET.js";
30
31
  import {
31
32
  normalizeAgentHandle
32
- } from "./chunk-PU4LXVAC.js";
33
+ } from "./chunk-XG7CSGP3.js";
33
34
  import {
34
35
  NOLO_PROJECT_MANAGER_AGENT_KEY,
35
36
  isLocalCliAgentKey
@@ -39,16 +40,8 @@ import {
39
40
  buildModelLayerOverride
40
41
  } from "./chunk-LTRXGFMS.js";
41
42
  import {
42
- formatAgentListCard,
43
- formatFinishedRunCard,
44
- formatListRunsCard,
45
- formatNotFoundRunCard,
46
- formatStartRunCard,
47
- formatStatusRunCard,
48
- formatStopRunCard,
49
- isAgentRunTerminalStatus,
50
- runShowsLogTail
51
- } from "./chunk-D4NCEGGR.js";
43
+ formatAgentListCard
44
+ } from "./chunk-URVWRKFU.js";
52
45
  import {
53
46
  isGatewayHttpStatus
54
47
  } from "./chunk-RQSOAMPJ.js";
@@ -57,7 +50,7 @@ import {
57
50
  chooseMemoryOwners,
58
51
  loadMemoryCandidatesFromDb,
59
52
  resolveAgentMemoryPolicy
60
- } from "./chunk-BXXECNBU.js";
53
+ } from "./chunk-Q6B6XJBG.js";
61
54
  import {
62
55
  parseExternalSkillMarkdown,
63
56
  parseSkillDocProtocol
@@ -66,10 +59,10 @@ import {
66
59
  API_REPORTED_COST_MULTIPLIER,
67
60
  normalizeUsage,
68
61
  parseUiAskChoiceContent
69
- } from "./chunk-4LXOVZ4W.js";
62
+ } from "./chunk-2OK7P5XF.js";
70
63
  import {
71
64
  buildSkillDiscoveryContextBlock
72
- } from "./chunk-AS3ZQ3O2.js";
65
+ } from "./chunk-7OBMZCRD.js";
73
66
  import {
74
67
  buildPlatformChatCompletionRequest,
75
68
  parsePlatformChatCompletionData
@@ -82,7 +75,7 @@ import {
82
75
  LOCAL_TURN_ABORTED_CODE,
83
76
  readActionGate,
84
77
  readCommandActionGatePayload
85
- } from "./chunk-RIF3XLXK.js";
78
+ } from "./chunk-ZDDHKIWB.js";
86
79
  import {
87
80
  createThinkParserState,
88
81
  flushThinkParser,
@@ -95,7 +88,7 @@ import {
95
88
  import {
96
89
  DEFAULT_CONTEXT_WINDOW,
97
90
  getModelContextWindow
98
- } from "./chunk-OVBVEXZ7.js";
91
+ } from "./chunk-PFW2ZEON.js";
99
92
  import {
100
93
  clipCompactText
101
94
  } from "./chunk-5MMAK75Q.js";
@@ -105,7 +98,7 @@ import {
105
98
  import {
106
99
  buildMemoryOverlayLayer,
107
100
  buildMemoryUseGuidanceLayer
108
- } from "./chunk-QLUFR47U.js";
101
+ } from "./chunk-AL2V7U3E.js";
109
102
  import {
110
103
  compactWhitespace
111
104
  } from "./chunk-DWLEOOGR.js";
@@ -113,7 +106,17 @@ import {
113
106
  createRunActivityTracker,
114
107
  finalizeRunRecord,
115
108
  spawnLocalBackgroundRun
116
- } from "./chunk-MYMMNKYL.js";
109
+ } from "./chunk-E5CLOOG5.js";
110
+ import {
111
+ formatFinishedRunCard,
112
+ formatListRunsCard,
113
+ formatNotFoundRunCard,
114
+ formatStartRunCard,
115
+ formatStatusRunCard,
116
+ formatStopRunCard,
117
+ isAgentRunTerminalStatus,
118
+ runShowsLogTail
119
+ } from "./chunk-FKXFCYVO.js";
117
120
  import {
118
121
  CliProviderQuotaError
119
122
  } from "./chunk-CMKUBIGW.js";
@@ -3525,7 +3528,7 @@ function findCollapsedPasteSpanAt(buffer, pos, opts = {}) {
3525
3528
  // packages/cli/client/agentRun.ts
3526
3529
  import { ulid } from "ulid";
3527
3530
  async function loadRunLocalAgentTurn() {
3528
- const { runLocalAgentTurn } = await import("./agentRuntimeLocal-T6YECTNF.js");
3531
+ const { runLocalAgentTurn } = await import("./agentRuntimeLocal-LXTR6SAU.js");
3529
3532
  return runLocalAgentTurn;
3530
3533
  }
3531
3534
  async function resolveCurrentMachineId(options) {
@@ -3792,6 +3795,8 @@ async function runHttpAgentTurn(options, authToken) {
3792
3795
  runtime: "bun",
3793
3796
  entrypoint: "nolo-cli",
3794
3797
  capabilities: ["text-io", "streaming", "slash-commands"],
3798
+ ...options.dialogAgentMode ? { dialogAgentMode: options.dialogAgentMode } : {},
3799
+ ...options.memorySubjectId ? { memorySubjectId: options.memorySubjectId } : {},
3795
3800
  ...subjectRefs ? { subjectRefs } : {},
3796
3801
  ...allowedChildAgentKeys?.length ? { allowedChildAgentKeys } : {},
3797
3802
  ...blockedToolNames?.length ? { blockedToolNames } : {},
@@ -3953,8 +3958,10 @@ async function runLocalAgentTurnForCli(options, settings) {
3953
3958
  const blockedToolNames = options.blockedToolNames?.filter(
3954
3959
  (name) => name.trim()
3955
3960
  );
3956
- const runtimeContext = subjectRefs || allowedChildAgentKeys?.length || allowedToolNames?.length || blockedToolNames?.length || options.parentWakeOnTerminal ? {
3961
+ const runtimeContext = subjectRefs || allowedChildAgentKeys?.length || allowedToolNames?.length || blockedToolNames?.length || options.parentWakeOnTerminal || options.dialogAgentMode ? {
3957
3962
  ...subjectRefs ? { subjectRefs } : {},
3963
+ ...options.dialogAgentMode ? { dialogAgentMode: options.dialogAgentMode } : {},
3964
+ ...options.memorySubjectId ? { memorySubjectId: options.memorySubjectId } : {},
3958
3965
  ...allowedChildAgentKeys?.length ? { allowedChildAgentKeys } : {},
3959
3966
  ...allowedToolNames?.length ? { allowedToolNames } : {},
3960
3967
  ...blockedToolNames?.length ? { blockedToolNames } : {},
@@ -3963,7 +3970,7 @@ async function runLocalAgentTurnForCli(options, settings) {
3963
3970
  } : void 0;
3964
3971
  const currentDialogId = options.continueDialogId ?? ulid();
3965
3972
  const runChildTurn = async (input) => {
3966
- const { runLocalAgentTurn } = await import("./agentRuntimeLocal-T6YECTNF.js");
3973
+ const { runLocalAgentTurn } = await import("./agentRuntimeLocal-LXTR6SAU.js");
3967
3974
  return runLocalAgentTurn(input);
3968
3975
  };
3969
3976
  const createFreshChildBaseAdapter = () => {
@@ -4735,6 +4742,7 @@ var resolveMemoryRuntime = async (input) => {
4735
4742
  userId: input.userId,
4736
4743
  spaceId: input.spaceId,
4737
4744
  agentKey: input.agentKey,
4745
+ memorySubjectId: input.memorySubjectId,
4738
4746
  policy
4739
4747
  }),
4740
4748
  kinds: ["episodic", "semantic", "procedural"],
@@ -5239,31 +5247,6 @@ ${mdContent}`);
5239
5247
  }
5240
5248
  return result.exitCode;
5241
5249
  }
5242
- var QUOTA_ERROR_PATTERNS = [
5243
- /429/,
5244
- /quota/i,
5245
- /rate\s*limit/i,
5246
- /too\s*many\s*requests/i,
5247
- /额度/,
5248
- /上限/,
5249
- /用尽/,
5250
- /CliProviderQuotaError/i
5251
- ];
5252
- function isQuotaExhaustedError(error) {
5253
- if (!error) return false;
5254
- if (error instanceof CliProviderQuotaError) return true;
5255
- if (error instanceof Error) {
5256
- return QUOTA_ERROR_PATTERNS.some((pattern) => pattern.test(error.message));
5257
- }
5258
- if (typeof error === "string") {
5259
- return QUOTA_ERROR_PATTERNS.some((pattern) => pattern.test(error));
5260
- }
5261
- const maybeStatus = error.status;
5262
- if (typeof maybeStatus === "number" && maybeStatus === 429) return true;
5263
- const maybeStatusCode = error.statusCode;
5264
- if (typeof maybeStatusCode === "number" && maybeStatusCode === 429) return true;
5265
- return false;
5266
- }
5267
5250
  var BALANCE_ERROR_PATTERNS = [
5268
5251
  /UPSTREAM_402/i,
5269
5252
  /Insufficient Balance/i,
@@ -5332,6 +5315,5 @@ export {
5332
5315
  normalizeCliImageInput,
5333
5316
  inspectLocalRunWorkspace,
5334
5317
  runAgentRunCommand,
5335
- isQuotaExhaustedError,
5336
5318
  isBalanceExhaustedError
5337
5319
  };