@alertee/cli 0.3.1 → 0.5.0

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 (118) hide show
  1. package/dist/api.d.ts +180 -0
  2. package/dist/api.d.ts.map +1 -1
  3. package/dist/api.js +25 -2
  4. package/dist/api.js.map +1 -1
  5. package/dist/commands/alert-groups/add-email-group.d.ts +9 -0
  6. package/dist/commands/alert-groups/add-email-group.d.ts.map +1 -0
  7. package/dist/commands/alert-groups/add-email-group.js +33 -0
  8. package/dist/commands/alert-groups/add-email-group.js.map +1 -0
  9. package/dist/commands/alert-groups/add-webhook.d.ts +8 -0
  10. package/dist/commands/alert-groups/add-webhook.d.ts.map +1 -0
  11. package/dist/commands/alert-groups/add-webhook.js +64 -0
  12. package/dist/commands/alert-groups/add-webhook.js.map +1 -0
  13. package/dist/commands/alert-groups/create.d.ts +11 -0
  14. package/dist/commands/alert-groups/create.d.ts.map +1 -0
  15. package/dist/commands/alert-groups/create.js +31 -0
  16. package/dist/commands/alert-groups/create.js.map +1 -0
  17. package/dist/commands/alert-groups/delete.d.ts +5 -0
  18. package/dist/commands/alert-groups/delete.d.ts.map +1 -0
  19. package/dist/commands/alert-groups/delete.js +35 -0
  20. package/dist/commands/alert-groups/delete.js.map +1 -0
  21. package/dist/commands/alert-groups/list.d.ts +5 -0
  22. package/dist/commands/alert-groups/list.d.ts.map +1 -0
  23. package/dist/commands/alert-groups/list.js +35 -0
  24. package/dist/commands/alert-groups/list.js.map +1 -0
  25. package/dist/commands/alert-groups/recipients.d.ts +5 -0
  26. package/dist/commands/alert-groups/recipients.d.ts.map +1 -0
  27. package/dist/commands/alert-groups/recipients.js +62 -0
  28. package/dist/commands/alert-groups/recipients.js.map +1 -0
  29. package/dist/commands/alert-groups/remove-recipient.d.ts +8 -0
  30. package/dist/commands/alert-groups/remove-recipient.d.ts.map +1 -0
  31. package/dist/commands/alert-groups/remove-recipient.js +33 -0
  32. package/dist/commands/alert-groups/remove-recipient.js.map +1 -0
  33. package/dist/commands/alert-groups/resolve.d.ts +6 -0
  34. package/dist/commands/alert-groups/resolve.d.ts.map +1 -0
  35. package/dist/commands/alert-groups/resolve.js +27 -0
  36. package/dist/commands/alert-groups/resolve.js.map +1 -0
  37. package/dist/commands/alert-groups/test.d.ts +3 -0
  38. package/dist/commands/alert-groups/test.d.ts.map +1 -0
  39. package/dist/commands/alert-groups/test.js +24 -0
  40. package/dist/commands/alert-groups/test.js.map +1 -0
  41. package/dist/commands/alert-groups/update.d.ts +12 -0
  42. package/dist/commands/alert-groups/update.d.ts.map +1 -0
  43. package/dist/commands/alert-groups/update.js +46 -0
  44. package/dist/commands/alert-groups/update.js.map +1 -0
  45. package/dist/commands/checks/create.d.ts +25 -1
  46. package/dist/commands/checks/create.d.ts.map +1 -1
  47. package/dist/commands/checks/create.js +141 -88
  48. package/dist/commands/checks/create.js.map +1 -1
  49. package/dist/commands/checks/update.d.ts +3 -2
  50. package/dist/commands/checks/update.d.ts.map +1 -1
  51. package/dist/commands/checks/update.js +79 -19
  52. package/dist/commands/checks/update.js.map +1 -1
  53. package/dist/commands/connections/create.d.ts +14 -0
  54. package/dist/commands/connections/create.d.ts.map +1 -0
  55. package/dist/commands/connections/create.js +52 -0
  56. package/dist/commands/connections/create.js.map +1 -0
  57. package/dist/commands/connections/delete.d.ts +5 -0
  58. package/dist/commands/connections/delete.d.ts.map +1 -0
  59. package/dist/commands/connections/delete.js +35 -0
  60. package/dist/commands/connections/delete.js.map +1 -0
  61. package/dist/commands/connections/resolve.d.ts +9 -0
  62. package/dist/commands/connections/resolve.d.ts.map +1 -0
  63. package/dist/commands/connections/resolve.js +30 -0
  64. package/dist/commands/connections/resolve.js.map +1 -0
  65. package/dist/commands/connections/test.d.ts +3 -0
  66. package/dist/commands/connections/test.d.ts.map +1 -0
  67. package/dist/commands/connections/test.js +28 -0
  68. package/dist/commands/connections/test.js.map +1 -0
  69. package/dist/commands/email-groups/add.d.ts +3 -0
  70. package/dist/commands/email-groups/add.d.ts.map +1 -0
  71. package/dist/commands/email-groups/add.js +23 -0
  72. package/dist/commands/email-groups/add.js.map +1 -0
  73. package/dist/commands/email-groups/create.d.ts +8 -0
  74. package/dist/commands/email-groups/create.d.ts.map +1 -0
  75. package/dist/commands/email-groups/create.js +28 -0
  76. package/dist/commands/email-groups/create.js.map +1 -0
  77. package/dist/commands/email-groups/delete.d.ts +5 -0
  78. package/dist/commands/email-groups/delete.d.ts.map +1 -0
  79. package/dist/commands/email-groups/delete.js +35 -0
  80. package/dist/commands/email-groups/delete.js.map +1 -0
  81. package/dist/commands/email-groups/list.d.ts +5 -0
  82. package/dist/commands/email-groups/list.d.ts.map +1 -0
  83. package/dist/commands/email-groups/list.js +36 -0
  84. package/dist/commands/email-groups/list.js.map +1 -0
  85. package/dist/commands/email-groups/members.d.ts +5 -0
  86. package/dist/commands/email-groups/members.d.ts.map +1 -0
  87. package/dist/commands/email-groups/members.js +42 -0
  88. package/dist/commands/email-groups/members.js.map +1 -0
  89. package/dist/commands/email-groups/remove.d.ts +3 -0
  90. package/dist/commands/email-groups/remove.d.ts.map +1 -0
  91. package/dist/commands/email-groups/remove.js +19 -0
  92. package/dist/commands/email-groups/remove.js.map +1 -0
  93. package/dist/commands/email-groups/resolve.d.ts +6 -0
  94. package/dist/commands/email-groups/resolve.d.ts.map +1 -0
  95. package/dist/commands/email-groups/resolve.js +27 -0
  96. package/dist/commands/email-groups/resolve.js.map +1 -0
  97. package/dist/commands/org/create.d.ts +12 -0
  98. package/dist/commands/org/create.d.ts.map +1 -0
  99. package/dist/commands/org/create.js +33 -0
  100. package/dist/commands/org/create.js.map +1 -0
  101. package/dist/commands/org/list.d.ts +5 -0
  102. package/dist/commands/org/list.d.ts.map +1 -0
  103. package/dist/commands/org/list.js +35 -0
  104. package/dist/commands/org/list.js.map +1 -0
  105. package/dist/index.js +159 -3
  106. package/dist/index.js.map +1 -1
  107. package/dist/mcp.d.ts.map +1 -1
  108. package/dist/mcp.js +343 -2
  109. package/dist/mcp.js.map +1 -1
  110. package/dist/prompts.d.ts +15 -0
  111. package/dist/prompts.d.ts.map +1 -0
  112. package/dist/prompts.js +25 -0
  113. package/dist/prompts.js.map +1 -0
  114. package/dist/uuid.d.ts +13 -0
  115. package/dist/uuid.d.ts.map +1 -0
  116. package/dist/uuid.js +13 -0
  117. package/dist/uuid.js.map +1 -0
  118. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/email-groups/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE1D,sEAAsE;AACtE,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAA4B,EAAE;IAClE,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACzC,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;IAC9B,UAAU,CAAC,MAAM,CAAC,CAAA;IAClB,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IAEnC,IAAI,MAAoE,CAAA;IACxE,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,MAAM,CAAA;IAClD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAG,GAAa,CAAC,OAAO,CAAC,CAAA;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,SAAS,CAAC,MAAM,CAAC,CAAA;QACjB,OAAM;IACR,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;QACrC,OAAM;IACR,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IAClE,MAAM,MAAM,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAA;IAC3D,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACnB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;IACtC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;QACvC,MAAM,KAAK,GAAG,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,CAAA;QACvE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACnF,CAAC;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ /** List the members of an email group (by name or ID). */
2
+ export declare function listEmailGroupMembers(nameOrId: string, opts?: {
3
+ format?: string;
4
+ }): Promise<void>;
5
+ //# sourceMappingURL=members.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"members.d.ts","sourceRoot":"","sources":["../../../src/commands/email-groups/members.ts"],"names":[],"mappings":"AAMA,0DAA0D;AAC1D,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAC7B,OAAO,CAAC,IAAI,CAAC,CAqCf"}
@@ -0,0 +1,42 @@
1
+ import { createClient } from '../../api.js';
2
+ import { requireConfig, requireOrg } from '../../config.js';
3
+ import { printJson, resolveFormat } from '../../output.js';
4
+ import { uuidIsSet } from '../../uuid.js';
5
+ import { resolveEmailGroupId } from './resolve.js';
6
+ /** List the members of an email group (by name or ID). */
7
+ export async function listEmailGroupMembers(nameOrId, opts = {}) {
8
+ const format = resolveFormat(opts.format);
9
+ const config = requireConfig();
10
+ requireOrg(config);
11
+ const client = createClient(config);
12
+ const id = await resolveEmailGroupId(client, nameOrId);
13
+ let group;
14
+ try {
15
+ group = await client.getEmailGroup(id);
16
+ }
17
+ catch (err) {
18
+ console.error('Failed to fetch email group:', err.message);
19
+ process.exit(1);
20
+ }
21
+ const members = group.members ?? [];
22
+ if (format === 'json') {
23
+ printJson(members);
24
+ return;
25
+ }
26
+ if (group.auto_add_members) {
27
+ console.log('This group auto-includes all organization members.');
28
+ }
29
+ if (members.length === 0) {
30
+ console.log('No members.');
31
+ return;
32
+ }
33
+ const emailWidth = Math.max(5, ...members.map((m) => m.email.length));
34
+ const header = `${'EMAIL'.padEnd(emailWidth)} SOURCE`;
35
+ console.log(header);
36
+ console.log('─'.repeat(header.length));
37
+ for (const m of members) {
38
+ const source = uuidIsSet(m.user_id) ? 'org user' : 'external';
39
+ console.log(`${m.email.padEnd(emailWidth)} ${source}`);
40
+ }
41
+ }
42
+ //# sourceMappingURL=members.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"members.js","sourceRoot":"","sources":["../../../src/commands/email-groups/members.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAElD,0DAA0D;AAC1D,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,QAAgB,EAChB,OAA4B,EAAE;IAE9B,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACzC,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;IAC9B,UAAU,CAAC,MAAM,CAAC,CAAA;IAClB,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IACnC,MAAM,EAAE,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAEtD,IAAI,KAAuD,CAAA;IAC3D,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;IACxC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAG,GAAa,CAAC,OAAO,CAAC,CAAA;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAA;IACnC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,SAAS,CAAC,OAAO,CAAC,CAAA;QAClB,OAAM;IACR,CAAC;IAED,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAA;IACnE,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;QAC1B,OAAM;IACR,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;IACrE,MAAM,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAA;IACtD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACnB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;IACtC,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAA;QAC7D,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,MAAM,EAAE,CAAC,CAAA;IACzD,CAAC;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** Remove an email address from an email group (by name or ID). */
2
+ export declare function removeEmailGroupMember(nameOrId: string, email: string): Promise<void>;
3
+ //# sourceMappingURL=remove.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../../src/commands/email-groups/remove.ts"],"names":[],"mappings":"AAIA,mEAAmE;AACnE,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CAaf"}
@@ -0,0 +1,19 @@
1
+ import { createClient } from '../../api.js';
2
+ import { requireConfig, requireOrg } from '../../config.js';
3
+ import { resolveEmailGroupId } from './resolve.js';
4
+ /** Remove an email address from an email group (by name or ID). */
5
+ export async function removeEmailGroupMember(nameOrId, email) {
6
+ const config = requireConfig();
7
+ requireOrg(config);
8
+ const client = createClient(config);
9
+ const id = await resolveEmailGroupId(client, nameOrId);
10
+ try {
11
+ await client.removeEmailGroupMember(id, email);
12
+ }
13
+ catch (err) {
14
+ console.error('Failed to remove member:', err.message);
15
+ process.exit(1);
16
+ }
17
+ console.log(`Removed ${email} from the group.`);
18
+ }
19
+ //# sourceMappingURL=remove.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remove.js","sourceRoot":"","sources":["../../../src/commands/email-groups/remove.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAElD,mEAAmE;AACnE,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAAgB,EAChB,KAAa;IAEb,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;IAC9B,UAAU,CAAC,MAAM,CAAC,CAAA;IAClB,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IACnC,MAAM,EAAE,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAEtD,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,sBAAsB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;IAChD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAG,GAAa,CAAC,OAAO,CAAC,CAAA;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,kBAAkB,CAAC,CAAA;AACjD,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { createClient } from '../../api.js';
2
+ type Client = ReturnType<typeof createClient>;
3
+ /** Resolve an email group argument (UUID or case-insensitive name) to its ID. */
4
+ export declare function resolveEmailGroupId(client: Client, nameOrId: string): Promise<string>;
5
+ export {};
6
+ //# sourceMappingURL=resolve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../../src/commands/email-groups/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAEhD,KAAK,MAAM,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAA;AAK7C,iFAAiF;AACjF,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAyBjB"}
@@ -0,0 +1,27 @@
1
+ const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
2
+ /** Resolve an email group argument (UUID or case-insensitive name) to its ID. */
3
+ export async function resolveEmailGroupId(client, nameOrId) {
4
+ if (UUID_RE.test(nameOrId.trim())) {
5
+ return nameOrId.trim();
6
+ }
7
+ let groups;
8
+ try {
9
+ groups = (await client.listEmailGroups()).groups;
10
+ }
11
+ catch (err) {
12
+ console.error('Failed to list email groups:', err.message);
13
+ process.exit(1);
14
+ }
15
+ const needle = nameOrId.trim().toLowerCase();
16
+ const matches = groups.filter((g) => g.name.toLowerCase() === needle);
17
+ if (matches.length === 0) {
18
+ console.error(`No email group named "${nameOrId}". Run \`alertee email-groups list\`.`);
19
+ process.exit(1);
20
+ }
21
+ if (matches.length > 1) {
22
+ console.error(`"${nameOrId}" matches ${matches.length} email groups; pass the ID instead.`);
23
+ process.exit(1);
24
+ }
25
+ return matches[0].id;
26
+ }
27
+ //# sourceMappingURL=resolve.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../src/commands/email-groups/resolve.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,GACX,iEAAiE,CAAA;AAEnE,iFAAiF;AACjF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAAc,EACd,QAAgB;IAEhB,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QAClC,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;IACxB,CAAC;IAED,IAAI,MAAoE,CAAA;IACxE,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,MAAM,CAAA;IAClD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAG,GAAa,CAAC,OAAO,CAAC,CAAA;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAA;IAErE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,KAAK,CAAC,yBAAyB,QAAQ,uCAAuC,CAAC,CAAA;QACvF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,IAAI,QAAQ,aAAa,OAAO,CAAC,MAAM,qCAAqC,CAAC,CAAA;QAC3F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;AACtB,CAAC"}
@@ -0,0 +1,12 @@
1
+ export interface CreateOrgOptions {
2
+ slug?: string;
3
+ /** Auto-link to the new org afterwards (default true). */
4
+ link?: boolean;
5
+ }
6
+ /**
7
+ * Create a new organization and (by default) link to it, so the next
8
+ * `connections create` / `checks create` target it. The creating user becomes
9
+ * the org owner. Name can be passed as an argument or prompted for.
10
+ */
11
+ export declare function createOrg(name: string | undefined, opts?: CreateOrgOptions): Promise<void>;
12
+ //# sourceMappingURL=create.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/org/create.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,0DAA0D;IAC1D,IAAI,CAAC,EAAE,OAAO,CAAA;CACf;AAED;;;;GAIG;AACH,wBAAsB,SAAS,CAC7B,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,IAAI,GAAE,gBAAqB,GAC1B,OAAO,CAAC,IAAI,CAAC,CA8Bf"}
@@ -0,0 +1,33 @@
1
+ import { input } from '@inquirer/prompts';
2
+ import { createClient } from '../../api.js';
3
+ import { loadConfig, requireConfig, saveConfig } from '../../config.js';
4
+ import { requireValue } from '../../prompts.js';
5
+ /**
6
+ * Create a new organization and (by default) link to it, so the next
7
+ * `connections create` / `checks create` target it. The creating user becomes
8
+ * the org owner. Name can be passed as an argument or prompted for.
9
+ */
10
+ export async function createOrg(name, opts = {}) {
11
+ const config = requireConfig();
12
+ const client = createClient(config);
13
+ const resolvedName = await requireValue(name, () => input({
14
+ message: 'Organization name:',
15
+ validate: (v) => v.trim().length > 0 || 'Required',
16
+ }), 'Organization name required. Pass it as an argument: alertee org create "<name>"');
17
+ let org;
18
+ try {
19
+ const resp = await client.createOrganization({ name: resolvedName, slug: opts.slug });
20
+ org = resp.organization;
21
+ }
22
+ catch (err) {
23
+ console.error('Failed to create organization:', err.message);
24
+ process.exit(1);
25
+ }
26
+ console.log(`Created organization "${org.name}" (slug: ${org.slug}).`);
27
+ if (opts.link !== false) {
28
+ const existing = loadConfig();
29
+ saveConfig({ ...config, ...existing, organizationId: org.id, organizationName: org.name });
30
+ console.log(`Linked to "${org.name}". Next: alertee connections create`);
31
+ }
32
+ }
33
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/org/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAQ/C;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,IAAwB,EACxB,OAAyB,EAAE;IAE3B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;IAC9B,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IAEnC,MAAM,YAAY,GAAG,MAAM,YAAY,CACrC,IAAI,EACJ,GAAG,EAAE,CACH,KAAK,CAAC;QACJ,OAAO,EAAE,oBAAoB;QAC7B,QAAQ,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU;KAC3D,CAAC,EACJ,iFAAiF,CAClF,CAAA;IAED,IAAI,GAA0E,CAAA;IAC9E,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QACrF,GAAG,GAAG,IAAI,CAAC,YAAY,CAAA;IACzB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAG,GAAa,CAAC,OAAO,CAAC,CAAA;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,yBAAyB,GAAG,CAAC,IAAI,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC,CAAA;IAEtE,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAG,UAAU,EAAE,CAAA;QAC7B,UAAU,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,QAAQ,EAAE,cAAc,EAAE,GAAG,CAAC,EAAE,EAAE,gBAAgB,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1F,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,CAAC,IAAI,qCAAqC,CAAC,CAAA;IAC1E,CAAC;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ /** List the organizations you belong to; the linked one is marked with `*`. */
2
+ export declare function listOrgs(opts?: {
3
+ format?: string;
4
+ }): Promise<void>;
5
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/org/list.ts"],"names":[],"mappings":"AAIA,+EAA+E;AAC/E,wBAAsB,QAAQ,CAAC,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAkC5E"}
@@ -0,0 +1,35 @@
1
+ import { createClient } from '../../api.js';
2
+ import { requireConfig } from '../../config.js';
3
+ import { printJson, resolveFormat } from '../../output.js';
4
+ /** List the organizations you belong to; the linked one is marked with `*`. */
5
+ export async function listOrgs(opts = {}) {
6
+ const format = resolveFormat(opts.format);
7
+ const config = requireConfig();
8
+ const client = createClient(config);
9
+ let orgs;
10
+ try {
11
+ orgs = (await client.listOrganizations()).organizations;
12
+ }
13
+ catch (err) {
14
+ console.error('Failed to list organizations:', err.message);
15
+ process.exit(1);
16
+ }
17
+ if (format === 'json') {
18
+ printJson(orgs);
19
+ return;
20
+ }
21
+ if (orgs.length === 0) {
22
+ console.log('No organizations found. Create one: alertee org create "<name>"');
23
+ return;
24
+ }
25
+ const linkedId = config.organizationId;
26
+ const nameWidth = Math.max(4, ...orgs.map((o) => o.organization.name.length));
27
+ const header = ` ${'NAME'.padEnd(nameWidth)} ROLE ID`;
28
+ console.log(header);
29
+ console.log('─'.repeat(header.length));
30
+ for (const o of orgs) {
31
+ const marker = o.organization.id === linkedId ? '*' : ' ';
32
+ console.log(`${marker} ${o.organization.name.padEnd(nameWidth)} ${(o.role ?? '—').padEnd(7)} ${o.organization.id}`);
33
+ }
34
+ }
35
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/org/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE1D,+EAA+E;AAC/E,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAA4B,EAAE;IAC3D,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACzC,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;IAC9B,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IAEnC,IAAI,IAA2E,CAAA;IAC/E,IAAI,CAAC;QACH,IAAI,GAAG,CAAC,MAAM,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,aAAa,CAAA;IACzD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAG,GAAa,CAAC,OAAO,CAAC,CAAA;QACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,SAAS,CAAC,IAAI,CAAC,CAAA;QACf,OAAM;IACR,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAA;QAC9E,OAAM;IACR,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAA;IACtC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;IAC7E,MAAM,MAAM,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAA;IAC3D,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACnB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;IACtC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;QACzD,OAAO,CAAC,GAAG,CACT,GAAG,MAAM,IAAI,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,EAAE,EAAE,CACzG,CAAA;IACH,CAAC;AACH,CAAC"}
package/dist/index.js CHANGED
@@ -10,17 +10,37 @@ import { setQuietWindow } from './commands/checks/quiet.js';
10
10
  import { runCheck } from './commands/checks/run.js';
11
11
  import { snoozeCheck } from './commands/checks/snooze.js';
12
12
  import { updateCheck } from './commands/checks/update.js';
13
+ import { addEmailGroupRecipient } from './commands/alert-groups/add-email-group.js';
14
+ import { addWebhook } from './commands/alert-groups/add-webhook.js';
15
+ import { createAlertGroup } from './commands/alert-groups/create.js';
16
+ import { deleteAlertGroup } from './commands/alert-groups/delete.js';
17
+ import { listAlertGroups } from './commands/alert-groups/list.js';
18
+ import { listRecipients } from './commands/alert-groups/recipients.js';
19
+ import { removeRecipient } from './commands/alert-groups/remove-recipient.js';
20
+ import { testAlertGroup } from './commands/alert-groups/test.js';
21
+ import { updateAlertGroup } from './commands/alert-groups/update.js';
22
+ import { createConnection } from './commands/connections/create.js';
23
+ import { deleteConnection } from './commands/connections/delete.js';
13
24
  import { listConnections } from './commands/connections/list.js';
25
+ import { testConnection } from './commands/connections/test.js';
26
+ import { addEmailGroupMembers } from './commands/email-groups/add.js';
27
+ import { createEmailGroup } from './commands/email-groups/create.js';
28
+ import { deleteEmailGroup } from './commands/email-groups/delete.js';
29
+ import { listEmailGroups } from './commands/email-groups/list.js';
30
+ import { listEmailGroupMembers } from './commands/email-groups/members.js';
31
+ import { removeEmailGroupMember } from './commands/email-groups/remove.js';
14
32
  import { link } from './commands/link.js';
15
33
  import { login } from './commands/login.js';
16
34
  import { logout } from './commands/logout.js';
35
+ import { createOrg } from './commands/org/create.js';
36
+ import { listOrgs } from './commands/org/list.js';
17
37
  import { whoami } from './commands/whoami.js';
18
38
  import { startMcpServer } from './mcp.js';
19
39
  const program = new Command();
20
40
  program
21
41
  .name('alertee')
22
42
  .description('Alertee CLI — manage database monitoring checks')
23
- .version('0.2.1')
43
+ .version('0.5.0')
24
44
  .addHelpText('after', '\nDocs: https://docs.alertee.io');
25
45
  program
26
46
  .command('login')
@@ -39,6 +59,18 @@ program
39
59
  .command('link')
40
60
  .description('Link to an organization')
41
61
  .action(link);
62
+ const org = program.command('org').description('Manage organizations');
63
+ org
64
+ .command('create [name]')
65
+ .description('Create a new organization and link to it')
66
+ .option('--slug <slug>', 'custom URL-safe slug (auto-generated from the name if omitted)')
67
+ .option('--no-link', 'create without switching the linked organization to it')
68
+ .action((name, opts) => createOrg(name, { slug: opts.slug, link: opts.link }));
69
+ org
70
+ .command('list')
71
+ .description('List organizations you belong to (the linked one is marked *)')
72
+ .option('--format <fmt>', 'output format: table or json', 'table')
73
+ .action((opts) => listOrgs(opts));
42
74
  const checks = program.command('checks').description('Manage checks');
43
75
  checks
44
76
  .command('list')
@@ -67,8 +99,33 @@ checks
67
99
  .action((id) => openCheck(id));
68
100
  checks
69
101
  .command('create')
70
- .description('Create a new check interactively (single-value or grid)')
71
- .action(createCheck);
102
+ .description('Create a new check (single-value or grid). Pass flags, or omit them to be prompted.')
103
+ .option('--name <name>', 'check name')
104
+ .option('--connection <name|id>', 'database connection (name or ID)')
105
+ .option('--query <sql>', 'SQL query')
106
+ .option('--grid', 'create a multi-dimensional (grid) check')
107
+ .option('--evaluation-type <type>', 'grid: all_cells, any_cell, dimension_missing, dimension_added')
108
+ .option('--condition <type>', 'comparison: greater_than, less_than, greater_or_equal, less_or_equal, equals, not_equals')
109
+ .option('--threshold <number>', 'value to compare against', parseFloat)
110
+ .option('--severity <level>', 'grid cell severity: info, warning, critical')
111
+ .option('--label-query <sql>', 'grid: query mapping `name` to display `label`')
112
+ .option('--interval <interval>', 'minute, five_minutes, fifteen_minutes, thirty_minutes, hourly')
113
+ .option('--alert-level <level>', 'info, warning, error, or critical')
114
+ .option('--alert-group <name|id>', 'route alerts to a specific alert group (defaults to the org default)')
115
+ .action((opts) => createCheck({
116
+ name: opts.name,
117
+ connection: opts.connection,
118
+ query: opts.query,
119
+ grid: opts.grid,
120
+ evaluationType: opts.evaluationType,
121
+ condition: opts.condition,
122
+ threshold: opts.threshold,
123
+ severity: opts.severity,
124
+ labelQuery: opts.labelQuery,
125
+ interval: opts.interval,
126
+ alertLevel: opts.alertLevel,
127
+ alertGroup: opts.alertGroup,
128
+ }));
72
129
  checks
73
130
  .command('update <check>')
74
131
  .description('Update a check\'s common fields (by name or ID)')
@@ -133,6 +190,105 @@ connections
133
190
  .description('List database connections in the linked organization')
134
191
  .option('--format <fmt>', 'output format: table or json', 'table')
135
192
  .action((opts) => listConnections(opts));
193
+ connections
194
+ .command('create')
195
+ .description('Create a database connection (tested before saving). Pass flags, or omit to be prompted.')
196
+ .option('--name <name>', 'connection name')
197
+ .option('--type <type>', 'database type: postgres or clickhouse')
198
+ .option('--uri <uri>', 'connection URI, e.g. postgres://user:pass@host:5432/db')
199
+ .action((opts) => createConnection({ name: opts.name, type: opts.type, uri: opts.uri }));
200
+ connections
201
+ .command('test <connection>')
202
+ .description('Test an existing connection (by name or ID)')
203
+ .action((connection) => testConnection(connection));
204
+ connections
205
+ .command('delete <connection>')
206
+ .description('Delete a connection (by name or ID)')
207
+ .option('-y, --yes', 'skip the confirmation prompt')
208
+ .action((connection, opts) => deleteConnection(connection, { yes: opts.yes }));
209
+ const alertGroups = program
210
+ .command('alert-groups')
211
+ .description('Manage alert groups and their recipients');
212
+ alertGroups
213
+ .command('list')
214
+ .description('List alert groups (the default one is marked *)')
215
+ .option('--format <fmt>', 'output format: table or json', 'table')
216
+ .action((opts) => listAlertGroups(opts));
217
+ alertGroups
218
+ .command('create [name]')
219
+ .description('Create an alert group')
220
+ .option('--description <text>', 'group description')
221
+ .option('--default', 'make this the organization default group')
222
+ .action((name, opts) => createAlertGroup(name, { description: opts.description, default: opts.default }));
223
+ alertGroups
224
+ .command('update <group>')
225
+ .description("Update an alert group's name, description, or default flag (by name or ID)")
226
+ .option('--name <name>', 'rename the group')
227
+ .option('--description <text>', 'set the description')
228
+ .option('--default', 'make this the organization default group')
229
+ .action((group, opts) => updateAlertGroup(group, { name: opts.name, description: opts.description, default: opts.default }));
230
+ alertGroups
231
+ .command('delete <group>')
232
+ .description('Delete an alert group (by name or ID)')
233
+ .option('-y, --yes', 'skip the confirmation prompt')
234
+ .action((group, opts) => deleteAlertGroup(group, { yes: opts.yes }));
235
+ alertGroups
236
+ .command('test <group>')
237
+ .description('Send a test alert through a group (by name or ID)')
238
+ .action((group) => testAlertGroup(group));
239
+ alertGroups
240
+ .command('recipients <group>')
241
+ .description('List the recipients (channels) in a group (by name or ID)')
242
+ .option('--format <fmt>', 'output format: table or json', 'table')
243
+ .action((group, opts) => listRecipients(group, opts));
244
+ alertGroups
245
+ .command('add-webhook <group>')
246
+ .description('Add a webhook recipient to a group (by name or ID)')
247
+ .option('--url <url>', 'webhook URL')
248
+ .option('--header <header...>', 'optional "Key: Value" header (repeatable)')
249
+ .action((group, opts) => addWebhook(group, { url: opts.url, header: opts.header }));
250
+ alertGroups
251
+ .command('add-email-group <group>')
252
+ .description('Attach an email group (recipient list) to a group (by name or ID)')
253
+ .option('--email-group <name|id>', 'the email group to attach')
254
+ .action((group, opts) => addEmailGroupRecipient(group, { emailGroup: opts.emailGroup }));
255
+ alertGroups
256
+ .command('remove-recipient <channelId>')
257
+ .description('Remove a recipient by its channel ID (from `recipients`)')
258
+ .option('-y, --yes', 'skip the confirmation prompt')
259
+ .action((channelId, opts) => removeRecipient(channelId, { yes: opts.yes }));
260
+ const emailGroups = program
261
+ .command('email-groups')
262
+ .description('Manage email groups (recipient lists)');
263
+ emailGroups
264
+ .command('list')
265
+ .description('List email groups (the default one is marked *)')
266
+ .option('--format <fmt>', 'output format: table or json', 'table')
267
+ .action((opts) => listEmailGroups(opts));
268
+ emailGroups
269
+ .command('create [name]')
270
+ .description('Create an email group')
271
+ .option('--description <text>', 'group description')
272
+ .option('--email <email...>', 'initial member email(s)')
273
+ .action((name, opts) => createEmailGroup(name, { description: opts.description, email: opts.email }));
274
+ emailGroups
275
+ .command('delete <group>')
276
+ .description('Delete an email group (by name or ID)')
277
+ .option('-y, --yes', 'skip the confirmation prompt')
278
+ .action((group, opts) => deleteEmailGroup(group, { yes: opts.yes }));
279
+ emailGroups
280
+ .command('members <group>')
281
+ .description('List the members of an email group (by name or ID)')
282
+ .option('--format <fmt>', 'output format: table or json', 'table')
283
+ .action((group, opts) => listEmailGroupMembers(group, opts));
284
+ emailGroups
285
+ .command('add <group> <emails...>')
286
+ .description('Add email address(es) to an email group (by name or ID)')
287
+ .action((group, emails) => addEmailGroupMembers(group, emails));
288
+ emailGroups
289
+ .command('remove <group> <email>')
290
+ .description('Remove an email address from an email group (by name or ID)')
291
+ .action((group, email) => removeEmailGroupMember(group, email));
136
292
  program
137
293
  .command('mcp')
138
294
  .description('Start the MCP server (for Claude Code integration)')
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/mcp.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAucH,wBAAgB,cAAc,IAAI,IAAI,CAuBrC"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA2uBH,wBAAgB,cAAc,IAAI,IAAI,CAuBrC"}