nolo-cli 0.12.0-alpha.6 → 0.12.0-alpha.8

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 (73) hide show
  1. package/{_executeModel-3B6MKHQV.js → _executeModel-PKRZBH3J.js} +20 -19
  2. package/{action-RAXNQQKC.js → action-OTOWUMPW.js} +3 -3
  3. package/{addContentAction-ZHI7TVV3.js → addContentAction-JGBUVR7K.js} +2 -2
  4. package/{addDialogAgentAction-JWXPKXNC.js → addDialogAgentAction-V6CL2UCF.js} +1 -1
  5. package/{agentDeleteCommand-3R7OCLBN.js → agentDeleteCommand-OKQ5CSX2.js} +12 -11
  6. package/{agentEmailCommands-OENXTOPM.js → agentEmailCommands-7DORWXQH.js} +24 -23
  7. package/{agentListCommands-GX5YRFFK.js → agentListCommands-VTR33V4B.js} +13 -12
  8. package/{agentMachineCommands-5ZEL4NOJ.js → agentMachineCommands-XHFM4UQB.js} +12 -11
  9. package/{agentRecordCommands-EKGPNDCG.js → agentRecordCommands-XB7XBNJ7.js} +24 -23
  10. package/{agentRunCommand-KQYY46WS.js → agentRunCommand-XACEWDVO.js} +24 -23
  11. package/{agentRuntimeLocal-C2KYWS6H.js → agentRuntimeLocal-NYFVPD5P.js} +9 -8
  12. package/{agentSlice-N5RKI23B.js → agentSlice-NGZWIMZX.js} +2 -2
  13. package/{chunk-6TISG7CK.js → chunk-3GOA33JO.js} +69 -12
  14. package/{chunk-5HANPK6S.js → chunk-4LNEIK4O.js} +3 -3
  15. package/chunk-5MMAK75Q.js +15 -0
  16. package/{chunk-2VILMENT.js → chunk-6KTC3MPK.js} +1 -1
  17. package/{chunk-6VDWNLHX.js → chunk-7CQLSRAC.js} +2 -2
  18. package/{chunk-OLKX3NZI.js → chunk-7F5C7ILS.js} +3 -3
  19. package/{chunk-NIU4ERVM.js → chunk-A22NOC7Y.js} +24 -22
  20. package/{chunk-RFRU3HAL.js → chunk-CGAYFFIB.js} +1 -1
  21. package/{chunk-7MYHLZ3F.js → chunk-DPFWKRHG.js} +1 -1
  22. package/{chunk-Y3BLUPNS.js → chunk-H5Y2H2N6.js} +1 -1
  23. package/{chunk-ELYHT6P6.js → chunk-HO7RHQIN.js} +2 -2
  24. package/{chunk-RGJFQERV.js → chunk-HYJNPPQ6.js} +4 -4
  25. package/{chunk-NKD3Q4RN.js → chunk-JFANOO7I.js} +2 -14
  26. package/{chunk-WTYKCU4W.js → chunk-JU7J7EAV.js} +37 -37
  27. package/{chunk-NRJFU6WZ.js → chunk-LBWFOYJJ.js} +2 -2
  28. package/{chunk-Y3COB2JR.js → chunk-LKVDZQGM.js} +2 -2
  29. package/{chunk-7HV5OHEM.js → chunk-LUKQQJFL.js} +38 -1
  30. package/{chunk-FF7Y6DC4.js → chunk-NS3DRNUZ.js} +39 -12
  31. package/{chunk-7TNQ4ZZL.js → chunk-P3J54V3I.js} +1 -1
  32. package/{chunk-UG3WOFU6.js → chunk-QJSTNKJY.js} +1 -1
  33. package/{chunk-ISZEBXEV.js → chunk-QYZ46ZC3.js} +1 -1
  34. package/{chunk-B2Z7OJBT.js → chunk-REQCG2PB.js} +12 -99
  35. package/{chunk-6LMFFG3K.js → chunk-RWO5DGXI.js} +2 -2
  36. package/{chunk-J6PV7OYE.js → chunk-SDYIF6SV.js} +94 -1
  37. package/{chunk-MRX4BSKQ.js → chunk-SKURMCJF.js} +151 -15
  38. package/{chunk-6ADBTFFE.js → chunk-TA7VKOHU.js} +10 -5
  39. package/{chunk-WO24IT3V.js → chunk-TYPHUVK5.js} +12 -0
  40. package/{chunk-WMU5EZLC.js → chunk-UNEZBV37.js} +27 -13
  41. package/{chunk-KJTP7JTN.js → chunk-UP6JMU6C.js} +1 -1
  42. package/{chunk-I6IVZIIO.js → chunk-UWTMBOPF.js} +15 -10
  43. package/{chunk-NITP2JDG.js → chunk-VKG4HXYV.js} +1 -1
  44. package/{chunk-3HHTVM6G.js → chunk-WVTBAALN.js} +1 -1
  45. package/{chunk-OSGJQTG6.js → chunk-XNV42PMD.js} +18 -18
  46. package/{createAgentAutomationAction-NNXHZFSA.js → createAgentAutomationAction-AHSBJKGX.js} +8 -7
  47. package/{createDialogAction-TQCW67HG.js → createDialogAction-RSNVGR5E.js} +9 -8
  48. package/{createPageAction-QUFKG6A2.js → createPageAction-47G4D5WU.js} +8 -7
  49. package/{dbSlice-WDP2ZZHK.js → dbSlice-J4PUZ6Y5.js} +1 -1
  50. package/{dialogCommands-C6ERN2I7.js → dialogCommands-MPUFCOBR.js} +13 -12
  51. package/{dialogSlice-DAA3CWOV.js → dialogSlice-YNEFYFSU.js} +8 -7
  52. package/{docCreateCommands-KMYVYGZM.js → docCreateCommands-LV6KUDP3.js} +12 -11
  53. package/{docDeleteCommands-DZHIJA5D.js → docDeleteCommands-Y7FOYWMY.js} +13 -12
  54. package/{docReadCommands-VLJFYLR2.js → docReadCommands-UCCHERCP.js} +12 -11
  55. package/{docStore-67RBJMFZ.js → docStore-OBBYKQVD.js} +9 -8
  56. package/{docUpdateCommands-GOHV5JC5.js → docUpdateCommands-FBKQBFWG.js} +12 -11
  57. package/{handleSendMessageAction-7PNLNSPL.js → handleSendMessageAction-U5AX6CGB.js} +8 -7
  58. package/index.js +36 -36
  59. package/{machineCommands-J7FIVAZV.js → machineCommands-EXVWHGWU.js} +23 -22
  60. package/{machineWsRunDispatch-RWXFY6YG.js → machineWsRunDispatch-QZXCW3SI.js} +23 -22
  61. package/package.json +1 -1
  62. package/{readlineWorkspace-EMKKVMNH.js → readlineWorkspace-QKMGLM33.js} +134 -34
  63. package/{removeDialogAgentAction-GTX5AN54.js → removeDialogAgentAction-XUZYQBV4.js} +3 -3
  64. package/{runAgentClientLoop-VTA6RAHT.js → runAgentClientLoop-5DIJHAPN.js} +17 -16
  65. package/{setDialogExtraReferencesAction-WFQ63KYO.js → setDialogExtraReferencesAction-PTAIFKGM.js} +1 -1
  66. package/{setPrimaryDialogAgentAction-P57FXTSU.js → setPrimaryDialogAgentAction-HRFTDB44.js} +3 -3
  67. package/{settingSlice-CK5YZGNI.js → settingSlice-VGRJUSE5.js} +2 -2
  68. package/{spaceCommands-HLOEZVOV.js → spaceCommands-KDZYXP5N.js} +12 -11
  69. package/{spaceSlice-2X2TVI2V.js → spaceSlice-EO6JQRMP.js} +8 -7
  70. package/{streamAgentChatTurn-GFQ4YRJF.js → streamAgentChatTurn-PLKJ3MZ6.js} +20 -19
  71. package/{tools-PR47LTGM.js → tools-5QNY6YKE.js} +12 -11
  72. package/{tuiSummaryLlmCaller-YEHSPGXZ.js → tuiSummaryLlmCaller-TQ34DAM5.js} +4 -2
  73. package/{updateDialogTitleAction-4GI3W4LJ.js → updateDialogTitleAction-V5AD52MZ.js} +8 -7
@@ -34,10 +34,10 @@ import {
34
34
  } from "./chunk-VF4K2QE6.js";
35
35
  import {
36
36
  createDocState
37
- } from "./chunk-OLKX3NZI.js";
37
+ } from "./chunk-7F5C7ILS.js";
38
38
  import {
39
39
  createDialogAction
40
- } from "./chunk-Y3COB2JR.js";
40
+ } from "./chunk-LKVDZQGM.js";
41
41
  import {
42
42
  buildSkillDocMarkdown,
43
43
  normalizeSkillBudgetTier,
@@ -76,13 +76,13 @@ import {
76
76
  updateContentCategory,
77
77
  updateContentTitle,
78
78
  updateStep
79
- } from "./chunk-OSGJQTG6.js";
79
+ } from "./chunk-XNV42PMD.js";
80
80
  import {
81
81
  createAgent,
82
82
  runLlm,
83
83
  streamAgentChatTurn,
84
84
  updateAgent
85
- } from "./chunk-RGJFQERV.js";
85
+ } from "./chunk-HYJNPPQ6.js";
86
86
  import {
87
87
  NOLO_WORKSPACE_TOOL_NAMES,
88
88
  buildNoloSubjectRefQueryTarget,
@@ -101,7 +101,7 @@ import {
101
101
  } from "./chunk-B4KT7RN2.js";
102
102
  import {
103
103
  buildDatabaseFileContentUrl
104
- } from "./chunk-NKD3Q4RN.js";
104
+ } from "./chunk-JFANOO7I.js";
105
105
  import {
106
106
  DEFAULT_MODEL
107
107
  } from "./chunk-OGGHETUE.js";
@@ -130,14 +130,14 @@ import {
130
130
  } from "./chunk-DWLEOOGR.js";
131
131
  import {
132
132
  shareResourceAction
133
- } from "./chunk-7MYHLZ3F.js";
133
+ } from "./chunk-DPFWKRHG.js";
134
134
  import {
135
135
  AGENT_UPDATE_FIELD_NAMES,
136
136
  normalizeAgentUpdateFieldList,
137
137
  selectAutoApproveSelfUpdateFields,
138
138
  selectCurrentServer,
139
139
  selectSyncServers
140
- } from "./chunk-WTYKCU4W.js";
140
+ } from "./chunk-JU7J7EAV.js";
141
141
  import {
142
142
  asRecordOrEmpty
143
143
  } from "./chunk-KX6YBIHG.js";
@@ -145,7 +145,7 @@ import {
145
145
  addContentAction,
146
146
  createSpaceKey,
147
147
  normalizeSpaceId
148
- } from "./chunk-3HHTVM6G.js";
148
+ } from "./chunk-WVTBAALN.js";
149
149
  import {
150
150
  patch,
151
151
  read,
@@ -153,7 +153,7 @@ import {
153
153
  readAndWaitAction,
154
154
  toTimestampMs,
155
155
  write
156
- } from "./chunk-NITP2JDG.js";
156
+ } from "./chunk-VKG4HXYV.js";
157
157
  import {
158
158
  SEPARATOR,
159
159
  createAgentKey,
@@ -4677,6 +4677,40 @@ var interface_locale_default = {
4677
4677
  machines: "Machines",
4678
4678
  updates: "Updates"
4679
4679
  },
4680
+ updates: {
4681
+ title: "Client updates",
4682
+ desktopOnly: "This page is only available in the desktop client.",
4683
+ overview: {
4684
+ title: "Version status",
4685
+ description: "New versions are detected automatically on launch. You can also check, download, and install updates manually here."
4686
+ },
4687
+ currentHash: "Current build",
4688
+ latestHash: "Latest build",
4689
+ idle: "Waiting to check for updates",
4690
+ checkNow: "Check for updates",
4691
+ noAction: "No update available right now",
4692
+ failed: "Check failed",
4693
+ timeline: {
4694
+ title: "Update log",
4695
+ description: "Shows the most recent check or download events so you can confirm which stage the client is in.",
4696
+ empty: "No update events yet."
4697
+ },
4698
+ phase: {
4699
+ not_checked: "Not checked yet",
4700
+ checking: "Checking",
4701
+ update_available: "New version available",
4702
+ downloading: "Downloading",
4703
+ ready_to_install: "Ready to install",
4704
+ applying: "Installing",
4705
+ up_to_date: "Up to date",
4706
+ invalid_remote: "Remote metadata is invalid",
4707
+ error: "Check failed"
4708
+ },
4709
+ action: {
4710
+ download: "Download update",
4711
+ apply: "Restart and install"
4712
+ }
4713
+ },
4680
4714
  developer: {
4681
4715
  title: "Developer",
4682
4716
  developerMode: {
@@ -5923,6 +5957,40 @@ var interface_locale_default = {
5923
5957
  machines: "\u7535\u8111",
5924
5958
  updates: "\u66F4\u65B0"
5925
5959
  },
5960
+ updates: {
5961
+ title: "\u5BA2\u6237\u7AEF\u66F4\u65B0",
5962
+ desktopOnly: "\u6B64\u9875\u9762\u4EC5\u5728\u684C\u9762\u5BA2\u6237\u7AEF\u4E2D\u53EF\u7528\u3002",
5963
+ overview: {
5964
+ title: "\u7248\u672C\u72B6\u6001",
5965
+ description: "\u542F\u52A8\u65F6\u4F1A\u81EA\u52A8\u68C0\u6D4B\u65B0\u7248\u672C\u3002\u4F60\u4E5F\u53EF\u4EE5\u5728\u6B64\u624B\u52A8\u68C0\u67E5\u3001\u4E0B\u8F7D\u548C\u5B89\u88C5\u66F4\u65B0\u3002"
5966
+ },
5967
+ currentHash: "\u5F53\u524D\u6784\u5EFA",
5968
+ latestHash: "\u6700\u65B0\u6784\u5EFA",
5969
+ idle: "\u7B49\u5F85\u68C0\u67E5\u66F4\u65B0",
5970
+ checkNow: "\u68C0\u67E5\u66F4\u65B0",
5971
+ noAction: "\u6682\u65E0\u53EF\u7528\u66F4\u65B0",
5972
+ failed: "\u68C0\u67E5\u5931\u8D25",
5973
+ timeline: {
5974
+ title: "\u66F4\u65B0\u65E5\u5FD7",
5975
+ description: "\u663E\u793A\u6700\u8FD1\u7684\u68C0\u67E5\u6216\u4E0B\u8F7D\u4E8B\u4EF6\uFF0C\u4EE5\u4FBF\u4F60\u786E\u8BA4\u5BA2\u6237\u7AEF\u5904\u4E8E\u54EA\u4E2A\u9636\u6BB5\u3002",
5976
+ empty: "\u6682\u65E0\u66F4\u65B0\u4E8B\u4EF6\u3002"
5977
+ },
5978
+ phase: {
5979
+ not_checked: "\u672A\u68C0\u67E5",
5980
+ checking: "\u68C0\u67E5\u4E2D",
5981
+ update_available: "\u53D1\u73B0\u65B0\u7248\u672C",
5982
+ downloading: "\u4E0B\u8F7D\u4E2D",
5983
+ ready_to_install: "\u51C6\u5907\u5B89\u88C5",
5984
+ applying: "\u5B89\u88C5\u4E2D",
5985
+ up_to_date: "\u5DF2\u662F\u6700\u65B0\u7248\u672C",
5986
+ invalid_remote: "\u8FDC\u7AEF\u5143\u6570\u636E\u65E0\u6548",
5987
+ error: "\u68C0\u67E5\u5931\u8D25"
5988
+ },
5989
+ action: {
5990
+ download: "\u4E0B\u8F7D\u66F4\u65B0",
5991
+ apply: "\u91CD\u542F\u5E76\u5B89\u88C5"
5992
+ }
5993
+ },
5926
5994
  developer: {
5927
5995
  title: "\u5F00\u53D1\u8005",
5928
5996
  developerMode: {
@@ -7113,6 +7181,40 @@ var interface_locale_default = {
7113
7181
  machines: "\u96FB\u8166",
7114
7182
  updates: "\u66F4\u65B0"
7115
7183
  },
7184
+ updates: {
7185
+ title: "\u5BA2\u6236\u7AEF\u66F4\u65B0",
7186
+ desktopOnly: "\u6B64\u9801\u9762\u50C5\u5728\u684C\u9762\u5BA2\u6236\u7AEF\u4E2D\u53EF\u7528\u3002",
7187
+ overview: {
7188
+ title: "\u7248\u672C\u72C0\u614B",
7189
+ description: "\u555F\u52D5\u6642\u6703\u81EA\u52D5\u6AA2\u6E2C\u65B0\u7248\u672C\u3002\u4F60\u4E5F\u53EF\u4EE5\u5728\u6B64\u624B\u52D5\u6AA2\u67E5\u3001\u4E0B\u8F09\u548C\u5B89\u88DD\u66F4\u65B0\u3002"
7190
+ },
7191
+ currentHash: "\u7576\u524D\u5EFA\u7F6E",
7192
+ latestHash: "\u6700\u65B0\u5EFA\u7F6E",
7193
+ idle: "\u7B49\u5F85\u6AA2\u67E5\u66F4\u65B0",
7194
+ checkNow: "\u6AA2\u67E5\u66F4\u65B0",
7195
+ noAction: "\u66AB\u7121\u53EF\u7528\u66F4\u65B0",
7196
+ failed: "\u6AA2\u67E5\u5931\u6557",
7197
+ timeline: {
7198
+ title: "\u66F4\u65B0\u65E5\u8A8C",
7199
+ description: "\u986F\u793A\u6700\u8FD1\u7684\u6AA2\u67E5\u6216\u4E0B\u8F09\u4E8B\u4EF6\uFF0C\u4EE5\u4FBF\u4F60\u78BA\u8A8D\u5BA2\u6236\u7AEF\u8655\u65BC\u54EA\u500B\u968E\u6BB5\u3002",
7200
+ empty: "\u66AB\u7121\u66F4\u65B0\u4E8B\u4EF6\u3002"
7201
+ },
7202
+ phase: {
7203
+ not_checked: "\u672A\u6AA2\u67E5",
7204
+ checking: "\u6AA2\u67E5\u4E2D",
7205
+ update_available: "\u767C\u73FE\u65B0\u7248\u672C",
7206
+ downloading: "\u4E0B\u8F09\u4E2D",
7207
+ ready_to_install: "\u6E96\u5099\u5B89\u88DD",
7208
+ applying: "\u5B89\u88DD\u4E2D",
7209
+ up_to_date: "\u5DF2\u662F\u6700\u65B0\u7248\u672C",
7210
+ invalid_remote: "\u9060\u7AEF\u5143\u8CC7\u6599\u7121\u6548",
7211
+ error: "\u6AA2\u67E5\u5931\u6557"
7212
+ },
7213
+ action: {
7214
+ download: "\u4E0B\u8F09\u66F4\u65B0",
7215
+ apply: "\u91CD\u555F\u4E26\u5B89\u88DD"
7216
+ }
7217
+ },
7116
7218
  developer: {
7117
7219
  title: "\u958B\u767C\u8005",
7118
7220
  developerMode: {
@@ -8229,6 +8331,40 @@ var interface_locale_default = {
8229
8331
  machines: "\u30DE\u30B7\u30F3",
8230
8332
  updates: "\u66F4\u65B0"
8231
8333
  },
8334
+ updates: {
8335
+ title: "\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u306E\u66F4\u65B0",
8336
+ desktopOnly: "\u3053\u306E\u30DA\u30FC\u30B8\u306F\u30C7\u30B9\u30AF\u30C8\u30C3\u30D7\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u3067\u306E\u307F\u5229\u7528\u3067\u304D\u307E\u3059\u3002",
8337
+ overview: {
8338
+ title: "\u30D0\u30FC\u30B8\u30E7\u30F3\u72B6\u614B",
8339
+ description: "\u8D77\u52D5\u6642\u306B\u65B0\u3057\u3044\u30D0\u30FC\u30B8\u30E7\u30F3\u304C\u81EA\u52D5\u691C\u51FA\u3055\u308C\u307E\u3059\u3002\u3053\u3053\u304B\u3089\u624B\u52D5\u3067\u78BA\u8A8D\u3001\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3001\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002"
8340
+ },
8341
+ currentHash: "\u73FE\u5728\u306E\u30D3\u30EB\u30C9",
8342
+ latestHash: "\u6700\u65B0\u306E\u30D3\u30EB\u30C9",
8343
+ idle: "\u66F4\u65B0\u78BA\u8A8D\u3092\u5F85\u6A5F\u4E2D",
8344
+ checkNow: "\u66F4\u65B0\u3092\u78BA\u8A8D",
8345
+ noAction: "\u73FE\u5728\u5229\u7528\u53EF\u80FD\u306A\u66F4\u65B0\u306F\u3042\u308A\u307E\u305B\u3093",
8346
+ failed: "\u78BA\u8A8D\u5931\u6557",
8347
+ timeline: {
8348
+ title: "\u66F4\u65B0\u30ED\u30B0",
8349
+ description: "\u6700\u8FD1\u306E\u78BA\u8A8D\u307E\u305F\u306F\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u30A4\u30D9\u30F3\u30C8\u3092\u8868\u793A\u3057\u3001\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u306E\u30B9\u30C6\u30FC\u30B8\u3092\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002",
8350
+ empty: "\u66F4\u65B0\u30A4\u30D9\u30F3\u30C8\u306F\u307E\u3060\u3042\u308A\u307E\u305B\u3093\u3002"
8351
+ },
8352
+ phase: {
8353
+ not_checked: "\u672A\u78BA\u8A8D",
8354
+ checking: "\u78BA\u8A8D\u4E2D",
8355
+ update_available: "\u65B0\u3057\u3044\u30D0\u30FC\u30B8\u30E7\u30F3\u304C\u5229\u7528\u53EF\u80FD",
8356
+ downloading: "\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u4E2D",
8357
+ ready_to_install: "\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u6E96\u5099\u5B8C\u4E86",
8358
+ applying: "\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u4E2D",
8359
+ up_to_date: "\u6700\u65B0\u72B6\u614B",
8360
+ invalid_remote: "\u30EA\u30E2\u30FC\u30C8\u30E1\u30BF\u30C7\u30FC\u30BF\u304C\u7121\u52B9\u3067\u3059",
8361
+ error: "\u78BA\u8A8D\u5931\u6557"
8362
+ },
8363
+ action: {
8364
+ download: "\u66F4\u65B0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",
8365
+ apply: "\u518D\u8D77\u52D5\u3057\u3066\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB"
8366
+ }
8367
+ },
8232
8368
  developer: {
8233
8369
  title: "\u958B\u767A\u8005",
8234
8370
  developerMode: {
@@ -13968,7 +14104,7 @@ async function deleteDialogsFunc(args, thunkApi) {
13968
14104
  const deletedDialogIds = [];
13969
14105
  const deletedDialogKeys = [];
13970
14106
  const failures = [];
13971
- const { deleteDialog } = await import("./dialogSlice-DAA3CWOV.js");
14107
+ const { deleteDialog } = await import("./dialogSlice-YNEFYFSU.js");
13972
14108
  for (const target of targets) {
13973
14109
  try {
13974
14110
  await thunkApi.dispatch(deleteDialog(target.dbKey)).unwrap();
@@ -19620,7 +19756,7 @@ var selectUserIdFromState = (state) => typeof state?.auth?.currentUser?.userId =
19620
19756
  var selectCurrentServerFromState = (state) => typeof state?.settings?.currentServer === "string" ? state.settings.currentServer : null;
19621
19757
  async function addImageContentToSpace(input) {
19622
19758
  const injectedAddContentAction = input.thunkApi?.extra?.addContentAction;
19623
- const addContentAction2 = typeof injectedAddContentAction === "function" ? injectedAddContentAction : (await import("./addContentAction-ZHI7TVV3.js")).addContentAction;
19759
+ const addContentAction2 = typeof injectedAddContentAction === "function" ? injectedAddContentAction : (await import("./addContentAction-JGBUVR7K.js")).addContentAction;
19624
19760
  await addContentAction2(
19625
19761
  {
19626
19762
  spaceId: input.spaceId,
@@ -23105,7 +23241,7 @@ var executeToolRun = createAsyncThunk(
23105
23241
  if (!executionInput) {
23106
23242
  throw new Error(`ToolRun ${id} has no input to execute with.`);
23107
23243
  }
23108
- const { findToolExecutor: findToolExecutor2 } = await import("./tools-PR47LTGM.js");
23244
+ const { findToolExecutor: findToolExecutor2 } = await import("./tools-5QNY6YKE.js");
23109
23245
  const { executor } = findToolExecutor2(run.toolName);
23110
23246
  toolRunStarted({
23111
23247
  id: run.id,
@@ -23129,7 +23265,7 @@ var executeToolRun = createAsyncThunk(
23129
23265
  const latestState = thunkApi.getState();
23130
23266
  const userId = latestState.auth?.currentUser?.userId;
23131
23267
  if (userId) {
23132
- const { fetchUserSpaceMemberships } = await import("./spaceSlice-2X2TVI2V.js");
23268
+ const { fetchUserSpaceMemberships } = await import("./spaceSlice-EO6JQRMP.js");
23133
23269
  await thunkApi.dispatch(fetchUserSpaceMemberships(userId));
23134
23270
  }
23135
23271
  }
@@ -25532,7 +25668,7 @@ async function updateDocFunc(args, thunkApi) {
25532
25668
  updated_at: (/* @__PURE__ */ new Date()).toISOString()
25533
25669
  };
25534
25670
  await dispatch(write({ data: updatedPageData, customKey: id })).unwrap();
25535
- const { getDocState, applyExternalDocUpdate } = await import("./docStore-67RBJMFZ.js");
25671
+ const { getDocState, applyExternalDocUpdate } = await import("./docStore-OBBYKQVD.js");
25536
25672
  if (getDocState().pageKey === id) {
25537
25673
  applyExternalDocUpdate({
25538
25674
  slateData: finalSlateData,
@@ -25557,7 +25693,7 @@ async function updateDocFunc(args, thunkApi) {
25557
25693
  // packages/ai/tools/updateUserPreferenceProfileTool.ts
25558
25694
  async function dispatchSetSettings(thunkApi, changes) {
25559
25695
  const injectedSetSettings = thunkApi?.extra?.setSettings;
25560
- const setSettings = typeof injectedSetSettings === "function" ? injectedSetSettings : (await import("./settingSlice-CK5YZGNI.js")).setSettings;
25696
+ const setSettings = typeof injectedSetSettings === "function" ? injectedSetSettings : (await import("./settingSlice-VGRJUSE5.js")).setSettings;
25561
25697
  await thunkApi.dispatch(setSettings(changes)).unwrap();
25562
25698
  }
25563
25699
  var updateUserPreferenceProfileFunctionSchema = {
@@ -2,18 +2,20 @@ import {
2
2
  buildCurrentTimeBlock,
3
3
  buildIdentityBlock,
4
4
  buildRuntimeGuidanceBlocks
5
- } from "./chunk-7HV5OHEM.js";
5
+ } from "./chunk-LUKQQJFL.js";
6
6
  import {
7
7
  canonicalizeToolNames
8
8
  } from "./chunk-B4KT7RN2.js";
9
9
  import {
10
- clipCompactText,
11
10
  estimateTokenCount,
12
11
  getModelContextWindow,
13
12
  planCompression,
14
13
  planContextUsage,
15
14
  serializeMessageContent
16
- } from "./chunk-NKD3Q4RN.js";
15
+ } from "./chunk-JFANOO7I.js";
16
+ import {
17
+ clipCompactText
18
+ } from "./chunk-5MMAK75Q.js";
17
19
  import {
18
20
  findModelConfig,
19
21
  getProviderByModelName
@@ -531,7 +533,9 @@ function resolveEmptyAssistantOutcome(args) {
531
533
  if (args.hasToolCalls || args.hasVisibleOutput) return { kind: "ok" };
532
534
  if (args.finishReason === "length") return { kind: "fallback", reason: "length_truncated" };
533
535
  if (!args.repairUsed) return { kind: "repair" };
534
- if (!args.finishReason) return { kind: "fallback", reason: "stream_truncated" };
536
+ if (!args.finishReason && !args.streamComplete) {
537
+ return { kind: "fallback", reason: "stream_truncated" };
538
+ }
535
539
  return { kind: "fallback", reason: "empty_completion" };
536
540
  }
537
541
  function resolveEmptyAssistantFallbackMessage(reason) {
@@ -1297,7 +1301,8 @@ async function runLocalAgentTurn(input) {
1297
1301
  hasToolCalls: rawToolCallsCount > 0,
1298
1302
  hasVisibleOutput: hasAssistantVisibleOutput(result.content),
1299
1303
  repairUsed: emptyAssistantRepairUsed,
1300
- finishReason: result.finish_reason
1304
+ finishReason: result.finish_reason,
1305
+ streamComplete: result.stream_complete
1301
1306
  });
1302
1307
  if (outcome.kind === "repair") {
1303
1308
  emptyAssistantRepairPending = true;
@@ -563,8 +563,20 @@ var extractToolCallsFromResponseOutput = (response) => {
563
563
  return calls;
564
564
  };
565
565
 
566
+ // packages/core/chat/imageParts.ts
567
+ function isImageUrlPart(part) {
568
+ return isRecord(part) && part.type === "image_url";
569
+ }
570
+ function hasImageParts(messages) {
571
+ return messages.some(
572
+ (message) => Array.isArray(message.content) && message.content.some(isImageUrlPart)
573
+ );
574
+ }
575
+
566
576
  export {
567
577
  pickAgentRuntimeInferenceOptions,
578
+ isImageUrlPart,
579
+ hasImageParts,
568
580
  preserveAgentStateFields,
569
581
  toOpenAiCompatibleMessages,
570
582
  isOpenAiResponsesModel,
@@ -1,22 +1,28 @@
1
1
  import {
2
2
  applyChatCompletionDelta,
3
+ createToolCallAccumulator,
3
4
  finalizeAccumulatedToolCalls,
4
5
  flushChatCompletionStream,
6
+ providerHttpFailure,
5
7
  readSseFrames,
6
8
  throwIfChatCompletionStreamFailed
7
- } from "./chunk-6TISG7CK.js";
9
+ } from "./chunk-3GOA33JO.js";
8
10
  import {
9
11
  parseToolArgumentsJson
10
- } from "./chunk-6ADBTFFE.js";
12
+ } from "./chunk-TA7VKOHU.js";
11
13
  import {
12
14
  createThinkParserState,
13
15
  extractThinkContent
14
16
  } from "./chunk-OPZYGHUC.js";
17
+ import {
18
+ requiresBareImageUrl,
19
+ toBareImageUrlMessages
20
+ } from "./chunk-LUKQQJFL.js";
15
21
  import {
16
22
  buildProviderAuthHeaders,
17
23
  buildProviderExecutionPlan,
18
24
  toOpenAiCompatibleMessages
19
- } from "./chunk-WO24IT3V.js";
25
+ } from "./chunk-TYPHUVK5.js";
20
26
  import {
21
27
  canonicalizeToolName,
22
28
  createGlob,
@@ -81,9 +87,14 @@ function parseSseDataLineJson(line) {
81
87
 
82
88
  // packages/agent-runtime/openAiCompatibleProvider.ts
83
89
  function buildOpenAiCompatibleChatCompletionRequest(args) {
90
+ const messages = toOpenAiCompatibleMessages(args.messages);
84
91
  const body = {
85
92
  model: args.providerConfig.model,
86
- messages: toOpenAiCompatibleMessages(args.messages),
93
+ messages: requiresBareImageUrl({
94
+ endpoint: args.providerConfig.endpoint,
95
+ provider: args.providerConfig.provider,
96
+ model: args.providerConfig.model
97
+ }) ? toBareImageUrlMessages(messages) : messages,
87
98
  stream: args.stream ?? false,
88
99
  ...args.providerConfig.requestOptions,
89
100
  ...args.tools && args.tools.length > 0 ? { tools: args.tools } : {},
@@ -121,6 +132,9 @@ function parseOpenAiCompatibleChatCompletionResponse(args) {
121
132
  ...reasoning ? { reasoning_content: reasoning } : {},
122
133
  ...typeof choiceMessage?.reasoning_content === "string" && choiceMessage.reasoning_content ? { reasoning_content: choiceMessage.reasoning_content } : {},
123
134
  ...typeof rawFinishReason === "string" && rawFinishReason.length > 0 ? { finish_reason: rawFinishReason } : {},
135
+ // 非流式:拿到完整的 200 JSON body 本身就证明这次调用走完了,
136
+ // 不必等 finish_reason(有从不发它的上游,见 AgentRuntimeResult)。
137
+ stream_complete: true,
124
138
  usage: args.data?.usage,
125
139
  trace: args.trace
126
140
  };
@@ -137,7 +151,7 @@ async function readOpenAiCompatibleSseCompletion(args) {
137
151
  content: "",
138
152
  reasoning: "",
139
153
  usage: void 0,
140
- accumulatedToolCalls: {},
154
+ accumulatedToolCalls: createToolCallAccumulator(),
141
155
  thinkState: createThinkParserState(),
142
156
  onTextDelta: args.onTextDelta,
143
157
  onReasoningDelta: args.onReasoningDelta
@@ -152,7 +166,7 @@ async function readOpenAiCompatibleSseCompletion(args) {
152
166
  content: state.content,
153
167
  ...state.reasoning ? { reasoning_content: state.reasoning } : {},
154
168
  ...tool_calls.length > 0 ? { tool_calls } : {},
155
- ...state.usage ? { usage: state.usage } : {},
169
+ ...state.usage ? { usage: state.usage, stream_complete: true } : {},
156
170
  ...state.finishReason ? { finish_reason: state.finishReason } : {}
157
171
  };
158
172
  }
@@ -183,13 +197,12 @@ async function executeOpenAiCompatibleChatCompletion(args) {
183
197
  }
184
198
  }
185
199
  if (!res.ok) {
186
- const raw2 = await res.text().catch(() => "");
187
- let data2 = raw2;
188
- try {
189
- data2 = JSON.parse(raw2);
190
- } catch {
191
- }
192
- throw new Error(`local provider failed: HTTP ${res.status} ${JSON.stringify(data2)}`);
200
+ throw providerHttpFailure({
201
+ label: "local provider",
202
+ status: res.status,
203
+ raw: await res.text().catch(() => ""),
204
+ messages: args.messages
205
+ });
193
206
  }
194
207
  const contentType = res.headers.get("content-type") ?? "";
195
208
  const isEventStream = contentType.includes("text/event-stream");
@@ -206,6 +219,7 @@ async function executeOpenAiCompatibleChatCompletion(args) {
206
219
  ...streamed.tool_calls ? { tool_calls: streamed.tool_calls } : {},
207
220
  ...streamed.reasoning_content ? { reasoning_content: streamed.reasoning_content } : {},
208
221
  ...streamed.usage ? { usage: streamed.usage } : {},
222
+ ...streamed.stream_complete ? { stream_complete: true } : {},
209
223
  ...streamed.finish_reason ? { finish_reason: streamed.finish_reason } : {},
210
224
  trace: args.messages
211
225
  };
@@ -7,7 +7,7 @@ import {
7
7
  listUserRecordsFromServers,
8
8
  readDbRecordFromServers,
9
9
  readLiveDbRecordAfterTombstoneMerge
10
- } from "./chunk-7TNQ4ZZL.js";
10
+ } from "./chunk-P3J54V3I.js";
11
11
  import {
12
12
  buildDialogAttachmentPlan,
13
13
  extractFileContentIds
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  ANTIGRAVITY_CLOUD_CODE_BASE_URL,
3
3
  isAntigravityOAuthAgent
4
- } from "./chunk-Y3BLUPNS.js";
4
+ } from "./chunk-H5Y2H2N6.js";
5
5
  import {
6
6
  clipMultilineText,
7
7
  fetchAndSerializeTable,
8
8
  waitForAbortableDelay
9
- } from "./chunk-MRX4BSKQ.js";
9
+ } from "./chunk-SKURMCJF.js";
10
10
  import {
11
11
  createDrainExhaustedResponse,
12
12
  isCoreDrainingBody,
@@ -26,15 +26,17 @@ import {
26
26
  import {
27
27
  fetchAndCacheMessages,
28
28
  shouldUseServerProxy
29
- } from "./chunk-OSGJQTG6.js";
29
+ } from "./chunk-XNV42PMD.js";
30
30
  import {
31
31
  fetchServerSyncedCredential
32
- } from "./chunk-RGJFQERV.js";
32
+ } from "./chunk-HYJNPPQ6.js";
33
33
  import {
34
34
  buildCurrentTimeBlock,
35
35
  buildIdentityBlock,
36
- buildRuntimeGuidanceBlocks
37
- } from "./chunk-7HV5OHEM.js";
36
+ buildRuntimeGuidanceBlocks,
37
+ requiresBareImageUrl,
38
+ toBareImageUrlMessages
39
+ } from "./chunk-LUKQQJFL.js";
38
40
  import {
39
41
  buildProviderAuthHeaders,
40
42
  convertMessagesToResponsesInput,
@@ -42,13 +44,13 @@ import {
42
44
  preserveAgentStateFields,
43
45
  resolvePlatformChatCompletionsEndpoint,
44
46
  resolvePlatformResponsesEndpoint
45
- } from "./chunk-WO24IT3V.js";
47
+ } from "./chunk-TYPHUVK5.js";
46
48
  import {
47
49
  canonicalizeToolNames
48
50
  } from "./chunk-B4KT7RN2.js";
49
51
  import {
50
52
  estimateTokenCount
51
- } from "./chunk-NKD3Q4RN.js";
53
+ } from "./chunk-JFANOO7I.js";
52
54
  import {
53
55
  clampReasoningEffort,
54
56
  getModelConfig,
@@ -74,10 +76,10 @@ import {
74
76
  } from "./chunk-524BDL33.js";
75
77
  import {
76
78
  createSpaceKey
77
- } from "./chunk-3HHTVM6G.js";
79
+ } from "./chunk-WVTBAALN.js";
78
80
  import {
79
81
  read
80
- } from "./chunk-NITP2JDG.js";
82
+ } from "./chunk-VKG4HXYV.js";
81
83
  import {
82
84
  asNonEmptyStringArray
83
85
  } from "./chunk-I42VC5KR.js";
@@ -1124,6 +1126,9 @@ var normalizeChatCompletionsBodyForProvider = ({
1124
1126
  delete nextBody.max_tokens;
1125
1127
  }
1126
1128
  }
1129
+ if (Array.isArray(nextBody.messages) && requiresBareImageUrl({ provider, model })) {
1130
+ nextBody.messages = toBareImageUrlMessages(nextBody.messages);
1131
+ }
1127
1132
  return nextBody;
1128
1133
  };
1129
1134
 
@@ -778,7 +778,7 @@ var dbSlice = createSliceWithThunks({
778
778
  // 这里改成动态 import,运行期才解析,彻底断开这条边。
779
779
  share: create.asyncThunk(
780
780
  async (config, thunkApi) => {
781
- const { shareResourceAction } = await import("./action-RAXNQQKC.js");
781
+ const { shareResourceAction } = await import("./action-OTOWUMPW.js");
782
782
  return shareResourceAction(config, thunkApi);
783
783
  }
784
784
  ),
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  patch,
3
3
  read
4
- } from "./chunk-NITP2JDG.js";
4
+ } from "./chunk-VKG4HXYV.js";
5
5
  import {
6
6
  DEVICE_LOCAL_OWNER_ID,
7
7
  isDeviceLocalSpaceBody,