mxroute-cli 1.0.3 → 1.1.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 (78) hide show
  1. package/dist/commands/accounts.js +15 -5
  2. package/dist/commands/accounts.js.map +1 -1
  3. package/dist/commands/aliases.js +13 -5
  4. package/dist/commands/aliases.js.map +1 -1
  5. package/dist/commands/audit.js +34 -9
  6. package/dist/commands/audit.js.map +1 -1
  7. package/dist/commands/autoresponder.js +15 -5
  8. package/dist/commands/autoresponder.js.map +1 -1
  9. package/dist/commands/benchmark.js +38 -18
  10. package/dist/commands/benchmark.js.map +1 -1
  11. package/dist/commands/catchall.js +32 -5
  12. package/dist/commands/catchall.js.map +1 -1
  13. package/dist/commands/dashboard-app.d.ts +1 -0
  14. package/dist/commands/dashboard-app.js +100 -0
  15. package/dist/commands/dashboard-app.js.map +1 -0
  16. package/dist/commands/dashboard.d.ts +1 -0
  17. package/dist/commands/dashboard.js +13 -0
  18. package/dist/commands/dashboard.js.map +1 -0
  19. package/dist/commands/diff.js +31 -13
  20. package/dist/commands/diff.js.map +1 -1
  21. package/dist/commands/dns.js +25 -9
  22. package/dist/commands/dns.js.map +1 -1
  23. package/dist/commands/dnsapi.js +36 -15
  24. package/dist/commands/dnsapi.js.map +1 -1
  25. package/dist/commands/doctor.js +113 -43
  26. package/dist/commands/doctor.js.map +1 -1
  27. package/dist/commands/domains.js +38 -10
  28. package/dist/commands/domains.js.map +1 -1
  29. package/dist/commands/export-import.js +20 -5
  30. package/dist/commands/export-import.js.map +1 -1
  31. package/dist/commands/forwarders.js +26 -5
  32. package/dist/commands/forwarders.js.map +1 -1
  33. package/dist/commands/guide.d.ts +1 -0
  34. package/dist/commands/guide.js +86 -0
  35. package/dist/commands/guide.js.map +1 -0
  36. package/dist/commands/ip.js +26 -8
  37. package/dist/commands/ip.js.map +1 -1
  38. package/dist/commands/lists.js +15 -5
  39. package/dist/commands/lists.js.map +1 -1
  40. package/dist/commands/monitor.js +18 -6
  41. package/dist/commands/monitor.js.map +1 -1
  42. package/dist/commands/password.js +1 -1
  43. package/dist/commands/password.js.map +1 -1
  44. package/dist/commands/playbook.d.ts +6 -0
  45. package/dist/commands/playbook.js +188 -0
  46. package/dist/commands/playbook.js.map +1 -0
  47. package/dist/commands/quota-policy.js.map +1 -1
  48. package/dist/commands/quota.js +19 -5
  49. package/dist/commands/quota.js.map +1 -1
  50. package/dist/commands/rate-limit.js +19 -5
  51. package/dist/commands/rate-limit.js.map +1 -1
  52. package/dist/commands/reputation.js +32 -15
  53. package/dist/commands/reputation.js.map +1 -1
  54. package/dist/commands/spam.js +15 -5
  55. package/dist/commands/spam.js.map +1 -1
  56. package/dist/commands/ssl-check.js +45 -34
  57. package/dist/commands/ssl-check.js.map +1 -1
  58. package/dist/commands/suggest.d.ts +1 -0
  59. package/dist/commands/suggest.js +124 -0
  60. package/dist/commands/suggest.js.map +1 -0
  61. package/dist/commands/usage-history.js +16 -5
  62. package/dist/commands/usage-history.js.map +1 -1
  63. package/dist/commands/whoami.js +40 -10
  64. package/dist/commands/whoami.js.map +1 -1
  65. package/dist/index.js +63 -0
  66. package/dist/index.js.map +1 -1
  67. package/dist/utils/command-registry.d.ts +15 -0
  68. package/dist/utils/command-registry.js +608 -0
  69. package/dist/utils/command-registry.js.map +1 -0
  70. package/dist/utils/json-output.d.ts +6 -0
  71. package/dist/utils/json-output.js +42 -0
  72. package/dist/utils/json-output.js.map +1 -0
  73. package/dist/utils/playbook-runner.d.ts +29 -0
  74. package/dist/utils/playbook-runner.js +129 -0
  75. package/dist/utils/playbook-runner.js.map +1 -0
  76. package/dist/utils/shared.js +9 -0
  77. package/dist/utils/shared.js.map +1 -1
  78. package/package.json +8 -3
@@ -0,0 +1,608 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.commandExamples = exports.categories = void 0;
4
+ exports.findCategory = findCategory;
5
+ exports.findCommand = findCommand;
6
+ exports.getAllCommands = getAllCommands;
7
+ exports.categories = {
8
+ 'getting-started': {
9
+ name: 'Getting Started',
10
+ description: 'Initial setup, authentication, and account configuration',
11
+ commands: ['setup', 'config', 'auth', 'status', 'whoami'],
12
+ },
13
+ 'email-management': {
14
+ name: 'Email Management',
15
+ description: 'Manage email accounts, forwarders, autoresponders, filters, and mailing lists',
16
+ commands: ['accounts', 'forwarders', 'autoresponder', 'catchall', 'filters', 'lists', 'aliases'],
17
+ },
18
+ 'mail-client': {
19
+ name: 'Mail Client',
20
+ description: 'Read, compose, reply, forward, and manage email messages and folders',
21
+ commands: ['mail'],
22
+ },
23
+ 'dns-deliverability': {
24
+ name: 'DNS & Deliverability',
25
+ description: 'Check and manage DNS records, IP reputation, and email deliverability',
26
+ commands: ['dns', 'dnsrecords', 'ip', 'reputation', 'ssl-check'],
27
+ },
28
+ 'email-sending': {
29
+ name: 'Email Sending',
30
+ description: 'Send emails, run delivery tests, manage webhooks and templates',
31
+ commands: ['send', 'test', 'webhook', 'templates'],
32
+ },
33
+ 'spam-security': {
34
+ name: 'Spam & Security',
35
+ description: 'Configure spam filters, run security audits, and manage password policies',
36
+ commands: ['spam', 'audit', 'password-audit', 'cleanup'],
37
+ },
38
+ 'monitoring-ops': {
39
+ name: 'Monitoring & Ops',
40
+ description: 'Monitor mail services, run diagnostics, benchmarks, and scheduled tasks',
41
+ commands: ['monitor', 'doctor', 'benchmark', 'cron', 'rate-limit'],
42
+ },
43
+ 'data-migration': {
44
+ name: 'Data & Migration',
45
+ description: 'Export, import, diff, bulk-operate, migrate, backup, and review usage history',
46
+ commands: ['export', 'import', 'diff', 'bulk', 'migrate', 'backup', 'usage-history'],
47
+ },
48
+ business: {
49
+ name: 'Business',
50
+ description: 'Onboard clients, manage provisioning, quotas, credentials, and welcome flows',
51
+ commands: ['onboard', 'provision', 'deprovision', 'welcome-send', 'credentials-export', 'quota', 'quota-policy'],
52
+ },
53
+ platform: {
54
+ name: 'Platform',
55
+ description: 'AI-powered guides, suggestions, playbooks, dashboards, shell completions, and integrations',
56
+ commands: [
57
+ 'guide',
58
+ 'suggest',
59
+ 'playbook',
60
+ 'dashboard',
61
+ 'completions',
62
+ 'open',
63
+ 'share',
64
+ 'report',
65
+ 'fix',
66
+ 'schedule',
67
+ 'notify',
68
+ ],
69
+ },
70
+ };
71
+ exports.commandExamples = {
72
+ // Getting Started
73
+ setup: {
74
+ description: 'Interactive wizard to configure your MXroute API credentials and preferences',
75
+ examples: ['mxroute setup', 'mxroute setup --api-key YOUR_KEY --server mail.example.com', 'mxroute setup --json'],
76
+ related: ['config', 'auth', 'status'],
77
+ },
78
+ config: {
79
+ description: 'View or update CLI configuration settings',
80
+ examples: ['mxroute config', 'mxroute config set server mail.example.com', 'mxroute config --json'],
81
+ related: ['setup', 'auth', 'whoami'],
82
+ },
83
+ auth: {
84
+ description: 'Authenticate and validate your MXroute API credentials',
85
+ examples: ['mxroute auth', 'mxroute auth --api-key YOUR_KEY', 'mxroute auth --json'],
86
+ related: ['setup', 'config', 'whoami'],
87
+ },
88
+ status: {
89
+ description: 'Show current connection status and service health',
90
+ examples: ['mxroute status', 'mxroute status --json', 'mxroute status --verbose'],
91
+ related: ['doctor', 'monitor', 'auth'],
92
+ },
93
+ whoami: {
94
+ description: 'Display the currently authenticated account and server details',
95
+ examples: ['mxroute whoami', 'mxroute whoami --json'],
96
+ related: ['auth', 'config', 'status'],
97
+ },
98
+ // Email Management
99
+ 'accounts list': {
100
+ description: 'List all email accounts for a domain',
101
+ examples: [
102
+ 'mxroute accounts list',
103
+ 'mxroute accounts list example.com',
104
+ "mxroute accounts list --json | jq '.data.accounts[]'",
105
+ ],
106
+ related: ['accounts create', 'accounts delete', 'forwarders list'],
107
+ },
108
+ 'accounts create': {
109
+ description: 'Create a new email account on a domain',
110
+ examples: [
111
+ 'mxroute accounts create user@example.com --password secret',
112
+ 'mxroute accounts create user@example.com --quota 1024',
113
+ 'mxroute accounts create user@example.com --json',
114
+ ],
115
+ related: ['accounts list', 'accounts delete', 'quota'],
116
+ },
117
+ 'accounts delete': {
118
+ description: 'Delete an email account',
119
+ examples: [
120
+ 'mxroute accounts delete user@example.com',
121
+ 'mxroute accounts delete user@example.com --confirm',
122
+ 'mxroute accounts delete user@example.com --json',
123
+ ],
124
+ related: ['accounts list', 'accounts create', 'deprovision'],
125
+ },
126
+ 'forwarders list': {
127
+ description: 'List all email forwarders for a domain',
128
+ examples: ['mxroute forwarders list', 'mxroute forwarders list example.com', 'mxroute forwarders list --json'],
129
+ related: ['forwarders create', 'forwarders delete', 'accounts list'],
130
+ },
131
+ 'forwarders create': {
132
+ description: 'Create an email forwarder from one address to another',
133
+ examples: [
134
+ 'mxroute forwarders create info@example.com admin@example.com',
135
+ 'mxroute forwarders create --from info@example.com --to admin@example.com',
136
+ 'mxroute forwarders create info@example.com admin@example.com --json',
137
+ ],
138
+ related: ['forwarders list', 'forwarders delete', 'catchall'],
139
+ },
140
+ catchall: {
141
+ description: 'Get or set the catch-all email address for a domain',
142
+ examples: [
143
+ 'mxroute catchall example.com',
144
+ 'mxroute catchall example.com --set admin@example.com',
145
+ 'mxroute catchall --json',
146
+ ],
147
+ related: ['forwarders list', 'accounts list', 'filters'],
148
+ },
149
+ autoresponder: {
150
+ description: 'Manage autoresponders (out-of-office replies) for email accounts',
151
+ examples: [
152
+ 'mxroute autoresponder list user@example.com',
153
+ 'mxroute autoresponder create user@example.com --message "I am away"',
154
+ 'mxroute autoresponder delete user@example.com',
155
+ ],
156
+ related: ['accounts list', 'filters', 'templates'],
157
+ },
158
+ filters: {
159
+ description: 'Manage email filters for accounts',
160
+ examples: [
161
+ 'mxroute filters list user@example.com',
162
+ 'mxroute filters create user@example.com --rule "subject contains SPAM" --action delete',
163
+ 'mxroute filters delete user@example.com --id FILTER_ID',
164
+ ],
165
+ related: ['spam', 'accounts list', 'autoresponder'],
166
+ },
167
+ lists: {
168
+ description: 'Manage mailing lists for a domain',
169
+ examples: [
170
+ 'mxroute lists list example.com',
171
+ 'mxroute lists create newsletter@example.com',
172
+ 'mxroute lists members newsletter@example.com',
173
+ ],
174
+ related: ['aliases', 'forwarders list', 'accounts list'],
175
+ },
176
+ aliases: {
177
+ description: 'Manage domain aliases that point to a primary domain',
178
+ examples: [
179
+ 'mxroute aliases list',
180
+ 'mxroute aliases add alias.com --primary example.com',
181
+ 'mxroute aliases remove alias.com',
182
+ ],
183
+ related: ['lists', 'forwarders list', 'dns check'],
184
+ },
185
+ // Mail Client
186
+ 'mail inbox': {
187
+ description: 'View your email inbox',
188
+ examples: [
189
+ 'mxroute mail inbox',
190
+ 'mxroute mail inbox --account user@example.com',
191
+ "mxroute mail inbox --json | jq '.data.messages[]'",
192
+ ],
193
+ related: ['mail read', 'mail compose', 'mail search'],
194
+ },
195
+ 'mail read': {
196
+ description: 'Read a specific email message',
197
+ examples: [
198
+ 'mxroute mail read MESSAGE_ID',
199
+ 'mxroute mail read MESSAGE_ID --account user@example.com',
200
+ 'mxroute mail read MESSAGE_ID --json',
201
+ ],
202
+ related: ['mail inbox', 'mail reply', 'mail forward'],
203
+ },
204
+ 'mail compose': {
205
+ description: 'Compose and send a new email message',
206
+ examples: [
207
+ 'mxroute mail compose --to recipient@example.com --subject "Hello"',
208
+ 'mxroute mail compose --to recipient@example.com --body "Message body"',
209
+ 'mxroute mail compose --template welcome --to user@example.com',
210
+ ],
211
+ related: ['mail reply', 'send', 'templates'],
212
+ },
213
+ 'mail reply': {
214
+ description: 'Reply to an email message',
215
+ examples: [
216
+ 'mxroute mail reply MESSAGE_ID --body "Reply text"',
217
+ 'mxroute mail reply MESSAGE_ID --all',
218
+ 'mxroute mail reply MESSAGE_ID --json',
219
+ ],
220
+ related: ['mail read', 'mail forward', 'mail compose'],
221
+ },
222
+ 'mail forward': {
223
+ description: 'Forward an email message to another address',
224
+ examples: [
225
+ 'mxroute mail forward MESSAGE_ID --to other@example.com',
226
+ 'mxroute mail forward MESSAGE_ID --to other@example.com --note "FYI"',
227
+ 'mxroute mail forward MESSAGE_ID --json',
228
+ ],
229
+ related: ['mail reply', 'mail read', 'forwarders create'],
230
+ },
231
+ 'mail search': {
232
+ description: 'Search emails by keyword, sender, subject, or date range',
233
+ examples: [
234
+ 'mxroute mail search "invoice"',
235
+ 'mxroute mail search --from sender@example.com --since 2024-01-01',
236
+ 'mxroute mail search "urgent" --json',
237
+ ],
238
+ related: ['mail inbox', 'mail read', 'bulk'],
239
+ },
240
+ 'mail folders': {
241
+ description: 'List and manage mail folders',
242
+ examples: [
243
+ 'mxroute mail folders list',
244
+ 'mxroute mail folders create "Archive"',
245
+ 'mxroute mail folders delete "Old"',
246
+ ],
247
+ related: ['mail inbox', 'mail search', 'bulk'],
248
+ },
249
+ // DNS & Deliverability
250
+ 'dns check': {
251
+ description: 'Verify MX, SPF, DKIM, and DMARC records for a domain',
252
+ examples: [
253
+ 'mxroute dns check example.com',
254
+ 'mxroute dns check example.com --json',
255
+ "mxroute dns check --json | jq '.data.checks[]'",
256
+ ],
257
+ related: ['dns setup', 'dns watch', 'audit', 'fix'],
258
+ },
259
+ 'dns setup': {
260
+ description: 'Generate recommended DNS records for a domain',
261
+ examples: [
262
+ 'mxroute dns setup example.com',
263
+ 'mxroute dns setup example.com --registrar cloudflare',
264
+ 'mxroute dns setup example.com --json',
265
+ ],
266
+ related: ['dns check', 'dnsrecords', 'fix'],
267
+ },
268
+ 'dns watch': {
269
+ description: 'Continuously monitor DNS propagation for a domain',
270
+ examples: [
271
+ 'mxroute dns watch example.com',
272
+ 'mxroute dns watch example.com --interval 60',
273
+ 'mxroute dns watch example.com --json',
274
+ ],
275
+ related: ['dns check', 'monitor', 'status'],
276
+ },
277
+ dnsrecords: {
278
+ description: 'List, add, or delete raw DNS records for a domain',
279
+ examples: [
280
+ 'mxroute dnsrecords list example.com',
281
+ 'mxroute dnsrecords add example.com --type TXT --name "@" --value "v=spf1..."',
282
+ 'mxroute dnsrecords delete example.com --id RECORD_ID',
283
+ ],
284
+ related: ['dns check', 'dns setup', 'fix'],
285
+ },
286
+ reputation: {
287
+ description: 'Check IP and domain reputation across major blacklists',
288
+ examples: ['mxroute reputation example.com', 'mxroute reputation 1.2.3.4', 'mxroute reputation example.com --json'],
289
+ related: ['dns check', 'audit', 'blacklist'],
290
+ },
291
+ 'ssl-check': {
292
+ description: 'Verify SSL/TLS certificate validity for mail server hostnames',
293
+ examples: [
294
+ 'mxroute ssl-check mail.example.com',
295
+ 'mxroute ssl-check --json',
296
+ "mxroute ssl-check mail.example.com --json | jq '.data.expiry'",
297
+ ],
298
+ related: ['dns check', 'status', 'doctor'],
299
+ },
300
+ // Email Sending
301
+ send: {
302
+ description: 'Send an email directly via SMTP or the MXroute API',
303
+ examples: [
304
+ 'mxroute send --to recipient@example.com --subject "Hello" --body "World"',
305
+ 'mxroute send --from user@example.com --to recipient@example.com --template welcome',
306
+ 'mxroute send --json',
307
+ ],
308
+ related: ['mail compose', 'templates', 'test'],
309
+ },
310
+ test: {
311
+ description: 'Test email delivery and SMTP connectivity',
312
+ examples: [
313
+ 'mxroute test delivery example.com',
314
+ 'mxroute test smtp mail.example.com',
315
+ 'mxroute test delivery example.com --json',
316
+ ],
317
+ related: ['send', 'dns check', 'doctor'],
318
+ },
319
+ webhook: {
320
+ description: 'Manage webhooks for email events',
321
+ examples: [
322
+ 'mxroute webhook list',
323
+ 'mxroute webhook create --url https://example.com/hook --event bounce',
324
+ 'mxroute webhook delete WEBHOOK_ID',
325
+ ],
326
+ related: ['send', 'monitor', 'notify'],
327
+ },
328
+ templates: {
329
+ description: 'Manage reusable email templates',
330
+ examples: [
331
+ 'mxroute templates list',
332
+ 'mxroute templates create welcome --subject "Welcome!" --file welcome.html',
333
+ 'mxroute templates delete TEMPLATE_ID',
334
+ ],
335
+ related: ['send', 'mail compose', 'welcome-send'],
336
+ },
337
+ // Spam & Security
338
+ spam: {
339
+ description: 'View and configure spam filter settings for accounts',
340
+ examples: [
341
+ 'mxroute spam config user@example.com',
342
+ 'mxroute spam set user@example.com --level 5',
343
+ 'mxroute spam --json',
344
+ ],
345
+ related: ['filters', 'audit', 'cleanup'],
346
+ },
347
+ audit: {
348
+ description: 'Run a comprehensive security audit of your email configuration',
349
+ examples: ['mxroute audit', 'mxroute audit example.com', "mxroute audit --json | jq '.data.issues[]'"],
350
+ related: ['dns check', 'spam', 'password-audit', 'fix'],
351
+ },
352
+ 'password-audit': {
353
+ description: 'Audit email account passwords for strength and security compliance',
354
+ examples: ['mxroute password-audit', 'mxroute password-audit example.com', 'mxroute password-audit --json'],
355
+ related: ['audit', 'accounts list', 'security'],
356
+ },
357
+ cleanup: {
358
+ description: 'Identify and remove orphaned accounts, stale forwarders, and unused resources',
359
+ examples: ['mxroute cleanup', 'mxroute cleanup --dry-run', 'mxroute cleanup --json'],
360
+ related: ['audit', 'bulk', 'export'],
361
+ },
362
+ // Monitoring & Ops
363
+ monitor: {
364
+ description: 'Start real-time monitoring of mail queues and delivery metrics',
365
+ examples: ['mxroute monitor', 'mxroute monitor --interval 30', 'mxroute monitor --json'],
366
+ related: ['status', 'doctor', 'benchmark'],
367
+ },
368
+ doctor: {
369
+ description: 'Run automated diagnostics to detect and suggest fixes for configuration issues',
370
+ examples: ['mxroute doctor', 'mxroute doctor example.com', 'mxroute doctor --json'],
371
+ related: ['status', 'audit', 'fix', 'monitor'],
372
+ },
373
+ benchmark: {
374
+ description: 'Benchmark SMTP send performance and measure server response times',
375
+ examples: ['mxroute benchmark', 'mxroute benchmark --count 100', 'mxroute benchmark --json'],
376
+ related: ['test', 'monitor', 'doctor'],
377
+ },
378
+ cron: {
379
+ description: 'Schedule recurring CLI tasks using cron syntax',
380
+ examples: [
381
+ 'mxroute cron list',
382
+ 'mxroute cron add "0 * * * *" "mxroute dns check example.com"',
383
+ 'mxroute cron delete CRON_ID',
384
+ ],
385
+ related: ['schedule', 'monitor', 'notify'],
386
+ },
387
+ 'rate-limit': {
388
+ description: 'Check current API rate limit usage and remaining quota',
389
+ examples: ['mxroute rate-limit', 'mxroute rate-limit --json', "mxroute rate-limit --json | jq '.data.remaining'"],
390
+ related: ['status', 'monitor', 'quota'],
391
+ },
392
+ // Data & Migration
393
+ export: {
394
+ description: 'Export accounts, forwarders, DNS records, or settings to a file',
395
+ examples: [
396
+ 'mxroute export accounts --output accounts.json',
397
+ 'mxroute export forwarders example.com --output forwarders.csv',
398
+ 'mxroute export --all --output backup.json',
399
+ ],
400
+ related: ['import', 'backup', 'migrate'],
401
+ },
402
+ import: {
403
+ description: 'Import accounts, forwarders, or DNS records from a file',
404
+ examples: [
405
+ 'mxroute import accounts --file accounts.json',
406
+ 'mxroute import forwarders --file forwarders.csv',
407
+ 'mxroute import --dry-run --file backup.json',
408
+ ],
409
+ related: ['export', 'migrate', 'provision'],
410
+ },
411
+ diff: {
412
+ description: 'Compare current configuration against a saved snapshot or another domain',
413
+ examples: [
414
+ 'mxroute diff example.com --snapshot snapshot.json',
415
+ 'mxroute diff example.com other.com',
416
+ 'mxroute diff --json',
417
+ ],
418
+ related: ['export', 'audit', 'migrate'],
419
+ },
420
+ bulk: {
421
+ description: 'Perform bulk operations on accounts, messages, or forwarders',
422
+ examples: [
423
+ 'mxroute bulk delete --accounts --filter "domain:old.com"',
424
+ 'mxroute bulk move --messages --from inbox --to Archive',
425
+ 'mxroute bulk --json',
426
+ ],
427
+ related: ['cleanup', 'export', 'migrate'],
428
+ },
429
+ migrate: {
430
+ description: 'Migrate email accounts and settings from one server or domain to another',
431
+ examples: [
432
+ 'mxroute migrate --from old.com --to new.com',
433
+ 'mxroute migrate --dry-run --from old.com --to new.com',
434
+ 'mxroute migrate --json',
435
+ ],
436
+ related: ['export', 'import', 'provision'],
437
+ },
438
+ 'usage-history': {
439
+ description: 'View historical usage data including storage, bandwidth, and message counts',
440
+ examples: [
441
+ 'mxroute usage-history',
442
+ 'mxroute usage-history --from 2024-01-01 --to 2024-12-31',
443
+ 'mxroute usage-history --json',
444
+ ],
445
+ related: ['quota', 'monitor', 'report'],
446
+ },
447
+ // Business
448
+ onboard: {
449
+ description: 'Guided onboarding flow for setting up a new client domain end-to-end',
450
+ examples: ['mxroute onboard example.com', 'mxroute onboard example.com --plan business', 'mxroute onboard --json'],
451
+ related: ['provision', 'welcome-send', 'dns setup'],
452
+ },
453
+ provision: {
454
+ description: 'Automatically provision a new domain with accounts, DNS, and defaults',
455
+ examples: [
456
+ 'mxroute provision example.com',
457
+ 'mxroute provision example.com --plan --execute',
458
+ 'mxroute provision --json',
459
+ ],
460
+ related: ['deprovision', 'onboard', 'import'],
461
+ },
462
+ deprovision: {
463
+ description: 'Remove all resources for a domain and revoke access',
464
+ examples: [
465
+ 'mxroute deprovision example.com',
466
+ 'mxroute deprovision example.com --confirm',
467
+ 'mxroute deprovision example.com --json',
468
+ ],
469
+ related: ['provision', 'cleanup', 'bulk'],
470
+ },
471
+ 'welcome-send': {
472
+ description: 'Send a welcome email to newly created accounts',
473
+ examples: [
474
+ 'mxroute welcome-send user@example.com',
475
+ 'mxroute welcome-send --domain example.com --all',
476
+ 'mxroute welcome-send --json',
477
+ ],
478
+ related: ['templates', 'send', 'onboard'],
479
+ },
480
+ 'credentials-export': {
481
+ description: 'Securely export account credentials for client handoff',
482
+ examples: [
483
+ 'mxroute credentials-export example.com',
484
+ 'mxroute credentials-export example.com --format csv --output creds.csv',
485
+ 'mxroute credentials-export --json',
486
+ ],
487
+ related: ['export', 'onboard', 'provision'],
488
+ },
489
+ quota: {
490
+ description: 'View or set storage quotas for email accounts',
491
+ examples: [
492
+ 'mxroute quota user@example.com',
493
+ 'mxroute quota set user@example.com --limit 2048',
494
+ 'mxroute quota --json',
495
+ ],
496
+ related: ['quota-policy', 'accounts list', 'usage-history'],
497
+ },
498
+ 'quota-policy': {
499
+ description: 'Define and apply quota policies across domains or account groups',
500
+ examples: [
501
+ 'mxroute quota-policy list',
502
+ 'mxroute quota-policy apply example.com --policy standard',
503
+ 'mxroute quota-policy --json',
504
+ ],
505
+ related: ['quota', 'provision', 'accounts list'],
506
+ },
507
+ // Platform
508
+ guide: {
509
+ description: 'Access AI-powered guides and documentation for common tasks',
510
+ examples: ['mxroute guide "how to set up SPF"', 'mxroute guide --category dns', 'mxroute guide --json'],
511
+ related: ['suggest', 'playbook', 'fix'],
512
+ },
513
+ suggest: {
514
+ description: 'Get AI-driven command suggestions based on your current context',
515
+ examples: ['mxroute suggest', 'mxroute suggest --context "dns issues"', 'mxroute suggest --json'],
516
+ related: ['guide', 'fix', 'playbook'],
517
+ },
518
+ playbook: {
519
+ description: 'Run a predefined step-by-step operational playbook',
520
+ examples: ['mxroute playbook list', 'mxroute playbook run new-client-setup', 'mxroute playbook --json'],
521
+ related: ['guide', 'onboard', 'provision'],
522
+ },
523
+ dashboard: {
524
+ description: 'Open an interactive terminal dashboard with key metrics and alerts',
525
+ examples: ['mxroute dashboard', 'mxroute dashboard --refresh 30', 'mxroute dashboard --json'],
526
+ related: ['monitor', 'status', 'report'],
527
+ },
528
+ completions: {
529
+ description: 'Generate shell completion scripts for bash, zsh, or fish',
530
+ examples: [
531
+ 'mxroute completions bash',
532
+ 'mxroute completions zsh > ~/.zsh/completions/_mxroute',
533
+ 'mxroute completions fish',
534
+ ],
535
+ related: ['guide', 'config'],
536
+ },
537
+ fix: {
538
+ description: 'Automatically apply fixes for detected configuration issues',
539
+ examples: ['mxroute fix example.com', 'mxroute fix example.com --dry-run', 'mxroute fix --json'],
540
+ related: ['doctor', 'audit', 'dns setup'],
541
+ },
542
+ report: {
543
+ description: 'Generate a summary report of account health, usage, and deliverability',
544
+ examples: ['mxroute report', 'mxroute report example.com --format pdf', 'mxroute report --json'],
545
+ related: ['audit', 'usage-history', 'dashboard'],
546
+ },
547
+ notify: {
548
+ description: 'Configure notifications for email events, alerts, and threshold breaches',
549
+ examples: [
550
+ 'mxroute notify list',
551
+ 'mxroute notify add --event bounce --channel slack --url https://hooks.slack.com/...',
552
+ 'mxroute notify --json',
553
+ ],
554
+ related: ['webhook', 'monitor', 'cron'],
555
+ },
556
+ };
557
+ function findCategory(query) {
558
+ const q = query.toLowerCase().trim();
559
+ // Exact match on category name
560
+ for (const cat of Object.values(exports.categories)) {
561
+ if (cat.name.toLowerCase() === q) {
562
+ return cat;
563
+ }
564
+ }
565
+ // Fuzzy: query appears in name or description
566
+ for (const cat of Object.values(exports.categories)) {
567
+ if (cat.name.toLowerCase().includes(q) || cat.description.toLowerCase().includes(q)) {
568
+ return cat;
569
+ }
570
+ }
571
+ // Fuzzy: query matches any command in the category
572
+ for (const cat of Object.values(exports.categories)) {
573
+ if (cat.commands.some((cmd) => cmd.toLowerCase().includes(q))) {
574
+ return cat;
575
+ }
576
+ }
577
+ return null;
578
+ }
579
+ function findCommand(query) {
580
+ const q = query.toLowerCase().trim();
581
+ // Direct lookup
582
+ if (exports.commandExamples[q]) {
583
+ return exports.commandExamples[q];
584
+ }
585
+ // Try replacing hyphens/underscores with spaces (e.g. "dns-check" → "dns check")
586
+ const withSpaces = q.replace(/[-_]/g, ' ');
587
+ if (exports.commandExamples[withSpaces]) {
588
+ return exports.commandExamples[withSpaces];
589
+ }
590
+ // Try replacing spaces with hyphens
591
+ const withHyphens = q.replace(/\s+/g, '-');
592
+ if (exports.commandExamples[withHyphens]) {
593
+ return exports.commandExamples[withHyphens];
594
+ }
595
+ return null;
596
+ }
597
+ function getAllCommands() {
598
+ const all = [];
599
+ for (const cat of Object.values(exports.categories)) {
600
+ for (const cmd of cat.commands) {
601
+ if (!all.includes(cmd)) {
602
+ all.push(cmd);
603
+ }
604
+ }
605
+ }
606
+ return all;
607
+ }
608
+ //# sourceMappingURL=command-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-registry.js","sourceRoot":"","sources":["../../src/utils/command-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export declare function setJsonMode(enabled: boolean): void;
2
+ export declare function isJsonMode(): boolean;
3
+ export declare function output(key: string, data: any): void;
4
+ export declare function outputError(code: string, message: string): void;
5
+ export declare function flush(): void;
6
+ export declare function resetBuffer(): void;