nolo-cli 0.180.0-alpha.2 → 0.182.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 (86) hide show
  1. package/{_executeModel-ACI2KGWO.js → _executeModel-ZMEMTJMS.js} +24 -24
  2. package/{agentDeleteCommand-LVSLONDD.js → agentDeleteCommand-VXMMVCHV.js} +32 -31
  3. package/{agentEmailCommands-BKH3Q6I6.js → agentEmailCommands-G3UR3SVL.js} +31 -30
  4. package/{agentListCommands-JPKRBHMP.js → agentListCommands-V2F7XVZN.js} +15 -14
  5. package/{agentMachineCommands-HRORJN73.js → agentMachineCommands-FALEGGEG.js} +9 -9
  6. package/{agentRecordCommands-OSZF2EHL.js → agentRecordCommands-HN7WNNGT.js} +30 -29
  7. package/{agentRunCommand-FCGNSB4D.js → agentRunCommand-N3RD7WQ2.js} +31 -30
  8. package/{agentRuntimeLocal-SWG5ULIJ.js → agentRuntimeLocal-B2CGM4VH.js} +6 -6
  9. package/{agentSlice-FCDRLXVA.js → agentSlice-NG7VBT4O.js} +1 -1
  10. package/{appDeleteCommands-YH3BYQYK.js → appDeleteCommands-2GVSRT6R.js} +14 -13
  11. package/{appDeployCommands-F44TNQJG.js → appDeployCommands-UJVGSH4V.js} +14 -13
  12. package/{appDeployStatusCommands-BFTGFVQY.js → appDeployStatusCommands-4UJDG7P3.js} +14 -13
  13. package/{appGetCommands-SFLFIXPW.js → appGetCommands-D5HZK3DJ.js} +14 -13
  14. package/{appListCommands-RUO5SEAJ.js → appListCommands-FAHI4R2I.js} +14 -13
  15. package/{authCommand-UIF5UTYV.js → authCommand-AX23Q2Q5.js} +6 -5
  16. package/{authCommands-BKDT4ZYB.js → authCommands-PIUTADO5.js} +2 -2
  17. package/{builtinSkillRegistry-MRI4FNCR.js → builtinSkillRegistry-HJCSXMKS.js} +4 -4
  18. package/{chromeOpsCommands-IWKUA4C3.js → chromeOpsCommands-2KFQEE3H.js} +24 -46
  19. package/{chunk-ZEQ6L6MZ.js → chunk-3FTJG5NU.js} +1 -1
  20. package/{chunk-CGKN34IJ.js → chunk-3YMDHQAK.js} +39 -39
  21. package/{chunk-6MXCQLLB.js → chunk-53HMDUG6.js} +14 -583
  22. package/{chunk-QOKJFYJK.js → chunk-7HZ23BLI.js} +11 -11
  23. package/{chunk-KUGOIFXV.js → chunk-AWFDDOVW.js} +3 -3
  24. package/{chunk-SGATEZV5.js → chunk-BNEHIKIR.js} +24 -24
  25. package/{chunk-PT6335JZ.js → chunk-E54QZNU3.js} +2 -2
  26. package/{chunk-QUCQVMYZ.js → chunk-EHPJFHFL.js} +7 -7
  27. package/{chunk-TCCBECTT.js → chunk-EUOPEEMO.js} +5 -5
  28. package/{chunk-EAWOT7M6.js → chunk-F2P6YUHC.js} +1 -1
  29. package/{chunk-COXNBVP7.js → chunk-G5IZWDSM.js} +8 -8
  30. package/chunk-G5LNJZJH.js +584 -0
  31. package/{chunk-HTSXDJHA.js → chunk-GQEQYXWV.js} +12 -12
  32. package/{chunk-OXYSTN6B.js → chunk-GTQKUQGF.js} +1 -1
  33. package/{chunk-WQAOAJ5Q.js → chunk-HRTEMYBI.js} +2 -2
  34. package/{chunk-H63VHVFY.js → chunk-J2EVUNED.js} +4 -4
  35. package/{chunk-GCAOOTIS.js → chunk-JGH3VOCR.js} +3 -3
  36. package/{chunk-MMKP2XWK.js → chunk-JX5XVFVW.js} +1 -1
  37. package/{chunk-NJI5HZQA.js → chunk-KBVF7LOK.js} +3 -3
  38. package/chunk-LKZPX6YH.js +0 -0
  39. package/{chunk-4FZUUCXQ.js → chunk-MMSZKZWA.js} +1 -1
  40. package/{chunk-CTEEJJVR.js → chunk-MPIAKYZ7.js} +1 -1
  41. package/{chunk-XJBWPOIL.js → chunk-NHBJHDVW.js} +1 -1
  42. package/{chunk-SK2UMOZC.js → chunk-NRYTWXXV.js} +1 -1
  43. package/{chunk-6PHS6ADB.js → chunk-ONFC3RLP.js} +2 -2
  44. package/{chunk-2D3YKEAQ.js → chunk-P7JNYLDW.js} +1 -1
  45. package/{chunk-TDX2L4W2.js → chunk-PS3GU7YU.js} +1857 -1138
  46. package/{chunk-HS7JBDUJ.js → chunk-QHFRRM5U.js} +3 -3
  47. package/{chunk-DTA4JVXW.js → chunk-RHFEDL32.js} +3 -3
  48. package/{chunk-PD4KNHVU.js → chunk-SO3N2323.js} +3 -3
  49. package/{chunk-OBKPOFOB.js → chunk-T5RLIVBZ.js} +10 -10
  50. package/{chunk-POYXVOYU.js → chunk-TQU64H2A.js} +2 -2
  51. package/{chunk-5LZBJZLT.js → chunk-TXJZ7QXG.js} +2 -2
  52. package/{chunk-DVSXZC7F.js → chunk-UU3QSEA5.js} +19 -19
  53. package/{chunk-4KDYRX3O.js → chunk-XYRSQHF2.js} +2 -2
  54. package/{chunk-YAN7XTXO.js → chunk-Y2CQS353.js} +5 -5
  55. package/{chunk-GHKEUJ6I.js → chunk-ZVVAK3DH.js} +2 -2
  56. package/{commandRegistry-UQ4GKJ5B.js → commandRegistry-LFXI3KRG.js} +80 -65
  57. package/{contentThunks-GZUPF67H.js → contentThunks-AH7QDS6H.js} +6 -6
  58. package/{cooldownCommands-NS63RGBO.js → cooldownCommands-QFV3ERZX.js} +14 -28
  59. package/{createAgentAutomationAction-ZOFCBZRE.js → createAgentAutomationAction-FAOPVXNF.js} +6 -6
  60. package/{createDialogAction-G7QCYQT7.js → createDialogAction-DBTKPCXV.js} +9 -9
  61. package/{createPageAction-Z6JQZYS5.js → createPageAction-PZGKZFPS.js} +8 -8
  62. package/{dialogCommands-MITLWDBY.js → dialogCommands-GQPHQ2U6.js} +10 -10
  63. package/{dialogSlice-PKFXK5WM.js → dialogSlice-VHGZCHAQ.js} +4 -4
  64. package/{docCreateCommands-G3S3LZMZ.js → docCreateCommands-CQHPL5IB.js} +18 -45
  65. package/{docDeleteCommands-MLRCMLVB.js → docDeleteCommands-Z5UPI5PX.js} +25 -45
  66. package/{docReadCommands-6A6SBCOP.js → docReadCommands-2AEKFEFV.js} +19 -35
  67. package/{docStore-NAEY4CEK.js → docStore-XGWH3T7Q.js} +1 -1
  68. package/{docUpdateCommands-UZQC2NDO.js → docUpdateCommands-FZD4GSGV.js} +26 -80
  69. package/{handleSendMessageAction-HUQLERJP.js → handleSendMessageAction-XTQQEVD4.js} +14 -14
  70. package/index.js +17 -7
  71. package/{localRuntimeAdapter-4DJDFM7A.js → localRuntimeAdapter-LXMUSNJ5.js} +28 -27
  72. package/{machineCommands-R2IP5OVT.js → machineCommands-AXD7ISGC.js} +33 -29
  73. package/{machineWsRunDispatch-CIJDSHTA.js → machineWsRunDispatch-PGB3VJGM.js} +29 -28
  74. package/package.json +1 -1
  75. package/{readlineWorkspace-YCNAWRDL.js → readlineWorkspace-IO45OJPW.js} +43 -41
  76. package/{runAgentClientLoop-K7WRMT27.js → runAgentClientLoop-2APY5UZL.js} +22 -22
  77. package/{secretCommands-7S6REMJV.js → secretCommands-XEQLKDB4.js} +33 -47
  78. package/{spaceCommands-L537SH5I.js → spaceCommands-LM74S5WK.js} +9 -9
  79. package/{streamAgentChatTurn-HKUZ7OCA.js → streamAgentChatTurn-Z3KS7XZL.js} +26 -26
  80. package/{tools-NS37KPGT.js → tools-VWAK7F7J.js} +18 -18
  81. package/{updateCommands-BXGFH4VX.js → updateCommands-KDYX32JR.js} +3 -1
  82. package/{updateDialogTitleAction-UUZ5HDM2.js → updateDialogTitleAction-WBIPSXFL.js} +6 -6
  83. package/windowsSelfUpdate-IYQK4IDS.js +14 -0
  84. package/{agentPullCommand-UXXV5KKW.js → agentPullCommand-7LHBOEYH.js} +1 -1
  85. package/{chunk-RV4DPEAM.js → chunk-XLQ646HU.js} +3 -3
  86. package/{workloadLifecycle-MZ2V5L43.js → workloadLifecycle-2F5YKFGW.js} +7 -7
@@ -5,37 +5,35 @@ import {
5
5
  pickDefined,
6
6
  printCliError,
7
7
  resolveCliContext
8
- } from "./chunk-H63VHVFY.js";
8
+ } from "./chunk-J2EVUNED.js";
9
9
  import {
10
10
  hasFlag,
11
11
  hasHelpArg
12
- } from "./chunk-4FZUUCXQ.js";
13
- import {
14
- t
15
- } from "./chunk-TDX2L4W2.js";
16
- import "./chunk-OXYSTN6B.js";
17
- import "./chunk-CTEEJJVR.js";
12
+ } from "./chunk-MMSZKZWA.js";
13
+ import "./chunk-LKZPX6YH.js";
14
+ import "./chunk-GTQKUQGF.js";
15
+ import "./chunk-MPIAKYZ7.js";
18
16
  import "./chunk-NBTY7YJF.js";
19
17
  import "./chunk-VF4K2QE6.js";
20
18
  import "./chunk-UAD2WT54.js";
21
- import "./chunk-COXNBVP7.js";
19
+ import "./chunk-G5IZWDSM.js";
22
20
  import "./chunk-KMSMIOOL.js";
23
21
  import "./chunk-ZNFJWEN4.js";
24
22
  import "./chunk-YO776XHS.js";
25
23
  import "./chunk-HNUWUO75.js";
24
+ import "./chunk-HIVDQPQR.js";
26
25
  import "./chunk-CHOZJMJS.js";
27
26
  import "./chunk-PWTNI4N7.js";
28
- import "./chunk-HIVDQPQR.js";
29
27
  import "./chunk-CR5WXQX7.js";
30
28
  import "./chunk-2WZXXAQD.js";
31
29
  import "./chunk-P2BGRAW7.js";
32
30
  import "./chunk-G6OOUQWJ.js";
33
31
  import "./chunk-56GBUMO5.js";
34
32
  import "./chunk-WJZOQR2J.js";
35
- import "./chunk-POYXVOYU.js";
33
+ import "./chunk-TQU64H2A.js";
36
34
  import "./chunk-JDCX5RWD.js";
37
35
  import "./chunk-E2BESSAW.js";
38
- import "./chunk-ZEQ6L6MZ.js";
36
+ import "./chunk-3FTJG5NU.js";
39
37
  import "./chunk-JLR5NWP2.js";
40
38
  import "./chunk-XAFCJN32.js";
41
39
  import "./chunk-2MBTWINN.js";
@@ -52,8 +50,8 @@ import "./chunk-7DPNBQSV.js";
52
50
  import "./chunk-ZWQUWF6W.js";
53
51
  import "./chunk-VEA7H5FG.js";
54
52
  import "./chunk-4VJAC32I.js";
55
- import "./chunk-XJBWPOIL.js";
56
- import "./chunk-MMKP2XWK.js";
53
+ import "./chunk-NHBJHDVW.js";
54
+ import "./chunk-JX5XVFVW.js";
57
55
  import "./chunk-LOEO7LRC.js";
58
56
  import "./chunk-M2EJHDJP.js";
59
57
  import "./chunk-5EMSBTQ6.js";
@@ -66,6 +64,9 @@ import {
66
64
  import "./chunk-OLZBQWZU.js";
67
65
  import "./chunk-LCBAMY2M.js";
68
66
  import "./chunk-Y6ROFCZO.js";
67
+ import {
68
+ t
69
+ } from "./chunk-PS3GU7YU.js";
69
70
  import "./chunk-HLAL63BZ.js";
70
71
  import "./chunk-JOUFPRE4.js";
71
72
  import "./chunk-WWC7I6TA.js";
@@ -46,18 +46,17 @@ import {
46
46
  validateXAIEndpoint,
47
47
  xaiOAuthDiscovery
48
48
  } from "./chunk-D2J22QSE.js";
49
- import {
50
- t
51
- } from "./chunk-TDX2L4W2.js";
49
+ import "./chunk-LKZPX6YH.js";
52
50
  import {
53
51
  defaultOpenBrowser
54
- } from "./chunk-RV4DPEAM.js";
52
+ } from "./chunk-XLQ646HU.js";
55
53
  import "./chunk-TY3TIUJK.js";
56
54
  import "./chunk-S73EPYNC.js";
57
55
  import "./chunk-ZEZC7IIM.js";
58
56
  import {
59
57
  extractGoogleValidationLink
60
58
  } from "./chunk-BMQ2MJUK.js";
59
+ import "./chunk-FDLDMJTM.js";
61
60
  import "./chunk-OW765XBU.js";
62
61
  import {
63
62
  buildDevinAuthUrl,
@@ -79,7 +78,6 @@ import {
79
78
  import "./chunk-5EMSBTQ6.js";
80
79
  import "./chunk-I42VC5KR.js";
81
80
  import "./chunk-U6VC4MU4.js";
82
- import "./chunk-FDLDMJTM.js";
83
81
  import "./chunk-GLKOYSRU.js";
84
82
  import {
85
83
  parseUserIdFromAuthToken
@@ -90,6 +88,9 @@ import {
90
88
  getProfileOAuthSync,
91
89
  saveProfileOAuthSync
92
90
  } from "./chunk-R5GO3YZP.js";
91
+ import {
92
+ t
93
+ } from "./chunk-PS3GU7YU.js";
93
94
  import "./chunk-JOUFPRE4.js";
94
95
  import {
95
96
  asOptionalFiniteNumber
@@ -7,15 +7,15 @@ import {
7
7
  runLogoutCommand,
8
8
  runWhoamiCommand,
9
9
  saveTokenLogin
10
- } from "./chunk-RV4DPEAM.js";
10
+ } from "./chunk-XLQ646HU.js";
11
11
  import "./chunk-TY3TIUJK.js";
12
12
  import "./chunk-S73EPYNC.js";
13
13
  import "./chunk-ZEZC7IIM.js";
14
+ import "./chunk-FDLDMJTM.js";
14
15
  import "./chunk-OW765XBU.js";
15
16
  import "./chunk-5EMSBTQ6.js";
16
17
  import "./chunk-I42VC5KR.js";
17
18
  import "./chunk-U6VC4MU4.js";
18
- import "./chunk-FDLDMJTM.js";
19
19
  import "./chunk-GLKOYSRU.js";
20
20
  import "./chunk-WACI5I6V.js";
21
21
  import "./chunk-OLZBQWZU.js";
@@ -7,14 +7,14 @@ import {
7
7
  resolveBuiltinSkillEntry,
8
8
  resolveBuiltinSkillPage,
9
9
  resolveBuiltinSkillSlug
10
- } from "./chunk-5LZBJZLT.js";
11
- import "./chunk-SK2UMOZC.js";
10
+ } from "./chunk-TXJZ7QXG.js";
11
+ import "./chunk-NRYTWXXV.js";
12
12
  import "./chunk-EUGTFFO6.js";
13
13
  import "./chunk-AETZ7AD6.js";
14
14
  import "./chunk-Y6ORVLSS.js";
15
15
  import "./chunk-KHCLMKZZ.js";
16
- import "./chunk-XJBWPOIL.js";
17
- import "./chunk-MMKP2XWK.js";
16
+ import "./chunk-NHBJHDVW.js";
17
+ import "./chunk-JX5XVFVW.js";
18
18
  import "./chunk-LOEO7LRC.js";
19
19
  import "./chunk-M2EJHDJP.js";
20
20
  import "./chunk-5EMSBTQ6.js";
@@ -8,6 +8,9 @@ import {
8
8
  } from "./chunk-WACI5I6V.js";
9
9
  import "./chunk-OLZBQWZU.js";
10
10
  import "./chunk-LCBAMY2M.js";
11
+ import {
12
+ t
13
+ } from "./chunk-PS3GU7YU.js";
11
14
  import "./chunk-KUG52IAP.js";
12
15
  import {
13
16
  toErrorMessage
@@ -50,7 +53,7 @@ function readIntOption(args, flag, usage) {
50
53
  if (raw === void 0) return void 0;
51
54
  const value = Number.parseInt(raw, 10);
52
55
  if (!Number.isFinite(value)) {
53
- throw new Error(`Invalid ${flag} <N>. Usage: ${usage}`);
56
+ throw new Error(t("cliBrowserInvalidNumber", flag, usage));
54
57
  }
55
58
  return value;
56
59
  }
@@ -59,24 +62,24 @@ function readNonNegativeIntOption(args, flag, usage) {
59
62
  const raw = equalsForm !== void 0 ? equalsForm.slice(`${flag}=`.length) : readOption(args, flag);
60
63
  if (raw === void 0) {
61
64
  if (args.includes(flag)) {
62
- throw new Error(`Invalid ${flag} <N>. Usage: ${usage}`);
65
+ throw new Error(t("cliBrowserInvalidNumber", flag, usage));
63
66
  }
64
67
  return void 0;
65
68
  }
66
69
  const trimmed = raw.trim();
67
70
  if (!/^\d+$/.test(trimmed)) {
68
- throw new Error(`Invalid ${flag} <N>. Usage: ${usage}`);
71
+ throw new Error(t("cliBrowserInvalidNumber", flag, usage));
69
72
  }
70
73
  const value = Number.parseInt(trimmed, 10);
71
74
  if (!Number.isFinite(value) || value < 0) {
72
- throw new Error(`Invalid ${flag} <N>. Usage: ${usage}`);
75
+ throw new Error(t("cliBrowserInvalidNumber", flag, usage));
73
76
  }
74
77
  return value;
75
78
  }
76
79
  function requireTabId(args, usage) {
77
80
  const tabId = readTrimmedOption(args, "--tab");
78
81
  if (!tabId) {
79
- throw new Error(`Missing required --tab <id>. Usage: ${usage}`);
82
+ throw new Error(t("cliBrowserMissingTab", usage));
80
83
  }
81
84
  return tabId;
82
85
  }
@@ -85,7 +88,7 @@ function requireTarget(args, usage) {
85
88
  const selector = readTrimmedOption(args, "--selector");
86
89
  if (!elementRef && !selector) {
87
90
  throw new Error(
88
- `Provide --ref <elementRef> (from read-page) or --selector <css>. Usage: ${usage}`
91
+ t("cliBrowserMissingTarget", usage)
89
92
  );
90
93
  }
91
94
  return {
@@ -109,7 +112,7 @@ var CHROME_OPS_SUBCOMMANDS = {
109
112
  payload: (args, usage) => {
110
113
  const url = readTrimmedOption(args, "--url");
111
114
  if (!url) {
112
- throw new Error(`Missing required --url <url>. Usage: ${usage}`);
115
+ throw new Error(t("cliBrowserMissingUrl", usage));
113
116
  }
114
117
  return { url, active: args.includes("--active") };
115
118
  }
@@ -150,7 +153,7 @@ var CHROME_OPS_SUBCOMMANDS = {
150
153
  payload: (args, usage) => {
151
154
  const text = readOption(args, "--text");
152
155
  if (text === void 0 || text.startsWith("--")) {
153
- throw new Error(`Missing required --text <text>. Usage: ${usage}`);
156
+ throw new Error(t("cliBrowserMissingText", usage));
154
157
  }
155
158
  return withApprovalId(args, {
156
159
  tabId: requireTabId(args, usage),
@@ -187,7 +190,7 @@ var CHROME_OPS_SUBCOMMANDS = {
187
190
  payload: (args, usage) => {
188
191
  const files = readAllOptions(args, "--file");
189
192
  if (files.length === 0) {
190
- throw new Error(`Missing required --file <path>. Usage: ${usage}`);
193
+ throw new Error(t("cliBrowserMissingFile", usage));
191
194
  }
192
195
  const target = requireTarget(args, usage);
193
196
  const tabId = requireTabId(args, usage);
@@ -205,7 +208,7 @@ var CHROME_OPS_SUBCOMMANDS = {
205
208
  payload: (args, usage) => {
206
209
  const key = readTrimmedOption(args, "--key");
207
210
  if (!key) {
208
- throw new Error(`Missing required --key <key>. Usage: ${usage}`);
211
+ throw new Error(t("cliBrowserMissingKey", usage));
209
212
  }
210
213
  return withApprovalId(args, { tabId: requireTabId(args, usage), key });
211
214
  }
@@ -217,15 +220,15 @@ var CHROME_OPS_SUBCOMMANDS = {
217
220
  const tabId = requireTabId(args, usage);
218
221
  const action = readTrimmedOption(args, "--action").toLowerCase();
219
222
  if (!action || !["click", "type", "press"].includes(action)) {
220
- throw new Error(`Invalid or missing --action <click|type|press>. Usage: ${usage}`);
223
+ throw new Error(t("cliBrowserAction", usage));
221
224
  }
222
225
  if (readOption(args, "--ref") !== void 0) {
223
- throw new Error(`--ref is not supported for action preparation; use --selector or --active. Usage: ${usage}`);
226
+ throw new Error(t("cliBrowserRefUnsupported", usage));
224
227
  }
225
228
  const active = args.includes("--active");
226
229
  const selector = readTrimmedOption(args, "--selector");
227
230
  if (!active && !selector && action !== "press") {
228
- throw new Error(`Provide --selector <css> or --active. Usage: ${usage}`);
231
+ throw new Error(t("cliBrowserSelector", usage));
229
232
  }
230
233
  const payload = {
231
234
  tabId,
@@ -236,7 +239,7 @@ var CHROME_OPS_SUBCOMMANDS = {
236
239
  if (action === "type") {
237
240
  const text = readOption(args, "--text");
238
241
  if (text === void 0 || text.startsWith("--")) {
239
- throw new Error(`Missing required --text <text> for type action. Usage: ${usage}`);
242
+ throw new Error(t("cliBrowserTypeText", usage));
240
243
  }
241
244
  payload.text = text;
242
245
  if (args.includes("--append")) {
@@ -245,7 +248,7 @@ var CHROME_OPS_SUBCOMMANDS = {
245
248
  } else if (action === "press") {
246
249
  const key = readTrimmedOption(args, "--key");
247
250
  if (!key) {
248
- throw new Error(`Missing required --key <key> for press action. Usage: ${usage}`);
251
+ throw new Error(t("cliBrowserPressKey", usage));
249
252
  }
250
253
  payload.key = key;
251
254
  }
@@ -302,38 +305,14 @@ var CHROME_OPS_SUBCOMMANDS = {
302
305
  };
303
306
  function renderChromeOpsHelp() {
304
307
  const lines = [
305
- "Operate the user's browser (Chrome or Firefox) through the Nolo Browser Connector",
306
- "(the desktop bridge; the same RPC the browser_* agent tools use \u2014 legacy `chrome_*` names still work).",
307
- "",
308
- "Usage:",
309
- " nolo browser <subcommand> [flags]",
310
- " nolo chrome <subcommand> [flags] # compatibility alias",
311
- "",
312
- "Subcommands:",
308
+ t("cliBrowserHelpIntro"),
313
309
  ...Object.values(CHROME_OPS_SUBCOMMANDS).map(
314
310
  (spec) => ` ${spec.usage.replace(/^nolo browser /, "")}`
315
311
  ),
316
- "",
317
- "Notes:",
318
- " --ref takes an elementRef copied from `nolo browser read-page` (revision-scoped,",
319
- " preferred over --selector); --selector takes a CSS selector.",
320
- " Actions the connector classifies as irreversible (pay / send / delete / publish / permission)",
321
- " open a confirmation request in the browser and return USER_APPROVAL_PENDING with an approvalId:",
322
- ' the user clicks "Allow once" there, then rerun the same command with --approval-id <id>.',
323
- " That id is not an authorization \u2014 only the lookup key for the decision the user already made.",
324
- " prepare-action prepares an immutable action challenge binding for host consent verification;",
325
- " it is strictly read-only, never executes mutations, and does not grant approval.",
326
- " read-console / read-network / upload work on Chrome only (Firefox lacks chrome.debugger).",
327
- " --browser chrome|firefox selects which connector endpoint serves the call (default",
328
- " auto-detects single online browser: chrome = 127.0.0.1:38947, firefox = 127.0.0.1:38948);",
329
- " the wrong browser is refused.",
330
- " Every subcommand prints the connector's raw JSON result; failures exit 1.",
331
- " Endpoint: NOLO_CHROME_CONNECTOR_RPC_URL or per-browser NOLO_CHROME_CONNECTOR_PORT /",
332
- " NOLO_FIREFOX_CONNECTOR_PORT (default http://127.0.0.1:38947/rpc)."
312
+ t("cliBrowserHelpNotes")
333
313
  ];
334
314
  return lines.join("\n");
335
315
  }
336
- var CHROME_OPS_HELP_TEXT = renderChromeOpsHelp();
337
316
  async function defaultProbeBrowser(browser) {
338
317
  try {
339
318
  const client = createChromeConnectorClient({
@@ -367,19 +346,19 @@ async function runChromeOpsCommand(subcommand, args, deps = {}) {
367
346
  };
368
347
  const spec = CHROME_OPS_SUBCOMMANDS[subcommand];
369
348
  if (!spec) {
370
- io.stderr(`Unknown browser subcommand "${subcommand}".
349
+ io.stderr(`${t("cliBrowserUnknown", subcommand)}
371
350
 
372
- ${CHROME_OPS_HELP_TEXT}`);
351
+ ${renderChromeOpsHelp()}`);
373
352
  return 1;
374
353
  }
375
354
  if (wantsHelp(args)) {
376
- io.stdout(CHROME_OPS_HELP_TEXT);
355
+ io.stdout(renderChromeOpsHelp());
377
356
  return 0;
378
357
  }
379
358
  const browserFlag = readBrowserFlag(args);
380
359
  if (browserFlag === null) {
381
360
  io.stderr(
382
- `Invalid --browser value: expected "chrome" or "firefox". Usage: ${spec.usage}`
361
+ t("cliBrowserBrowser", spec.usage)
383
362
  );
384
363
  return 1;
385
364
  }
@@ -493,7 +472,6 @@ ${CHROME_OPS_HELP_TEXT}`);
493
472
  return 0;
494
473
  }
495
474
  export {
496
- CHROME_OPS_HELP_TEXT,
497
475
  CHROME_OPS_SUBCOMMANDS,
498
476
  renderChromeOpsHelp,
499
477
  runChromeOpsCommand
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-KX6YBIHG.js";
4
4
  import {
5
5
  canonicalizeToolName
6
- } from "./chunk-XJBWPOIL.js";
6
+ } from "./chunk-NHBJHDVW.js";
7
7
  import {
8
8
  isOwnedAgentKey,
9
9
  ownedAgentKey,
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  assembleAgentDiscoveryResult,
3
3
  resolveDiscoveryScope
4
- } from "./chunk-2D3YKEAQ.js";
4
+ } from "./chunk-P7JNYLDW.js";
5
5
  import {
6
6
  fetchWithTransientRetry
7
7
  } from "./chunk-KFHREHUQ.js";
@@ -9,6 +9,18 @@ import {
9
9
  getUserDataItemTimestamp,
10
10
  mergeAndDedupUserData
11
11
  } from "./chunk-OXME3PEE.js";
12
+ import {
13
+ addMemberSpace,
14
+ fetchAuthoritativeRemoteSpace,
15
+ getAllMemberSpaces,
16
+ removeMemberSpace,
17
+ selectSpaceRemoteAuth,
18
+ setMembershipLoaded,
19
+ setMembershipLoading,
20
+ setMembershipRejected,
21
+ setSpaceInitialized,
22
+ updateMemberSpaceName
23
+ } from "./chunk-BAWAKW7X.js";
12
24
  import {
13
25
  ToolResultError,
14
26
  clipMultilineText,
@@ -20,7 +32,7 @@ import {
20
32
  toolRunUpdated,
21
33
  uiCardFallback,
22
34
  waitForAbortableDelay
23
- } from "./chunk-NJI5HZQA.js";
35
+ } from "./chunk-KBVF7LOK.js";
24
36
  import {
25
37
  isGatewayHttpStatus
26
38
  } from "./chunk-NF64D32W.js";
@@ -43,6 +55,9 @@ import {
43
55
  getToolBaseUrl,
44
56
  getToolRequestContext
45
57
  } from "./chunk-MYOH447Z.js";
58
+ import {
59
+ setDialogExtraReferencesAction
60
+ } from "./chunk-IF7V3CBU.js";
46
61
  import {
47
62
  readDocFunc,
48
63
  readDocFunctionSchema,
@@ -64,25 +79,10 @@ import {
64
79
  } from "./chunk-VF4K2QE6.js";
65
80
  import {
66
81
  createDocState
67
- } from "./chunk-4KDYRX3O.js";
68
- import {
69
- addMemberSpace,
70
- fetchAuthoritativeRemoteSpace,
71
- getAllMemberSpaces,
72
- removeMemberSpace,
73
- selectSpaceRemoteAuth,
74
- setMembershipLoaded,
75
- setMembershipLoading,
76
- setMembershipRejected,
77
- setSpaceInitialized,
78
- updateMemberSpaceName
79
- } from "./chunk-BAWAKW7X.js";
82
+ } from "./chunk-XYRSQHF2.js";
80
83
  import {
81
84
  createDialogAction
82
- } from "./chunk-PD4KNHVU.js";
83
- import {
84
- setDialogExtraReferencesAction
85
- } from "./chunk-IF7V3CBU.js";
85
+ } from "./chunk-SO3N2323.js";
86
86
  import {
87
87
  shareResourceAction
88
88
  } from "./chunk-YPG7TUQD.js";
@@ -102,7 +102,17 @@ import {
102
102
  updateContentCategory,
103
103
  updateContentTitle,
104
104
  writeStoredCollapsedCategories
105
- } from "./chunk-TCCBECTT.js";
105
+ } from "./chunk-EUOPEEMO.js";
106
+ import {
107
+ getCurrentSpaceId,
108
+ getCurrentSpaceIdRaw,
109
+ getCurrentSpaceRaw,
110
+ getViewMode,
111
+ setCurrentSpace,
112
+ setCurrentSpaceBoth,
113
+ setViewMode,
114
+ updateCurrentSpaceIfMatch
115
+ } from "./chunk-ZJ7UHBJS.js";
106
116
  import {
107
117
  buildDatabaseFileContentUrl,
108
118
  deleteDialog,
@@ -115,7 +125,7 @@ import {
115
125
  selectMsgById,
116
126
  uiAskChoiceFunc,
117
127
  uiAskChoiceFunctionSchema
118
- } from "./chunk-HTSXDJHA.js";
128
+ } from "./chunk-GQEQYXWV.js";
119
129
  import {
120
130
  buildMediaToolConfirmation,
121
131
  normalizeMediaConfirmExecutionRevision
@@ -126,17 +136,7 @@ import {
126
136
  runLlm,
127
137
  streamAgentChatTurn,
128
138
  updateAgent
129
- } from "./chunk-HS7JBDUJ.js";
130
- import {
131
- getCurrentSpaceId,
132
- getCurrentSpaceIdRaw,
133
- getCurrentSpaceRaw,
134
- getViewMode,
135
- setCurrentSpace,
136
- setCurrentSpaceBoth,
137
- setViewMode,
138
- updateCurrentSpaceIfMatch
139
- } from "./chunk-ZJ7UHBJS.js";
139
+ } from "./chunk-QHFRRM5U.js";
140
140
  import {
141
141
  getActiveDialogKey,
142
142
  selectCurrentDialogKey,
@@ -199,10 +199,10 @@ import {
199
199
  import {
200
200
  listBuiltinSkills,
201
201
  resolveBuiltinSkillByName
202
- } from "./chunk-5LZBJZLT.js";
202
+ } from "./chunk-TXJZ7QXG.js";
203
203
  import {
204
204
  CAPABILITY_PACKS
205
- } from "./chunk-SK2UMOZC.js";
205
+ } from "./chunk-NRYTWXXV.js";
206
206
  import {
207
207
  buildSkillDocMarkdown,
208
208
  normalizeSkillModalities,
@@ -229,7 +229,7 @@ import {
229
229
  resolveNoloDialogInput,
230
230
  resolveReadOnlyToolConstraints,
231
231
  verifyNoloDialogSubjectRefQuery
232
- } from "./chunk-ZEQ6L6MZ.js";
232
+ } from "./chunk-3FTJG5NU.js";
233
233
  import {
234
234
  clipCompactText
235
235
  } from "./chunk-5MMAK75Q.js";
@@ -248,14 +248,14 @@ import {
248
248
  import {
249
249
  canonicalizeToolName,
250
250
  canonicalizeToolNames
251
- } from "./chunk-XJBWPOIL.js";
251
+ } from "./chunk-NHBJHDVW.js";
252
252
  import {
253
253
  CHROME_CONNECTOR_ACCEPTED_TOOL_NAMES,
254
254
  chromeConnectorToolSchemas,
255
255
  chromeConnectorUnavailableFunc,
256
256
  getChromeConnectorToolBehavior,
257
257
  getChromeConnectorToolDefaultConsent
258
- } from "./chunk-MMKP2XWK.js";
258
+ } from "./chunk-JX5XVFVW.js";
259
259
  import {
260
260
  extractCustomId
261
261
  } from "./chunk-M2EJHDJP.js";
@@ -3882,7 +3882,7 @@ async function deleteDialogsFunc(args, thunkApi) {
3882
3882
  const deletedDialogIds = [];
3883
3883
  const deletedDialogKeys = [];
3884
3884
  const failures = [];
3885
- const { deleteDialog: deleteDialog2 } = await import("./dialogSlice-PKFXK5WM.js");
3885
+ const { deleteDialog: deleteDialog2 } = await import("./dialogSlice-VHGZCHAQ.js");
3886
3886
  for (const target of targets) {
3887
3887
  try {
3888
3888
  await thunkApi.dispatch(deleteDialog2(target.dbKey)).unwrap();
@@ -18563,7 +18563,7 @@ async function updateDocFunc(args, thunkApi) {
18563
18563
  updated_at: (/* @__PURE__ */ new Date()).toISOString()
18564
18564
  };
18565
18565
  await dispatch(write({ data: updatedPageData, customKey: id })).unwrap();
18566
- const { getDocState, applyExternalDocUpdate } = await import("./docStore-NAEY4CEK.js");
18566
+ const { getDocState, applyExternalDocUpdate } = await import("./docStore-XGWH3T7Q.js");
18567
18567
  if (getDocState().pageKey === id) {
18568
18568
  applyExternalDocUpdate({
18569
18569
  slateData: finalSlateData,