stow-cli 2.2.0 → 2.2.3

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 (70) hide show
  1. package/README.md +10 -10
  2. package/dist/app-ZIHTOHXL.js +255 -0
  3. package/dist/backfill-BG65X4TP.js +65 -0
  4. package/dist/backfill-JCNPLFJU.js +67 -0
  5. package/dist/backfill-KW46AEAL.js +67 -0
  6. package/dist/backfill-VAORMLMY.js +67 -0
  7. package/dist/buckets-AFNX7FV3.js +137 -0
  8. package/dist/buckets-FPMMPRR2.js +130 -0
  9. package/dist/buckets-JJBWUVKF.js +137 -0
  10. package/dist/buckets-VYI2QVLO.js +137 -0
  11. package/dist/chunk-533UGNLM.js +42 -0
  12. package/dist/chunk-5BVMPHKH.js +147 -0
  13. package/dist/chunk-5IX3ASXH.js +153 -0
  14. package/dist/chunk-AHBVZRDR.js +29 -0
  15. package/dist/chunk-KPIQZBTO.js +151 -0
  16. package/dist/chunk-MYFLRBWC.js +312 -0
  17. package/dist/chunk-NBHBVKP5.js +54 -0
  18. package/dist/chunk-PE6V3MVP.js +46 -0
  19. package/dist/chunk-RH4BOSYB.js +153 -0
  20. package/dist/chunk-XVKIRHTX.js +29 -0
  21. package/dist/cli.js +184 -200
  22. package/dist/delete-3UDS4RMH.js +34 -0
  23. package/dist/delete-CQJEGLP3.js +34 -0
  24. package/dist/describe-CU5FBHZS.js +79 -0
  25. package/dist/describe-HSEHMJVD.js +79 -0
  26. package/dist/describe-NH3K3LLW.js +79 -0
  27. package/dist/describe-W3ED4VW3.js +79 -0
  28. package/dist/drops-XO4CZ4BH.js +39 -0
  29. package/dist/files-BIMA5L2G.js +206 -0
  30. package/dist/files-CFOTEASC.js +206 -0
  31. package/dist/files-SQURZ7VO.js +194 -0
  32. package/dist/files-XU6MDPP4.js +206 -0
  33. package/dist/health-3U3RHXFS.js +56 -0
  34. package/dist/health-SH6T6DZS.js +61 -0
  35. package/dist/health-TIJU6U2D.js +61 -0
  36. package/dist/health-YLNNKAFP.js +61 -0
  37. package/dist/jobs-HUW6Z6A7.js +87 -0
  38. package/dist/jobs-KK5IZYO5.js +99 -0
  39. package/dist/jobs-RMRGXLAA.js +90 -0
  40. package/dist/jobs-ROJFRPMR.js +90 -0
  41. package/dist/jobs-SX7DIN6T.js +90 -0
  42. package/dist/jobs-TND5AHCL.js +102 -0
  43. package/dist/jobs-TOLVGN6K.js +102 -0
  44. package/dist/jobs-XUAXWUAK.js +102 -0
  45. package/dist/maintenance-6XNJ56LL.js +79 -0
  46. package/dist/maintenance-7UBKZOR3.js +79 -0
  47. package/dist/maintenance-US3PUKFF.js +79 -0
  48. package/dist/maintenance-V2TXPXQE.js +79 -0
  49. package/dist/mcp-TUZZB2C7.js +189 -0
  50. package/dist/profiles-FOLKZZRU.js +53 -0
  51. package/dist/profiles-MB3TZQE4.js +53 -0
  52. package/dist/profiles-NVCJCYXR.js +53 -0
  53. package/dist/profiles-XXVM3UKI.js +53 -0
  54. package/dist/queues-AUGTAFBT.js +61 -0
  55. package/dist/queues-MTA2RWUP.js +56 -0
  56. package/dist/queues-NR25TGT7.js +61 -0
  57. package/dist/queues-X6IU3KBZ.js +61 -0
  58. package/dist/search-ETC2EXKM.js +135 -0
  59. package/dist/search-ICJO264J.js +135 -0
  60. package/dist/search-ULMFDWHE.js +135 -0
  61. package/dist/search-UWLK4OL2.js +119 -0
  62. package/dist/tags-75SSHS26.js +90 -0
  63. package/dist/tags-OFZQ2XCX.js +90 -0
  64. package/dist/tags-TBFPDHIQ.js +90 -0
  65. package/dist/tags-V43DCLPQ.js +90 -0
  66. package/dist/upload-F5I2SJRB.js +126 -0
  67. package/dist/upload-N7NAVN3Q.js +126 -0
  68. package/dist/whoami-WUQDFC5P.js +28 -0
  69. package/package.json +20 -20
  70. package/LICENSE +0 -21
package/dist/cli.js CHANGED
@@ -2,21 +2,23 @@
2
2
  import {
3
3
  CLI_DOCS,
4
4
  renderCommandHelp
5
- } from "./chunk-XJDK2CBE.js";
5
+ } from "./chunk-MYFLRBWC.js";
6
6
  import {
7
7
  InputValidationError
8
- } from "./chunk-PLZFHPLC.js";
8
+ } from "./chunk-NBHBVKP5.js";
9
9
  import {
10
10
  outputError,
11
11
  setForceHuman,
12
12
  setGlobalFields,
13
13
  setGlobalNdjson
14
- } from "./chunk-P2BKGBQE.js";
14
+ } from "./chunk-KPIQZBTO.js";
15
15
 
16
16
  // src/cli.ts
17
+ import { createRequire } from "module";
17
18
  import { StowError } from "@howells/stow-server";
18
19
  import { Command } from "commander";
19
- var VERSION = "1.0.0";
20
+ var require2 = createRequire(import.meta.url);
21
+ var { version: VERSION } = require2("../package.json");
20
22
  function handleError(err) {
21
23
  if (err instanceof StowError) {
22
24
  outputError(err.message, err.code, { status: err.status });
@@ -29,10 +31,7 @@ function handleError(err) {
29
31
  }
30
32
  }
31
33
  var program = new Command();
32
- program.name("stow").description(CLI_DOCS.root.description).version(VERSION).option("--human", "Force human-readable output (default when TTY)").option(
33
- "--fields <fields>",
34
- "Comma-separated fields to include in output (e.g. key,similarity)"
35
- ).option("--ndjson", "Output as newline-delimited JSON (one object per line)").addHelpText("after", renderCommandHelp("root"));
34
+ program.name("stow").description(CLI_DOCS.root.description).version(VERSION).option("--human", "Force human-readable output (default when TTY)").option("--fields <fields>", "Comma-separated fields to include in output (e.g. key,similarity)").option("--ndjson", "Output as newline-delimited JSON (one object per line)").addHelpText("after", renderCommandHelp("root"));
36
35
  program.hook("preAction", () => {
37
36
  const opts2 = program.opts();
38
37
  if (opts2.human) {
@@ -47,56 +46,54 @@ program.hook("preAction", () => {
47
46
  });
48
47
  program.command("drop").description(CLI_DOCS.drop.description).argument("<file>", "File to upload").option("-q, --quiet", "Only output the URL").addHelpText("after", renderCommandHelp("drop")).action(async (file, options) => {
49
48
  try {
50
- const { uploadDrop } = await import("./upload-OS6Q6LW5.js");
49
+ const { uploadDrop } = await import("./upload-N7NAVN3Q.js");
51
50
  await uploadDrop(file, options);
52
- } catch (err) {
53
- handleError(err);
51
+ } catch (error) {
52
+ handleError(error);
54
53
  }
55
54
  });
56
- program.command("upload").description(CLI_DOCS.upload.description).argument("<file>", "File to upload").option("-b, --bucket <name>", "Bucket name or ID").option("-q, --quiet", "Only output the URL").option("--dry-run", "Preview without uploading").addHelpText("after", renderCommandHelp("upload")).action(
57
- async (file, options) => {
58
- try {
59
- const { uploadFile } = await import("./upload-OS6Q6LW5.js");
60
- await uploadFile(file, options);
61
- } catch (err) {
62
- handleError(err);
63
- }
55
+ program.command("upload").description(CLI_DOCS.upload.description).argument("<file>", "File to upload").option("-b, --bucket <name>", "Bucket name or ID").option("-q, --quiet", "Only output the URL").option("--dry-run", "Preview without uploading").addHelpText("after", renderCommandHelp("upload")).action(async (file, options) => {
56
+ try {
57
+ const { uploadFile } = await import("./upload-N7NAVN3Q.js");
58
+ await uploadFile(file, options);
59
+ } catch (error) {
60
+ handleError(error);
64
61
  }
65
- );
62
+ });
66
63
  var bucketsCmd = program.command("buckets").description(CLI_DOCS.buckets.description).addHelpText("after", renderCommandHelp("buckets")).action(async () => {
67
64
  try {
68
- const { listBuckets } = await import("./buckets-ZHP3LBLC.js");
65
+ const { listBuckets } = await import("./buckets-FPMMPRR2.js");
69
66
  await listBuckets();
70
- } catch (err) {
71
- handleError(err);
67
+ } catch (error) {
68
+ handleError(error);
72
69
  }
73
70
  });
74
71
  bucketsCmd.command("create").description(CLI_DOCS.bucketsCreate.description).argument("<name>", "Bucket name").option("-d, --description <text>", "Bucket description").option("--public", "Make bucket public").option("--dry-run", "Preview without creating").option("--input-json <json>", "Raw JSON payload").addHelpText("after", renderCommandHelp("bucketsCreate")).action(
75
72
  async (name, options) => {
76
73
  try {
77
- const { createBucket } = await import("./buckets-ZHP3LBLC.js");
74
+ const { createBucket } = await import("./buckets-FPMMPRR2.js");
78
75
  await createBucket(name, options);
79
- } catch (err) {
80
- handleError(err);
76
+ } catch (error) {
77
+ handleError(error);
81
78
  }
82
79
  }
83
80
  );
84
81
  bucketsCmd.command("rename").description(CLI_DOCS.bucketsRename.description).argument("<name>", "Current bucket name").argument("<new-name>", "New bucket name").option("-y, --yes", "Skip confirmation warning").option("--dry-run", "Preview without renaming").option("--input-json <json>", "Raw JSON payload").addHelpText("after", renderCommandHelp("bucketsRename")).action(
85
82
  async (name, newName, options) => {
86
83
  try {
87
- const { renameBucket } = await import("./buckets-ZHP3LBLC.js");
84
+ const { renameBucket } = await import("./buckets-FPMMPRR2.js");
88
85
  await renameBucket(name, newName, options);
89
- } catch (err) {
90
- handleError(err);
86
+ } catch (error) {
87
+ handleError(error);
91
88
  }
92
89
  }
93
90
  );
94
91
  bucketsCmd.command("delete").description(CLI_DOCS.bucketsDelete.description).argument("<id>", "Bucket ID").option("--dry-run", "Preview without deleting").addHelpText("after", renderCommandHelp("bucketsDelete")).action(async (id, options) => {
95
92
  try {
96
- const { deleteBucket } = await import("./buckets-ZHP3LBLC.js");
93
+ const { deleteBucket } = await import("./buckets-FPMMPRR2.js");
97
94
  await deleteBucket(id, options);
98
- } catch (err) {
99
- handleError(err);
95
+ } catch (error) {
96
+ handleError(error);
100
97
  }
101
98
  });
102
99
  var filesCmd = program.command("files").description(CLI_DOCS.files.description).argument("[bucket]", "Bucket name").option("-s, --search <prefix>", "Filter by prefix").option("-l, --limit <count>", "Max files to return").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("files")).action(
@@ -106,345 +103,327 @@ var filesCmd = program.command("files").description(CLI_DOCS.files.description).
106
103
  return;
107
104
  }
108
105
  try {
109
- const { listFiles } = await import("./files-UQODXWNT.js");
106
+ const { listFiles } = await import("./files-SQURZ7VO.js");
110
107
  await listFiles(bucket, options);
111
- } catch (err) {
112
- handleError(err);
108
+ } catch (error) {
109
+ handleError(error);
113
110
  }
114
111
  }
115
112
  );
116
113
  filesCmd.command("get").description(CLI_DOCS.filesGet.description).argument("<bucket>", "Bucket name").argument("<key>", "File key").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("filesGet")).action(async (bucket, key, options) => {
117
114
  try {
118
- const { getFile } = await import("./files-UQODXWNT.js");
115
+ const { getFile } = await import("./files-SQURZ7VO.js");
119
116
  await getFile(bucket, key, options);
120
- } catch (err) {
121
- handleError(err);
117
+ } catch (error) {
118
+ handleError(error);
122
119
  }
123
120
  });
124
121
  filesCmd.command("update").description(CLI_DOCS.filesUpdate.description).argument("<bucket>", "Bucket name").argument("<key>", "File key").option("-m, --metadata <kv...>", "Metadata key=value pairs").option("--json", "Output as JSON").option("--dry-run", "Preview without updating").option("--input-json <json>", "Raw JSON payload").addHelpText("after", renderCommandHelp("filesUpdate")).action(
125
122
  async (bucket, key, options) => {
126
123
  try {
127
- const { updateFile } = await import("./files-UQODXWNT.js");
124
+ const { updateFile } = await import("./files-SQURZ7VO.js");
128
125
  await updateFile(bucket, key, options);
129
- } catch (err) {
130
- handleError(err);
126
+ } catch (error) {
127
+ handleError(error);
131
128
  }
132
129
  }
133
130
  );
134
131
  filesCmd.command("enrich").description(CLI_DOCS.filesEnrich.description).argument("<bucket>", "Bucket name").argument("<key>", "File key").addHelpText("after", renderCommandHelp("filesEnrich")).action(async (bucket, key) => {
135
132
  try {
136
- const { enrichFile } = await import("./files-UQODXWNT.js");
133
+ const { enrichFile } = await import("./files-SQURZ7VO.js");
137
134
  await enrichFile(bucket, key);
138
- } catch (err) {
139
- handleError(err);
135
+ } catch (error) {
136
+ handleError(error);
140
137
  }
141
138
  });
142
- filesCmd.command("missing").description(CLI_DOCS.filesMissing.description).argument("<bucket>", "Bucket name").argument("<type>", "dimensions | embeddings | colors").option("-l, --limit <count>", "Max files to return").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("filesMissing")).action(
143
- async (bucket, type, options) => {
144
- try {
145
- const { listMissing } = await import("./files-UQODXWNT.js");
146
- await listMissing(bucket, type, options);
147
- } catch (err) {
148
- handleError(err);
149
- }
139
+ filesCmd.command("missing").description(CLI_DOCS.filesMissing.description).argument("<bucket>", "Bucket name").argument("<type>", "dimensions | embeddings | colors").option("-l, --limit <count>", "Max files to return").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("filesMissing")).action(async (bucket, type, options) => {
140
+ try {
141
+ const { listMissing } = await import("./files-SQURZ7VO.js");
142
+ await listMissing(bucket, type, options);
143
+ } catch (error) {
144
+ handleError(error);
150
145
  }
151
- );
146
+ });
152
147
  var dropsCmd = program.command("drops").description(CLI_DOCS.drops.description).addHelpText("after", renderCommandHelp("drops")).action(async () => {
153
148
  try {
154
- const { listDrops } = await import("./drops-5VIEW3XZ.js");
149
+ const { listDrops } = await import("./drops-XO4CZ4BH.js");
155
150
  await listDrops();
156
- } catch (err) {
157
- handleError(err);
151
+ } catch (error) {
152
+ handleError(error);
158
153
  }
159
154
  });
160
155
  dropsCmd.command("delete").description(CLI_DOCS.dropsDelete.description).argument("<id>", "Drop ID").addHelpText("after", renderCommandHelp("dropsDelete")).action(async (id) => {
161
156
  try {
162
- const { deleteDrop } = await import("./drops-5VIEW3XZ.js");
157
+ const { deleteDrop } = await import("./drops-XO4CZ4BH.js");
163
158
  await deleteDrop(id);
164
- } catch (err) {
165
- handleError(err);
159
+ } catch (error) {
160
+ handleError(error);
166
161
  }
167
162
  });
168
163
  var searchCmd = program.command("search").description(CLI_DOCS.search.description).addHelpText("after", renderCommandHelp("search"));
169
- searchCmd.command("text").description(CLI_DOCS.searchText.description).argument("<query>", "Search query").option("-b, --bucket <name>", "Bucket name").option("-l, --limit <count>", "Max results").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("searchText")).action(
170
- async (query, options) => {
171
- try {
172
- const { textSearch } = await import("./search-TRTPX2SQ.js");
173
- await textSearch(query, options);
174
- } catch (err) {
175
- handleError(err);
176
- }
164
+ searchCmd.command("text").description(CLI_DOCS.searchText.description).argument("<query>", "Search query").option("-b, --bucket <name>", "Bucket name").option("-l, --limit <count>", "Max results").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("searchText")).action(async (query, options) => {
165
+ try {
166
+ const { textSearch } = await import("./search-UWLK4OL2.js");
167
+ await textSearch(query, options);
168
+ } catch (error) {
169
+ handleError(error);
177
170
  }
178
- );
179
- searchCmd.command("similar").description(CLI_DOCS.searchSimilar.description).requiredOption("--file <key>", "File key to search from").option("-b, --bucket <name>", "Bucket name").option("-l, --limit <count>", "Max results").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("searchSimilar")).action(
180
- async (options) => {
181
- try {
182
- const { similarSearch } = await import("./search-TRTPX2SQ.js");
183
- await similarSearch(options);
184
- } catch (err) {
185
- handleError(err);
186
- }
171
+ });
172
+ searchCmd.command("similar").description(CLI_DOCS.searchSimilar.description).requiredOption("--file <key>", "File key to search from").option("-b, --bucket <name>", "Bucket name").option("-l, --limit <count>", "Max results").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("searchSimilar")).action(async (options) => {
173
+ try {
174
+ const { similarSearch } = await import("./search-UWLK4OL2.js");
175
+ await similarSearch(options);
176
+ } catch (error) {
177
+ handleError(error);
187
178
  }
188
- );
189
- searchCmd.command("color").description(CLI_DOCS.searchColor.description).requiredOption("--hex <color>", "Hex color code").option("-b, --bucket <name>", "Bucket name").option("-l, --limit <count>", "Max results").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("searchColor")).action(
190
- async (options) => {
191
- try {
192
- const { colorSearch } = await import("./search-TRTPX2SQ.js");
193
- await colorSearch(options);
194
- } catch (err) {
195
- handleError(err);
196
- }
179
+ });
180
+ searchCmd.command("color").description(CLI_DOCS.searchColor.description).requiredOption("--hex <color>", "Hex color code").option("-b, --bucket <name>", "Bucket name").option("-l, --limit <count>", "Max results").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("searchColor")).action(async (options) => {
181
+ try {
182
+ const { colorSearch } = await import("./search-UWLK4OL2.js");
183
+ await colorSearch(options);
184
+ } catch (error) {
185
+ handleError(error);
197
186
  }
198
- );
199
- searchCmd.command("diverse").description(CLI_DOCS.searchDiverse.description).option("-b, --bucket <name>", "Bucket name").option("-l, --limit <count>", "Max results").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("searchDiverse")).action(
200
- async (options) => {
201
- try {
202
- const { diverseSearch } = await import("./search-TRTPX2SQ.js");
203
- await diverseSearch(options);
204
- } catch (err) {
205
- handleError(err);
206
- }
187
+ });
188
+ searchCmd.command("diverse").description(CLI_DOCS.searchDiverse.description).option("-b, --bucket <name>", "Bucket name").option("-l, --limit <count>", "Max results").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("searchDiverse")).action(async (options) => {
189
+ try {
190
+ const { diverseSearch } = await import("./search-UWLK4OL2.js");
191
+ await diverseSearch(options);
192
+ } catch (error) {
193
+ handleError(error);
207
194
  }
208
- );
195
+ });
209
196
  var tagsCmd = program.command("tags").description(CLI_DOCS.tags.description).option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("tags")).action(async (options) => {
210
197
  try {
211
- const { listTags } = await import("./tags-VH44BGQL.js");
198
+ const { listTags } = await import("./tags-V43DCLPQ.js");
212
199
  await listTags(options);
213
- } catch (err) {
214
- handleError(err);
200
+ } catch (error) {
201
+ handleError(error);
215
202
  }
216
203
  });
217
204
  tagsCmd.command("create").description(CLI_DOCS.tagsCreate.description).argument("<name>", "Tag name").option("--color <hex>", "Tag color (hex)").option("--json", "Output as JSON").option("--dry-run", "Preview without creating").option("--input-json <json>", "Raw JSON payload").addHelpText("after", renderCommandHelp("tagsCreate")).action(
218
205
  async (name, options) => {
219
206
  try {
220
- const { createTag } = await import("./tags-VH44BGQL.js");
207
+ const { createTag } = await import("./tags-V43DCLPQ.js");
221
208
  await createTag(name, options);
222
- } catch (err) {
223
- handleError(err);
209
+ } catch (error) {
210
+ handleError(error);
224
211
  }
225
212
  }
226
213
  );
227
214
  tagsCmd.command("delete").description(CLI_DOCS.tagsDelete.description).argument("<id>", "Tag ID").option("--dry-run", "Preview without deleting").addHelpText("after", renderCommandHelp("tagsDelete")).action(async (id, options) => {
228
215
  try {
229
- const { deleteTag } = await import("./tags-VH44BGQL.js");
216
+ const { deleteTag } = await import("./tags-V43DCLPQ.js");
230
217
  await deleteTag(id, options);
231
- } catch (err) {
232
- handleError(err);
218
+ } catch (error) {
219
+ handleError(error);
233
220
  }
234
221
  });
235
222
  var profilesCmd = program.command("profiles").description(CLI_DOCS.profiles.description).addHelpText("after", renderCommandHelp("profiles"));
236
- profilesCmd.command("create").description(CLI_DOCS.profilesCreate.description).requiredOption("--name <name>", "Profile name").option("-b, --bucket <id>", "Bucket ID").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("profilesCreate")).action(
237
- async (options) => {
238
- try {
239
- const { createProfile } = await import("./profiles-CHBGKQOE.js");
240
- await createProfile(options);
241
- } catch (err) {
242
- handleError(err);
243
- }
223
+ profilesCmd.command("create").description(CLI_DOCS.profilesCreate.description).requiredOption("--name <name>", "Profile name").option("-b, --bucket <id>", "Bucket ID").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("profilesCreate")).action(async (options) => {
224
+ try {
225
+ const { createProfile } = await import("./profiles-XXVM3UKI.js");
226
+ await createProfile(options);
227
+ } catch (error) {
228
+ handleError(error);
244
229
  }
245
- );
230
+ });
246
231
  profilesCmd.command("get").description(CLI_DOCS.profilesGet.description).argument("<id>", "Profile ID").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("profilesGet")).action(async (id, options) => {
247
232
  try {
248
- const { getProfile } = await import("./profiles-CHBGKQOE.js");
233
+ const { getProfile } = await import("./profiles-XXVM3UKI.js");
249
234
  await getProfile(id, options);
250
- } catch (err) {
251
- handleError(err);
235
+ } catch (error) {
236
+ handleError(error);
252
237
  }
253
238
  });
254
239
  profilesCmd.command("delete").description(CLI_DOCS.profilesDelete.description).argument("<id>", "Profile ID").addHelpText("after", renderCommandHelp("profilesDelete")).action(async (id) => {
255
240
  try {
256
- const { deleteProfile } = await import("./profiles-CHBGKQOE.js");
241
+ const { deleteProfile } = await import("./profiles-XXVM3UKI.js");
257
242
  await deleteProfile(id);
258
- } catch (err) {
259
- handleError(err);
243
+ } catch (error) {
244
+ handleError(error);
260
245
  }
261
246
  });
262
247
  var jobsCmd = program.command("jobs").description(CLI_DOCS.jobs.description).requiredOption("-b, --bucket <id>", "Bucket ID (required)").option("-s, --status <status>", "Filter by status").option("-q, --queue <name>", "Filter by queue name").option("-l, --limit <count>", "Max jobs to return").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("jobs")).action(
263
248
  async (options) => {
264
249
  try {
265
- const { listJobs } = await import("./jobs-PTV2W5PJ.js");
250
+ const { listJobs } = await import("./jobs-KK5IZYO5.js");
266
251
  await listJobs(options.bucket, options);
267
- } catch (err) {
268
- handleError(err);
252
+ } catch (error) {
253
+ handleError(error);
269
254
  }
270
255
  }
271
256
  );
272
257
  jobsCmd.command("retry").description(CLI_DOCS.jobsRetry.description).argument("<id>", "Job ID").requiredOption("-q, --queue <name>", "Queue name").requiredOption("-b, --bucket <id>", "Bucket ID").addHelpText("after", renderCommandHelp("jobsRetry")).action(async (id, options) => {
273
258
  try {
274
- const { retryJob } = await import("./jobs-PTV2W5PJ.js");
259
+ const { retryJob } = await import("./jobs-KK5IZYO5.js");
275
260
  await retryJob(id, options);
276
- } catch (err) {
277
- handleError(err);
261
+ } catch (error) {
262
+ handleError(error);
278
263
  }
279
264
  });
280
265
  jobsCmd.command("delete").description(CLI_DOCS.jobsDelete.description).argument("<id>", "Job ID").requiredOption("-q, --queue <name>", "Queue name").requiredOption("-b, --bucket <id>", "Bucket ID").addHelpText("after", renderCommandHelp("jobsDelete")).action(async (id, options) => {
281
266
  try {
282
- const { deleteJob } = await import("./jobs-PTV2W5PJ.js");
267
+ const { deleteJob } = await import("./jobs-KK5IZYO5.js");
283
268
  await deleteJob(id, options);
284
- } catch (err) {
285
- handleError(err);
269
+ } catch (error) {
270
+ handleError(error);
286
271
  }
287
272
  });
288
273
  var adminCmd = program.command("admin").description(CLI_DOCS.admin.description).addHelpText("after", renderCommandHelp("admin"));
289
274
  adminCmd.command("health").description(CLI_DOCS.adminHealth.description).option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("adminHealth")).action(async (options) => {
290
275
  try {
291
- const { health } = await import("./health-RICGWQGN.js");
276
+ const { health } = await import("./health-3U3RHXFS.js");
292
277
  await health(options);
293
- } catch (err) {
294
- handleError(err);
278
+ } catch (error) {
279
+ handleError(error);
295
280
  }
296
281
  });
297
282
  var backfillCmd = adminCmd.command("backfill").description(CLI_DOCS.adminBackfill.description).addHelpText("after", renderCommandHelp("adminBackfill"));
298
283
  backfillCmd.command("dimensions").description("Backfill image dimensions").option("--bucket <id>", "Bucket ID").option("-l, --limit <count>", "Max files to enqueue").option("--dry-run", "Preview without enqueuing").option("--json", "Output as JSON").action(
299
284
  async (options) => {
300
285
  try {
301
- const { backfillDimensions } = await import("./backfill-EVZT7RH6.js");
286
+ const { backfillDimensions } = await import("./backfill-BG65X4TP.js");
302
287
  await backfillDimensions(options);
303
- } catch (err) {
304
- handleError(err);
288
+ } catch (error) {
289
+ handleError(error);
305
290
  }
306
291
  }
307
292
  );
308
293
  backfillCmd.command("colors").description("Backfill color extraction").option("--bucket <id>", "Bucket ID").option("-l, --limit <count>", "Max files to enqueue").option("--dry-run", "Preview without enqueuing").option("--json", "Output as JSON").action(
309
294
  async (options) => {
310
295
  try {
311
- const { backfillColors } = await import("./backfill-EVZT7RH6.js");
296
+ const { backfillColors } = await import("./backfill-BG65X4TP.js");
312
297
  await backfillColors(options);
313
- } catch (err) {
314
- handleError(err);
298
+ } catch (error) {
299
+ handleError(error);
315
300
  }
316
301
  }
317
302
  );
318
303
  backfillCmd.command("embeddings").description("Backfill embedding generation").option("--bucket <id>", "Bucket ID").option("-l, --limit <count>", "Max files to enqueue").option("--dry-run", "Preview without enqueuing").option("--json", "Output as JSON").action(
319
304
  async (options) => {
320
305
  try {
321
- const { backfillEmbeddings } = await import("./backfill-EVZT7RH6.js");
306
+ const { backfillEmbeddings } = await import("./backfill-BG65X4TP.js");
322
307
  await backfillEmbeddings(options);
323
- } catch (err) {
324
- handleError(err);
308
+ } catch (error) {
309
+ handleError(error);
325
310
  }
326
311
  }
327
312
  );
328
- adminCmd.command("cleanup-drops").description(CLI_DOCS.adminCleanupDrops.description).option("--max-age-hours <hours>", "Max age in hours").option("--dry-run", "Preview without deleting").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("adminCleanupDrops")).action(
329
- async (options) => {
330
- try {
331
- const { cleanupDrops } = await import("./maintenance-ZJW2ES4L.js");
332
- await cleanupDrops(options);
333
- } catch (err) {
334
- handleError(err);
335
- }
313
+ adminCmd.command("cleanup-drops").description(CLI_DOCS.adminCleanupDrops.description).option("--max-age-hours <hours>", "Max age in hours").option("--dry-run", "Preview without deleting").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("adminCleanupDrops")).action(async (options) => {
314
+ try {
315
+ const { cleanupDrops } = await import("./maintenance-7UBKZOR3.js");
316
+ await cleanupDrops(options);
317
+ } catch (error) {
318
+ handleError(error);
336
319
  }
337
- );
320
+ });
338
321
  adminCmd.command("purge-events").description(CLI_DOCS.adminPurgeEvents.description).option("--dry-run", "Preview without deleting").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("adminPurgeEvents")).action(async (options) => {
339
322
  try {
340
- const { purgeEvents } = await import("./maintenance-ZJW2ES4L.js");
323
+ const { purgeEvents } = await import("./maintenance-7UBKZOR3.js");
341
324
  await purgeEvents(options);
342
- } catch (err) {
343
- handleError(err);
325
+ } catch (error) {
326
+ handleError(error);
344
327
  }
345
328
  });
346
- adminCmd.command("reconcile-files").description(CLI_DOCS.adminReconcileFiles.description).requiredOption("--bucket <id>", "Bucket ID").option("--dry-run", "Preview without reconciling").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("adminReconcileFiles")).action(
347
- async (options) => {
348
- try {
349
- const { reconcileFiles } = await import("./maintenance-ZJW2ES4L.js");
350
- await reconcileFiles(options);
351
- } catch (err) {
352
- handleError(err);
353
- }
329
+ adminCmd.command("reconcile-files").description(CLI_DOCS.adminReconcileFiles.description).requiredOption("--bucket <id>", "Bucket ID").option("--dry-run", "Preview without reconciling").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("adminReconcileFiles")).action(async (options) => {
330
+ try {
331
+ const { reconcileFiles } = await import("./maintenance-7UBKZOR3.js");
332
+ await reconcileFiles(options);
333
+ } catch (error) {
334
+ handleError(error);
354
335
  }
355
- );
336
+ });
356
337
  adminCmd.command("retry-sync-failures").description(CLI_DOCS.adminRetrySyncFailures.description).option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("adminRetrySyncFailures")).action(async (options) => {
357
338
  try {
358
- const { retrySyncFailures } = await import("./maintenance-ZJW2ES4L.js");
339
+ const { retrySyncFailures } = await import("./maintenance-7UBKZOR3.js");
359
340
  await retrySyncFailures(options);
360
- } catch (err) {
361
- handleError(err);
341
+ } catch (error) {
342
+ handleError(error);
362
343
  }
363
344
  });
364
345
  var adminJobsCmd = adminCmd.command("jobs").description(CLI_DOCS.adminJobs.description).option("--org <id>", "Filter by org ID").option("--bucket <id>", "Filter by bucket ID").option("-s, --status <status>", "Filter by status").option("-q, --queue <name>", "Filter by queue name").option("-l, --limit <count>", "Max jobs to return").option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("adminJobs")).action(
365
346
  async (options) => {
366
347
  try {
367
- const { listAdminJobs } = await import("./jobs-ZWSEXNFA.js");
348
+ const { listAdminJobs } = await import("./jobs-HUW6Z6A7.js");
368
349
  await listAdminJobs(options);
369
- } catch (err) {
370
- handleError(err);
350
+ } catch (error) {
351
+ handleError(error);
371
352
  }
372
353
  }
373
354
  );
374
355
  adminJobsCmd.command("retry").description(CLI_DOCS.adminJobsRetry.description).argument("<id>", "Job ID").requiredOption("-q, --queue <name>", "Queue name").addHelpText("after", renderCommandHelp("adminJobsRetry")).action(async (id, options) => {
375
356
  try {
376
- const { retryAdminJob } = await import("./jobs-ZWSEXNFA.js");
357
+ const { retryAdminJob } = await import("./jobs-HUW6Z6A7.js");
377
358
  await retryAdminJob(id, options);
378
- } catch (err) {
379
- handleError(err);
359
+ } catch (error) {
360
+ handleError(error);
380
361
  }
381
362
  });
382
363
  adminJobsCmd.command("delete").description(CLI_DOCS.adminJobsDelete.description).argument("<id>", "Job ID").requiredOption("-q, --queue <name>", "Queue name").addHelpText("after", renderCommandHelp("adminJobsDelete")).action(async (id, options) => {
383
364
  try {
384
- const { deleteAdminJob } = await import("./jobs-ZWSEXNFA.js");
365
+ const { deleteAdminJob } = await import("./jobs-HUW6Z6A7.js");
385
366
  await deleteAdminJob(id, options);
386
- } catch (err) {
387
- handleError(err);
367
+ } catch (error) {
368
+ handleError(error);
388
369
  }
389
370
  });
390
371
  var adminQueuesCmd = adminCmd.command("queues").description(CLI_DOCS.adminQueues.description).option("--json", "Output as JSON").addHelpText("after", renderCommandHelp("adminQueues")).action(async (options) => {
391
372
  try {
392
- const { listQueues } = await import("./queues-EZ2VZGXQ.js");
373
+ const { listQueues } = await import("./queues-MTA2RWUP.js");
393
374
  await listQueues(options);
394
- } catch (err) {
395
- handleError(err);
375
+ } catch (error) {
376
+ handleError(error);
396
377
  }
397
378
  });
398
379
  adminQueuesCmd.command("clean").description(CLI_DOCS.adminQueuesClean.description).argument("<name>", "Queue name").option("--failed", "Clean failed jobs").option("--completed", "Clean completed jobs").option("--grace <seconds>", "Grace period in seconds").addHelpText("after", renderCommandHelp("adminQueuesClean")).action(
399
380
  async (name, options) => {
400
381
  try {
401
- const { cleanQueue } = await import("./queues-EZ2VZGXQ.js");
382
+ const { cleanQueue } = await import("./queues-MTA2RWUP.js");
402
383
  await cleanQueue(name, options);
403
- } catch (err) {
404
- handleError(err);
384
+ } catch (error) {
385
+ handleError(error);
405
386
  }
406
387
  }
407
388
  );
408
- program.command("delete").description(CLI_DOCS.delete.description).argument("<bucket>", "Bucket name").argument("<key>", "File key").option("--dry-run", "Preview without deleting").addHelpText("after", renderCommandHelp("delete")).action(
409
- async (bucket, key, options) => {
410
- try {
411
- const { deleteFile } = await import("./delete-YEXSMG4I.js");
412
- await deleteFile(bucket, key, options);
413
- } catch (err) {
414
- handleError(err);
415
- }
389
+ program.command("delete").description(CLI_DOCS.delete.description).argument("<bucket>", "Bucket name").argument("<key>", "File key").option("--dry-run", "Preview without deleting").addHelpText("after", renderCommandHelp("delete")).action(async (bucket, key, options) => {
390
+ try {
391
+ const { deleteFile } = await import("./delete-CQJEGLP3.js");
392
+ await deleteFile(bucket, key, options);
393
+ } catch (error) {
394
+ handleError(error);
416
395
  }
417
- );
396
+ });
418
397
  program.command("whoami").description(CLI_DOCS.whoami.description).addHelpText("after", renderCommandHelp("whoami")).action(async () => {
419
398
  try {
420
- const { whoami } = await import("./whoami-TVRKBM74.js");
399
+ const { whoami } = await import("./whoami-WUQDFC5P.js");
421
400
  await whoami();
422
- } catch (err) {
423
- handleError(err);
401
+ } catch (error) {
402
+ handleError(error);
424
403
  }
425
404
  });
426
405
  program.command("open").description(CLI_DOCS.open.description).argument("<bucket>", "Bucket name").addHelpText("after", renderCommandHelp("open")).action(async (bucket) => {
427
406
  try {
428
407
  const { openBucket } = await import("./open-F73Q2OHD.js");
429
408
  await openBucket(bucket);
430
- } catch (err) {
431
- handleError(err);
409
+ } catch (error) {
410
+ handleError(error);
432
411
  }
433
412
  });
434
413
  program.command("describe").argument("[command]", "Command path (dot notation, e.g. search.text)").description("Show command schema for AI agents").action(async (command) => {
435
414
  try {
436
- const { describeCommand } = await import("./describe-J4ZMUXK7.js");
415
+ const { describeCommand } = await import("./describe-NH3K3LLW.js");
437
416
  describeCommand(command ?? "");
438
- } catch (err) {
439
- handleError(err);
417
+ } catch (error) {
418
+ handleError(error);
440
419
  }
441
420
  });
442
421
  program.command("mcp").description("Start MCP stdio server for AI agent integration").action(async () => {
443
422
  try {
444
- const { startMcpServer } = await import("./mcp-RZT4TJEX.js");
423
+ const { startMcpServer } = await import("./mcp-TUZZB2C7.js");
445
424
  await startMcpServer();
446
- } catch (err) {
447
- handleError(err);
425
+ } catch (error) {
426
+ handleError(error);
448
427
  }
449
428
  });
450
429
  program.option("-i, --interactive", CLI_DOCS.interactive.description).addHelpText("after", renderCommandHelp("interactive"));
@@ -452,5 +431,10 @@ program.parse();
452
431
  var opts = program.opts();
453
432
  var args = process.argv.slice(2);
454
433
  if (args.length === 0 || args.length === 1 && opts.interactive) {
455
- import("./app-Q6EW7VSM.js").then(({ startInteractive }) => startInteractive()).catch(handleError);
434
+ try {
435
+ const { startInteractive } = await import("./app-ZIHTOHXL.js");
436
+ await startInteractive();
437
+ } catch (error) {
438
+ handleError(error);
439
+ }
456
440
  }