agent-messenger 2.23.3 → 2.23.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/README.md +2 -2
  3. package/dist/package.json +1 -1
  4. package/dist/src/platforms/webex/cli.d.ts.map +1 -1
  5. package/dist/src/platforms/webex/cli.js +2 -1
  6. package/dist/src/platforms/webex/cli.js.map +1 -1
  7. package/dist/src/platforms/webex/client.d.ts +4 -0
  8. package/dist/src/platforms/webex/client.d.ts.map +1 -1
  9. package/dist/src/platforms/webex/client.js +161 -0
  10. package/dist/src/platforms/webex/client.js.map +1 -1
  11. package/dist/src/platforms/webex/commands/file.d.ts +12 -0
  12. package/dist/src/platforms/webex/commands/file.d.ts.map +1 -0
  13. package/dist/src/platforms/webex/commands/file.js +64 -0
  14. package/dist/src/platforms/webex/commands/file.js.map +1 -0
  15. package/dist/src/platforms/webex/commands/index.d.ts +1 -0
  16. package/dist/src/platforms/webex/commands/index.d.ts.map +1 -1
  17. package/dist/src/platforms/webex/commands/index.js +1 -0
  18. package/dist/src/platforms/webex/commands/index.js.map +1 -1
  19. package/dist/src/platforms/webex/encryption.d.ts +14 -0
  20. package/dist/src/platforms/webex/encryption.d.ts.map +1 -1
  21. package/dist/src/platforms/webex/encryption.js +36 -0
  22. package/dist/src/platforms/webex/encryption.js.map +1 -1
  23. package/dist/src/platforms/webex/id-normalizer.d.ts +6 -6
  24. package/dist/src/platforms/webex/id-normalizer.d.ts.map +1 -1
  25. package/dist/src/platforms/webex/id-normalizer.js.map +1 -1
  26. package/dist/src/platforms/webex/index.d.ts +1 -1
  27. package/dist/src/platforms/webex/index.d.ts.map +1 -1
  28. package/dist/src/platforms/webex/index.js.map +1 -1
  29. package/dist/src/platforms/webex/listener.d.ts +10 -9
  30. package/dist/src/platforms/webex/listener.d.ts.map +1 -1
  31. package/dist/src/platforms/webex/listener.js.map +1 -1
  32. package/dist/src/platforms/webex/types.d.ts +31 -0
  33. package/dist/src/platforms/webex/types.d.ts.map +1 -1
  34. package/dist/src/platforms/webex/types.js.map +1 -1
  35. package/dist/src/platforms/webexbot/index.d.ts +1 -1
  36. package/dist/src/platforms/webexbot/index.d.ts.map +1 -1
  37. package/dist/src/platforms/webexbot/index.js.map +1 -1
  38. package/docs/content/docs/cli/webex.mdx +13 -0
  39. package/docs/content/docs/sdk/webex.mdx +12 -0
  40. package/package.json +1 -1
  41. package/skills/agent-channeltalk/SKILL.md +1 -1
  42. package/skills/agent-channeltalkbot/SKILL.md +1 -1
  43. package/skills/agent-discord/SKILL.md +1 -1
  44. package/skills/agent-discordbot/SKILL.md +1 -1
  45. package/skills/agent-instagram/SKILL.md +1 -1
  46. package/skills/agent-kakaotalk/SKILL.md +1 -1
  47. package/skills/agent-line/SKILL.md +1 -1
  48. package/skills/agent-slack/SKILL.md +1 -1
  49. package/skills/agent-slackbot/SKILL.md +1 -1
  50. package/skills/agent-teams/SKILL.md +1 -1
  51. package/skills/agent-telegram/SKILL.md +1 -1
  52. package/skills/agent-telegrambot/SKILL.md +1 -1
  53. package/skills/agent-webex/SKILL.md +14 -2
  54. package/skills/agent-webexbot/SKILL.md +1 -1
  55. package/skills/agent-wechatbot/SKILL.md +1 -1
  56. package/skills/agent-whatsapp/SKILL.md +1 -1
  57. package/skills/agent-whatsappbot/SKILL.md +1 -1
  58. package/src/platforms/webex/cli.ts +10 -1
  59. package/src/platforms/webex/client.test.ts +131 -0
  60. package/src/platforms/webex/client.ts +195 -0
  61. package/src/platforms/webex/commands/file.test.ts +96 -0
  62. package/src/platforms/webex/commands/file.ts +87 -0
  63. package/src/platforms/webex/commands/index.ts +1 -0
  64. package/src/platforms/webex/encryption.test.ts +38 -0
  65. package/src/platforms/webex/encryption.ts +59 -0
  66. package/src/platforms/webex/id-normalizer.ts +15 -6
  67. package/src/platforms/webex/index.ts +13 -1
  68. package/src/platforms/webex/listener.ts +16 -8
  69. package/src/platforms/webex/types.ts +48 -0
  70. package/src/platforms/webexbot/index.ts +12 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-messenger",
3
- "version": "2.23.3",
3
+ "version": "2.23.5",
4
4
  "description": "Messaging platform interaction skills for AI agents. Interact with Slack, Discord, Microsoft Teams, Webex, Telegram, Telegram Bot, WhatsApp, LINE, Instagram, KakaoTalk, and Channel Talk - send messages, read channels, manage reactions, upload files, and more through simple CLI interfaces.",
5
5
  "author": {
6
6
  "name": "agent-messenger",
package/README.md CHANGED
@@ -372,8 +372,8 @@ See the [TUI docs](https://agent-messenger.dev/docs/tui) for keybindings, archit
372
372
  | Threads | ✅ | ✅ | — | — | — | — | — | — | — | — | — |
373
373
  | Channels & Users | ✅ | ✅ | ✅ | ✅ | partial | — | ✅ | ✅ | — | — | ✅ |
374
374
  | Reactions | ✅ | ✅ | ✅ | — | — | ✅ | — | — | — | — | — |
375
- | File uploads | ✅ | ✅ | ✅ | | — | — | — | — | — | ✅ | — |
376
- | File downloads | ✅ | — | — | | — | — | — | — | — | — | — |
375
+ | File uploads | ✅ | ✅ | ✅ | | — | — | — | — | — | ✅ | — |
376
+ | File downloads | ✅ | — | — | | — | — | — | — | — | — | — |
377
377
  | Workspace snapshots | ✅ | ✅ | ✅ | ✅ | — | — | — | — | — | — | ✅ |
378
378
  | Multi-workspace / account | ✅ | ✅ | ✅ | — | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
379
379
  | Activity feed | ✅ | — | — | — | — | — | — | — | — | — | — |
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-messenger",
3
- "version": "2.23.3",
3
+ "version": "2.23.5",
4
4
  "description": "Multi-platform messaging CLI for AI agents (Slack, Discord, Teams, Webex, Telegram, Telegram Bot, WhatsApp, LINE, Instagram, KakaoTalk, Channel Talk)",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../src/platforms/webex/cli.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAA;AAgBvD,QAAA,MAAM,OAAO,aAAgB,CAAA;AAkB7B,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../src/platforms/webex/cli.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAA;AAwBvD,QAAA,MAAM,OAAO,aAAgB,CAAA;AAmB7B,eAAe,OAAO,CAAA"}
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env bun
2
2
  import { Command } from 'commander';
3
3
  import pkg from '../../../package.json' with { type: 'json' };
4
- import { authCommand, memberCommand, messageCommand, snapshotCommand, spaceCommand, whoamiCommand } from './commands/index.js';
4
+ import { authCommand, fileCommand, memberCommand, messageCommand, snapshotCommand, spaceCommand, whoamiCommand, } from './commands/index.js';
5
5
  import { ensureWebexAuth } from './ensure-auth.js';
6
6
  function isAuthCommand(command) {
7
7
  let cmd = command;
@@ -20,6 +20,7 @@ program.hook('preAction', async (_thisCommand, actionCommand) => {
20
20
  await ensureWebexAuth();
21
21
  });
22
22
  program.addCommand(authCommand);
23
+ program.addCommand(fileCommand);
23
24
  program.addCommand(memberCommand);
24
25
  program.addCommand(messageCommand);
25
26
  program.addCommand(snapshotCommand);
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/platforms/webex/cli.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,GAAG,MAAM,uBAAuB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAA;AAC7D,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AACrH,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAE/C,SAAS,aAAa,CAAC,OAAoB;IACzC,IAAI,GAAG,GAAuB,OAAO,CAAA;IACrC,OAAO,GAAG,EAAE,CAAC;QACX,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,MAAM;YAAE,OAAO,IAAI,CAAA;QACtC,GAAG,GAAG,GAAG,CAAC,MAAM,CAAA;IAClB,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,wCAAwC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAEtG,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,EAAE;IAC9D,IAAI,aAAa,CAAC,aAAa,CAAC;QAAE,OAAM;IACxC,MAAM,eAAe,EAAE,CAAA;AACzB,CAAC,CAAC,CAAA;AAEF,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;AAC/B,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;AACjC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;AAClC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;AACnC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;AAChC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;AAEjC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAE3B,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/platforms/webex/cli.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,GAAG,MAAM,uBAAuB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAA;AAC7D,OAAO,EACL,WAAW,EACX,WAAW,EACX,aAAa,EACb,cAAc,EACd,eAAe,EACf,YAAY,EACZ,aAAa,GACd,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAE/C,SAAS,aAAa,CAAC,OAAoB;IACzC,IAAI,GAAG,GAAuB,OAAO,CAAA;IACrC,OAAO,GAAG,EAAE,CAAC;QACX,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,MAAM;YAAE,OAAO,IAAI,CAAA;QACtC,GAAG,GAAG,GAAG,CAAC,MAAM,CAAA;IAClB,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,wCAAwC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAEtG,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,EAAE;IAC9D,IAAI,aAAa,CAAC,aAAa,CAAC;QAAE,OAAM;IACxC,MAAM,eAAe,EAAE,CAAA;AACzB,CAAC,CAAC,CAAA;AAEF,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;AAC/B,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;AAC/B,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;AACjC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;AAClC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;AACnC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;AAChC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;AAEjC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAE3B,eAAe,OAAO,CAAA"}
@@ -89,6 +89,10 @@ export declare class WebexClient {
89
89
  markdown?: boolean;
90
90
  parentId?: string;
91
91
  }): Promise<WebexMessage>;
92
+ private uploadFileInternal;
93
+ private uploadFileContent;
94
+ private uploadToSpace;
95
+ private internalActivityRequest;
92
96
  private lookupRoomId;
93
97
  private resolveMessageOptions;
94
98
  private resolveListMessageOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/platforms/webex/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/platforms/webex/client.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { createHash } from 'node:crypto';
1
2
  import { WebexCredentialManager } from './credential-manager.js';
2
3
  import { WebexEncryptionService } from './encryption.js';
3
4
  import { decodeWebexId, normalizeSdkMembership, normalizeSdkMessage, normalizeSdkPerson, toRestId, } from './id-normalizer.js';
@@ -536,6 +537,9 @@ export class WebexClient {
536
537
  }
537
538
  async uploadFile(roomId, file, options) {
538
539
  const resolvedRoomId = await this.resolveRoomId(roomId);
540
+ if (this.useInternalAPI) {
541
+ return this.uploadFileInternal(resolvedRoomId, file, options);
542
+ }
539
543
  const resolvedParentId = options?.parentId ? this.resolveMessageId(options.parentId) : undefined;
540
544
  const form = new FormData();
541
545
  form.set('roomId', resolvedRoomId);
@@ -556,6 +560,111 @@ export class WebexClient {
556
560
  }
557
561
  return normalizeSdkMessage((await response.json()));
558
562
  }
563
+ async uploadFileInternal(roomId, file, options) {
564
+ const convUuid = this.decodeConvUuid(roomId);
565
+ const conversationUrl = `${this.convBaseUrl}/conversations/${convUuid}`;
566
+ const conv = await this.internalRequest(`/conversations/${convUuid}?activitiesLimit=0&participantsLimit=0`);
567
+ const keyUri = conv.defaultActivityEncryptionKeyUrl;
568
+ const bytes = new Uint8Array(await file.content.arrayBuffer());
569
+ const fileItem = await this.uploadFileContent(conversationUrl, file.filename, bytes, keyUri);
570
+ const object = {
571
+ objectType: 'content',
572
+ contentCategory: contentCategoryFor(fileItem.mimeType),
573
+ files: { items: [fileItem.item] },
574
+ };
575
+ let encryptionKeyUrl;
576
+ if (options?.text) {
577
+ const built = await this.buildEncryptedObject(convUuid, options.text, { markdown: options.markdown });
578
+ object.displayName = built.object.displayName;
579
+ if (built.object.content)
580
+ object.content = built.object.content;
581
+ encryptionKeyUrl = built.encryptionKeyUrl;
582
+ }
583
+ const activity = {
584
+ verb: 'share',
585
+ object,
586
+ target: { id: convUuid, objectType: 'conversation' },
587
+ clientTempId: `tmp-${Date.now()}-share`,
588
+ };
589
+ if (options?.parentId) {
590
+ activity.parent = { id: this.toMessageRef(options.parentId), type: 'reply' };
591
+ }
592
+ if (encryptionKeyUrl ?? keyUri) {
593
+ activity.encryptionKeyUrl = encryptionKeyUrl ?? keyUri;
594
+ }
595
+ const result = await this.internalActivityRequest(`${conversationUrl}/content`, {
596
+ method: 'POST',
597
+ body: JSON.stringify(activity),
598
+ });
599
+ return this.activityToMessage(result, roomId);
600
+ }
601
+ async uploadFileContent(conversationUrl, filename, bytes, keyUri) {
602
+ const space = await this.internalActivityRequest(`${conversationUrl}/space`, {
603
+ method: 'PUT',
604
+ });
605
+ let body;
606
+ let scr;
607
+ if (this.encryption && keyUri) {
608
+ const encrypted = this.encryption.encryptBinary(bytes);
609
+ body = encrypted.ciphertext;
610
+ scr = encrypted.scr;
611
+ }
612
+ else {
613
+ body = bytes;
614
+ }
615
+ const downloadUrl = await this.uploadToSpace(space.spaceUrl, body);
616
+ const mimeType = guessMimeType(filename);
617
+ const item = {
618
+ objectType: 'file',
619
+ displayName: filename,
620
+ fileSize: bytes.byteLength,
621
+ mimeType,
622
+ url: downloadUrl,
623
+ };
624
+ if (scr && keyUri && this.encryption) {
625
+ scr.loc = downloadUrl;
626
+ const encryptedScr = await this.encryption.encryptScr(keyUri, scr);
627
+ if (!encryptedScr) {
628
+ throw new WebexError('Cannot encrypt file for Webex E2E conversation', 'encryption_failed');
629
+ }
630
+ item.scr = encryptedScr;
631
+ item.displayName = (await this.encryption.encryptText(keyUri, filename)) ?? filename;
632
+ }
633
+ return { item, mimeType };
634
+ }
635
+ async uploadToSpace(spaceUrl, body) {
636
+ const session = await this.internalActivityRequest(`${spaceUrl}/upload_sessions`, {
637
+ method: 'POST',
638
+ body: JSON.stringify({ uploadProtocol: 'content-length', fileSize: body.byteLength }),
639
+ });
640
+ const putResponse = await fetch(assertTrustedWebexUrl(session.uploadUrl), {
641
+ method: 'PUT',
642
+ headers: { 'Content-Type': 'application/octet-stream', 'Content-Length': String(body.byteLength) },
643
+ body,
644
+ });
645
+ if (!putResponse.ok) {
646
+ throw new WebexError(`File upload failed: HTTP ${putResponse.status}`, `http_${putResponse.status}`);
647
+ }
648
+ const fileHash = createHash('sha256').update(body).digest('hex');
649
+ const finished = await this.internalActivityRequest(session.finishUploadUrl, {
650
+ method: 'POST',
651
+ body: JSON.stringify({ fileSize: body.byteLength, fileHash }),
652
+ });
653
+ return finished.downloadUrl;
654
+ }
655
+ async internalActivityRequest(url, init) {
656
+ const response = await fetch(assertTrustedWebexUrl(url), {
657
+ ...init,
658
+ headers: { ...this.internalHeaders, ...init.headers },
659
+ });
660
+ if (!response.ok) {
661
+ const errorBody = (await response.json().catch(() => null));
662
+ throw new WebexError(errorBody?.message ?? `HTTP ${response.status}`, `http_${response.status}`);
663
+ }
664
+ if (response.status === 204)
665
+ return undefined;
666
+ return response.json();
667
+ }
559
668
  async lookupRoomId(uuid, fallback) {
560
669
  try {
561
670
  // Page through every room the account belongs to, stopping as soon as the
@@ -678,6 +787,58 @@ function sanitizeFilename(name) {
678
787
  function looksLikeUuid(value) {
679
788
  return /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(value);
680
789
  }
790
+ function isTrustedWebexHost(host) {
791
+ return (host === 'webex.com' ||
792
+ host.endsWith('.webex.com') ||
793
+ host === 'wbx2.com' ||
794
+ host.endsWith('.wbx2.com') ||
795
+ host === 'ciscospark.com' ||
796
+ host.endsWith('.ciscospark.com'));
797
+ }
798
+ // Pin server-returned upload URLs to HTTPS Webex hosts: they receive the bearer
799
+ // token (activity calls) and file bytes, so a compromised response must not be
800
+ // able to exfiltrate them to an attacker-controlled host (SSRF/token leak).
801
+ function assertTrustedWebexUrl(url) {
802
+ let parsed;
803
+ try {
804
+ parsed = new URL(url);
805
+ }
806
+ catch {
807
+ throw new WebexError(`Invalid Webex URL: ${url}`, 'invalid_url');
808
+ }
809
+ if (parsed.protocol !== 'https:' || !isTrustedWebexHost(parsed.hostname)) {
810
+ throw new WebexError(`Refusing to send request to untrusted host: ${parsed.origin}`, 'untrusted_url');
811
+ }
812
+ return parsed.toString();
813
+ }
814
+ const MIME_TYPES = {
815
+ png: 'image/png',
816
+ jpg: 'image/jpeg',
817
+ jpeg: 'image/jpeg',
818
+ gif: 'image/gif',
819
+ webp: 'image/webp',
820
+ svg: 'image/svg+xml',
821
+ mp4: 'video/mp4',
822
+ mov: 'video/quicktime',
823
+ webm: 'video/webm',
824
+ pdf: 'application/pdf',
825
+ txt: 'text/plain',
826
+ md: 'text/markdown',
827
+ json: 'application/json',
828
+ csv: 'text/csv',
829
+ zip: 'application/zip',
830
+ };
831
+ function guessMimeType(filename) {
832
+ const ext = filename.split('.').pop()?.toLowerCase() ?? '';
833
+ return MIME_TYPES[ext] ?? 'application/octet-stream';
834
+ }
835
+ function contentCategoryFor(mimeType) {
836
+ if (mimeType.startsWith('image/'))
837
+ return 'images';
838
+ if (mimeType.startsWith('video/'))
839
+ return 'videos';
840
+ return 'documents';
841
+ }
681
842
  function looksLikeEmail(value) {
682
843
  return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(value);
683
844
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/platforms/webex/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/platforms/webex/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { Command } from 'commander';
2
+ export declare function uploadAction(space: string, path: string, options: {
3
+ text?: string;
4
+ markdown?: boolean;
5
+ parent?: string;
6
+ pretty?: boolean;
7
+ }): Promise<void>;
8
+ export declare function downloadAction(content: string, output: string | undefined, options: {
9
+ pretty?: boolean;
10
+ }): Promise<void>;
11
+ export declare const fileCommand: Command;
12
+ //# sourceMappingURL=file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/webex/commands/file.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAiBnC,wBAAsB,YAAY,CAChC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAChF,OAAO,CAAC,IAAI,CAAC,CAwBf;AAED,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5B,OAAO,CAAC,IAAI,CAAC,CAUf;AAED,eAAO,MAAM,WAAW,SAoBrB,CAAA"}
@@ -0,0 +1,64 @@
1
+ import { readFile, writeFile } from 'node:fs/promises';
2
+ import { basename, resolve } from 'node:path';
3
+ import { Command } from 'commander';
4
+ import { handleError } from '../../../shared/utils/error-handler.js';
5
+ import { formatOutput } from '../../../shared/utils/output.js';
6
+ import { WebexClient } from '../client.js';
7
+ async function withWebexClient(run) {
8
+ const client = new WebexClient();
9
+ try {
10
+ await client.login();
11
+ return await run(client);
12
+ }
13
+ finally {
14
+ await client.dispose();
15
+ }
16
+ }
17
+ export async function uploadAction(space, path, options) {
18
+ try {
19
+ const filePath = resolve(path);
20
+ const content = await readFile(filePath);
21
+ const message = await withWebexClient((client) => client.uploadFile(space, { content: new Blob([content]), filename: basename(filePath) }, { text: options.text, markdown: options.markdown, parentId: options.parent }));
22
+ const output = {
23
+ id: message.id,
24
+ ref: message.ref,
25
+ roomId: message.roomId,
26
+ roomRef: message.roomRef,
27
+ files: message.files,
28
+ created: message.created,
29
+ };
30
+ console.log(formatOutput(output, options.pretty));
31
+ }
32
+ catch (error) {
33
+ handleError(error);
34
+ }
35
+ }
36
+ export async function downloadAction(content, output, options) {
37
+ try {
38
+ const { data, filename, contentType } = await withWebexClient((client) => client.downloadContent(content));
39
+ const outputPath = output ? resolve(output) : resolve(process.cwd(), basename(filename));
40
+ await writeFile(outputPath, Buffer.from(data));
41
+ console.log(formatOutput({ downloaded: outputPath, filename, contentType, size: data.byteLength }, options.pretty));
42
+ }
43
+ catch (error) {
44
+ handleError(error);
45
+ }
46
+ }
47
+ export const fileCommand = new Command('file')
48
+ .description('File commands')
49
+ .addCommand(new Command('upload')
50
+ .description('Upload a local file to a space')
51
+ .argument('<space>', 'Space/Room ID')
52
+ .argument('<path>', 'Local file path')
53
+ .option('--text <text>', 'Optional message to send with the file')
54
+ .option('--markdown', 'Treat --text as markdown')
55
+ .option('--parent <id>', 'Reply within a thread (parent message ID)')
56
+ .option('--pretty', 'Pretty print JSON output')
57
+ .action(uploadAction))
58
+ .addCommand(new Command('download')
59
+ .description('Download a file attachment by content URL or ID')
60
+ .argument('<content>', 'File content URL (from message.files) or content ID')
61
+ .argument('[output]', 'Output path (defaults to original filename)')
62
+ .option('--pretty', 'Pretty print JSON output')
63
+ .action(downloadAction));
64
+ //# sourceMappingURL=file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../../src/platforms/webex/commands/file.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export { authCommand } from './auth.js';
2
+ export { fileCommand } from './file.js';
2
3
  export { memberCommand } from './member.js';
3
4
  export { messageCommand } from './message.js';
4
5
  export { snapshotAction, snapshotCommand } from './snapshot.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/webex/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/webex/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export { authCommand } from './auth.js';
2
+ export { fileCommand } from './file.js';
2
3
  export { memberCommand } from './member.js';
3
4
  export { messageCommand } from './message.js';
4
5
  export { snapshotAction, snapshotCommand } from './snapshot.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/platforms/webex/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/platforms/webex/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA"}
@@ -3,6 +3,18 @@ export interface WebexKeyProvider {
3
3
  fetchKey(keyUri: string): Promise<string | null>;
4
4
  close?(): Promise<void>;
5
5
  }
6
+ export interface WebexScr {
7
+ enc: 'A256GCM';
8
+ key: string;
9
+ iv: string;
10
+ aad: string;
11
+ loc?: string;
12
+ tag: string;
13
+ }
14
+ export interface WebexEncryptedBinary {
15
+ scr: WebexScr;
16
+ ciphertext: Uint8Array;
17
+ }
6
18
  export declare class WebexEncryptionService {
7
19
  private rawKeys;
8
20
  private keyCache;
@@ -13,5 +25,7 @@ export declare class WebexEncryptionService {
13
25
  getKey(keyUri: string): Promise<jose.JWK.Key | null>;
14
26
  encryptText(keyUri: string, plaintext: string): Promise<string | null>;
15
27
  decryptText(keyUri: string, ciphertext: string): Promise<string | null>;
28
+ encryptBinary(plaintext: Uint8Array): WebexEncryptedBinary;
29
+ encryptScr(keyUri: string, scr: WebexScr): Promise<string | null>;
16
30
  }
17
31
  //# sourceMappingURL=encryption.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../../../src/platforms/webex/encryption.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAChD,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACxB;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,WAAW,CAAgC;gBAEvC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAI/C,cAAc,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAI1C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC;IAqBpD,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgBtE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAW9E"}
1
+ {"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../../../src/platforms/webex/encryption.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAChD,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACxB;AAID,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,SAAS,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,EAAE,EAAE,MAAM,CAAA;IACV,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,QAAQ,CAAA;IACb,UAAU,EAAE,UAAU,CAAA;CACvB;AAMD,qBAAa,sBAAsB;IACjC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,WAAW,CAAgC;gBAEvC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAI/C,cAAc,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAI1C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC;IAqBpD,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgBtE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAY7E,aAAa,CAAC,SAAS,EAAE,UAAU,GAAG,oBAAoB;IAsBpD,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAcxE"}
@@ -1,4 +1,8 @@
1
+ import { createCipheriv, randomBytes } from 'node:crypto';
1
2
  import * as jose from 'node-jose';
3
+ function toBase64Url(buffer) {
4
+ return buffer.toString('base64url');
5
+ }
2
6
  export class WebexEncryptionService {
3
7
  rawKeys;
4
8
  keyCache = new Map();
@@ -58,5 +62,37 @@ export class WebexEncryptionService {
58
62
  return null;
59
63
  }
60
64
  }
65
+ encryptBinary(plaintext) {
66
+ const key = randomBytes(32);
67
+ const iv = randomBytes(12);
68
+ const aad = new Date().toISOString();
69
+ const cipher = createCipheriv('aes-256-gcm', key, iv);
70
+ cipher.setAAD(Buffer.from(aad, 'utf8'));
71
+ const ciphertext = Buffer.concat([cipher.update(Buffer.from(plaintext)), cipher.final()]);
72
+ const tag = cipher.getAuthTag();
73
+ return {
74
+ scr: {
75
+ enc: 'A256GCM',
76
+ key: toBase64Url(key),
77
+ iv: toBase64Url(iv),
78
+ aad,
79
+ tag: toBase64Url(tag),
80
+ },
81
+ ciphertext,
82
+ };
83
+ }
84
+ async encryptScr(keyUri, scr) {
85
+ if (!scr.loc)
86
+ return null;
87
+ const key = await this.getKey(keyUri);
88
+ if (!key)
89
+ return null;
90
+ try {
91
+ return await jose.JWE.createEncrypt({ format: 'compact', contentAlg: 'A256GCM' }, { key, header: { alg: 'dir', kid: keyUri }, reference: null }).final(JSON.stringify(scr), 'utf8');
92
+ }
93
+ catch {
94
+ return null;
95
+ }
96
+ }
61
97
  }
62
98
  //# sourceMappingURL=encryption.js.map