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
@@ -1,10 +1,11 @@
1
1
  import {
2
2
  fetchCiStatus
3
3
  } from "./chunk-VHGD6FHV.js";
4
+ import "./chunk-LKZPX6YH.js";
4
5
  import {
5
6
  cliCommandDescription,
6
7
  t
7
- } from "./chunk-TDX2L4W2.js";
8
+ } from "./chunk-PS3GU7YU.js";
8
9
  import "./chunk-4VNS5WPM.js";
9
10
 
10
11
  // packages/cli/cliCommandDispatch.ts
@@ -110,7 +111,7 @@ function createDaemonShortcutCommand(path, description, command) {
110
111
  // packages/cli/agentInternalCommandEntries.ts
111
112
  function getAgentInternalCommandEntries() {
112
113
  const createAgentRunCommand = (path, description) => createContextCommand(path, description, async (args, ctx) => {
113
- const { runAgentRunCommand } = await import("./agentRunCommand-FCGNSB4D.js");
114
+ const { runAgentRunCommand } = await import("./agentRunCommand-N3RD7WQ2.js");
114
115
  return runAgentRunCommand(args, {
115
116
  env: ctx.env,
116
117
  scriptDir: ctx.scriptDir,
@@ -122,11 +123,11 @@ function getAgentInternalCommandEntries() {
122
123
  createAgentRunCommand(["run"], "Run a no-login local agent in this workspace"),
123
124
  createAgentRunCommand(["chat"], "Chat with an agent"),
124
125
  createEnvCommand(["agent", "list"], "List owned agents", async (args, deps) => {
125
- const { runAgentListCommand } = await import("./agentListCommands-JPKRBHMP.js");
126
+ const { runAgentListCommand } = await import("./agentListCommands-V2F7XVZN.js");
126
127
  return runAgentListCommand(args, deps);
127
128
  }),
128
129
  createEnvCommand(["agent", "create"], "Create a new agent", async (args, deps) => {
129
- const { runAgentCreateCommand } = await import("./agentRecordCommands-OSZF2EHL.js");
130
+ const { runAgentCreateCommand } = await import("./agentRecordCommands-HN7WNNGT.js");
130
131
  return runAgentCreateCommand(args, deps);
131
132
  }),
132
133
  createEnvCommand(["agent", "models"], "List models: --preset <id> (server discovery, exit 1 on static fallback) or --url <base> --api-key <key> (OpenAI-compatible /models)", async (args, deps) => {
@@ -138,11 +139,11 @@ function getAgentInternalCommandEntries() {
138
139
  return runAgentProvidersCommand(args, deps);
139
140
  }),
140
141
  createEnvCommand(["agent", "pull"], "Cache an agent for local runs", async (args, deps) => {
141
- const { runAgentPullCommand } = await import("./agentPullCommand-UXXV5KKW.js");
142
+ const { runAgentPullCommand } = await import("./agentPullCommand-7LHBOEYH.js");
142
143
  return runAgentPullCommand(args, deps);
143
144
  }),
144
145
  createEnvCommand(["agent", "read"], "Read a single agent", async (args, deps) => {
145
- const { runAgentReadCommand } = await import("./agentRecordCommands-OSZF2EHL.js");
146
+ const { runAgentReadCommand } = await import("./agentRecordCommands-HN7WNNGT.js");
146
147
  return runAgentReadCommand(args, deps);
147
148
  }),
148
149
  createAgentRunCommand(["agent", "run"], "Run an agent"),
@@ -171,31 +172,31 @@ function getAgentInternalCommandEntries() {
171
172
  return runSetupOfflineMarxistsAgentCommand(args, deps);
172
173
  }),
173
174
  createEnvCommand(["agent", "update"], "Update agent fields", async (args, deps) => {
174
- const { runAgentUpdateCommand } = await import("./agentRecordCommands-OSZF2EHL.js");
175
+ const { runAgentUpdateCommand } = await import("./agentRecordCommands-HN7WNNGT.js");
175
176
  return runAgentUpdateCommand(args, deps);
176
177
  }),
177
178
  createEnvCommand(["agent", "email", "provision"], "Provision a controlled inbox for an agent", async (args, deps) => {
178
- const { runAgentEmailProvisionCommand } = await import("./agentEmailCommands-BKH3Q6I6.js");
179
+ const { runAgentEmailProvisionCommand } = await import("./agentEmailCommands-G3UR3SVL.js");
179
180
  return runAgentEmailProvisionCommand(args, deps);
180
181
  }),
181
182
  createEnvCommand(["agent", "email", "bind"], "Bind an existing email address to an agent", async (args, deps) => {
182
- const { runAgentEmailBindCommand } = await import("./agentEmailCommands-BKH3Q6I6.js");
183
+ const { runAgentEmailBindCommand } = await import("./agentEmailCommands-G3UR3SVL.js");
183
184
  return runAgentEmailBindCommand(args, deps);
184
185
  }),
185
186
  createEnvCommand(["agent", "email", "transfer"], "Transfer an email identity from one agent to another (cross-account)", async (args, deps) => {
186
- const { runAgentEmailTransferCommand } = await import("./agentEmailCommands-BKH3Q6I6.js");
187
+ const { runAgentEmailTransferCommand } = await import("./agentEmailCommands-G3UR3SVL.js");
187
188
  return runAgentEmailTransferCommand(args, deps);
188
189
  }),
189
190
  createEnvCommand(
190
191
  ["agent", "email", "create-and-provision"],
191
192
  "Create an agent and provision its controlled inbox",
192
193
  async (args, deps) => {
193
- const { runAgentEmailCreateAndProvisionCommand } = await import("./agentEmailCommands-BKH3Q6I6.js");
194
+ const { runAgentEmailCreateAndProvisionCommand } = await import("./agentEmailCommands-G3UR3SVL.js");
194
195
  return runAgentEmailCreateAndProvisionCommand(args, deps);
195
196
  }
196
197
  ),
197
198
  createEnvCommand(["agent", "delete"], "Hard-delete an agent's private and public records", async (args, deps) => {
198
- const { runAgentDeleteCommand } = await import("./agentDeleteCommand-LVSLONDD.js");
199
+ const { runAgentDeleteCommand } = await import("./agentDeleteCommand-VXMMVCHV.js");
199
200
  return runAgentDeleteCommand(args, deps);
200
201
  }),
201
202
  createEnvCommand(["agent", "grant"], "Grant another user access to this agent's owner credentials", async (args, deps) => {
@@ -211,15 +212,15 @@ function getAgentInternalCommandEntries() {
211
212
  return runAgentRevokeGrantCommand(args, deps);
212
213
  }),
213
214
  createEnvCommand(["agent", "bind-current"], "Bind an agent to this machine", async (args, deps) => {
214
- const { runAgentBindCurrentCommand } = await import("./agentMachineCommands-HRORJN73.js");
215
+ const { runAgentBindCurrentCommand } = await import("./agentMachineCommands-FALEGGEG.js");
215
216
  return runAgentBindCurrentCommand(args, deps);
216
217
  }),
217
218
  createEnvCommand(["agent", "smoke-current"], "Smoke test a bound agent through this machine", async (args, deps) => {
218
- const { runAgentSmokeCurrentCommand } = await import("./agentMachineCommands-HRORJN73.js");
219
+ const { runAgentSmokeCurrentCommand } = await import("./agentMachineCommands-FALEGGEG.js");
219
220
  return runAgentSmokeCurrentCommand(args, deps);
220
221
  }),
221
222
  createEnvCommand(["agent", "runtime-doctor"], "Diagnose current machine runtime compatibility", async (args, deps) => {
222
- const { runAgentRuntimeDoctorCommand } = await import("./agentMachineCommands-HRORJN73.js");
223
+ const { runAgentRuntimeDoctorCommand } = await import("./agentMachineCommands-FALEGGEG.js");
223
224
  return runAgentRuntimeDoctorCommand(args, deps);
224
225
  }),
225
226
  createAgentRunCommand(["agent", "chat"], "Chat with an agent")
@@ -230,23 +231,23 @@ function getAgentInternalCommandEntries() {
230
231
  function getAppInternalCommandEntries() {
231
232
  return [
232
233
  createEnvCommand(["app", "list"], "List your apps", async (args, deps) => {
233
- const { runAppListCommand } = await import("./appListCommands-RUO5SEAJ.js");
234
+ const { runAppListCommand } = await import("./appListCommands-FAHI4R2I.js");
234
235
  return runAppListCommand(args, deps);
235
236
  }),
236
237
  createEnvCommand(["app", "get"], "Get app details", async (args, deps) => {
237
- const { runAppGetCommand } = await import("./appGetCommands-SFLFIXPW.js");
238
+ const { runAppGetCommand } = await import("./appGetCommands-D5HZK3DJ.js");
238
239
  return runAppGetCommand(args, deps);
239
240
  }),
240
241
  createEnvCommand(["app", "deploy"], "Deploy an app", async (args, deps) => {
241
- const { runAppDeployCommand } = await import("./appDeployCommands-F44TNQJG.js");
242
+ const { runAppDeployCommand } = await import("./appDeployCommands-UJVGSH4V.js");
242
243
  return runAppDeployCommand(args, deps);
243
244
  }),
244
245
  createEnvCommand(["app", "deploy", "status"], "Check app deploy status", async (args, deps) => {
245
- const { runAppDeployStatusCommand } = await import("./appDeployStatusCommands-BFTGFVQY.js");
246
+ const { runAppDeployStatusCommand } = await import("./appDeployStatusCommands-4UJDG7P3.js");
246
247
  return runAppDeployStatusCommand(args, deps);
247
248
  }),
248
249
  createEnvCommand(["app", "delete"], "Delete an app", async (args, deps) => {
249
- const { runAppDeleteCommand } = await import("./appDeleteCommands-YH3BYQYK.js");
250
+ const { runAppDeleteCommand } = await import("./appDeleteCommands-2GVSRT6R.js");
250
251
  return runAppDeleteCommand(args, deps);
251
252
  })
252
253
  ];
@@ -311,7 +312,7 @@ function getBrowserFamilyEntries() {
311
312
  ),
312
313
  ...CHROME_OPS_SUBCOMMANDS.map(
313
314
  ({ name, summary }) => createArgsCommand(["browser", name], summary, async (args) => {
314
- const { runChromeOpsCommand } = await import("./chromeOpsCommands-IWKUA4C3.js");
315
+ const { runChromeOpsCommand } = await import("./chromeOpsCommands-2KFQEE3H.js");
315
316
  return runChromeOpsCommand(name, args);
316
317
  })
317
318
  )
@@ -378,27 +379,27 @@ function getCiInternalCommandEntries() {
378
379
  function getDialogInternalCommandEntries() {
379
380
  return [
380
381
  createEnvCommand(["dialog", "search"], "Search dialog messages across dialogs", async (args, deps) => {
381
- const { runDialogSearchCommand } = await import("./dialogCommands-MITLWDBY.js");
382
+ const { runDialogSearchCommand } = await import("./dialogCommands-GQPHQ2U6.js");
382
383
  return runDialogSearchCommand(args, deps);
383
384
  }),
384
385
  createEnvCommand(["dialog", "list"], "List dialogs (default --limit 50; --all/--limit 0 full; --jsonl streams)", async (args, deps) => {
385
- const { runDialogListCommand } = await import("./dialogCommands-MITLWDBY.js");
386
+ const { runDialogListCommand } = await import("./dialogCommands-GQPHQ2U6.js");
386
387
  return runDialogListCommand(args, deps);
387
388
  }),
388
389
  createEnvCommand(["dialog", "delete"], "Delete one or more dialogs", async (args, deps) => {
389
- const { runDialogDeleteCommand } = await import("./dialogCommands-MITLWDBY.js");
390
+ const { runDialogDeleteCommand } = await import("./dialogCommands-GQPHQ2U6.js");
390
391
  return runDialogDeleteCommand(args, deps);
391
392
  }),
392
393
  createEnvCommand(["dialog", "query"], "Query dialogs by subject refs (default --limit 50; --all full; --jsonl streams)", async (args, deps) => {
393
- const { runDialogQueryCommand } = await import("./dialogCommands-MITLWDBY.js");
394
+ const { runDialogQueryCommand } = await import("./dialogCommands-GQPHQ2U6.js");
394
395
  return runDialogQueryCommand(args, deps);
395
396
  }),
396
397
  createEnvCommand(["dialog", "read"], "Read a dialog", async (args, deps) => {
397
- const { runDialogReadCommand } = await import("./dialogCommands-MITLWDBY.js");
398
+ const { runDialogReadCommand } = await import("./dialogCommands-GQPHQ2U6.js");
398
399
  return runDialogReadCommand(args, deps);
399
400
  }),
400
401
  createEnvCommand(["dialog", "status"], "Read compact dialog status", async (args, deps) => {
401
- const { runDialogStatusCommand } = await import("./dialogCommands-MITLWDBY.js");
402
+ const { runDialogStatusCommand } = await import("./dialogCommands-GQPHQ2U6.js");
402
403
  return runDialogStatusCommand(args, deps);
403
404
  })
404
405
  ];
@@ -408,39 +409,39 @@ function getDialogInternalCommandEntries() {
408
409
  function getDocInternalCommandEntries() {
409
410
  return [
410
411
  createEnvCommand(["doc", "create"], "Create a normal doc", async (args, deps) => {
411
- const { runDocCreateCommand } = await import("./docCreateCommands-G3S3LZMZ.js");
412
+ const { runDocCreateCommand } = await import("./docCreateCommands-CQHPL5IB.js");
412
413
  return runDocCreateCommand(args, deps);
413
414
  }),
414
415
  createEnvCommand(["doc", "read"], "Read a normal doc", async (args, deps) => {
415
- const { runDocReadCommand } = await import("./docReadCommands-6A6SBCOP.js");
416
+ const { runDocReadCommand } = await import("./docReadCommands-2AEKFEFV.js");
416
417
  return runDocReadCommand(args, deps);
417
418
  }),
418
419
  createEnvCommand(["doc", "update"], "Update a normal doc", async (args, deps) => {
419
- const { runDocUpdateCommand } = await import("./docUpdateCommands-UZQC2NDO.js");
420
+ const { runDocUpdateCommand } = await import("./docUpdateCommands-FZD4GSGV.js");
420
421
  return runDocUpdateCommand(args, deps);
421
422
  }),
422
423
  createEnvCommand(["doc", "delete"], "Delete a normal doc", async (args, deps) => {
423
- const { runDocDeleteCommand } = await import("./docDeleteCommands-MLRCMLVB.js");
424
+ const { runDocDeleteCommand } = await import("./docDeleteCommands-Z5UPI5PX.js");
424
425
  return runDocDeleteCommand(args, deps);
425
426
  }),
426
427
  createEnvCommand(["skill-doc", "create"], "Create a skill-backed doc", async (args, deps) => {
427
- const { runSkillDocCreateCommand } = await import("./docCreateCommands-G3S3LZMZ.js");
428
+ const { runSkillDocCreateCommand } = await import("./docCreateCommands-CQHPL5IB.js");
428
429
  return runSkillDocCreateCommand(args, deps);
429
430
  }),
430
431
  createEnvCommand(["skill", "create-doc"], "Create a skill-backed doc", async (args, deps) => {
431
- const { runSkillDocCreateCommand } = await import("./docCreateCommands-G3S3LZMZ.js");
432
+ const { runSkillDocCreateCommand } = await import("./docCreateCommands-CQHPL5IB.js");
432
433
  return runSkillDocCreateCommand(args, deps);
433
434
  }),
434
435
  createEnvCommand(["skill-doc", "read"], "Read a skill doc", async (args, deps) => {
435
- const { runSkillDocReadCommand } = await import("./docReadCommands-6A6SBCOP.js");
436
+ const { runSkillDocReadCommand } = await import("./docReadCommands-2AEKFEFV.js");
436
437
  return runSkillDocReadCommand(args, deps);
437
438
  }),
438
439
  createEnvCommand(["skill-doc", "update"], "Update a skill doc", async (args, deps) => {
439
- const { runSkillDocUpdateCommand } = await import("./docUpdateCommands-UZQC2NDO.js");
440
+ const { runSkillDocUpdateCommand } = await import("./docUpdateCommands-FZD4GSGV.js");
440
441
  return runSkillDocUpdateCommand(args, deps);
441
442
  }),
442
443
  createEnvCommand(["skill-doc", "delete"], "Delete a skill doc", async (args, deps) => {
443
- const { runSkillDocDeleteCommand } = await import("./docDeleteCommands-MLRCMLVB.js");
444
+ const { runSkillDocDeleteCommand } = await import("./docDeleteCommands-Z5UPI5PX.js");
444
445
  return runSkillDocDeleteCommand(args, deps);
445
446
  })
446
447
  ];
@@ -468,19 +469,19 @@ function getMemoryInternalCommandEntries() {
468
469
  function getSpaceInternalCommandEntries() {
469
470
  return [
470
471
  createEnvCommand(["space", "create"], "Create a space", async (args, deps) => {
471
- const { runSpaceCreateCommand } = await import("./spaceCommands-L537SH5I.js");
472
+ const { runSpaceCreateCommand } = await import("./spaceCommands-LM74S5WK.js");
472
473
  return runSpaceCreateCommand(args, deps);
473
474
  }),
474
475
  createEnvCommand(["space", "invite"], "Invite an existing user to a space", async (args, deps) => {
475
- const { runSpaceInviteCommand } = await import("./spaceCommands-L537SH5I.js");
476
+ const { runSpaceInviteCommand } = await import("./spaceCommands-LM74S5WK.js");
476
477
  return runSpaceInviteCommand(args, deps);
477
478
  }),
478
479
  createEnvCommand(["space", "accept-invite"], "Accept a space invite", async (args, deps) => {
479
- const { runSpaceAcceptInviteCommand } = await import("./spaceCommands-L537SH5I.js");
480
+ const { runSpaceAcceptInviteCommand } = await import("./spaceCommands-LM74S5WK.js");
480
481
  return runSpaceAcceptInviteCommand(args, deps);
481
482
  }),
482
483
  createEnvCommand(["space", "upload"], "Upload a file to a space", async (args, deps) => {
483
- const { runSpaceUploadCommand } = await import("./spaceCommands-L537SH5I.js");
484
+ const { runSpaceUploadCommand } = await import("./spaceCommands-LM74S5WK.js");
484
485
  return runSpaceUploadCommand(args, deps);
485
486
  })
486
487
  ];
@@ -490,59 +491,59 @@ function getSpaceInternalCommandEntries() {
490
491
  function getSystemInternalCommandEntries(renderHelpText2) {
491
492
  return [
492
493
  createContextCommand(["auth", "cooldown"], "List / clear credential availability cooldowns", async (_args, ctx) => {
493
- const { runAuthCooldownCommand } = await import("./cooldownCommands-NS63RGBO.js");
494
+ const { runAuthCooldownCommand } = await import("./cooldownCommands-QFV3ERZX.js");
494
495
  return runAuthCooldownCommand(_args, ctx.env);
495
496
  }),
496
497
  createArgsCommand(["auth", "cloudflare"], "Authorize Cloudflare OAuth", async (args) => {
497
- const { runAuthCloudflareCommand } = await import("./authCommand-UIF5UTYV.js");
498
+ const { runAuthCloudflareCommand } = await import("./authCommand-AX23Q2Q5.js");
498
499
  return runAuthCloudflareCommand(args);
499
500
  }),
500
501
  createArgsCommand(["auth", "chatgpt"], "Authorize ChatGPT / OpenAI Codex OAuth", async (args) => {
501
- const { runAuthChatgptCommand } = await import("./authCommand-UIF5UTYV.js");
502
+ const { runAuthChatgptCommand } = await import("./authCommand-AX23Q2Q5.js");
502
503
  return runAuthChatgptCommand(args);
503
504
  }),
504
505
  createArgsCommand(["auth", "xai"], "Authorize xAI Grok OAuth (SuperGrok subscription)", async (args) => {
505
- const { runAuthXaiCommand } = await import("./authCommand-UIF5UTYV.js");
506
+ const { runAuthXaiCommand } = await import("./authCommand-AX23Q2Q5.js");
506
507
  return runAuthXaiCommand(args);
507
508
  }),
508
509
  createArgsCommand(["auth", "antigravity"], "Authorize Google Antigravity OAuth", async (args) => {
509
- const { runAuthAntigravityCommand } = await import("./authCommand-UIF5UTYV.js");
510
+ const { runAuthAntigravityCommand } = await import("./authCommand-AX23Q2Q5.js");
510
511
  return runAuthAntigravityCommand(args);
511
512
  }),
512
513
  createArgsCommand(["auth", "claude"], "Authorize Claude Pro/Max OAuth", async (args) => {
513
- const { runAuthClaudeCommand } = await import("./authCommand-UIF5UTYV.js");
514
+ const { runAuthClaudeCommand } = await import("./authCommand-AX23Q2Q5.js");
514
515
  return runAuthClaudeCommand(args);
515
516
  }),
516
517
  createArgsCommand(["auth", "cursor"], "Authorize Cursor Pro OAuth", async (args) => {
517
- const { runAuthCursorCommand } = await import("./authCommand-UIF5UTYV.js");
518
+ const { runAuthCursorCommand } = await import("./authCommand-AX23Q2Q5.js");
518
519
  return runAuthCursorCommand(args);
519
520
  }),
520
521
  createArgsCommand(["auth", "devin"], "Authorize Devin OAuth (Free SWE-2)", async (args) => {
521
- const { runAuthDevinCommand } = await import("./authCommand-UIF5UTYV.js");
522
+ const { runAuthDevinCommand } = await import("./authCommand-AX23Q2Q5.js");
522
523
  return runAuthDevinCommand(args);
523
524
  }),
524
525
  createArgsCommand(["login"], "Log in to Nolo", async (args) => {
525
- const { runLoginCommand } = await import("./authCommands-BKDT4ZYB.js");
526
+ const { runLoginCommand } = await import("./authCommands-PIUTADO5.js");
526
527
  return runLoginCommand(args);
527
528
  }),
528
529
  createContextCommand(["logout"], "Log out of Nolo", async (args, ctx) => {
529
- const { runLogoutCommand } = await import("./authCommands-BKDT4ZYB.js");
530
+ const { runLogoutCommand } = await import("./authCommands-PIUTADO5.js");
530
531
  return runLogoutCommand({ args, env: ctx.env });
531
532
  }),
532
533
  createContextCommand(["whoami"], "Show the current login state", async (args, ctx) => {
533
- const { runWhoamiCommand } = await import("./authCommands-BKDT4ZYB.js");
534
+ const { runWhoamiCommand } = await import("./authCommands-PIUTADO5.js");
534
535
  return runWhoamiCommand({ args, env: ctx.env });
535
536
  }),
536
537
  createEntrypointEnvCommand(["connect"], "Send machine heartbeats or hold a connector websocket", async (args, deps) => {
537
- const { runMachineConnectCommand } = await import("./machineCommands-R2IP5OVT.js");
538
+ const { runMachineConnectCommand } = await import("./machineCommands-AXD7ISGC.js");
538
539
  return runMachineConnectCommand(args, deps);
539
540
  }),
540
541
  createDaemonShortcutCommand(["daemon"], "Run the connector daemon shortcut", async (args, deps) => {
541
- const { runMachineConnectCommand } = await import("./machineCommands-R2IP5OVT.js");
542
+ const { runMachineConnectCommand } = await import("./machineCommands-AXD7ISGC.js");
542
543
  return runMachineConnectCommand(args, deps);
543
544
  }),
544
545
  createEnvCommand(["machine", "status"], "List machines registered to the current profile", async (args, deps) => {
545
- const { runMachineStatusCommand } = await import("./machineCommands-R2IP5OVT.js");
546
+ const { runMachineStatusCommand } = await import("./machineCommands-AXD7ISGC.js");
546
547
  return runMachineStatusCommand(args, deps);
547
548
  }),
548
549
  createEnvCommand(["doctor", "runtime"], "Diagnose local-first agent runtime selection", async (args, deps) => {
@@ -550,7 +551,7 @@ function getSystemInternalCommandEntries(renderHelpText2) {
550
551
  return runDoctorRuntimeCommand(args, deps);
551
552
  }),
552
553
  createContextCommand(["doctor"], "Show CLI doctor information", async (_args, ctx) => {
553
- const { buildCliDoctorText, getCliInstallChannel, resolveSelfUpdateServerUrl } = await import("./updateCommands-BXGFH4VX.js");
554
+ const { buildCliDoctorText, getCliInstallChannel, resolveSelfUpdateServerUrl } = await import("./updateCommands-KDYX32JR.js");
554
555
  const { isCompiledBinary } = await import("./cliEnvHelpers-BVYTMUPJ.js");
555
556
  const serverUrl = resolveSelfUpdateServerUrl(ctx.env);
556
557
  console.log(
@@ -566,8 +567,22 @@ function getSystemInternalCommandEntries(renderHelpText2) {
566
567
  );
567
568
  return 0;
568
569
  }),
569
- createContextCommand(["update"], "Update the CLI", async (_args, ctx) => {
570
- const { resolveSelfUpdateServerUrl, runSelfUpdate } = await import("./updateCommands-BXGFH4VX.js");
570
+ createContextCommand(["update"], t("updateDescription"), async (args, ctx) => {
571
+ const { resolveSelfUpdateServerUrl, runSelfUpdate, buildCliVersionText, getCliInstallChannel } = await import("./updateCommands-KDYX32JR.js");
572
+ if (args.length > 0) {
573
+ const sub = args[0];
574
+ if (sub === "status") {
575
+ if (process.platform === "win32") {
576
+ const { getWindowsUpdateStatus } = await import("./windowsSelfUpdate-IYQK4IDS.js");
577
+ console.log(getWindowsUpdateStatus(ctx.env, { currentVersion: ctx.packageInfo.version }).text);
578
+ } else {
579
+ console.log(t("updateStatusText", buildCliVersionText(ctx.packageInfo), getCliInstallChannel(resolveSelfUpdateServerUrl(ctx.env))));
580
+ }
581
+ return 0;
582
+ }
583
+ console.log(t("updateUsage"));
584
+ return sub === "--help" || sub === "-h" ? 0 : 1;
585
+ }
571
586
  return runSelfUpdate({
572
587
  entrypointPath: ctx.entrypointPath,
573
588
  serverUrl: resolveSelfUpdateServerUrl(ctx.env),
@@ -575,22 +590,22 @@ function getSystemInternalCommandEntries(renderHelpText2) {
575
590
  });
576
591
  }),
577
592
  createArgsCommand(["secret"], "Manage local developer secrets (~/.nolo/credentials/secrets.json)", async (args) => {
578
- const { runSecretCommand } = await import("./secretCommands-7S6REMJV.js");
593
+ const { runSecretCommand } = await import("./secretCommands-XEQLKDB4.js");
579
594
  await runSecretCommand(args);
580
595
  return process.exitCode ?? 0;
581
596
  }),
582
597
  createContextCommand(["version"], "Show CLI version", async (_args, ctx) => {
583
- const { buildCliVersionText } = await import("./updateCommands-BXGFH4VX.js");
598
+ const { buildCliVersionText } = await import("./updateCommands-KDYX32JR.js");
584
599
  console.log(buildCliVersionText(ctx.packageInfo));
585
600
  return 0;
586
601
  }),
587
602
  createContextCommand(["--version"], "Show CLI version", async (_args, ctx) => {
588
- const { buildCliVersionText } = await import("./updateCommands-BXGFH4VX.js");
603
+ const { buildCliVersionText } = await import("./updateCommands-KDYX32JR.js");
589
604
  console.log(buildCliVersionText(ctx.packageInfo));
590
605
  return 0;
591
606
  }),
592
607
  createContextCommand(["-v"], "Show CLI version", async (_args, ctx) => {
593
- const { buildCliVersionText } = await import("./updateCommands-BXGFH4VX.js");
608
+ const { buildCliVersionText } = await import("./updateCommands-KDYX32JR.js");
594
609
  console.log(buildCliVersionText(ctx.packageInfo));
595
610
  return 0;
596
611
  }),
@@ -786,15 +801,15 @@ var GROUP_ORDER = [
786
801
  ];
787
802
  function renderHelpText() {
788
803
  const lines = [
789
- "nolo \u2014 Agent-first terminal workspace",
804
+ t("cliHelpTitle"),
790
805
  "",
791
- "Usage:",
806
+ t("cli.usageLabel"),
792
807
  " nolo",
793
808
  " nolo <command> [subcommand] [...args]",
794
809
  " nolo doctor",
795
810
  " nolo update",
796
811
  "",
797
- "Examples:",
812
+ t("cliExamplesLabel"),
798
813
  " nolo",
799
814
  " nolo chat",
800
815
  " nolo login",
@@ -849,7 +864,7 @@ function renderHelpText() {
849
864
  if (commands.length === 0) continue;
850
865
  lines.push("", group);
851
866
  for (const entry of commands) {
852
- lines.push(` ${entry.path.join(" ")} ${entry.description}`);
867
+ lines.push(` ${entry.path.join(" ")} ${cliCommandDescription(entry.path.join(" ")) ?? entry.description}`);
853
868
  }
854
869
  }
855
870
  return lines.join("\n");
@@ -8,15 +8,15 @@ import {
8
8
  updateContentPinned,
9
9
  updateContentTitle,
10
10
  uploadAndAddFileToSpace
11
- } from "./chunk-TCCBECTT.js";
12
- import "./chunk-HTSXDJHA.js";
13
- import "./chunk-OFFL4DCR.js";
11
+ } from "./chunk-EUOPEEMO.js";
12
+ import "./chunk-ZJ7UHBJS.js";
13
+ import "./chunk-GQEQYXWV.js";
14
14
  import "./chunk-523DITKR.js";
15
+ import "./chunk-OFFL4DCR.js";
16
+ import "./chunk-BYXBJQAS.js";
15
17
  import "./chunk-QYPE3TS3.js";
16
- import "./chunk-HS7JBDUJ.js";
18
+ import "./chunk-QHFRRM5U.js";
17
19
  import "./chunk-4JH2UMJR.js";
18
- import "./chunk-ZJ7UHBJS.js";
19
- import "./chunk-BYXBJQAS.js";
20
20
  import "./chunk-ESMZW5PE.js";
21
21
  import "./chunk-5RGU3J7P.js";
22
22
  import "./chunk-OWYYDMGJ.js";
@@ -3,25 +3,12 @@ import {
3
3
  readCredentialAvailability
4
4
  } from "./chunk-R4BMKAR5.js";
5
5
  import "./chunk-JLR5NWP2.js";
6
+ import {
7
+ t
8
+ } from "./chunk-PS3GU7YU.js";
6
9
  import "./chunk-4VNS5WPM.js";
7
10
 
8
11
  // packages/cli/cooldownCommands.ts
9
- var AUTH_COOLDOWN_HELP_TEXT = `Manage per-credential availability cooldowns (429 \u9650\u6D41\u51B7\u5374).
10
-
11
- Usage:
12
- nolo auth cooldown List all active cooldowns
13
- nolo auth cooldown --clear <credential> Clear one credential's cooldown
14
- nolo auth cooldown --clear-all Clear all cooldowns
15
-
16
- Options:
17
- --clear <credential> Clear the cooldown for the given credential
18
- (e.g. chatgpt / claude / antigravity / api-key:agent-...).
19
- --clear-all Clear every credential cooldown.
20
- --help Show this help.
21
-
22
- No argument lists the currently cooled credentials with their human-readable
23
- recovery time and remaining duration.
24
- `;
25
12
  function wantsHelp(args) {
26
13
  return args.includes("--help") || args.includes("-h");
27
14
  }
@@ -30,13 +17,13 @@ function formatRemaining(ms) {
30
17
  const days = Math.floor(totalSec / 86400);
31
18
  const hours = Math.floor(totalSec % 86400 / 3600);
32
19
  const minutes = Math.floor(totalSec % 3600 / 60);
33
- if (days > 0) return `${days}d ${hours}h ${minutes}m`;
34
- if (hours > 0) return `${hours}h ${minutes}m`;
35
- return `${minutes}m`;
20
+ if (days > 0) return t("cliCooldownDays", String(days), String(hours), String(minutes));
21
+ if (hours > 0) return t("cliCooldownHours", String(hours), String(minutes));
22
+ return t("cliCooldownMinutes", String(minutes));
36
23
  }
37
24
  async function runAuthCooldownCommand(args, env = process.env) {
38
25
  if (wantsHelp(args)) {
39
- console.log(AUTH_COOLDOWN_HELP_TEXT);
26
+ console.log(t("cliCooldownHelp"));
40
27
  return 0;
41
28
  }
42
29
  if (args.includes("--clear-all")) {
@@ -46,7 +33,7 @@ async function runAuthCooldownCommand(args, env = process.env) {
46
33
  await clearCredentialAvailability(key, env);
47
34
  }
48
35
  console.log(
49
- keys2.length > 0 ? `Cleared ${keys2.length} credential cooldown(s).` : "No credential cooldowns to clear."
36
+ keys2.length > 0 ? t("cliCooldownClearedCount", String(keys2.length)) : t("cliCooldownNoneToClear")
50
37
  );
51
38
  return 0;
52
39
  }
@@ -55,38 +42,37 @@ async function runAuthCooldownCommand(args, env = process.env) {
55
42
  const key = args[clearIdx + 1];
56
43
  if (!key || key.startsWith("-")) {
57
44
  console.log(
58
- "Missing credential for --clear. Usage: nolo auth cooldown --clear <credential>"
45
+ t("cliCooldownMissingCredential")
59
46
  );
60
47
  return 1;
61
48
  }
62
49
  const entries2 = await readCredentialAvailability(env);
63
50
  if (!(key in entries2)) {
64
- console.log(`No active cooldown for credential: ${key}`);
51
+ console.log(t("cliCooldownNotActive", key));
65
52
  return 0;
66
53
  }
67
54
  await clearCredentialAvailability(key, env);
68
- console.log(`Cleared cooldown for credential: ${key}`);
55
+ console.log(t("cliCooldownCleared", key));
69
56
  return 0;
70
57
  }
71
58
  const entries = await readCredentialAvailability(env);
72
59
  const keys = Object.keys(entries);
73
60
  if (keys.length === 0) {
74
- console.log("No active credential cooldowns.");
61
+ console.log(t("cliCooldownNoneActive"));
75
62
  return 0;
76
63
  }
77
64
  const now = Date.now();
78
- console.log("Active credential cooldowns:");
65
+ console.log(t("cliCooldownActive"));
79
66
  for (const key of keys.sort()) {
80
67
  const at = entries[key];
81
68
  console.log(
82
69
  // 列宽按最长的 fallback key(custom-endpoint:<origin>,如
83
70
  // custom-endpoint:https://ollama.com = 34 字符)取值,避免撑破对齐。
84
- ` ${key.padEnd(34)} recovers ${new Date(at).toISOString()} (${formatRemaining(at - now)} remaining)`
71
+ t("cliCooldownEntry", key.padEnd(34), new Date(at).toISOString(), formatRemaining(at - now))
85
72
  );
86
73
  }
87
74
  return 0;
88
75
  }
89
76
  export {
90
- AUTH_COOLDOWN_HELP_TEXT,
91
77
  runAuthCooldownCommand
92
78
  };
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  addContentToSpace
3
- } from "./chunk-TCCBECTT.js";
4
- import "./chunk-HTSXDJHA.js";
5
- import "./chunk-OFFL4DCR.js";
3
+ } from "./chunk-EUOPEEMO.js";
4
+ import "./chunk-ZJ7UHBJS.js";
5
+ import "./chunk-GQEQYXWV.js";
6
6
  import "./chunk-523DITKR.js";
7
+ import "./chunk-OFFL4DCR.js";
8
+ import "./chunk-BYXBJQAS.js";
7
9
  import "./chunk-QYPE3TS3.js";
8
- import "./chunk-HS7JBDUJ.js";
10
+ import "./chunk-QHFRRM5U.js";
9
11
  import "./chunk-4JH2UMJR.js";
10
- import "./chunk-ZJ7UHBJS.js";
11
- import "./chunk-BYXBJQAS.js";
12
12
  import "./chunk-ESMZW5PE.js";
13
13
  import "./chunk-5RGU3J7P.js";
14
14
  import "./chunk-OWYYDMGJ.js";
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  createDialogAction,
3
3
  isLocalOwnerDialogAgents
4
- } from "./chunk-PD4KNHVU.js";
5
- import "./chunk-TCCBECTT.js";
6
- import "./chunk-HTSXDJHA.js";
7
- import "./chunk-OFFL4DCR.js";
4
+ } from "./chunk-SO3N2323.js";
5
+ import "./chunk-EUOPEEMO.js";
6
+ import "./chunk-ZJ7UHBJS.js";
7
+ import "./chunk-GQEQYXWV.js";
8
8
  import "./chunk-523DITKR.js";
9
+ import "./chunk-OFFL4DCR.js";
10
+ import "./chunk-BYXBJQAS.js";
9
11
  import "./chunk-QYPE3TS3.js";
10
- import "./chunk-HS7JBDUJ.js";
12
+ import "./chunk-QHFRRM5U.js";
11
13
  import "./chunk-4JH2UMJR.js";
12
- import "./chunk-ZJ7UHBJS.js";
13
- import "./chunk-BYXBJQAS.js";
14
14
  import "./chunk-ESMZW5PE.js";
15
15
  import "./chunk-5RGU3J7P.js";
16
16
  import "./chunk-OWYYDMGJ.js";
@@ -33,7 +33,7 @@ import "./chunk-QQ56R7KS.js";
33
33
  import "./chunk-OW765XBU.js";
34
34
  import "./chunk-PXYBUFDB.js";
35
35
  import "./chunk-D2MDMY2M.js";
36
- import "./chunk-SK2UMOZC.js";
36
+ import "./chunk-NRYTWXXV.js";
37
37
  import "./chunk-EUGTFFO6.js";
38
38
  import "./chunk-AETZ7AD6.js";
39
39
  import "./chunk-Y6ORVLSS.js";
@@ -49,7 +49,7 @@ import "./chunk-76YUTLOT.js";
49
49
  import "./chunk-KX6YBIHG.js";
50
50
  import "./chunk-7DPNBQSV.js";
51
51
  import "./chunk-ZWQUWF6W.js";
52
- import "./chunk-MMKP2XWK.js";
52
+ import "./chunk-JX5XVFVW.js";
53
53
  import "./chunk-LOEO7LRC.js";
54
54
  import "./chunk-M2EJHDJP.js";
55
55
  import "./chunk-5EMSBTQ6.js";
@@ -13,19 +13,19 @@ import {
13
13
  } from "./chunk-VF4K2QE6.js";
14
14
  import {
15
15
  addContentToSpace
16
- } from "./chunk-TCCBECTT.js";
16
+ } from "./chunk-EUOPEEMO.js";
17
+ import {
18
+ getCurrentSpaceId
19
+ } from "./chunk-ZJ7UHBJS.js";
17
20
  import {
18
21
  runtime_default
19
- } from "./chunk-HTSXDJHA.js";
20
- import "./chunk-OFFL4DCR.js";
22
+ } from "./chunk-GQEQYXWV.js";
21
23
  import "./chunk-523DITKR.js";
24
+ import "./chunk-OFFL4DCR.js";
25
+ import "./chunk-BYXBJQAS.js";
22
26
  import "./chunk-QYPE3TS3.js";
23
- import "./chunk-HS7JBDUJ.js";
27
+ import "./chunk-QHFRRM5U.js";
24
28
  import "./chunk-4JH2UMJR.js";
25
- import {
26
- getCurrentSpaceId
27
- } from "./chunk-ZJ7UHBJS.js";
28
- import "./chunk-BYXBJQAS.js";
29
29
  import "./chunk-ESMZW5PE.js";
30
30
  import "./chunk-5RGU3J7P.js";
31
31
  import "./chunk-OWYYDMGJ.js";