nolo-cli 0.33.0-alpha.11 → 0.33.0-alpha.13

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 (64) hide show
  1. package/{_executeModel-YXWAXPWQ.js → _executeModel-S346WSM5.js} +16 -16
  2. package/{agentDeleteCommand-VGHWJN5T.js → agentDeleteCommand-6TTPXGS3.js} +5 -5
  3. package/{agentEmailCommands-ZLRF35I3.js → agentEmailCommands-JIXFG6AM.js} +16 -16
  4. package/{agentListCommands-OHZJ7AFP.js → agentListCommands-ZTT3KU35.js} +5 -5
  5. package/{agentMachineCommands-62PHPGTK.js → agentMachineCommands-25DROOMX.js} +6 -6
  6. package/{agentRecordCommands-CW2JWERD.js → agentRecordCommands-N4L55KRX.js} +16 -16
  7. package/{agentRunCommand-O4HV7YWA.js → agentRunCommand-4CKVVQ4P.js} +17 -17
  8. package/{agentRuntimeLocal-4PSBNUOE.js → agentRuntimeLocal-O4IDDLPA.js} +5 -5
  9. package/{agentSlice-OUTQ5O72.js → agentSlice-47VUR2ZD.js} +1 -1
  10. package/{appDeleteCommands-VTDBVHYR.js → appDeleteCommands-SWXRVOE4.js} +5 -5
  11. package/{appDeployCommands-WOUP7MDA.js → appDeployCommands-WQ3ZXXQH.js} +5 -5
  12. package/{appDeployStatusCommands-N2NWZKEN.js → appDeployStatusCommands-BM5CVBFC.js} +5 -5
  13. package/{appGetCommands-GYKLWWCA.js → appGetCommands-SHI5HG4U.js} +5 -5
  14. package/{appListCommands-RUWBSEJK.js → appListCommands-5IKTBNWH.js} +5 -5
  15. package/{authCommand-YVXVH25I.js → authCommand-VIHTCZDN.js} +1 -1
  16. package/{authCommands-WTW6MEYS.js → authCommands-VR6Q6GU2.js} +1 -1
  17. package/{chatQueueReduxAdapter-2QJAD4KQ.js → chatQueueReduxAdapter-GBGNFB7U.js} +2 -2
  18. package/{chunk-2UECQ7RE.js → chunk-3AOLVADY.js} +1 -1
  19. package/{chunk-HUCT7HID.js → chunk-42IF53CR.js} +1 -1
  20. package/{chunk-2QLAVHVK.js → chunk-4EKYN24Q.js} +1 -1
  21. package/{chunk-LUIHOUZC.js → chunk-5WEQKEFO.js} +1 -1
  22. package/{chunk-FMEVI5TG.js → chunk-7CH6U3FL.js} +1 -1
  23. package/{chunk-XRO5VGQ6.js → chunk-7XSIRXOO.js} +2 -2
  24. package/{chunk-DDVIBKIB.js → chunk-AVO73UMB.js} +8 -8
  25. package/{chunk-TFK3HUNQ.js → chunk-CSNOI72O.js} +3 -3
  26. package/{chunk-64OVNZXE.js → chunk-DF22DYA4.js} +5 -5
  27. package/{chunk-ZURFOV5J.js → chunk-DMT4NJXR.js} +1 -1
  28. package/{chunk-5QW3O3ET.js → chunk-GUC65EFO.js} +61 -9
  29. package/{chunk-66CWPJK2.js → chunk-IXTC74NZ.js} +3 -3
  30. package/{chunk-C7H5GMXT.js → chunk-MIRUCHZP.js} +8 -8
  31. package/{chunk-PRMMCFIN.js → chunk-N2WDGMD5.js} +38 -1
  32. package/{chunk-BFPSVRCQ.js → chunk-PIDDBIHR.js} +3 -3
  33. package/{chunk-266VUBLK.js → chunk-PQQXQV6V.js} +2 -2
  34. package/{chunk-4OV7DXFJ.js → chunk-PWI34D3P.js} +3 -3
  35. package/{chunk-54BAYVCY.js → chunk-SHOLLFRN.js} +6 -6
  36. package/{chunk-MDIAECHA.js → chunk-SNFD447J.js} +135 -14
  37. package/{chunk-YBMI5JAH.js → chunk-TIX6O4IC.js} +7 -7
  38. package/{chunk-WLH5BAKX.js → chunk-YYTTDOWA.js} +2 -2
  39. package/{chunk-ZWS6DUHX.js → chunk-ZKUATCEY.js} +2 -3
  40. package/{chunk-J44TVX2O.js → chunk-ZZV52MOO.js} +1 -1
  41. package/{codingSkills-DY5MINPG.js → codingSkills-5VOV3JVB.js} +2 -2
  42. package/{createAgentAutomationAction-H6ZRPXBR.js → createAgentAutomationAction-7DWATWIT.js} +3 -3
  43. package/{createDialogAction-UJ6LFJYM.js → createDialogAction-3CPIR267.js} +5 -5
  44. package/{createPageAction-KVPT3IRK.js → createPageAction-5GUFQTAW.js} +3 -3
  45. package/{dialogCommands-6ASXJP3H.js → dialogCommands-XKC5TIAA.js} +5 -5
  46. package/{dialogSlice-B7KCGHMY.js → dialogSlice-YFWNV3JJ.js} +2 -2
  47. package/{docCreateCommands-S4E4MKVC.js → docCreateCommands-MRH4H6DW.js} +5 -5
  48. package/{docDeleteCommands-M7XLKWRM.js → docDeleteCommands-KJJU6NLM.js} +5 -5
  49. package/{docReadCommands-LSCMW2FR.js → docReadCommands-JXOSUS5I.js} +5 -5
  50. package/{docStore-ZYWZWIRB.js → docStore-SGQ6EE5P.js} +4 -4
  51. package/{docUpdateCommands-OMRBAFOB.js → docUpdateCommands-AGUFF52W.js} +5 -5
  52. package/{handleSendMessageAction-Y2XKODRT.js → handleSendMessageAction-RGCSLENY.js} +2 -2
  53. package/index.js +49 -49
  54. package/{machineCommands-62RUZVSW.js → machineCommands-P5DVPETV.js} +16 -16
  55. package/{machineWsRunDispatch-L3HD3FSF.js → machineWsRunDispatch-66ZCBLIC.js} +16 -16
  56. package/package.json +1 -1
  57. package/{readlineWorkspace-3MOJWFM7.js → readlineWorkspace-U2LVP43X.js} +20 -17
  58. package/{runAgentClientLoop-Y5UW544I.js → runAgentClientLoop-WVL2KOS5.js} +12 -12
  59. package/{skillDiscovery-KLLKXPUO.js → skillDiscovery-AYBKAG6X.js} +3 -3
  60. package/{spaceCommands-NKSBD5G3.js → spaceCommands-O33WUJEV.js} +5 -5
  61. package/{spaceSlice-L44CI2QR.js → spaceSlice-R5X62SG3.js} +3 -3
  62. package/{streamAgentChatTurn-7DU4Z2VJ.js → streamAgentChatTurn-CLC5VQYO.js} +15 -15
  63. package/{tools-2JI52WJP.js → tools-4QHXZBRQ.js} +8 -8
  64. package/{updateDialogTitleAction-HW33OIJI.js → updateDialogTitleAction-IOSJSJ5S.js} +3 -3
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  MEMORY_USE_GUIDANCE,
3
3
  wrapHistoricalSummaryWithReplayGuard
4
- } from "./chunk-FMEVI5TG.js";
4
+ } from "./chunk-7CH6U3FL.js";
5
5
 
6
6
  // packages/agent-runtime/turnContext.ts
7
7
  var DEFAULT_RECENT_CONTENT_LIMIT = 10;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  TOOL_PACKS,
3
3
  buildCodeWorkDiscipline
4
- } from "./chunk-WLH5BAKX.js";
4
+ } from "./chunk-YYTTDOWA.js";
5
5
  import {
6
6
  buildSkillDocMarkdown,
7
7
  resolvePageSkillMetadata
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-YDTYDA5W.js";
13
13
  import {
14
14
  clearCliLocalRuntimePreparedAgentCache
15
- } from "./chunk-5QW3O3ET.js";
15
+ } from "./chunk-GUC65EFO.js";
16
16
  import {
17
17
  resolveCliAgentKeyInput
18
18
  } from "./chunk-EKLRRZIN.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  i18n_default,
3
3
  toolRegistry
4
- } from "./chunk-MDIAECHA.js";
4
+ } from "./chunk-SNFD447J.js";
5
5
  import {
6
6
  canonicalizeToolNames
7
7
  } from "./chunk-ZZ2MH7LE.js";
@@ -81,7 +81,7 @@ var MEMORY_USE_GUIDANCE = `--- \u8BB0\u5FC6\u4F7F\u7528\u65B9\u5F0F ---
81
81
  - \u63A8\u65AD\u578B\u8BB0\u5FC6\uFF08inferred\uFF09\u53EA\u7528\u4E8E\u628A\u63E1\u8BED\u6C14\u3001\u72B6\u6001\u548C\u672A\u5B8C\u6210\u4E8B\u9879\uFF0C\u4E0D\u8981\u8BF4\u6210\u201C\u4F60\u660E\u786E\u544A\u8BC9\u8FC7\u6211\u201D\u6216\u5F53\u6210\u7528\u6237\u5DF2\u6388\u6743\u4FDD\u5B58\u7684\u4E8B\u5B9E\u3002\u51B2\u7A81\u6216\u573A\u666F\u4E0D\u660E\u65F6\u8BF4\u660E\u4F9D\u636E\u6216\u7B80\u77ED\u786E\u8BA4\uFF0C\u4E0D\u8981\u786C\u5957\u3002
82
82
  - \u3010\u7F6E\u4FE1\u5EA6\u6765\u6E90\u3011\u6BCF\u6761\u8BB0\u5FC6\u6709\u6765\u6E90\uFF1Averified\uFF08\u5B9E\u6D4B\u9A8C\u8BC1\uFF0C\u9AD8\u7F6E\u4FE1\u5EA6\uFF09\u3001stated\uFF08\u7528\u6237\u9648\u8FF0\uFF0C\u4E2D\u9AD8\uFF09\u3001inferred\uFF08\u6A21\u578B\u63A8\u65AD\uFF0C\u4F4E\u2014\u2014\u5BB9\u6613\u7F16\u9020\uFF0C\u4F18\u5148\u5B58\u7591\uFF09\u3002\u53EC\u56DE\u65F6\u4F18\u5148\u4F7F\u7528 verified/stated\uFF0Cinferred \u9700\u9A8C\u8BC1\u540E\u518D\u91C7\u7EB3\u3002
83
83
  - \u3010\u53EC\u56DE\u89C4\u5219\u3011\u53EC\u56DE\u8BB0\u5FC6\u5FC5\u987B\u5E26\u5B8C\u6574\u5386\u53F2\u4E0A\u4E0B\u6587\uFF08\u6765\u6E90\u3001\u7F6E\u4FE1\u5EA6\u3001\u53D8\u66F4\u8BB0\u5F55\uFF09\uFF0C\u7981\u6B62\u81EA\u884C\u63A8\u7406\u586B\u8865\u3002\u4E0D\u8981\u51ED\u5370\u8C61\u62FC\u51FA\u672A\u9A8C\u8BC1\u7684\u4FE1\u606F\u3002
84
- - \u3010\u964D\u6743/\u5F52\u6863\u3011\u8BB0\u5FC6\u4E0D\u53EF\u7269\u7406\u5220\u9664\uFF0C\u53EA\u80FD\u964D\u6743/\u5F52\u6863\u3002\u9519\u8BEF\u7684\u8BB0\u5FC6\u5E94\u4FEE\u6B63\u5E76\u964D\u4F4E\u7F6E\u4FE1\u5EA6\uFF0C\u800C\u4E0D\u662F\u5220\u9664\u2014\u2014\u4FDD\u7559\u6863\u6848\u4F9B\u5BA1\u8BA1\u3002`;
84
+ - \u3010\u964D\u6743\u4E0E\u5220\u9664\u3011\u65E5\u5E38\u9519\u8BEF\u8BB0\u5FC6\u4F18\u5148\u964D\u6743/\u5F52\u6863\u4E0E\u8986\u76D6\uFF08\u964D\u4F4E\u7F6E\u4FE1\u5EA6\uFF09\uFF0C\u4FDD\u7559\u6863\u6848\u4F9B\u5BA1\u8BA1\uFF1B\u82E5\u7528\u6237\u660E\u786E/\u5F3A\u5236\u8981\u6C42\u5220\u9664\uFF0C\u4E14\u5728\u7528\u6237\u81EA\u8EAB\u6743\u9650\u8303\u56F4\u5185\uFF0C\u5141\u8BB8\u7269\u7406\u5220\u9664\uFF08\u4EC5\u9650\u4E8E\u5F53\u524D\u7528\u6237\u62E5\u6709\u7684\u8BB0\u5FC6\uFF0C\u4E25\u7981\u8D8A\u6743\uFF09\u3002`;
85
85
 
86
86
  export {
87
87
  buildUserResponseLanguageContext,
@@ -11,10 +11,10 @@ import {
11
11
  deleteDialog,
12
12
  resetMsgs,
13
13
  toast
14
- } from "./chunk-DDVIBKIB.js";
14
+ } from "./chunk-AVO73UMB.js";
15
15
  import {
16
16
  deleteServerSyncedCredential
17
- } from "./chunk-66CWPJK2.js";
17
+ } from "./chunk-IXTC74NZ.js";
18
18
  import {
19
19
  require_date_fns
20
20
  } from "./chunk-M76ECQRD.js";
@@ -13,7 +13,7 @@ import {
13
13
  } from "./chunk-CWMSB67P.js";
14
14
  import {
15
15
  runLlm
16
- } from "./chunk-66CWPJK2.js";
16
+ } from "./chunk-IXTC74NZ.js";
17
17
  import {
18
18
  cleanupCliSessionForDialog
19
19
  } from "./chunk-6YXDOOSH.js";
@@ -3444,7 +3444,7 @@ var messageSlice = createSliceWithThunks({
3444
3444
  runtimeOptions: args.runtimeOptions
3445
3445
  });
3446
3446
  if (agentKeyToUse) {
3447
- const { streamAgentChatTurn } = await import("./agentSlice-OUTQ5O72.js");
3447
+ const { streamAgentChatTurn } = await import("./agentSlice-47VUR2ZD.js");
3448
3448
  await dispatch(
3449
3449
  streamAgentChatTurn({
3450
3450
  agentKey: agentKeyToUse,
@@ -4703,7 +4703,7 @@ var deleteDialogThunk = async (payload, thunkApi) => {
4703
4703
  }
4704
4704
  if (isCurrentDialog) {
4705
4705
  await thunkApi.dispatch(resetMsgs());
4706
- const { clearPendingAttachments: clearPendingAttachments2 } = await import("./dialogSlice-B7KCGHMY.js");
4706
+ const { clearPendingAttachments: clearPendingAttachments2 } = await import("./dialogSlice-YFWNV3JJ.js");
4707
4707
  dispatch(clearPendingAttachments2());
4708
4708
  clearWorkflow();
4709
4709
  }
@@ -4712,15 +4712,15 @@ var deleteDialogThunk = async (payload, thunkApi) => {
4712
4712
 
4713
4713
  // packages/chat/dialog/dialogSlice.ts
4714
4714
  var runCreateDialogAction = async (args, thunkApi) => {
4715
- const { createDialogAction } = await import("./createDialogAction-UJ6LFJYM.js");
4715
+ const { createDialogAction } = await import("./createDialogAction-3CPIR267.js");
4716
4716
  return createDialogAction(args, thunkApi);
4717
4717
  };
4718
4718
  var runCreateAgentAutomationAction = async (args, thunkApi) => {
4719
- const { createAgentAutomationAction } = await import("./createAgentAutomationAction-H6ZRPXBR.js");
4719
+ const { createAgentAutomationAction } = await import("./createAgentAutomationAction-7DWATWIT.js");
4720
4720
  return createAgentAutomationAction(args, thunkApi);
4721
4721
  };
4722
4722
  var runUpdateDialogTitleAction = async (args, thunkApi) => {
4723
- const { updateDialogTitleAction } = await import("./updateDialogTitleAction-HW33OIJI.js");
4723
+ const { updateDialogTitleAction } = await import("./updateDialogTitleAction-IOSJSJ5S.js");
4724
4724
  return updateDialogTitleAction(args, thunkApi);
4725
4725
  };
4726
4726
  var runAddDialogAgentAction = async (args, thunkApi) => {
@@ -4744,7 +4744,7 @@ var runSetDialogExtraReferencesAction = async (args, thunkApi) => {
4744
4744
  return setDialogExtraReferencesAction(args, thunkApi);
4745
4745
  };
4746
4746
  var runHandleSendMessageAction = async (args, thunkApi) => {
4747
- const { handleSendMessageAction } = await import("./handleSendMessageAction-Y2XKODRT.js");
4747
+ const { handleSendMessageAction } = await import("./handleSendMessageAction-RGCSLENY.js");
4748
4748
  return handleSendMessageAction(args, thunkApi);
4749
4749
  };
4750
4750
  function clearDialogState() {
@@ -4757,7 +4757,7 @@ var createPageAndAddReference = createAsyncThunk(
4757
4757
  async (payload, { dispatch, getState, rejectWithValue }) => {
4758
4758
  const { slateData, jsonData, title, type, fileId, groupId, dialogKey } = payload;
4759
4759
  try {
4760
- const { createDocState } = await import("./docStore-ZYWZWIRB.js");
4760
+ const { createDocState } = await import("./docStore-SGQ6EE5P.js");
4761
4761
  const pageKey = await createDocState(
4762
4762
  { slateData, title },
4763
4763
  { dispatch, getState }
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  addContentToSpace
3
- } from "./chunk-XRO5VGQ6.js";
3
+ } from "./chunk-7XSIRXOO.js";
4
4
  import {
5
5
  prepareAndPersistMessage,
6
6
  uiAskChoiceFunc,
7
7
  uiAskChoiceFunctionSchema
8
- } from "./chunk-DDVIBKIB.js";
8
+ } from "./chunk-AVO73UMB.js";
9
9
  import {
10
10
  require_date_fns
11
11
  } from "./chunk-M76ECQRD.js";
12
12
  import {
13
13
  TOOL_PACKS
14
- } from "./chunk-WLH5BAKX.js";
14
+ } from "./chunk-YYTTDOWA.js";
15
15
  import {
16
16
  buildSkillDocMarkdown
17
17
  } from "./chunk-AETZ7AD6.js";
@@ -13,7 +13,7 @@ import {
13
13
  } from "./chunk-T27IEBNQ.js";
14
14
  import {
15
15
  resolveHistoricalToolContentCap
16
- } from "./chunk-BFPSVRCQ.js";
16
+ } from "./chunk-PIDDBIHR.js";
17
17
  import {
18
18
  createThinkParserState,
19
19
  createToolCallAccumulator,
@@ -24,7 +24,7 @@ import {
24
24
  import {
25
25
  requiresBareImageUrl,
26
26
  toBareImageUrlMessages
27
- } from "./chunk-ZWS6DUHX.js";
27
+ } from "./chunk-ZKUATCEY.js";
28
28
  import {
29
29
  convertMessagesToResponsesInput,
30
30
  extractReasoningFromResponseOutput,
@@ -4522,10 +4522,10 @@ function buildLoadSkillExecutor(args) {
4522
4522
  metadata: { loadSkill: true, resolved: false }
4523
4523
  };
4524
4524
  }
4525
- const { resolveSkillByName } = await import("./skillDiscovery-KLLKXPUO.js");
4525
+ const { resolveSkillByName } = await import("./skillDiscovery-AYBKAG6X.js");
4526
4526
  const resolved = resolveSkillByName(args.cwd, name);
4527
4527
  if (!resolved) {
4528
- const { resolveCodingBuiltinSlug, buildCodingSkillContentBySlug } = await import("./codingSkills-DY5MINPG.js");
4528
+ const { resolveCodingBuiltinSlug, buildCodingSkillContentBySlug } = await import("./codingSkills-5VOV3JVB.js");
4529
4529
  const builtinSlug = resolveCodingBuiltinSlug(name);
4530
4530
  if (builtinSlug) {
4531
4531
  const body = buildCodingSkillContentBySlug(builtinSlug);
@@ -4560,7 +4560,7 @@ ${body}`,
4560
4560
  };
4561
4561
  }
4562
4562
  async function formatUnknownSkillMessage(cwd, requestedName) {
4563
- const { discoverSkills } = await import("./skillDiscovery-KLLKXPUO.js");
4563
+ const { discoverSkills } = await import("./skillDiscovery-AYBKAG6X.js");
4564
4564
  let available = [];
4565
4565
  try {
4566
4566
  available = discoverSkills(cwd).map((s) => s.name);
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  buildSkillDiscoveryLayer
3
- } from "./chunk-2UECQ7RE.js";
3
+ } from "./chunk-3AOLVADY.js";
4
4
  import {
5
5
  load
6
6
  } from "./chunk-KHCLMKZZ.js";
@@ -20,7 +20,7 @@ import {
20
20
  import {
21
21
  inlineImageUrlsForCustomProvider,
22
22
  prepareTools
23
- } from "./chunk-LUIHOUZC.js";
23
+ } from "./chunk-5WEQKEFO.js";
24
24
  import {
25
25
  getServerProviderSecret
26
26
  } from "./chunk-HS7MLR74.js";
@@ -31,6 +31,7 @@ import {
31
31
  resolveAntigravityCloudCodeBaseUrl
32
32
  } from "./chunk-SCUETSRP.js";
33
33
  import {
34
+ deleteMemoryFunctionSchema,
34
35
  readXPostFunc,
35
36
  readXPostFunctionSchema,
36
37
  readXhsProfileFunc,
@@ -38,7 +39,7 @@ import {
38
39
  rememberMemoryFunctionSchema,
39
40
  resolveAgentRequiredPackIds,
40
41
  setTodoListFunc
41
- } from "./chunk-MDIAECHA.js";
42
+ } from "./chunk-SNFD447J.js";
42
43
  import {
43
44
  createDrainExhaustedResponse,
44
45
  isCoreDrainingBody,
@@ -52,13 +53,13 @@ import {
52
53
  applyTokenUsageToDayStats,
53
54
  prepareTokenUsageData,
54
55
  runKeyed
55
- } from "./chunk-DDVIBKIB.js";
56
+ } from "./chunk-AVO73UMB.js";
56
57
  import {
57
58
  BUILTIN_TITLE_LLM_CONFIG
58
59
  } from "./chunk-RCFIB45Q.js";
59
60
  import {
60
61
  fetchServerSyncedCredential
61
- } from "./chunk-66CWPJK2.js";
62
+ } from "./chunk-IXTC74NZ.js";
62
63
  import {
63
64
  require_date_fns
64
65
  } from "./chunk-M76ECQRD.js";
@@ -83,7 +84,7 @@ import {
83
84
  parseSyncServersEnv,
84
85
  resolveAgentNextAvailableAt,
85
86
  resolveOpenAiCompatibleProviderConfig
86
- } from "./chunk-64OVNZXE.js";
87
+ } from "./chunk-DF22DYA4.js";
87
88
  import {
88
89
  buildPlatformChatCompletionRequest,
89
90
  canUsePlatformChatProvider,
@@ -102,7 +103,7 @@ import {
102
103
  import {
103
104
  resolveHistoricalToolContentCap,
104
105
  summarizeToolArguments
105
- } from "./chunk-BFPSVRCQ.js";
106
+ } from "./chunk-PIDDBIHR.js";
106
107
  import {
107
108
  convertMessagesToResponsesInput,
108
109
  toResponsesTools
@@ -150,7 +151,7 @@ import {
150
151
  applySystemBuiltinSkillFilter,
151
152
  expandEnabledPacks,
152
153
  resolveEffectiveEnabledPacks
153
- } from "./chunk-WLH5BAKX.js";
154
+ } from "./chunk-YYTTDOWA.js";
154
155
  import {
155
156
  canonicalizeToolNames
156
157
  } from "./chunk-ZZ2MH7LE.js";
@@ -1756,7 +1757,8 @@ var LOCAL_SERVER_WEB_TOOL_NAME_SET = new Set(
1756
1757
  );
1757
1758
  var LOCAL_SERVER_MEMORY_TOOL_NAMES = [
1758
1759
  "queryMemory",
1759
- "rememberMemory"
1760
+ "rememberMemory",
1761
+ "deleteMemory"
1760
1762
  ];
1761
1763
  var LOCAL_SERVER_MEMORY_TOOL_NAME_SET = new Set(
1762
1764
  LOCAL_SERVER_MEMORY_TOOL_NAMES
@@ -2034,7 +2036,51 @@ function buildServerPlatformToolExecutors(args) {
2034
2036
  metadata: { serverPlatformTool: true, memoryWrite: true }
2035
2037
  };
2036
2038
  };
2037
- return { ...tableExecutors, ...webExecutors, queryMemory, rememberMemory };
2039
+ const deleteMemory = async (call) => {
2040
+ const parsed = parseNoloWorkspaceToolArguments(call.arguments);
2041
+ const reason = typeof parsed.reason === "string" ? parsed.reason.trim() : "";
2042
+ if (!reason && !parsed.ids && !parsed.contentKeyword && !parsed.query) {
2043
+ return {
2044
+ content: JSON.stringify({
2045
+ error: "deleteMemory \u9700\u8981\u7528\u6237\u660E\u786E\u7684\u5220\u9664\u539F\u56E0\u6216\u8FC7\u6EE4\u6761\u4EF6\u3002"
2046
+ }),
2047
+ metadata: { serverPlatformTool: true, memoryDelete: false }
2048
+ };
2049
+ }
2050
+ const isConfirmed = parsed.confirmed === true;
2051
+ if (isConfirmed && !parsed.deletionToken?.trim()) {
2052
+ return {
2053
+ content: JSON.stringify({
2054
+ error: "deleteMemory \u5728\u786E\u8BA4\u5220\u9664\u9636\u6BB5\uFF08confirmed: true\uFF09\u5FC5\u987B\u63D0\u4F9B\u9884\u68C0\u9636\u6BB5\u83B7\u53D6\u7684 deletionToken\u3002\u8BF7\u5148\u8C03\u7528\u672C\u5DE5\u5177\u8FDB\u884C\u9884\u68C0\u9884\u89C8\u3002"
2055
+ }),
2056
+ metadata: { serverPlatformTool: true, memoryDelete: false }
2057
+ };
2058
+ }
2059
+ const body = {
2060
+ ids: parsed.ids,
2061
+ contentSubstring: parsed.contentKeyword ?? parsed.query,
2062
+ kinds: parsed.kinds,
2063
+ tags: parsed.tags,
2064
+ dryRun: !isConfirmed,
2065
+ deletionToken: parsed.deletionToken,
2066
+ reason
2067
+ };
2068
+ if (args.agentKey) body.agentKey = args.agentKey;
2069
+ const raw = await postServer("/api/memory/delete", body, {
2070
+ retryTransient: true
2071
+ });
2072
+ return {
2073
+ content: raw,
2074
+ metadata: { serverPlatformTool: true, memoryDelete: true }
2075
+ };
2076
+ };
2077
+ return {
2078
+ ...tableExecutors,
2079
+ ...webExecutors,
2080
+ queryMemory,
2081
+ rememberMemory,
2082
+ deleteMemory
2083
+ };
2038
2084
  }
2039
2085
 
2040
2086
  // packages/cli/client/cliAgentRunToolExecutors.ts
@@ -10383,6 +10429,12 @@ function buildServerPlatformOpenAiTools(args) {
10383
10429
  function: rememberMemoryFunctionSchema
10384
10430
  }
10385
10431
  ] : [],
10432
+ ...toolNameSet.has("deleteMemory") ? [
10433
+ {
10434
+ type: "function",
10435
+ function: deleteMemoryFunctionSchema
10436
+ }
10437
+ ] : [],
10386
10438
  ...toolNameSet.has("read_xhs_profile") ? [
10387
10439
  {
10388
10440
  type: "function",
@@ -304,7 +304,7 @@ var slice = createSliceWithThunks({
304
304
  const overrides = {};
305
305
  if (args.systemPromptOverride !== void 0) overrides.prompt = args.systemPromptOverride;
306
306
  if (args.toolsOverride !== void 0) overrides.tools = args.toolsOverride;
307
- const { _executeModel } = await import("./_executeModel-YXWAXPWQ.js");
307
+ const { _executeModel } = await import("./_executeModel-S346WSM5.js");
308
308
  return _executeModel(
309
309
  {
310
310
  isStreaming: args.isStreaming ?? false,
@@ -325,7 +325,7 @@ var slice = createSliceWithThunks({
325
325
  * - 循环直到无工具调用或触发其他运行时停止条件
326
326
  */
327
327
  runAgent: create.asyncThunk(async (args, thunkApi) => {
328
- const { runAgentClientLoop } = await import("./runAgentClientLoop-Y5UW544I.js");
328
+ const { runAgentClientLoop } = await import("./runAgentClientLoop-WVL2KOS5.js");
329
329
  const { content: loopContent, toolCallCount } = await runAgentClientLoop(
330
330
  {
331
331
  agentKey: args.agentKey,
@@ -341,7 +341,7 @@ var slice = createSliceWithThunks({
341
341
  * 聊天轮次流式 Agent 调用
342
342
  */
343
343
  streamAgentChatTurn: create.asyncThunk(async (args, thunkApi) => {
344
- const { streamAgentChatTurnHandler } = await import("./streamAgentChatTurn-7DU4Z2VJ.js");
344
+ const { streamAgentChatTurnHandler } = await import("./streamAgentChatTurn-CLC5VQYO.js");
345
345
  return streamAgentChatTurnHandler(args, thunkApi);
346
346
  }),
347
347
  /**
@@ -24,7 +24,7 @@ import {
24
24
  parseAgentRunEvent,
25
25
  t,
26
26
  toolLabel
27
- } from "./chunk-5QW3O3ET.js";
27
+ } from "./chunk-GUC65EFO.js";
28
28
  import {
29
29
  NOLO_PROJECT_MANAGER_AGENT_KEY,
30
30
  isLocalCliAgentKey
@@ -38,7 +38,7 @@ import {
38
38
  } from "./chunk-ESHYE7WU.js";
39
39
  import {
40
40
  formatAgentListCard
41
- } from "./chunk-MDIAECHA.js";
41
+ } from "./chunk-SNFD447J.js";
42
42
  import {
43
43
  isGatewayHttpStatus
44
44
  } from "./chunk-RQSOAMPJ.js";
@@ -50,12 +50,12 @@ import {
50
50
  chooseMemoryOwners,
51
51
  loadMemoryCandidatesFromDb,
52
52
  resolveAgentMemoryPolicy
53
- } from "./chunk-TFK3HUNQ.js";
53
+ } from "./chunk-CSNOI72O.js";
54
54
  import {
55
55
  API_REPORTED_COST_MULTIPLIER,
56
56
  normalizeUsage,
57
57
  parseUiAskChoiceContent
58
- } from "./chunk-DDVIBKIB.js";
58
+ } from "./chunk-AVO73UMB.js";
59
59
  import {
60
60
  resolveAgentRuntimeConfigFromRecord
61
61
  } from "./chunk-OIQPORYI.js";
@@ -64,7 +64,7 @@ import {
64
64
  LOCAL_TURN_ABORTED_CODE,
65
65
  readActionGate,
66
66
  readCommandActionGatePayload
67
- } from "./chunk-BFPSVRCQ.js";
67
+ } from "./chunk-PIDDBIHR.js";
68
68
  import {
69
69
  createThinkParserState,
70
70
  flushThinkParser,
@@ -85,14 +85,14 @@ import {
85
85
  } from "./chunk-DFUPZE6V.js";
86
86
  import {
87
87
  buildSkillDiscoveryContextLayer
88
- } from "./chunk-ZURFOV5J.js";
88
+ } from "./chunk-DMT4NJXR.js";
89
89
  import {
90
90
  buildAgentsMdLayer,
91
91
  buildMemoryOverlayLayer,
92
92
  buildMemoryUseGuidanceLayer,
93
93
  partitionScopedBlocks,
94
94
  renderTurnContextBlocksWithScope
95
- } from "./chunk-2UECQ7RE.js";
95
+ } from "./chunk-3AOLVADY.js";
96
96
  import {
97
97
  parseExternalSkillMarkdown,
98
98
  parseSkillDocProtocol
@@ -3521,7 +3521,7 @@ function findCollapsedPasteSpanAt(buffer, pos, opts = {}) {
3521
3521
  // packages/cli/client/agentRun.ts
3522
3522
  import { ulid } from "ulid";
3523
3523
  async function loadRunLocalAgentTurn() {
3524
- const { runLocalAgentTurn } = await import("./agentRuntimeLocal-4PSBNUOE.js");
3524
+ const { runLocalAgentTurn } = await import("./agentRuntimeLocal-O4IDDLPA.js");
3525
3525
  return runLocalAgentTurn;
3526
3526
  }
3527
3527
  async function resolveCurrentMachineId(options) {
@@ -40,6 +40,20 @@ import { stdin as input, stdout as output } from "node:process";
40
40
  import { spawn } from "node:child_process";
41
41
 
42
42
  // packages/ai/memory/delete.ts
43
+ function hasExplicitDeleteFilters(filters) {
44
+ return Boolean(
45
+ filters.ids && filters.ids.length > 0 || typeof filters.contentSubstring === "string" && filters.contentSubstring.trim().length > 0 || filters.tags && filters.tags.length > 0 || typeof filters.sourceDialogId === "string" && filters.sourceDialogId.trim().length > 0 || typeof filters.patternKeyPrefix === "string" && filters.patternKeyPrefix.trim().length > 0 || filters.facets && filters.facets.length > 0 || typeof filters.subjectId === "string" && filters.subjectId.trim().length > 0
46
+ );
47
+ }
48
+ function generateMemoryDeletionToken(ownerId, itemIds) {
49
+ const sorted = [...itemIds].sort().join(",");
50
+ const seed = `${ownerId}:${sorted}`;
51
+ let hash = 0;
52
+ for (let i = 0; i < seed.length; i++) {
53
+ hash = (hash << 5) - hash + seed.charCodeAt(i) | 0;
54
+ }
55
+ return `tok-${Math.abs(hash).toString(36)}-${itemIds.length}`;
56
+ }
43
57
  var normalizeSet = (values) => {
44
58
  if (!Array.isArray(values) || values.length === 0) return null;
45
59
  const normalized = asTrimmedNonEmptyStringArray(values);
@@ -93,6 +107,11 @@ var deleteMemoryItemWithIndexesInBatch = (batch, item) => {
93
107
  );
94
108
  };
95
109
  var deleteMemoriesForOwnerFromDb = async (db, owner, filters = {}) => {
110
+ if (!hasExplicitDeleteFilters(filters)) {
111
+ throw new Error(
112
+ "At least one filter is required; delete operation will not delete all memory implicitly."
113
+ );
114
+ }
96
115
  const range = memoryOwnerRange(owner.ownerType, owner.ownerId);
97
116
  const matchedItems = [];
98
117
  const limit = typeof filters.limit === "number" && filters.limit > 0 ? filters.limit : Number.POSITIVE_INFINITY;
@@ -112,6 +131,23 @@ var deleteMemoriesForOwnerFromDb = async (db, owner, filters = {}) => {
112
131
  if (matchedItems.length === 0) {
113
132
  return { deletedCount: 0, deletedIds: [], matchedItems: [] };
114
133
  }
134
+ const token = generateMemoryDeletionToken(
135
+ owner.ownerId,
136
+ matchedItems.map((i) => i.id)
137
+ );
138
+ if (filters.dryRun) {
139
+ return {
140
+ deletedCount: 0,
141
+ deletedIds: [],
142
+ matchedItems,
143
+ deletionToken: token
144
+ };
145
+ }
146
+ if (filters.deletionToken && filters.deletionToken !== token) {
147
+ throw new Error(
148
+ "deletionToken mismatch: memory dataset changed since preview; please rerun dry-run preview before confirming."
149
+ );
150
+ }
115
151
  const batch = db.batch();
116
152
  for (const item of matchedItems) {
117
153
  deleteMemoryItemWithIndexesInBatch(batch, item);
@@ -120,7 +156,8 @@ var deleteMemoriesForOwnerFromDb = async (db, owner, filters = {}) => {
120
156
  return {
121
157
  deletedCount: matchedItems.length,
122
158
  deletedIds: matchedItems.map((item) => item.id),
123
- matchedItems
159
+ matchedItems,
160
+ deletionToken: token
124
161
  };
125
162
  };
126
163
 
@@ -3,7 +3,7 @@ import {
3
3
  buildIdentityBlock,
4
4
  buildRuntimeGuidanceBlocks,
5
5
  resolveToolGuidedSections
6
- } from "./chunk-ZWS6DUHX.js";
6
+ } from "./chunk-ZKUATCEY.js";
7
7
  import {
8
8
  getModelContextWindow,
9
9
  resolveBuiltinPlatformAgentConfig
@@ -26,10 +26,10 @@ import {
26
26
  } from "./chunk-DFUPZE6V.js";
27
27
  import {
28
28
  buildDialogSummaryLayer
29
- } from "./chunk-2UECQ7RE.js";
29
+ } from "./chunk-3AOLVADY.js";
30
30
  import {
31
31
  buildUserResponseLanguageContext
32
- } from "./chunk-FMEVI5TG.js";
32
+ } from "./chunk-7CH6U3FL.js";
33
33
  import {
34
34
  canonicalizeToolName,
35
35
  canonicalizeToolNames
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  updateContentTitle
3
- } from "./chunk-XRO5VGQ6.js";
3
+ } from "./chunk-7XSIRXOO.js";
4
4
  import {
5
5
  require_date_fns
6
6
  } from "./chunk-M76ECQRD.js";
@@ -367,7 +367,7 @@ async function saveDocState(arg, { dispatch, getState }) {
367
367
  }
368
368
  }
369
369
  async function createDocState(args, thunkApi) {
370
- const { createPageAction } = await import("./createPageAction-KVPT3IRK.js");
370
+ const { createPageAction } = await import("./createPageAction-5GUFQTAW.js");
371
371
  return createPageAction(args, thunkApi);
372
372
  }
373
373
  function subscribe(listener) {
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  createCliLocalRuntimeAdapter,
3
3
  summarizeEndpoint
4
- } from "./chunk-5QW3O3ET.js";
4
+ } from "./chunk-GUC65EFO.js";
5
5
  import {
6
6
  clipMultilineText
7
- } from "./chunk-MDIAECHA.js";
7
+ } from "./chunk-SNFD447J.js";
8
8
  import {
9
9
  runLocalAgentTurn
10
- } from "./chunk-BFPSVRCQ.js";
10
+ } from "./chunk-PIDDBIHR.js";
11
11
  import {
12
12
  resolveLocalRuntimeEnvFromPolicy
13
13
  } from "./chunk-RQFO3CAF.js";
@@ -10,7 +10,7 @@ import {
10
10
  fetchAndSerializeTable,
11
11
  resolveBuiltinSkillPage,
12
12
  waitForAbortableDelay
13
- } from "./chunk-MDIAECHA.js";
13
+ } from "./chunk-SNFD447J.js";
14
14
  import {
15
15
  createDrainExhaustedResponse,
16
16
  isCoreDrainingBody,
@@ -26,13 +26,13 @@ import {
26
26
  } from "./chunk-GM6PU7B6.js";
27
27
  import {
28
28
  fetchAndCacheMessages
29
- } from "./chunk-DDVIBKIB.js";
29
+ } from "./chunk-AVO73UMB.js";
30
30
  import {
31
31
  shouldUseServerProxy
32
32
  } from "./chunk-YYLHWIW6.js";
33
33
  import {
34
34
  fetchServerSyncedCredential
35
- } from "./chunk-66CWPJK2.js";
35
+ } from "./chunk-IXTC74NZ.js";
36
36
  import {
37
37
  buildCurrentTimeBlock,
38
38
  buildIdentityBlock,
@@ -40,7 +40,7 @@ import {
40
40
  requiresBareImageUrl,
41
41
  resolveToolGuidedSections,
42
42
  toBareImageUrlMessages
43
- } from "./chunk-ZWS6DUHX.js";
43
+ } from "./chunk-ZKUATCEY.js";
44
44
  import {
45
45
  convertMessagesToResponsesInput,
46
46
  getUsageRequestOptions,
@@ -69,12 +69,12 @@ import {
69
69
  MEMORY_USE_GUIDANCE,
70
70
  buildUserResponseLanguageContext,
71
71
  wrapHistoricalSummaryWithReplayGuard
72
- } from "./chunk-FMEVI5TG.js";
72
+ } from "./chunk-7CH6U3FL.js";
73
73
  import {
74
74
  buildSkillGuidancePromptBlock,
75
75
  extractRuntimePageCapabilities,
76
76
  resolveSkillGraphFromRoots
77
- } from "./chunk-HUCT7HID.js";
77
+ } from "./chunk-42IF53CR.js";
78
78
  import {
79
79
  canonicalizeToolNames
80
80
  } from "./chunk-ZZ2MH7LE.js";