@zaowu-labs/cli 1.0.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 (102) hide show
  1. package/README.md +16 -0
  2. package/dist/args.d.ts +11 -0
  3. package/dist/args.d.ts.map +1 -0
  4. package/dist/args.js +65 -0
  5. package/dist/args.js.map +1 -0
  6. package/dist/command-contracts.d.ts +11 -0
  7. package/dist/command-contracts.d.ts.map +1 -0
  8. package/dist/command-contracts.js +74 -0
  9. package/dist/command-contracts.js.map +1 -0
  10. package/dist/domain-handlers.d.ts +4 -0
  11. package/dist/domain-handlers.d.ts.map +1 -0
  12. package/dist/domain-handlers.js +65 -0
  13. package/dist/domain-handlers.js.map +1 -0
  14. package/dist/domains.d.ts +4 -0
  15. package/dist/domains.d.ts.map +1 -0
  16. package/dist/domains.js +22 -0
  17. package/dist/domains.js.map +1 -0
  18. package/dist/handler-utils.d.ts +59 -0
  19. package/dist/handler-utils.d.ts.map +1 -0
  20. package/dist/handler-utils.js +113 -0
  21. package/dist/handler-utils.js.map +1 -0
  22. package/dist/handlers/ai-handlers.d.ts +4 -0
  23. package/dist/handlers/ai-handlers.d.ts.map +1 -0
  24. package/dist/handlers/ai-handlers.js +159 -0
  25. package/dist/handlers/ai-handlers.js.map +1 -0
  26. package/dist/handlers/auto-handlers.d.ts +5 -0
  27. package/dist/handlers/auto-handlers.d.ts.map +1 -0
  28. package/dist/handlers/auto-handlers.js +132 -0
  29. package/dist/handlers/auto-handlers.js.map +1 -0
  30. package/dist/handlers/config-handlers.d.ts +8 -0
  31. package/dist/handlers/config-handlers.d.ts.map +1 -0
  32. package/dist/handlers/config-handlers.js +140 -0
  33. package/dist/handlers/config-handlers.js.map +1 -0
  34. package/dist/handlers/data-handlers.d.ts +8 -0
  35. package/dist/handlers/data-handlers.d.ts.map +1 -0
  36. package/dist/handlers/data-handlers.js +135 -0
  37. package/dist/handlers/data-handlers.js.map +1 -0
  38. package/dist/handlers/dev-handlers.d.ts +6 -0
  39. package/dist/handlers/dev-handlers.d.ts.map +1 -0
  40. package/dist/handlers/dev-handlers.js +322 -0
  41. package/dist/handlers/dev-handlers.js.map +1 -0
  42. package/dist/handlers/doc-handlers.d.ts +7 -0
  43. package/dist/handlers/doc-handlers.d.ts.map +1 -0
  44. package/dist/handlers/doc-handlers.js +133 -0
  45. package/dist/handlers/doc-handlers.js.map +1 -0
  46. package/dist/handlers/plugin-handlers.d.ts +6 -0
  47. package/dist/handlers/plugin-handlers.d.ts.map +1 -0
  48. package/dist/handlers/plugin-handlers.js +149 -0
  49. package/dist/handlers/plugin-handlers.js.map +1 -0
  50. package/dist/handlers/teach-handlers.d.ts +4 -0
  51. package/dist/handlers/teach-handlers.d.ts.map +1 -0
  52. package/dist/handlers/teach-handlers.js +30 -0
  53. package/dist/handlers/teach-handlers.js.map +1 -0
  54. package/dist/handlers/web-handlers.d.ts +4 -0
  55. package/dist/handlers/web-handlers.d.ts.map +1 -0
  56. package/dist/handlers/web-handlers.js +90 -0
  57. package/dist/handlers/web-handlers.js.map +1 -0
  58. package/dist/help-text.d.ts +2 -0
  59. package/dist/help-text.d.ts.map +1 -0
  60. package/dist/help-text.js +439 -0
  61. package/dist/help-text.js.map +1 -0
  62. package/dist/index.d.ts +3 -0
  63. package/dist/index.d.ts.map +1 -0
  64. package/dist/index.js +5 -0
  65. package/dist/index.js.map +1 -0
  66. package/dist/option-validation.d.ts +5 -0
  67. package/dist/option-validation.d.ts.map +1 -0
  68. package/dist/option-validation.js +111 -0
  69. package/dist/option-validation.js.map +1 -0
  70. package/dist/output.d.ts +5 -0
  71. package/dist/output.d.ts.map +1 -0
  72. package/dist/output.js +11 -0
  73. package/dist/output.js.map +1 -0
  74. package/dist/root-doctor.d.ts +22 -0
  75. package/dist/root-doctor.d.ts.map +1 -0
  76. package/dist/root-doctor.js +231 -0
  77. package/dist/root-doctor.js.map +1 -0
  78. package/dist/root-help.d.ts +8 -0
  79. package/dist/root-help.d.ts.map +1 -0
  80. package/dist/root-help.js +130 -0
  81. package/dist/root-help.js.map +1 -0
  82. package/dist/root-init.d.ts +4 -0
  83. package/dist/root-init.d.ts.map +1 -0
  84. package/dist/root-init.js +87 -0
  85. package/dist/root-init.js.map +1 -0
  86. package/dist/run.d.ts +8 -0
  87. package/dist/run.d.ts.map +1 -0
  88. package/dist/run.js +152 -0
  89. package/dist/run.js.map +1 -0
  90. package/dist/system-command.d.ts +3 -0
  91. package/dist/system-command.d.ts.map +1 -0
  92. package/dist/system-command.js +27 -0
  93. package/dist/system-command.js.map +1 -0
  94. package/dist/types.d.ts +16 -0
  95. package/dist/types.d.ts.map +1 -0
  96. package/dist/types.js +2 -0
  97. package/dist/types.js.map +1 -0
  98. package/dist/version.d.ts +2 -0
  99. package/dist/version.d.ts.map +1 -0
  100. package/dist/version.js +14 -0
  101. package/dist/version.js.map +1 -0
  102. package/package.json +54 -0
@@ -0,0 +1,439 @@
1
+ export const ACTION_HELP = {
2
+ ai: {
3
+ ask: `ZaoWu AI Ask
4
+
5
+ Usage:
6
+ zw ai ask [prompt] [--file <path>] [--provider <id>] [--model <name>] [options]
7
+
8
+ Description:
9
+ Ask a registered provider with explicit prompt and optional file input.
10
+
11
+ Options:
12
+ --file <path> Include a readable text file as input
13
+ --provider <id> Provider id, defaults to echo
14
+ --model <name> Provider model hint
15
+ --dry-run Force preview mode
16
+ --yes Confirm a network provider request
17
+ --plan-fingerprint <hash>
18
+ Require the current plan to match a prior preview
19
+ --json Output machine-readable JSON`,
20
+ providers: `ZaoWu AI Providers
21
+
22
+ Usage:
23
+ zw ai providers [--provider <id>] [options]
24
+
25
+ Description:
26
+ List registered providers and show whether required configuration is present.
27
+
28
+ Options:
29
+ --provider <id> Validate one provider in detail
30
+ --json Output machine-readable JSON`,
31
+ },
32
+ auto: {
33
+ validate: `ZaoWu Auto Validate
34
+
35
+ Usage:
36
+ zw auto validate <workflow.json|workflow.yml|workflow.yaml> [options]
37
+
38
+ Description:
39
+ Validate a JSON or YAML workflow without running it.
40
+
41
+ Options:
42
+ --json Output machine-readable JSON`,
43
+ plan: `ZaoWu Auto Plan
44
+
45
+ Usage:
46
+ zw auto plan <workflow.json|workflow.yml|workflow.yaml> [options]
47
+
48
+ Description:
49
+ Show the dry execution plan, permissions, variable substitution, blocked steps, and warnings.
50
+
51
+ Options:
52
+ --json Output machine-readable JSON`,
53
+ run: `ZaoWu Auto Run
54
+
55
+ Usage:
56
+ zw auto run <workflow.json|workflow.yml|workflow.yaml> [--yes] [options]
57
+
58
+ Description:
59
+ Preview a workflow by default. Confirmed runs execute supported message steps only.
60
+
61
+ Options:
62
+ --dry-run Force preview mode
63
+ --yes Confirm supported non-shell steps
64
+ --plan-fingerprint <hash>
65
+ Require the current plan to match a prior preview
66
+ --json Output machine-readable JSON`,
67
+ },
68
+ config: {
69
+ show: `ZaoWu Config Show
70
+
71
+ Usage:
72
+ zw config show [options]
73
+
74
+ Description:
75
+ Show the resolved ZaoWu configuration.
76
+
77
+ Options:
78
+ --json Output machine-readable JSON`,
79
+ path: `ZaoWu Config Path
80
+
81
+ Usage:
82
+ zw config path [options]
83
+
84
+ Description:
85
+ Print the resolved configuration file path.
86
+
87
+ Options:
88
+ --json Output machine-readable JSON`,
89
+ validate: `ZaoWu Config Validate
90
+
91
+ Usage:
92
+ zw config validate [options]
93
+
94
+ Description:
95
+ Parse and validate the resolved configuration file.
96
+
97
+ Options:
98
+ --json Output machine-readable JSON`,
99
+ get: `ZaoWu Config Get
100
+
101
+ Usage:
102
+ zw config get <key> [options]
103
+
104
+ Description:
105
+ Read one supported key, such as project.name or ai.provider.
106
+
107
+ Options:
108
+ --json Output machine-readable JSON`,
109
+ set: `ZaoWu Config Set
110
+
111
+ Usage:
112
+ zw config set <key> <value> [--yes] [options]
113
+
114
+ Description:
115
+ Preview or write one supported configuration key. Secret-like keys are rejected.
116
+
117
+ Options:
118
+ --dry-run Force preview mode
119
+ --yes Write the updated config file
120
+ --global Write the user-level config instead of the project config
121
+ --plan-fingerprint <hash>
122
+ Require the current plan to match a prior preview
123
+ --json Output machine-readable JSON`,
124
+ migrate: `ZaoWu Config Migrate
125
+
126
+ Usage:
127
+ zw config migrate [--yes] [options]
128
+
129
+ Description:
130
+ Preview or apply safe migrations to the current config file.
131
+
132
+ Options:
133
+ --dry-run Force preview mode
134
+ --yes Write the migrated config file
135
+ --plan-fingerprint <hash>
136
+ Require the current plan to match a prior preview
137
+ --json Output machine-readable JSON`,
138
+ },
139
+ data: {
140
+ inspect: `ZaoWu Data Inspect
141
+
142
+ Usage:
143
+ zw data inspect <file.csv|file.tsv|file.json|file.xlsx> [options]
144
+
145
+ Description:
146
+ Inspect rows, columns, and missing values.
147
+
148
+ Options:
149
+ --sheet <name> XLSX sheet name, defaults to the first sheet
150
+ --json Output machine-readable JSON`,
151
+ analyze: `ZaoWu Data Analyze
152
+
153
+ Usage:
154
+ zw data analyze <file.csv|file.tsv|file.json|file.xlsx> [options]
155
+
156
+ Description:
157
+ Analyze numeric columns in supported data files.
158
+
159
+ Options:
160
+ --sheet <name> XLSX sheet name, defaults to the first sheet
161
+ --json Output machine-readable JSON`,
162
+ clean: `ZaoWu Data Clean
163
+
164
+ Usage:
165
+ zw data clean <file.csv|file.tsv|file.json|file.xlsx> [--output <path>] [--yes] [options]
166
+
167
+ Description:
168
+ Trim cells, remove empty lines, and preview cleaned output by default.
169
+
170
+ Options:
171
+ --output <path> Output file path
172
+ --sheet <name> XLSX sheet name, defaults to the first sheet
173
+ --dry-run Force preview mode
174
+ --yes Write the cleaned output file
175
+ --plan-fingerprint <hash>
176
+ Require the current plan to match a prior preview
177
+ --json Output machine-readable JSON`,
178
+ schema: `ZaoWu Data Schema
179
+
180
+ Usage:
181
+ zw data schema <file.csv|file.tsv|file.json|file.xlsx> [options]
182
+
183
+ Description:
184
+ Infer a lightweight schema for each column.
185
+
186
+ Options:
187
+ --sheet <name> XLSX sheet name, defaults to the first sheet
188
+ --json Output machine-readable JSON`,
189
+ sample: `ZaoWu Data Sample
190
+
191
+ Usage:
192
+ zw data sample <file.csv|file.tsv|file.json|file.xlsx> [--rows <count>] [options]
193
+
194
+ Description:
195
+ Show sample rows from supported data files.
196
+
197
+ Options:
198
+ --rows <count> Number of rows to return, defaults to 5
199
+ --sheet <name> XLSX sheet name, defaults to the first sheet
200
+ --json Output machine-readable JSON`,
201
+ sheets: `ZaoWu Data Sheets
202
+
203
+ Usage:
204
+ zw data sheets <file.csv|file.tsv|file.json|file.xlsx> [options]
205
+
206
+ Description:
207
+ List available sheets in a spreadsheet workbook.
208
+
209
+ Options:
210
+ --json Output machine-readable JSON`,
211
+ },
212
+ dev: {
213
+ status: `ZaoWu Dev Status
214
+
215
+ Usage:
216
+ zw dev status [options]
217
+
218
+ Description:
219
+ Show Git branch, staged, unstaged, and untracked files.
220
+
221
+ Options:
222
+ --json Output machine-readable JSON`,
223
+ review: `ZaoWu Dev Review
224
+
225
+ Usage:
226
+ zw dev review [--staged|--worktree] [options]
227
+
228
+ Description:
229
+ Review staged changes by default, falling back to working-tree changes unless a mode is specified. Output includes diff hunk summaries and risk signals.
230
+
231
+ Options:
232
+ --staged Review only staged changes
233
+ --worktree Review only unstaged working-tree changes
234
+ --ai Use AI assistance to review changes
235
+ --provider <id> Specify AI provider (e.g. openai, anthropic, ollama, echo)
236
+ --model <name> Specify AI model hint
237
+ --dry-run Force preview mode
238
+ --yes Confirm an AI provider request
239
+ --plan-fingerprint <hash>
240
+ Require the current plan to match a prior preview
241
+ --json Output machine-readable JSON`,
242
+ commit: `ZaoWu Dev Commit
243
+
244
+ Usage:
245
+ zw dev commit [options]
246
+
247
+ Description:
248
+ Suggest a structured commit message from staged changes and report staged risk findings without modifying Git state.
249
+
250
+ Options:
251
+ --ai Use AI assistance to generate the commit message
252
+ --provider <id> Specify AI provider (e.g. openai, anthropic, ollama, echo)
253
+ --model <name> Specify AI model hint
254
+ --dry-run Force preview mode
255
+ --yes Confirm an AI provider request
256
+ --plan-fingerprint <hash>
257
+ Require the current plan to match a prior preview
258
+ --json Output machine-readable JSON`,
259
+ sync: `ZaoWu Dev Sync
260
+
261
+ Usage:
262
+ zw dev sync [--yes] [options]
263
+
264
+ Description:
265
+ Fetch origin and hard-reset the local branch to the same-named branch on origin.
266
+
267
+ Options:
268
+ --dry-run Force preview mode
269
+ --yes Execute the synchronization immediately, discarding any local divergence
270
+ --discard-local Required with --yes when tracked changes or local ahead commits would be discarded
271
+ --plan-fingerprint <hash>
272
+ Require the current plan to match a prior preview
273
+ --json Output machine-readable JSON`,
274
+ },
275
+ doc: {
276
+ summary: `ZaoWu Doc Summary
277
+
278
+ Usage:
279
+ zw doc summary <file> [options]
280
+
281
+ Description:
282
+ Summarize a supported document.
283
+
284
+ Options:
285
+ --json Output machine-readable JSON`,
286
+ extract: `ZaoWu Doc Extract
287
+
288
+ Usage:
289
+ zw doc extract <file> [options]
290
+
291
+ Description:
292
+ Extract headings, links, code block counts, and frontmatter.
293
+
294
+ Options:
295
+ --json Output machine-readable JSON`,
296
+ convert: `ZaoWu Doc Convert
297
+
298
+ Usage:
299
+ zw doc convert <file> [--format markdown|text] [--output <path>] [--yes] [options]
300
+
301
+ Description:
302
+ Convert supported text documents. File writes require --yes.
303
+
304
+ Options:
305
+ --format <format> markdown or text
306
+ --output <path> Output file path
307
+ --dry-run Force preview mode
308
+ --yes Write the output file
309
+ --plan-fingerprint <hash>
310
+ Require the current plan to match a prior preview
311
+ --json Output machine-readable JSON`,
312
+ outline: `ZaoWu Doc Outline
313
+
314
+ Usage:
315
+ zw doc outline <file> [options]
316
+
317
+ Description:
318
+ Create an outline from Markdown headings.
319
+
320
+ Options:
321
+ --json Output machine-readable JSON`,
322
+ search: `ZaoWu Doc Search
323
+
324
+ Usage:
325
+ zw doc search <file> <keyword> [options]
326
+
327
+ Description:
328
+ Search a supported document for a keyword.
329
+
330
+ Options:
331
+ --json Output machine-readable JSON`,
332
+ },
333
+ plugin: {
334
+ list: `ZaoWu Plugin List
335
+
336
+ Usage:
337
+ zw plugin list [options]
338
+
339
+ Description:
340
+ List locally installed plugin manifests.
341
+
342
+ Options:
343
+ --json Output machine-readable JSON`,
344
+ install: `ZaoWu Plugin Install
345
+
346
+ Usage:
347
+ zw plugin install <id> [--source <path-or-id>] [--yes] [options]
348
+
349
+ Description:
350
+ Preview or install a local plugin manifest entry.
351
+
352
+ Options:
353
+ --source <value> Plugin source id or local directory
354
+ --dry-run Force preview mode
355
+ --yes Write the local plugin manifest
356
+ --plan-fingerprint <hash>
357
+ Require the current plan to match a prior preview
358
+ --json Output machine-readable JSON`,
359
+ remove: `ZaoWu Plugin Remove
360
+
361
+ Usage:
362
+ zw plugin remove <id> [--yes] [options]
363
+
364
+ Description:
365
+ Preview or remove a local plugin manifest.
366
+
367
+ Options:
368
+ --dry-run Force preview mode
369
+ --yes Remove the local plugin manifest
370
+ --plan-fingerprint <hash>
371
+ Require the current plan to match a prior preview
372
+ --json Output machine-readable JSON`,
373
+ validate: `ZaoWu Plugin Validate
374
+
375
+ Usage:
376
+ zw plugin validate <id-or-path> [options]
377
+
378
+ Description:
379
+ Validate a plugin id, zaowu.plugin.json, plugin.json, or local source directory.
380
+
381
+ Options:
382
+ --json Output machine-readable JSON`,
383
+ },
384
+ teach: {
385
+ plan: `ZaoWu Teach Plan
386
+
387
+ Usage:
388
+ zw teach plan <topic-or-file> [options]
389
+
390
+ Description:
391
+ Create a small teaching plan from a topic or readable file.
392
+
393
+ Options:
394
+ --json Output machine-readable JSON`,
395
+ quiz: `ZaoWu Teach Quiz
396
+
397
+ Usage:
398
+ zw teach quiz <topic-or-file> [options]
399
+
400
+ Description:
401
+ Create practice questions from a topic or readable file.
402
+
403
+ Options:
404
+ --format <value> Output format (text or canvas-csv), defaults to text
405
+ --count <number> Number of questions to create (1-20), defaults to 3
406
+ --json Output machine-readable JSON`,
407
+ },
408
+ web: {
409
+ inspect: `ZaoWu Web Inspect
410
+
411
+ Usage:
412
+ zw web inspect <https-url> [--yes] [options]
413
+
414
+ Description:
415
+ Preview a target by default. Confirmed use performs one HEAD request without following redirects.
416
+
417
+ Options:
418
+ --dry-run Force preview mode
419
+ --yes Perform the network request
420
+ --plan-fingerprint <hash>
421
+ Require the current plan to match a prior preview
422
+ --json Output machine-readable JSON`,
423
+ fetch: `ZaoWu Web Fetch
424
+
425
+ Usage:
426
+ zw web fetch <https-url> [--yes] [options]
427
+
428
+ Description:
429
+ Preview a target by default. Confirmed use fetches response text without following redirects.
430
+
431
+ Options:
432
+ --dry-run Force preview mode
433
+ --yes Perform the network request
434
+ --plan-fingerprint <hash>
435
+ Require the current plan to match a prior preview
436
+ --json Output machine-readable JSON`,
437
+ },
438
+ };
439
+ //# sourceMappingURL=help-text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help-text.js","sourceRoot":"","sources":["../src/help-text.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAA2C;IACjE,EAAE,EAAE;QACF,GAAG,EAAE;;;;;;;;;;;;;;;;kDAgByC;QAC9C,SAAS,EAAE;;;;;;;;;;kDAUmC;KAC/C;IACD,IAAI,EAAE;QACJ,QAAQ,EAAE;;;;;;;;;kDASoC;QAC9C,IAAI,EAAE;;;;;;;;;kDASwC;QAC9C,GAAG,EAAE;;;;;;;;;;;;;kDAayC;KAC/C;IACD,MAAM,EAAE;QACN,IAAI,EAAE;;;;;;;;;kDASwC;QAC9C,IAAI,EAAE;;;;;;;;;kDASwC;QAC9C,QAAQ,EAAE;;;;;;;;;kDASoC;QAC9C,GAAG,EAAE;;;;;;;;;kDASyC;QAC9C,GAAG,EAAE;;;;;;;;;;;;;;kDAcyC;QAC9C,OAAO,EAAE;;;;;;;;;;;;;kDAaqC;KAC/C;IACD,IAAI,EAAE;QACJ,OAAO,EAAE;;;;;;;;;;kDAUqC;QAC9C,OAAO,EAAE;;;;;;;;;;kDAUqC;QAC9C,KAAK,EAAE;;;;;;;;;;;;;;;kDAeuC;QAC9C,MAAM,EAAE;;;;;;;;;;kDAUsC;QAC9C,MAAM,EAAE;;;;;;;;;;;kDAWsC;QAC9C,MAAM,EAAE;;;;;;;;;kDASsC;KAC/C;IACD,GAAG,EAAE;QACH,MAAM,EAAE;;;;;;;;;kDASsC;QAC9C,MAAM,EAAE;;;;;;;;;;;;;;;;;;kDAkBsC;QAC9C,MAAM,EAAE;;;;;;;;;;;;;;;;kDAgBsC;QAC9C,IAAI,EAAE;;;;;;;;;;;;;;kDAcwC;KAC/C;IACD,GAAG,EAAE;QACH,OAAO,EAAE;;;;;;;;;kDASqC;QAC9C,OAAO,EAAE;;;;;;;;;kDASqC;QAC9C,OAAO,EAAE;;;;;;;;;;;;;;;kDAeqC;QAC9C,OAAO,EAAE;;;;;;;;;kDASqC;QAC9C,MAAM,EAAE;;;;;;;;;kDASsC;KAC/C;IACD,MAAM,EAAE;QACN,IAAI,EAAE;;;;;;;;;kDASwC;QAC9C,OAAO,EAAE;;;;;;;;;;;;;;kDAcqC;QAC9C,MAAM,EAAE;;;;;;;;;;;;;kDAasC;QAC9C,QAAQ,EAAE;;;;;;;;;kDASoC;KAC/C;IACD,KAAK,EAAE;QACL,IAAI,EAAE;;;;;;;;;kDASwC;QAC9C,IAAI,EAAE;;;;;;;;;;;kDAWwC;KAC/C;IACD,GAAG,EAAE;QACH,OAAO,EAAE;;;;;;;;;;;;;kDAaqC;QAC9C,KAAK,EAAE;;;;;;;;;;;;;kDAauC;KAC/C;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/dist/index.js ADDED
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env node
2
+ import { runCli } from './run.js';
3
+ const exitCode = await runCli(process.argv.slice(2));
4
+ process.exitCode = exitCode;
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAErD,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { parseArgs, type ParsedArgs } from './args.js';
2
+ export declare const assertSupportedOptions: (parsed: ParsedArgs, commandArgs: readonly string[]) => void;
3
+ export declare const assertNoMissingOptionValues: (options: readonly string[]) => void;
4
+ export declare const assertValidOptionValues: (parsed: ReturnType<typeof parseArgs>, commandArgs: readonly string[]) => void;
5
+ //# sourceMappingURL=option-validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"option-validation.d.ts","sourceRoot":"","sources":["../src/option-validation.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AAoDjE,eAAO,MAAM,sBAAsB,GACjC,QAAQ,UAAU,EAClB,aAAa,SAAS,MAAM,EAAE,KAC7B,IA0BF,CAAC;AAEF,eAAO,MAAM,2BAA2B,GAAI,SAAS,SAAS,MAAM,EAAE,KAAG,IAaxE,CAAC;AAsBF,eAAO,MAAM,uBAAuB,GAClC,QAAQ,UAAU,CAAC,OAAO,SAAS,CAAC,EACpC,aAAa,SAAS,MAAM,EAAE,KAC7B,IA2CF,CAAC"}
@@ -0,0 +1,111 @@
1
+ import { ZaoWuError } from '@zaowu-labs/core';
2
+ import { getValue } from './args.js';
3
+ const COMMON_OPTIONS = ['--help', '--json', '--version'];
4
+ const CONFIRMATION_OPTIONS = ['--dry-run', '--plan-fingerprint', '--yes'];
5
+ const COMMAND_OPTIONS = {
6
+ init: [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS],
7
+ doctor: COMMON_OPTIONS,
8
+ 'ai:ask': [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS, '--file', '--model', '--provider'],
9
+ 'ai:providers': [...COMMON_OPTIONS, '--provider'],
10
+ 'auto:plan': COMMON_OPTIONS,
11
+ 'auto:run': [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS],
12
+ 'auto:validate': COMMON_OPTIONS,
13
+ 'config:get': COMMON_OPTIONS,
14
+ 'config:migrate': [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS],
15
+ 'config:path': COMMON_OPTIONS,
16
+ 'config:set': [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS, '--global'],
17
+ 'config:show': COMMON_OPTIONS,
18
+ 'config:validate': COMMON_OPTIONS,
19
+ 'data:analyze': [...COMMON_OPTIONS, '--sheet'],
20
+ 'data:clean': [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS, '--output', '--sheet'],
21
+ 'data:inspect': [...COMMON_OPTIONS, '--sheet'],
22
+ 'data:sample': [...COMMON_OPTIONS, '--rows', '--sheet'],
23
+ 'data:schema': [...COMMON_OPTIONS, '--sheet'],
24
+ 'data:sheets': COMMON_OPTIONS,
25
+ 'dev:commit': [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS, '--ai', '--model', '--provider'],
26
+ 'dev:review': [
27
+ ...COMMON_OPTIONS,
28
+ ...CONFIRMATION_OPTIONS,
29
+ '--ai',
30
+ '--model',
31
+ '--provider',
32
+ '--staged',
33
+ '--worktree',
34
+ ],
35
+ 'dev:status': COMMON_OPTIONS,
36
+ 'dev:sync': [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS, '--discard-local'],
37
+ 'doc:convert': [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS, '--format', '--output'],
38
+ 'doc:extract': COMMON_OPTIONS,
39
+ 'doc:outline': COMMON_OPTIONS,
40
+ 'doc:search': COMMON_OPTIONS,
41
+ 'doc:summary': COMMON_OPTIONS,
42
+ 'plugin:install': [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS, '--source'],
43
+ 'plugin:list': COMMON_OPTIONS,
44
+ 'plugin:remove': [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS],
45
+ 'plugin:validate': COMMON_OPTIONS,
46
+ 'teach:plan': COMMON_OPTIONS,
47
+ 'teach:quiz': [...COMMON_OPTIONS, '--count', '--format'],
48
+ 'web:fetch': [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS],
49
+ 'web:inspect': [...COMMON_OPTIONS, ...CONFIRMATION_OPTIONS],
50
+ };
51
+ export const assertSupportedOptions = (parsed, commandArgs) => {
52
+ const [command, action] = commandArgs;
53
+ if (!command) {
54
+ return;
55
+ }
56
+ const commandKey = action ? `${command}:${action}` : command;
57
+ const allowed = new Set(COMMAND_OPTIONS[commandKey] ?? COMMON_OPTIONS);
58
+ const unsupported = [...parsed.options].filter((option) => !allowed.has(option));
59
+ if (unsupported.length === 0) {
60
+ return;
61
+ }
62
+ const optionList = unsupported.join(', ');
63
+ const commandName = action ? `zw ${command} ${action}` : `zw ${command}`;
64
+ throw new ZaoWuError({
65
+ code: 'OPTION_UNSUPPORTED',
66
+ message: 'Option is not supported by this command.',
67
+ why: `The option${unsupported.length === 1 ? '' : 's'} ${optionList} ` +
68
+ `cannot be used with \`${commandName}\`.`,
69
+ fix: `Run \`${commandName} --help\` to see the supported options.`,
70
+ });
71
+ };
72
+ export const assertNoMissingOptionValues = (options) => {
73
+ if (options.length === 0) {
74
+ return;
75
+ }
76
+ const optionList = options.join(', ');
77
+ throw new ZaoWuError({
78
+ code: 'OPTION_VALUE_REQUIRED',
79
+ message: 'Option value is required.',
80
+ why: `The option${options.length === 1 ? '' : 's'} ${optionList} must be followed by a value.`,
81
+ fix: `Provide a value, for example \`${options[0]} value\`, or remove the option.`,
82
+ });
83
+ };
84
+ const assertOptionValue = (option, value, isValid, expected) => {
85
+ if (value === undefined || isValid(value)) {
86
+ return;
87
+ }
88
+ throw new ZaoWuError({
89
+ code: 'OPTION_VALUE_INVALID',
90
+ message: 'Option value is invalid.',
91
+ why: `The option ${option} received \`${value}\`, but expected ${expected}.`,
92
+ fix: `Use ${option} with ${expected}, or remove the option.`,
93
+ });
94
+ };
95
+ const isPositiveIntegerText = (value) => /^[1-9]\d*$/.test(value);
96
+ export const assertValidOptionValues = (parsed, commandArgs) => {
97
+ assertOptionValue('--plan-fingerprint', getValue(parsed, '--plan-fingerprint'), (value) => /^[a-f0-9]{64}$/i.test(value.trim()), 'a 64-character hexadecimal fingerprint');
98
+ const format = getValue(parsed, '--format');
99
+ const [domain, action] = commandArgs;
100
+ if (domain === 'data' && action === 'sample') {
101
+ assertOptionValue('--rows', getValue(parsed, '--rows'), isPositiveIntegerText, 'a positive integer');
102
+ }
103
+ if (domain === 'doc' && action === 'convert') {
104
+ assertOptionValue('--format', format, (value) => value === 'markdown' || value === 'text', '`markdown` or `text`');
105
+ }
106
+ if (domain === 'teach' && action === 'quiz') {
107
+ assertOptionValue('--count', getValue(parsed, '--count'), (value) => isPositiveIntegerText(value) && Number(value) <= 20, 'a whole number between 1 and 20');
108
+ assertOptionValue('--format', format, (value) => value === 'text' || value === 'canvas-csv', '`text` or `canvas-csv`');
109
+ }
110
+ };
111
+ //# sourceMappingURL=option-validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"option-validation.js","sourceRoot":"","sources":["../src/option-validation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { CliResult } from './types.js';
2
+ export declare const createResult: (exitCode: number, stdout?: string, stderr?: string) => CliResult;
3
+ export declare const formatRows: (rows: readonly (readonly [string, string])[]) => string;
4
+ export declare const stringifyJSON: (value: unknown) => string;
5
+ //# sourceMappingURL=output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,eAAO,MAAM,YAAY,GAAI,UAAU,MAAM,EAAE,eAAW,EAAE,eAAW,KAAG,SAIxE,CAAC;AAEH,eAAO,MAAM,UAAU,GAAI,MAAM,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,KAAG,MAIzE,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,OAAO,OAAO,KAAG,MAA+B,CAAC"}
package/dist/output.js ADDED
@@ -0,0 +1,11 @@
1
+ export const createResult = (exitCode, stdout = '', stderr = '') => ({
2
+ exitCode,
3
+ stdout,
4
+ stderr,
5
+ });
6
+ export const formatRows = (rows) => {
7
+ const width = Math.max(...rows.map(([label]) => label.length));
8
+ return rows.map(([label, summary]) => ` ${label.padEnd(width + 2)}${summary}`).join('\n');
9
+ };
10
+ export const stringifyJSON = (value) => JSON.stringify(value);
11
+ //# sourceMappingURL=output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAE,MAAM,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAa,EAAE,CAAC,CAAC;IACtF,QAAQ;IACR,MAAM;IACN,MAAM;CACP,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAA4C,EAAU,EAAE;IACjF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAE/D,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7F,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAc,EAAU,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { type OperationPlan } from '@zaowu-labs/core';
2
+ import type { CliExecutionOptions } from './types.js';
3
+ type CheckStatus = 'ok' | 'warning' | 'missing';
4
+ type OverallStatus = 'ok' | 'warning';
5
+ interface DoctorCheck {
6
+ name: string;
7
+ status: CheckStatus;
8
+ version?: string;
9
+ details?: string;
10
+ fix?: string;
11
+ }
12
+ export interface DoctorResult {
13
+ schemaVersion: 1;
14
+ status: OverallStatus;
15
+ checks: DoctorCheck[];
16
+ nextSteps: string[];
17
+ operationPlan: OperationPlan;
18
+ }
19
+ export declare const buildDoctorResult: (options?: CliExecutionOptions) => Promise<DoctorResult>;
20
+ export declare const formatDoctorHuman: (doctor: DoctorResult) => string;
21
+ export {};
22
+ //# sourceMappingURL=root-doctor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"root-doctor.d.ts","sourceRoot":"","sources":["../src/root-doctor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGzF,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,YAAY,CAAC;AAErE,KAAK,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,CAAC;AAChD,KAAK,aAAa,GAAG,IAAI,GAAG,SAAS,CAAC;AAEtC,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,aAAa,EAAE,CAAC,CAAC;IACjB,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,aAAa,EAAE,aAAa,CAAC;CAC9B;AA4ND,eAAO,MAAM,iBAAiB,GAC5B,UAAS,mBAAwB,KAChC,OAAO,CAAC,YAAY,CAoDtB,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,QAAQ,YAAY,KAAG,MAwBxD,CAAC"}