nolo-cli 0.71.0 → 0.72.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/{_executeModel-GOV2OHC7.js → _executeModel-TKD22VDA.js} +10 -10
  2. package/{agentEmailCommands-YZQ2VVHY.js → agentEmailCommands-G53VVKIL.js} +9 -9
  3. package/{agentMachineCommands-UCYM5RRQ.js → agentMachineCommands-A7D55KN2.js} +1 -1
  4. package/{agentRecordCommands-TPBYOPMA.js → agentRecordCommands-UVU5UPJB.js} +9 -9
  5. package/{agentRunCommand-HBC2EQVU.js → agentRunCommand-PDKUP3L4.js} +9 -9
  6. package/{agentSlice-ZPODGT3P.js → agentSlice-FZBFYKP3.js} +1 -1
  7. package/{chatQueueReduxAdapter-Z67OC4WO.js → chatQueueReduxAdapter-E2D4NR2W.js} +2 -2
  8. package/{chunk-ZIUMSKK4.js → chunk-3LBE76GR.js} +8 -8
  9. package/{chunk-RFMPSCHX.js → chunk-4NI7LU7J.js} +7 -7
  10. package/{chunk-PWGW5JTK.js → chunk-7GCIXOQA.js} +1 -1
  11. package/{chunk-NUTDASGX.js → chunk-AOKRQAUQ.js} +2 -2
  12. package/{chunk-DQAEUZSQ.js → chunk-I5O24WHB.js} +2 -2
  13. package/{chunk-VLX45P4L.js → chunk-JWXTOIGR.js} +2 -2
  14. package/{chunk-BLCUMZNV.js → chunk-R4XZMDRV.js} +1 -1
  15. package/{chunk-FCCT2LU2.js → chunk-R5NCDOHB.js} +47 -19
  16. package/{chunk-F657NADX.js → chunk-RVCBKVIR.js} +3 -3
  17. package/{chunk-AAWBX67U.js → chunk-S2RB4LMB.js} +5 -5
  18. package/{chunk-YYLLD6H6.js → chunk-S4IVP3JA.js} +2 -2
  19. package/{chunk-SPQ7GSUX.js → chunk-SV63E2UZ.js} +26 -14
  20. package/{chunk-TVDZABBT.js → chunk-U4N7NIN3.js} +3 -3
  21. package/{chunk-3NVAU4WZ.js → chunk-ZDB5QFH4.js} +1 -1
  22. package/{contentThunks-VGXYTSKU.js → contentThunks-QLAU2LGJ.js} +3 -3
  23. package/{createAgentAutomationAction-6YBZFLET.js → createAgentAutomationAction-JUSLLNYE.js} +3 -3
  24. package/{createDialogAction-N7CTNKB5.js → createDialogAction-B52IPGBY.js} +4 -4
  25. package/{createPageAction-RXOOVKVO.js → createPageAction-ACAIWRDQ.js} +3 -3
  26. package/{dialogSlice-NLSKRXBN.js → dialogSlice-RM3EW5AO.js} +2 -2
  27. package/{docStore-CIAYE5WP.js → docStore-Q45M4B2I.js} +1 -1
  28. package/{handleSendMessageAction-ENUNMW3Z.js → handleSendMessageAction-I6KFXKDM.js} +2 -2
  29. package/index.js +15 -15
  30. package/{machineCommands-APIJY7UA.js → machineCommands-QEYH5J5E.js} +9 -9
  31. package/{machineWsRunDispatch-42WKRDE7.js → machineWsRunDispatch-MFYQADTQ.js} +9 -9
  32. package/package.json +1 -1
  33. package/{readlineWorkspace-MUV7VRD4.js → readlineWorkspace-WQZX3WSK.js} +155 -40
  34. package/{runAgentClientLoop-A4OXYOCL.js → runAgentClientLoop-SLKSZWCS.js} +8 -8
  35. package/{streamAgentChatTurn-YHKNJEFR.js → streamAgentChatTurn-FLA6GTFJ.js} +9 -9
  36. package/{tools-S5RSWF3R.js → tools-NA2SK5QX.js} +6 -6
  37. package/{updateDialogTitleAction-BU2VPE5B.js → updateDialogTitleAction-55Q3R6RJ.js} +3 -3
@@ -72,7 +72,7 @@ import {
72
72
  wrapTextToLines,
73
73
  wrapTranscriptLine,
74
74
  wrapTranscriptLineWithLayout
75
- } from "./chunk-RFMPSCHX.js";
75
+ } from "./chunk-4NI7LU7J.js";
76
76
  import "./chunk-S7Z2HMCN.js";
77
77
  import {
78
78
  listFavoriteAgentIdsAcrossServers,
@@ -96,7 +96,7 @@ import {
96
96
  readTimestamp,
97
97
  setCliLocale,
98
98
  t
99
- } from "./chunk-SPQ7GSUX.js";
99
+ } from "./chunk-SV63E2UZ.js";
100
100
  import "./chunk-GBPZKFYK.js";
101
101
  import "./chunk-EADNWBAZ.js";
102
102
  import {
@@ -134,12 +134,12 @@ import "./chunk-ATNTHIZI.js";
134
134
  import "./chunk-JEXVIMYZ.js";
135
135
  import {
136
136
  prepareTools
137
- } from "./chunk-NUTDASGX.js";
137
+ } from "./chunk-AOKRQAUQ.js";
138
138
  import {
139
139
  buildResponseGuidelines
140
140
  } from "./chunk-EDKF7RX4.js";
141
141
  import "./chunk-HS7MLR74.js";
142
- import "./chunk-FCCT2LU2.js";
142
+ import "./chunk-R5NCDOHB.js";
143
143
  import "./chunk-5XTOKQLW.js";
144
144
  import "./chunk-NF64D32W.js";
145
145
  import "./chunk-3L2WKC3W.js";
@@ -165,18 +165,18 @@ import "./chunk-FZGV4FGK.js";
165
165
  import "./chunk-MEYIRKDN.js";
166
166
  import "./chunk-63W5N6P3.js";
167
167
  import "./chunk-VF4K2QE6.js";
168
- import "./chunk-DQAEUZSQ.js";
169
- import "./chunk-VLX45P4L.js";
170
- import "./chunk-BLCUMZNV.js";
168
+ import "./chunk-I5O24WHB.js";
169
+ import "./chunk-JWXTOIGR.js";
170
+ import "./chunk-R4XZMDRV.js";
171
171
  import "./chunk-ZJ7UHBJS.js";
172
172
  import {
173
173
  extractReferenceKeysFromMessage
174
- } from "./chunk-ZIUMSKK4.js";
174
+ } from "./chunk-3LBE76GR.js";
175
175
  import "./chunk-EVBFYPDC.js";
176
176
  import "./chunk-HQUORJTM.js";
177
177
  import "./chunk-YYLHWIW6.js";
178
178
  import "./chunk-AGGIDPCZ.js";
179
- import "./chunk-F657NADX.js";
179
+ import "./chunk-RVCBKVIR.js";
180
180
  import "./chunk-BJCWNHVU.js";
181
181
  import "./chunk-5RGU3J7P.js";
182
182
  import "./chunk-6YTOJY35.js";
@@ -6763,6 +6763,7 @@ function appendTurnBillingAudit(input) {
6763
6763
  }
6764
6764
 
6765
6765
  // packages/ai/tools/askChoiceState.ts
6766
+ var SKIPPED_ANSWER_MESSAGE = "\uFF08\u8DF3\u8FC7\uFF09";
6766
6767
  function normalizeAskChoiceArgs(args) {
6767
6768
  const blocking = args.blocking !== false;
6768
6769
  if (Array.isArray(args.questions) && args.questions.length > 0) {
@@ -6849,7 +6850,8 @@ function createInitialAskChoiceState(questions, savedAnswers) {
6849
6850
  };
6850
6851
  }),
6851
6852
  phase: savedAnswers?.phase ?? (hasSaved ? "submitted" : "active"),
6852
- validationAttempted: false
6853
+ validationAttempted: false,
6854
+ answerSignal: null
6853
6855
  };
6854
6856
  }
6855
6857
  function askChoiceReducer(state, action) {
@@ -6877,7 +6879,7 @@ function askChoiceReducer(state, action) {
6877
6879
  if (state.phase !== "active") return state;
6878
6880
  switch (action.type) {
6879
6881
  case "CANCEL":
6880
- return { ...state, phase: "cancelled" };
6882
+ return { ...state, phase: "cancelled", answerSignal: null };
6881
6883
  case "SUBMIT": {
6882
6884
  const firstUnanswered = findFirstUnansweredIndex(state);
6883
6885
  if (firstUnanswered !== -1) {
@@ -6887,7 +6889,12 @@ function askChoiceReducer(state, action) {
6887
6889
  validationAttempted: true
6888
6890
  };
6889
6891
  }
6890
- return { ...state, phase: "submitted", validationAttempted: false };
6892
+ return {
6893
+ ...state,
6894
+ phase: "submitted",
6895
+ validationAttempted: false,
6896
+ answerSignal: null
6897
+ };
6891
6898
  }
6892
6899
  case "SWITCH_TAB": {
6893
6900
  const idx = clamp(action.index, 0, state.questions.length - 1);
@@ -6932,8 +6939,9 @@ function askChoiceReducer(state, action) {
6932
6939
  }
6933
6940
  // The one explicit "choose this option" action, addressed by choice id so
6934
6941
  // that click / tap handlers on every platform share the same behaviour as
6935
- // cursor-driven keys. Multi-select toggles, single-select picks. It never
6936
- // advances the tab and never submits.
6942
+ // cursor-driven keys. Multi-select toggles; a single-select pick lands
6943
+ // immediately (advance to the next unanswered question, or emit the
6944
+ // `complete` signal so the renderer persists and sends).
6937
6945
  case "SELECT_CHOICE": {
6938
6946
  const qs = state.questionStates[state.activeIndex];
6939
6947
  const q = state.questions[state.activeIndex];
@@ -6950,16 +6958,19 @@ function askChoiceReducer(state, action) {
6950
6958
  otherText: "",
6951
6959
  otherFocused: false
6952
6960
  };
6953
- } else {
6954
- newQs[state.activeIndex] = {
6955
- ...qs,
6956
- cursorIndex: choiceIndex,
6957
- pickedId: action.choiceId,
6958
- otherText: "",
6959
- otherFocused: false
6960
- };
6961
+ return { ...state, questionStates: newQs, validationAttempted: false };
6961
6962
  }
6962
- return { ...state, questionStates: newQs, validationAttempted: false };
6963
+ newQs[state.activeIndex] = {
6964
+ ...qs,
6965
+ cursorIndex: choiceIndex,
6966
+ pickedId: action.choiceId,
6967
+ otherText: "",
6968
+ otherFocused: false
6969
+ };
6970
+ return landSingleSelectAnswer(
6971
+ { ...state, questionStates: newQs, validationAttempted: false },
6972
+ state.activeIndex
6973
+ );
6963
6974
  }
6964
6975
  case "SELECT_AT_CURSOR": {
6965
6976
  const qs = state.questionStates[state.activeIndex];
@@ -6974,6 +6985,47 @@ function askChoiceReducer(state, action) {
6974
6985
  if (!choiceId) return state;
6975
6986
  return askChoiceReducer(state, { type: "SELECT_CHOICE", choiceId });
6976
6987
  }
6988
+ // Enter in the Other input: identical landing semantics to a single-select
6989
+ // pick, but only when the row carries an actual answer. Multi-select
6990
+ // questions keep the explicit submit — Enter there is a no-op (renderers
6991
+ // blur the input themselves) so toggling stays a purely local edit.
6992
+ case "COMMIT_OTHER": {
6993
+ const qs = state.questionStates[state.activeIndex];
6994
+ const q = state.questions[state.activeIndex];
6995
+ if (q.multiSelect || qs.otherText.trim().length === 0) return state;
6996
+ const newQs = [...state.questionStates];
6997
+ newQs[state.activeIndex] = { ...qs, otherFocused: false };
6998
+ return landSingleSelectAnswer(
6999
+ { ...state, questionStates: newQs, validationAttempted: false },
7000
+ state.activeIndex
7001
+ );
7002
+ }
7003
+ // Explicit skip of the current optional, still-unanswered question.
7004
+ // Renderers only expose it there; the reducer also refuses required or
7005
+ // already-answered questions so a skip can never bypass a required answer.
7006
+ case "SKIP_CURRENT": {
7007
+ const q = state.questions[state.activeIndex];
7008
+ const qs = state.questionStates[state.activeIndex];
7009
+ if (!q || !qs || q.required || questionHasAnswer(q, qs)) return state;
7010
+ const nextIndex = findNextUnansweredIndex(state, state.activeIndex);
7011
+ if (nextIndex !== -1) {
7012
+ return {
7013
+ ...state,
7014
+ activeIndex: nextIndex,
7015
+ validationAttempted: false,
7016
+ answerSignal: {
7017
+ kind: "advance",
7018
+ fromIndex: state.activeIndex,
7019
+ toIndex: nextIndex
7020
+ }
7021
+ };
7022
+ }
7023
+ return {
7024
+ ...state,
7025
+ validationAttempted: false,
7026
+ answerSignal: { kind: "complete", fromIndex: state.activeIndex }
7027
+ };
7028
+ }
6977
7029
  case "FOCUS_OTHER": {
6978
7030
  const qs = state.questionStates[state.activeIndex];
6979
7031
  const newQs = [...state.questionStates];
@@ -7002,17 +7054,48 @@ function askChoiceReducer(state, action) {
7002
7054
  return state;
7003
7055
  }
7004
7056
  }
7057
+ function landSingleSelectAnswer(state, fromIndex) {
7058
+ const nextIndex = findNextUnansweredIndex(state, fromIndex);
7059
+ if (nextIndex !== -1) {
7060
+ return {
7061
+ ...state,
7062
+ activeIndex: nextIndex,
7063
+ answerSignal: { kind: "advance", fromIndex, toIndex: nextIndex }
7064
+ };
7065
+ }
7066
+ if (formRequiresExplicitSubmit(state.questions)) {
7067
+ return { ...state, answerSignal: null };
7068
+ }
7069
+ return { ...state, answerSignal: { kind: "complete", fromIndex } };
7070
+ }
7071
+ function findNextUnansweredIndex(state, fromIndex) {
7072
+ const total = state.questions.length;
7073
+ for (let step = 1; step < total; step += 1) {
7074
+ const index = (fromIndex + step) % total;
7075
+ const questionState = state.questionStates[index];
7076
+ if (!questionState || !isQuestionAnswered(state.questions[index], questionState)) {
7077
+ return index;
7078
+ }
7079
+ }
7080
+ return -1;
7081
+ }
7082
+ function formRequiresExplicitSubmit(questions) {
7083
+ return questions.some((q) => q.multiSelect);
7084
+ }
7005
7085
  function findFirstUnansweredIndex(state) {
7006
7086
  return state.questions.findIndex(
7007
7087
  (q, i) => !isQuestionAnswered(q, state.questionStates[i])
7008
7088
  );
7009
7089
  }
7010
- function isQuestionAnswered(q, qs) {
7011
- if (!q.required) return true;
7090
+ function questionHasAnswer(q, qs) {
7012
7091
  const hasOther = q.allowOther && qs.otherText.trim().length > 0;
7013
7092
  const hasSelection = q.multiSelect ? qs.selectedIds.length > 0 : qs.pickedId !== null;
7014
7093
  return hasOther || hasSelection;
7015
7094
  }
7095
+ function isQuestionAnswered(q, qs) {
7096
+ if (!q.required) return true;
7097
+ return questionHasAnswer(q, qs);
7098
+ }
7016
7099
  function buildAskChoiceResult(state) {
7017
7100
  if (state.phase === "cancelled") return { kind: "cancelled" };
7018
7101
  if (state.phase !== "submitted") return { kind: "cancelled" };
@@ -7031,11 +7114,13 @@ function buildAskChoiceResult(state) {
7031
7114
  }
7032
7115
  }
7033
7116
  }
7117
+ const userMessage = parts.join("\n");
7118
+ const skipped = userMessage.length === 0 && !q.required;
7034
7119
  return {
7035
7120
  questionId: q.id,
7036
7121
  selectedIds,
7037
7122
  otherText,
7038
- userMessage: parts.join("\n")
7123
+ userMessage: skipped ? SKIPPED_ANSWER_MESSAGE : userMessage
7039
7124
  };
7040
7125
  });
7041
7126
  return { kind: "submitted", answers };
@@ -7078,11 +7163,25 @@ function renderTabBar(state, colorEnabled) {
7078
7163
  }
7079
7164
  return colorEnabled ? themeText(` ${label} `, "muted", colorEnabled) : ` ${label} `;
7080
7165
  });
7081
- const submitLabel = t("askChoiceSubmit");
7166
+ const actionRow = resolveAskChoiceActionRow(state);
7167
+ const submitLabel = actionRow ? `${actionRow.label} \u2193` : null;
7168
+ if (!submitLabel) return tabs.join(" ");
7082
7169
  return tabs.join(" ") + " " + (colorEnabled ? themeText(submitLabel, "chrome", colorEnabled) : submitLabel);
7083
7170
  }
7084
- function renderFooter(multiSelect, colorEnabled) {
7085
- const hints = multiSelect ? t("askChoiceFooterMulti") : t("askChoiceFooterSingle");
7171
+ function resolveAskChoiceActionRow(state) {
7172
+ const q = state.questions[state.activeIndex];
7173
+ const qs = state.questionStates[state.activeIndex];
7174
+ if (!q || !qs) return null;
7175
+ if (!q.required && !questionHasAnswer(q, qs)) {
7176
+ return { kind: "skip", label: t("askChoiceSkipRow") };
7177
+ }
7178
+ if (formRequiresExplicitSubmit(state.questions)) {
7179
+ return { kind: "submit", label: t("askChoiceSubmitRow") };
7180
+ }
7181
+ return null;
7182
+ }
7183
+ function renderFooter(actionRow, colorEnabled) {
7184
+ const hints = actionRow?.kind === "skip" ? t("askChoiceFooterSkip") : actionRow?.kind === "submit" ? t("askChoiceFooterMulti") : t("askChoiceFooterSingle");
7086
7185
  return colorEnabled ? themeText(` ${hints}`, "chrome", colorEnabled) : ` ${hints}`;
7087
7186
  }
7088
7187
  function otherRowPrefix(index) {
@@ -7093,6 +7192,7 @@ function renderAskChoiceFrame(state, options) {
7093
7192
  const submitFocused = options?.submitFocused === true;
7094
7193
  const q = state.questions[state.activeIndex];
7095
7194
  const qs = state.questionStates[state.activeIndex];
7195
+ const actionRow = resolveAskChoiceActionRow(state);
7096
7196
  const lines = [];
7097
7197
  let otherCursor = null;
7098
7198
  lines.push(renderDialogTitle(t("askChoiceTitle")));
@@ -7119,6 +7219,10 @@ function renderAskChoiceFrame(state, options) {
7119
7219
  lines.push(
7120
7220
  colorEnabled ? themeText(` ${t("askChoiceHintMulti")}`, "muted", colorEnabled) : ` ${t("askChoiceHintMulti")}`
7121
7221
  );
7222
+ } else if (actionRow?.kind === "skip") {
7223
+ lines.push(
7224
+ colorEnabled ? themeText(` ${t("askChoiceHintOptional")}`, "muted", colorEnabled) : ` ${t("askChoiceHintOptional")}`
7225
+ );
7122
7226
  } else {
7123
7227
  lines.push(
7124
7228
  colorEnabled ? themeText(` ${t("askChoiceHintSingle")}`, "muted", colorEnabled) : ` ${t("askChoiceHintSingle")}`
@@ -7169,14 +7273,16 @@ function renderAskChoiceFrame(state, options) {
7169
7273
  if (window.end < totalRows) {
7170
7274
  lines.push(renderOverflowBelow(totalRows - window.end));
7171
7275
  }
7172
- lines.push(
7173
- renderDialogRow({
7174
- label: t("askChoiceSubmitRow"),
7175
- focused: submitFocused
7176
- })
7177
- );
7276
+ if (actionRow) {
7277
+ lines.push(
7278
+ renderDialogRow({
7279
+ label: actionRow.label,
7280
+ focused: submitFocused
7281
+ })
7282
+ );
7283
+ }
7178
7284
  lines.push("");
7179
- lines.push(renderFooter(q.multiSelect, colorEnabled));
7285
+ lines.push(renderFooter(actionRow, colorEnabled));
7180
7286
  return { text: lines.join("\n"), otherCursor };
7181
7287
  }
7182
7288
  async function runAskChoiceDialog(args) {
@@ -7263,6 +7369,8 @@ async function runAskChoiceDialog(args) {
7263
7369
  const qs = state.questionStates[state.activeIndex];
7264
7370
  const q = state.questions[state.activeIndex];
7265
7371
  const isOtherRow = qs.cursorIndex >= q.choices.length;
7372
+ const actionRow = resolveAskChoiceActionRow(state);
7373
+ if (!actionRow) submitFocused = false;
7266
7374
  if (sequence === KEY_SHIFT_TAB) {
7267
7375
  action = { type: "PREV_TAB" };
7268
7376
  } else if (sequence === KEY_TAB) {
@@ -7282,6 +7390,7 @@ async function runAskChoiceDialog(args) {
7282
7390
  continue;
7283
7391
  }
7284
7392
  if (qs.cursorIndex >= maxRowIndex) {
7393
+ if (!actionRow) continue;
7285
7394
  submitFocused = true;
7286
7395
  state = askChoiceReducer(state, { type: "MOVE_CURSOR", delta: 1 });
7287
7396
  paint();
@@ -7289,7 +7398,8 @@ async function runAskChoiceDialog(args) {
7289
7398
  }
7290
7399
  action = { type: "MOVE_CURSOR", delta: 1 };
7291
7400
  } else if (sequence === KEY_CTRL_S) {
7292
- action = { type: "SUBMIT" };
7401
+ if (!actionRow) continue;
7402
+ action = actionRow.kind === "skip" ? { type: "SKIP_CURRENT" } : { type: "SUBMIT" };
7293
7403
  } else if (sequence === KEY_SPACE) {
7294
7404
  if (submitFocused) {
7295
7405
  continue;
@@ -7306,9 +7416,9 @@ async function runAskChoiceDialog(args) {
7306
7416
  }
7307
7417
  } else if (isSubmit(sequence)) {
7308
7418
  if (submitFocused) {
7309
- action = { type: "SUBMIT" };
7419
+ action = actionRow?.kind === "skip" ? { type: "SKIP_CURRENT" } : { type: "SUBMIT" };
7310
7420
  } else if (qs.otherFocused) {
7311
- action = { type: "BLUR_OTHER" };
7421
+ action = !q.multiSelect && qs.otherText.trim() ? { type: "COMMIT_OTHER" } : { type: "BLUR_OTHER" };
7312
7422
  } else if (isOtherRow) {
7313
7423
  action = { type: "FOCUS_OTHER" };
7314
7424
  } else {
@@ -7349,6 +7459,9 @@ async function runAskChoiceDialog(args) {
7349
7459
  }
7350
7460
  if (action) {
7351
7461
  state = askChoiceReducer(state, action);
7462
+ if (state.phase === "active" && state.answerSignal?.kind === "complete") {
7463
+ state = askChoiceReducer(state, { type: "SUBMIT" });
7464
+ }
7352
7465
  if (state.phase !== "active") break;
7353
7466
  submitFocused = false;
7354
7467
  paint();
@@ -7376,7 +7489,9 @@ async function runAskChoiceDialog(args) {
7376
7489
  return {
7377
7490
  kind: "selected",
7378
7491
  userMessage: a.userMessage,
7379
- label: labels.join(", ") || a.otherText || ""
7492
+ // Fallback covers the skip-only shape: no label/other text, but the
7493
+ // outbound message carries the SKIPPED marker.
7494
+ label: labels.join(", ") || a.otherText || a.userMessage || ""
7380
7495
  };
7381
7496
  }
7382
7497
  return {
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  fetchAgentContexts
3
- } from "./chunk-3NVAU4WZ.js";
3
+ } from "./chunk-ZDB5QFH4.js";
4
4
  import {
5
5
  generateRequestBody,
6
6
  mergeReferences,
7
7
  performFetchRequest,
8
8
  sanitizeOutboundBody
9
- } from "./chunk-TVDZABBT.js";
9
+ } from "./chunk-U4N7NIN3.js";
10
10
  import "./chunk-EDKF7RX4.js";
11
11
  import "./chunk-HS7MLR74.js";
12
12
  import {
13
13
  findToolExecutor,
14
14
  getToolResultErrorData
15
- } from "./chunk-FCCT2LU2.js";
15
+ } from "./chunk-R5NCDOHB.js";
16
16
  import "./chunk-5XTOKQLW.js";
17
17
  import "./chunk-NF64D32W.js";
18
18
  import "./chunk-3L2WKC3W.js";
@@ -28,18 +28,18 @@ import "./chunk-FZGV4FGK.js";
28
28
  import "./chunk-MEYIRKDN.js";
29
29
  import "./chunk-63W5N6P3.js";
30
30
  import "./chunk-VF4K2QE6.js";
31
- import "./chunk-DQAEUZSQ.js";
32
- import "./chunk-VLX45P4L.js";
33
- import "./chunk-BLCUMZNV.js";
31
+ import "./chunk-I5O24WHB.js";
32
+ import "./chunk-JWXTOIGR.js";
33
+ import "./chunk-R4XZMDRV.js";
34
34
  import "./chunk-ZJ7UHBJS.js";
35
35
  import {
36
36
  updateTokensAction
37
- } from "./chunk-ZIUMSKK4.js";
37
+ } from "./chunk-3LBE76GR.js";
38
38
  import "./chunk-EVBFYPDC.js";
39
39
  import "./chunk-HQUORJTM.js";
40
40
  import "./chunk-YYLHWIW6.js";
41
41
  import "./chunk-AGGIDPCZ.js";
42
- import "./chunk-F657NADX.js";
42
+ import "./chunk-RVCBKVIR.js";
43
43
  import "./chunk-BJCWNHVU.js";
44
44
  import "./chunk-5RGU3J7P.js";
45
45
  import "./chunk-6YTOJY35.js";
@@ -16,11 +16,11 @@ import {
16
16
  readStreamChunk,
17
17
  sendOpenAICompletionsRequest,
18
18
  updateTotalUsage
19
- } from "./chunk-AAWBX67U.js";
19
+ } from "./chunk-S2RB4LMB.js";
20
20
  import "./chunk-JEXVIMYZ.js";
21
21
  import {
22
22
  prepareTools
23
- } from "./chunk-NUTDASGX.js";
23
+ } from "./chunk-AOKRQAUQ.js";
24
24
  import {
25
25
  INVALID_TOOL_ARGS_REPLACEMENT,
26
26
  buildInvalidToolCallSelfHealResult,
@@ -38,7 +38,7 @@ import {
38
38
  sanitizeOutboundResponsesInput,
39
39
  selectResponsesConversationState,
40
40
  updateResponsesConversationState
41
- } from "./chunk-TVDZABBT.js";
41
+ } from "./chunk-U4N7NIN3.js";
42
42
  import "./chunk-EDKF7RX4.js";
43
43
  import "./chunk-HS7MLR74.js";
44
44
  import {
@@ -46,7 +46,7 @@ import {
46
46
  getAllToolRuns,
47
47
  resolveAgentRecommendedSkillNames,
48
48
  resolveAgentRequiredPackIds
49
- } from "./chunk-FCCT2LU2.js";
49
+ } from "./chunk-R5NCDOHB.js";
50
50
  import "./chunk-5XTOKQLW.js";
51
51
  import "./chunk-NF64D32W.js";
52
52
  import "./chunk-3L2WKC3W.js";
@@ -80,11 +80,11 @@ import "./chunk-63W5N6P3.js";
80
80
  import "./chunk-VF4K2QE6.js";
81
81
  import {
82
82
  getDocState
83
- } from "./chunk-DQAEUZSQ.js";
84
- import "./chunk-VLX45P4L.js";
83
+ } from "./chunk-I5O24WHB.js";
84
+ import "./chunk-JWXTOIGR.js";
85
85
  import {
86
86
  getTableState
87
- } from "./chunk-BLCUMZNV.js";
87
+ } from "./chunk-R4XZMDRV.js";
88
88
  import {
89
89
  getCurrentSpaceId,
90
90
  getCurrentSpaceIdRaw,
@@ -109,12 +109,12 @@ import {
109
109
  shouldBlockForGptPro,
110
110
  updateTokens,
111
111
  updateToolMessage
112
- } from "./chunk-ZIUMSKK4.js";
112
+ } from "./chunk-3LBE76GR.js";
113
113
  import "./chunk-EVBFYPDC.js";
114
114
  import "./chunk-HQUORJTM.js";
115
115
  import "./chunk-YYLHWIW6.js";
116
116
  import "./chunk-AGGIDPCZ.js";
117
- import "./chunk-F657NADX.js";
117
+ import "./chunk-RVCBKVIR.js";
118
118
  import {
119
119
  createCliChatTurnStream,
120
120
  getCliChatSession,
@@ -8,7 +8,7 @@ import {
8
8
  toolQueryFunc,
9
9
  toolQueryFunctionSchema,
10
10
  toolRegistry
11
- } from "./chunk-FCCT2LU2.js";
11
+ } from "./chunk-R5NCDOHB.js";
12
12
  import "./chunk-5XTOKQLW.js";
13
13
  import "./chunk-NF64D32W.js";
14
14
  import "./chunk-3L2WKC3W.js";
@@ -24,16 +24,16 @@ import "./chunk-FZGV4FGK.js";
24
24
  import "./chunk-MEYIRKDN.js";
25
25
  import "./chunk-63W5N6P3.js";
26
26
  import "./chunk-VF4K2QE6.js";
27
- import "./chunk-DQAEUZSQ.js";
28
- import "./chunk-VLX45P4L.js";
29
- import "./chunk-BLCUMZNV.js";
27
+ import "./chunk-I5O24WHB.js";
28
+ import "./chunk-JWXTOIGR.js";
29
+ import "./chunk-R4XZMDRV.js";
30
30
  import "./chunk-ZJ7UHBJS.js";
31
- import "./chunk-ZIUMSKK4.js";
31
+ import "./chunk-3LBE76GR.js";
32
32
  import "./chunk-EVBFYPDC.js";
33
33
  import "./chunk-HQUORJTM.js";
34
34
  import "./chunk-YYLHWIW6.js";
35
35
  import "./chunk-AGGIDPCZ.js";
36
- import "./chunk-F657NADX.js";
36
+ import "./chunk-RVCBKVIR.js";
37
37
  import "./chunk-BJCWNHVU.js";
38
38
  import "./chunk-5RGU3J7P.js";
39
39
  import "./chunk-6YTOJY35.js";
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  updateContentTitle
3
- } from "./chunk-BLCUMZNV.js";
3
+ } from "./chunk-R4XZMDRV.js";
4
4
  import "./chunk-ZJ7UHBJS.js";
5
5
  import {
6
6
  isAssistantToolStub,
7
7
  selectAllMsgs
8
- } from "./chunk-ZIUMSKK4.js";
8
+ } from "./chunk-3LBE76GR.js";
9
9
  import {
10
10
  BUILTIN_TITLE_LLM_CONFIG
11
11
  } from "./chunk-EVBFYPDC.js";
@@ -14,7 +14,7 @@ import "./chunk-YYLHWIW6.js";
14
14
  import "./chunk-AGGIDPCZ.js";
15
15
  import {
16
16
  runLlm
17
- } from "./chunk-F657NADX.js";
17
+ } from "./chunk-RVCBKVIR.js";
18
18
  import "./chunk-BJCWNHVU.js";
19
19
  import "./chunk-5RGU3J7P.js";
20
20
  import "./chunk-6YTOJY35.js";