agent-messenger 2.24.1 → 2.26.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 (52) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/README.md +1 -1
  3. package/dist/package.json +1 -1
  4. package/dist/src/platforms/discord/commands/auth.d.ts +4 -0
  5. package/dist/src/platforms/discord/commands/auth.d.ts.map +1 -1
  6. package/dist/src/platforms/discord/commands/auth.js +61 -1
  7. package/dist/src/platforms/discord/commands/auth.js.map +1 -1
  8. package/dist/src/platforms/discord/index.d.ts +2 -0
  9. package/dist/src/platforms/discord/index.d.ts.map +1 -1
  10. package/dist/src/platforms/discord/index.js +1 -0
  11. package/dist/src/platforms/discord/index.js.map +1 -1
  12. package/dist/src/platforms/discord/remote-auth.d.ts +42 -0
  13. package/dist/src/platforms/discord/remote-auth.d.ts.map +1 -0
  14. package/dist/src/platforms/discord/remote-auth.js +208 -0
  15. package/dist/src/platforms/discord/remote-auth.js.map +1 -0
  16. package/dist/src/platforms/webex/client.d.ts +1 -0
  17. package/dist/src/platforms/webex/client.d.ts.map +1 -1
  18. package/dist/src/platforms/webex/client.js +17 -1
  19. package/dist/src/platforms/webex/client.js.map +1 -1
  20. package/dist/src/platforms/webex/commands/message.d.ts +4 -0
  21. package/dist/src/platforms/webex/commands/message.d.ts.map +1 -1
  22. package/dist/src/platforms/webex/commands/message.js +16 -1
  23. package/dist/src/platforms/webex/commands/message.js.map +1 -1
  24. package/docs/content/docs/cli/webex.mdx +7 -0
  25. package/docs/content/docs/sdk/discord.mdx +22 -0
  26. package/docs/content/docs/sdk/webex.mdx +7 -0
  27. package/package.json +1 -1
  28. package/skills/agent-channeltalk/SKILL.md +1 -1
  29. package/skills/agent-channeltalkbot/SKILL.md +1 -1
  30. package/skills/agent-discord/SKILL.md +9 -2
  31. package/skills/agent-discordbot/SKILL.md +1 -1
  32. package/skills/agent-instagram/SKILL.md +1 -1
  33. package/skills/agent-kakaotalk/SKILL.md +1 -1
  34. package/skills/agent-line/SKILL.md +1 -1
  35. package/skills/agent-slack/SKILL.md +1 -1
  36. package/skills/agent-slackbot/SKILL.md +1 -1
  37. package/skills/agent-teams/SKILL.md +1 -1
  38. package/skills/agent-telegram/SKILL.md +1 -1
  39. package/skills/agent-telegrambot/SKILL.md +1 -1
  40. package/skills/agent-webex/SKILL.md +6 -1
  41. package/skills/agent-webexbot/SKILL.md +1 -1
  42. package/skills/agent-wechatbot/SKILL.md +1 -1
  43. package/skills/agent-whatsapp/SKILL.md +1 -1
  44. package/skills/agent-whatsappbot/SKILL.md +1 -1
  45. package/src/platforms/discord/commands/auth.ts +81 -1
  46. package/src/platforms/discord/index.ts +2 -0
  47. package/src/platforms/discord/remote-auth.test.ts +261 -0
  48. package/src/platforms/discord/remote-auth.ts +317 -0
  49. package/src/platforms/webex/client.test.ts +74 -0
  50. package/src/platforms/webex/client.ts +20 -1
  51. package/src/platforms/webex/commands/message.test.ts +29 -1
  52. package/src/platforms/webex/commands/message.ts +18 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-messenger",
3
- "version": "2.24.1",
3
+ "version": "2.26.0",
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
@@ -73,7 +73,7 @@ This installs:
73
73
 
74
74
  - `agent-slack` — Slack CLI (user token, zero-config, or QR code sign-in)
75
75
  - `agent-slackbot` — Slack Bot CLI (bot token, for server-side/CI/CD)
76
- - `agent-discord` — Discord CLI
76
+ - `agent-discord` — Discord CLI (token extraction, or QR code sign-in via the mobile app)
77
77
  - `agent-discordbot` — Discord Bot CLI (bot token, for server-side/CI/CD)
78
78
  - `agent-teams` — Microsoft Teams CLI
79
79
  - `agent-webex` — Cisco Webex CLI (browser token extraction with e2e encryption + OAuth Device Grant, zero-config)
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-messenger",
3
- "version": "2.24.1",
3
+ "version": "2.26.0",
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",
@@ -4,6 +4,10 @@ export declare function extractAction(options: {
4
4
  debug?: boolean;
5
5
  browserProfile?: string[];
6
6
  }): Promise<void>;
7
+ export declare function qrAction(options: {
8
+ pretty?: boolean;
9
+ debug?: boolean;
10
+ }): Promise<void>;
7
11
  export declare function logoutAction(options: {
8
12
  pretty?: boolean;
9
13
  }): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/discord/commands/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAWnC,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;CAC1B,GAAG,OAAO,CAAC,IAAI,CAAC,CA0HhB;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB/E;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgC/E;AAED,wBAAgB,6BAA6B,IAAI,MAAM,CAEtD;AAED,eAAO,MAAM,WAAW,SA0BrB,CAAA"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/discord/commands/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAanC,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;CAC1B,GAAG,OAAO,CAAC,IAAI,CAAC,CA0HhB;AAwBD,wBAAsB,QAAQ,CAAC,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+C5F;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB/E;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgC/E;AAED,wBAAgB,6BAA6B,IAAI,MAAM,CAEtD;AAED,eAAO,MAAM,WAAW,SAiCrB,CAAA"}
@@ -2,9 +2,11 @@ import { Command } from 'commander';
2
2
  import { collectBrowserProfileOption } from '../../../shared/chromium/index.js';
3
3
  import { handleError } from '../../../shared/utils/error-handler.js';
4
4
  import { formatOutput } from '../../../shared/utils/output.js';
5
- import { debug } from '../../../shared/utils/stderr.js';
5
+ import { displayQR } from '../../../shared/utils/qr.js';
6
+ import { debug, info } from '../../../shared/utils/stderr.js';
6
7
  import { DiscordClient } from '../client.js';
7
8
  import { DiscordCredentialManager } from '../credential-manager.js';
9
+ import { loginWithRemoteAuth } from '../remote-auth.js';
8
10
  import { DiscordTokenExtractor } from '../token-extractor.js';
9
11
  export async function extractAction(options) {
10
12
  try {
@@ -101,6 +103,59 @@ export async function extractAction(options) {
101
103
  handleError(error);
102
104
  }
103
105
  }
106
+ async function saveTokenWithServers(token, credManager) {
107
+ const client = await new DiscordClient().login({ token });
108
+ const authInfo = await client.testAuth();
109
+ const servers = await client.listServers();
110
+ if (servers.length === 0)
111
+ return null;
112
+ const serverMap = {};
113
+ for (const server of servers) {
114
+ serverMap[server.id] = { server_id: server.id, server_name: server.name };
115
+ }
116
+ await credManager.save({ token, current_server: servers[0].id, servers: serverMap });
117
+ return {
118
+ username: authInfo.username,
119
+ servers: servers.map((s) => ({ id: s.id, name: s.name })),
120
+ current: servers[0].id,
121
+ };
122
+ }
123
+ export async function qrAction(options) {
124
+ try {
125
+ const interactive = Boolean(process.stdout.isTTY);
126
+ const debugLog = options.debug ? (msg) => debug(`[debug] ${msg}`) : undefined;
127
+ const session = await loginWithRemoteAuth({
128
+ debug: debugLog,
129
+ onQrUrl: async (url) => {
130
+ await displayQR(url, {
131
+ platform: 'Discord',
132
+ brandColor: '#5865F2',
133
+ scanInstruction: 'Scan with the Discord mobile app (Settings → Scan QR Code)',
134
+ interactive,
135
+ formatOutput,
136
+ pretty: options.pretty,
137
+ });
138
+ },
139
+ onPendingLogin: (user) => {
140
+ if (interactive)
141
+ info(`\nQR scanned by ${user.username}. Confirm the login on your phone...\n`);
142
+ },
143
+ });
144
+ const credManager = new DiscordCredentialManager();
145
+ const saved = await saveTokenWithServers(session.token, credManager);
146
+ if (!saved) {
147
+ console.log(formatOutput({
148
+ error: 'Logged in, but this account is not a member of any server.',
149
+ hint: 'Join at least one server, then run this command again.',
150
+ }, options.pretty));
151
+ process.exit(1);
152
+ }
153
+ console.log(formatOutput({ user: saved.username, servers: saved.servers.map((s) => `${s.id}/${s.name}`), current: saved.current }, options.pretty));
154
+ }
155
+ catch (error) {
156
+ handleError(error);
157
+ }
158
+ }
104
159
  export async function logoutAction(options) {
105
160
  try {
106
161
  const credManager = new DiscordCredentialManager();
@@ -157,6 +212,11 @@ export const authCommand = new Command('auth')
157
212
  .option('--debug', 'Show debug output for troubleshooting')
158
213
  .option('--browser-profile <path>', 'Additional Chromium profile/user-data directory to scan (repeatable, comma-separated supported)', collectBrowserProfileOption, [])
159
214
  .action(extractAction))
215
+ .addCommand(new Command('qr')
216
+ .description('Sign in by scanning a QR code with the Discord mobile app')
217
+ .option('--pretty', 'Pretty print JSON output')
218
+ .option('--debug', 'Show debug output for troubleshooting')
219
+ .action(qrAction))
160
220
  .addCommand(new Command('logout')
161
221
  .description('Logout from Discord')
162
222
  .option('--pretty', 'Pretty print JSON output')
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../src/platforms/discord/commands/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../src/platforms/discord/commands/auth.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  export { DiscordClient, DiscordError } from './client.js';
2
2
  export { DiscordCredentialManager } from './credential-manager.js';
3
3
  export { DiscordListener } from './listener.js';
4
+ export { loginWithRemoteAuth } from './remote-auth.js';
5
+ export type { RemoteAuthOptions, RemoteAuthSession } from './remote-auth.js';
4
6
  export type { DiscordChannel, DiscordConfig, DiscordCredentials, DiscordDMChannel, DiscordFile, DiscordGatewayChannelEvent, DiscordGatewayEvent, DiscordGatewayGenericEvent, DiscordGatewayMemberEvent, DiscordGatewayMessageCreateEvent, DiscordGatewayMessageDeleteEvent, DiscordGatewayMessageUpdateEvent, DiscordGatewayPresenceEvent, DiscordGatewayReactionEvent, DiscordGatewayTypingEvent, DiscordGuild, DiscordGuildMember, DiscordListenerEventMap, DiscordMention, DiscordMessage, DiscordReaction, DiscordRelationship, DiscordSearchOptions, DiscordSearchResponse, DiscordSearchResult, DiscordUser, DiscordUserNote, DiscordUserProfile, } from './types.js';
5
7
  export { DiscordChannelSchema, DiscordConfigSchema, DiscordCredentialsSchema, DiscordDMChannelSchema, DiscordFileSchema, DiscordGatewayOpcode, DiscordGuildSchema, DiscordIntent, DiscordMentionSchema, DiscordMessageSchema, DiscordReactionSchema, DiscordRelationshipSchema, DiscordSearchResponseSchema, DiscordSearchResultSchema, DiscordUserSchema, } from './types.js';
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/platforms/discord/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,YAAY,EACV,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,0BAA0B,EAC1B,mBAAmB,EACnB,0BAA0B,EAC1B,yBAAyB,EACzB,gCAAgC,EAChC,gCAAgC,EAChC,gCAAgC,EAChC,2BAA2B,EAC3B,2BAA2B,EAC3B,yBAAyB,EACzB,YAAY,EACZ,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,kBAAkB,GACnB,MAAM,SAAS,CAAA;AAChB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/platforms/discord/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACnD,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACzE,YAAY,EACV,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,0BAA0B,EAC1B,mBAAmB,EACnB,0BAA0B,EAC1B,yBAAyB,EACzB,gCAAgC,EAChC,gCAAgC,EAChC,gCAAgC,EAChC,2BAA2B,EAC3B,2BAA2B,EAC3B,yBAAyB,EACzB,YAAY,EACZ,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,EACd,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,kBAAkB,GACnB,MAAM,SAAS,CAAA;AAChB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,SAAS,CAAA"}
@@ -1,5 +1,6 @@
1
1
  export { DiscordClient, DiscordError } from './client.js';
2
2
  export { DiscordCredentialManager } from './credential-manager.js';
3
3
  export { DiscordListener } from './listener.js';
4
+ export { loginWithRemoteAuth } from './remote-auth.js';
4
5
  export { DiscordChannelSchema, DiscordConfigSchema, DiscordCredentialsSchema, DiscordDMChannelSchema, DiscordFileSchema, DiscordGatewayOpcode, DiscordGuildSchema, DiscordIntent, DiscordMentionSchema, DiscordMessageSchema, DiscordReactionSchema, DiscordRelationshipSchema, DiscordSearchResponseSchema, DiscordSearchResultSchema, DiscordUserSchema, } from './types.js';
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/platforms/discord/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AA+B5C,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/platforms/discord/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAA;AAgCnD,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,SAAS,CAAA"}
@@ -0,0 +1,42 @@
1
+ import { createPrivateKey, createPublicKey, generateKeyPairSync } from 'node:crypto';
2
+ import WebSocket from 'ws';
3
+ interface RemoteAuthUser {
4
+ id: string;
5
+ username: string;
6
+ discriminator: string;
7
+ avatar: string | null;
8
+ }
9
+ export interface RemoteAuthSession {
10
+ token: string;
11
+ user: RemoteAuthUser | null;
12
+ }
13
+ export interface RemoteAuthOptions {
14
+ onQrUrl?: (url: string) => void | Promise<void>;
15
+ onPendingLogin?: (user: RemoteAuthUser) => void;
16
+ debug?: (message: string) => void;
17
+ fetchImpl?: typeof fetch;
18
+ timeoutMs?: number;
19
+ createWebSocket?: (url: string) => WebSocket;
20
+ }
21
+ /**
22
+ * Authenticate a Discord user account via the Remote Auth ("scan QR with the mobile app") flow.
23
+ *
24
+ * The desktop side (this function) opens a WebSocket to Discord's remote-auth gateway, performs an
25
+ * RSA-OAEP key exchange, and renders a QR code. Once the user scans it with an authenticated Discord
26
+ * mobile app and confirms, Discord returns an encrypted ticket which is exchanged for the user token.
27
+ */
28
+ export declare function loginWithRemoteAuth(options?: RemoteAuthOptions): Promise<RemoteAuthSession>;
29
+ declare function encodePublicKey(publicKey: ReturnType<typeof generateKeyPairSync>['publicKey']): string;
30
+ declare function computeNonceProof(privateKey: ReturnType<typeof generateKeyPairSync>['privateKey'], encryptedNonce: string): string;
31
+ declare function parseUserPayload(payload: string): RemoteAuthUser;
32
+ declare function base64UrlNoPadding(buffer: Buffer): string;
33
+ export declare const __test: {
34
+ encodePublicKey: typeof encodePublicKey;
35
+ computeNonceProof: typeof computeNonceProof;
36
+ parseUserPayload: typeof parseUserPayload;
37
+ base64UrlNoPadding: typeof base64UrlNoPadding;
38
+ createPublicKey: typeof createPublicKey;
39
+ createPrivateKey: typeof createPrivateKey;
40
+ };
41
+ export {};
42
+ //# sourceMappingURL=remote-auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remote-auth.d.ts","sourceRoot":"","sources":["../../../../src/platforms/discord/remote-auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EAEpB,MAAM,aAAa,CAAA;AAEpB,OAAO,SAAS,MAAM,IAAI,CAAA;AAW1B,UAAU,cAAc;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,cAAc,GAAG,IAAI,CAAA;CAC5B;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/C,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAA;IAC/C,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,SAAS,CAAA;CAC7C;AAsCD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAsJ/F;AAED,iBAAS,eAAe,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,WAAW,CAAC,GAAG,MAAM,CAG/F;AAgBD,iBAAS,iBAAiB,CACxB,UAAU,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,YAAY,CAAC,EAChE,cAAc,EAAE,MAAM,GACrB,MAAM,CAGR;AAED,iBAAS,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,CAGzD;AAuCD,iBAAS,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,eAAO,MAAM,MAAM;;;;;;;CAOlB,CAAA"}
@@ -0,0 +1,208 @@
1
+ import { constants as cryptoConstants, createHash, createPrivateKey, createPublicKey, generateKeyPairSync, privateDecrypt, } from 'node:crypto';
2
+ import WebSocket from 'ws';
3
+ import { DiscordError } from './client.js';
4
+ import { getDiscordHeaders } from './super-properties.js';
5
+ const REMOTE_AUTH_GATEWAY_URL = 'wss://remote-auth-gateway.discord.gg/?v=2';
6
+ const REMOTE_AUTH_ORIGIN = 'https://discord.com';
7
+ const REMOTE_AUTH_LOGIN_URL = 'https://discord.com/api/v9/users/@me/remote-auth/login';
8
+ const QR_URL_PREFIX = 'https://discord.com/ra/';
9
+ const DEFAULT_TIMEOUT_MS = 150_000;
10
+ /**
11
+ * Authenticate a Discord user account via the Remote Auth ("scan QR with the mobile app") flow.
12
+ *
13
+ * The desktop side (this function) opens a WebSocket to Discord's remote-auth gateway, performs an
14
+ * RSA-OAEP key exchange, and renders a QR code. Once the user scans it with an authenticated Discord
15
+ * mobile app and confirms, Discord returns an encrypted ticket which is exchanged for the user token.
16
+ */
17
+ export function loginWithRemoteAuth(options = {}) {
18
+ const debug = options.debug;
19
+ const timeoutMs = options.timeoutMs ?? DEFAULT_TIMEOUT_MS;
20
+ const { publicKey, privateKey } = generateKeyPairSync('rsa', {
21
+ modulusLength: 2048,
22
+ publicExponent: 0x10001,
23
+ });
24
+ const ws = options.createWebSocket
25
+ ? options.createWebSocket(REMOTE_AUTH_GATEWAY_URL)
26
+ : new WebSocket(REMOTE_AUTH_GATEWAY_URL, { headers: { Origin: REMOTE_AUTH_ORIGIN } });
27
+ return new Promise((resolve, reject) => {
28
+ let settled = false;
29
+ let heartbeatTimer = null;
30
+ let pendingUser = null;
31
+ let exchangeStarted = false;
32
+ const cleanup = () => {
33
+ if (heartbeatTimer) {
34
+ clearInterval(heartbeatTimer);
35
+ heartbeatTimer = null;
36
+ }
37
+ clearTimeout(timeoutTimer);
38
+ try {
39
+ ws.close();
40
+ }
41
+ catch { }
42
+ };
43
+ const fail = (error) => {
44
+ if (settled)
45
+ return;
46
+ settled = true;
47
+ cleanup();
48
+ reject(error);
49
+ };
50
+ const succeed = (session) => {
51
+ if (settled)
52
+ return;
53
+ settled = true;
54
+ cleanup();
55
+ resolve(session);
56
+ };
57
+ const timeoutTimer = setTimeout(() => {
58
+ fail(new DiscordError('Remote auth timed out before the QR code was scanned.', 'remote_auth_timeout'));
59
+ }, timeoutMs);
60
+ timeoutTimer.unref?.();
61
+ const send = (payload) => {
62
+ try {
63
+ ws.send(JSON.stringify(payload));
64
+ }
65
+ catch (error) {
66
+ fail(error instanceof Error ? error : new Error(String(error)));
67
+ }
68
+ };
69
+ ws.on('open', () => {
70
+ debug?.('Connected to remote auth gateway');
71
+ });
72
+ ws.on('message', (raw) => {
73
+ let message;
74
+ try {
75
+ message = JSON.parse(raw.toString());
76
+ }
77
+ catch {
78
+ return;
79
+ }
80
+ try {
81
+ handleMessage(message);
82
+ }
83
+ catch (error) {
84
+ fail(error instanceof Error ? error : new Error(String(error)));
85
+ }
86
+ });
87
+ const handleMessage = (message) => {
88
+ switch (message.op) {
89
+ case 'hello': {
90
+ const interval = message.heartbeat_interval;
91
+ heartbeatTimer = setInterval(() => send({ op: 'heartbeat' }), interval);
92
+ heartbeatTimer.unref?.();
93
+ send({ op: 'init', encoded_public_key: encodePublicKey(publicKey) });
94
+ debug?.('Sent init with public key');
95
+ break;
96
+ }
97
+ case 'nonce_proof': {
98
+ const encrypted = message.encrypted_nonce;
99
+ const proof = computeNonceProof(privateKey, encrypted);
100
+ send({ op: 'nonce_proof', proof });
101
+ debug?.('Sent nonce proof');
102
+ break;
103
+ }
104
+ case 'pending_remote_init': {
105
+ const { fingerprint } = message;
106
+ const qrUrl = `${QR_URL_PREFIX}${fingerprint}`;
107
+ debug?.('Received fingerprint; QR ready');
108
+ Promise.resolve(options.onQrUrl?.(qrUrl)).catch((error) => {
109
+ fail(error instanceof Error ? error : new Error(String(error)));
110
+ });
111
+ break;
112
+ }
113
+ case 'pending_ticket': {
114
+ const payload = decryptPayload(privateKey, message.encrypted_user_payload);
115
+ pendingUser = parseUserPayload(payload.toString('utf8'));
116
+ options.onPendingLogin?.(pendingUser);
117
+ debug?.(`QR scanned by ${pendingUser.username}`);
118
+ break;
119
+ }
120
+ case 'pending_login': {
121
+ if (exchangeStarted)
122
+ break;
123
+ exchangeStarted = true;
124
+ const { ticket } = message;
125
+ debug?.('Exchanging ticket for token');
126
+ exchangeTicket(ticket, privateKey, options.fetchImpl ?? fetch)
127
+ .then((token) => succeed({ token, user: pendingUser }))
128
+ .catch(fail);
129
+ break;
130
+ }
131
+ case 'cancel': {
132
+ fail(new DiscordError('Remote auth was cancelled from the mobile device.', 'remote_auth_cancelled'));
133
+ break;
134
+ }
135
+ }
136
+ };
137
+ ws.on('close', (code) => {
138
+ if (settled)
139
+ return;
140
+ // The gateway closes the socket right after pending_login; the in-flight
141
+ // ticket exchange settles the result, so this close must not preempt it.
142
+ if (exchangeStarted)
143
+ return;
144
+ // 4003 is the gateway's timeout close code.
145
+ if (code === 4003) {
146
+ fail(new DiscordError('Remote auth session expired. Generate a new QR code and try again.', 'remote_auth_timeout'));
147
+ return;
148
+ }
149
+ fail(new DiscordError(`Remote auth connection closed before completion (code ${code}).`, 'remote_auth_closed'));
150
+ });
151
+ ws.on('error', (error) => {
152
+ fail(error instanceof Error ? error : new Error(String(error)));
153
+ });
154
+ });
155
+ }
156
+ function encodePublicKey(publicKey) {
157
+ const spki = publicKey.export({ type: 'spki', format: 'der' });
158
+ return spki.toString('base64');
159
+ }
160
+ function decryptPayload(privateKey, encryptedBase64) {
161
+ return privateDecrypt({
162
+ key: privateKey,
163
+ padding: cryptoConstants.RSA_PKCS1_OAEP_PADDING,
164
+ oaepHash: 'sha256',
165
+ }, Buffer.from(encryptedBase64, 'base64'));
166
+ }
167
+ function computeNonceProof(privateKey, encryptedNonce) {
168
+ const nonce = decryptPayload(privateKey, encryptedNonce);
169
+ return base64UrlNoPadding(createHash('sha256').update(nonce).digest());
170
+ }
171
+ function parseUserPayload(payload) {
172
+ const [id = '', discriminator = '0', avatar = '', username = ''] = payload.split(':');
173
+ return { id, username, discriminator, avatar: avatar || null };
174
+ }
175
+ async function exchangeTicket(ticket, privateKey, fetchImpl) {
176
+ const { Authorization: _omit, ...headers } = getDiscordHeaders('');
177
+ const response = await fetchImpl(REMOTE_AUTH_LOGIN_URL, {
178
+ method: 'POST',
179
+ headers: { ...headers, 'Content-Type': 'application/json' },
180
+ body: JSON.stringify({ ticket }),
181
+ });
182
+ if (response.status === 400) {
183
+ const body = (await response.json().catch(() => ({})));
184
+ if (body.captcha_sitekey) {
185
+ throw new DiscordError('Discord requires a captcha to complete this login. Captcha solving is not supported; use `auth extract` instead.', 'remote_auth_captcha');
186
+ }
187
+ }
188
+ if (!response.ok) {
189
+ throw new DiscordError(`Failed to exchange remote auth ticket (HTTP ${response.status}).`, 'remote_auth_login_failed');
190
+ }
191
+ const body = (await response.json());
192
+ if (!body.encrypted_token) {
193
+ throw new DiscordError('Remote auth response did not include a token.', 'remote_auth_login_failed');
194
+ }
195
+ return decryptPayload(privateKey, body.encrypted_token).toString('utf8');
196
+ }
197
+ function base64UrlNoPadding(buffer) {
198
+ return buffer.toString('base64').replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/, '');
199
+ }
200
+ export const __test = {
201
+ encodePublicKey,
202
+ computeNonceProof,
203
+ parseUserPayload,
204
+ base64UrlNoPadding,
205
+ createPublicKey,
206
+ createPrivateKey,
207
+ };
208
+ //# sourceMappingURL=remote-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remote-auth.js","sourceRoot":"","sources":["../../../../src/platforms/discord/remote-auth.ts"],"names":[],"mappings":"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"}
@@ -48,6 +48,7 @@ export declare class WebexClient {
48
48
  parentId?: string;
49
49
  files?: string[];
50
50
  }): Promise<WebexMessage>;
51
+ setTyping(roomId: string, typing?: boolean): Promise<void>;
51
52
  private get useInternalAPI();
52
53
  private get convBaseUrl();
53
54
  private get internalHeaders();
@@ -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":"AAcA,OAAO,KAAK,EAAe,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAalG,UAAU,kBAAkB;IAC1B,2BAA2B,CAAC,EAAE,MAAM,CAAA;CACrC;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,OAAO,CAA0C;IACzD,OAAO,CAAC,oBAAoB,CAAY;IACxC,OAAO,CAAC,UAAU,CAAsC;IACxD,OAAO,CAAC,gBAAgB,CAA4B;IACpD,OAAO,CAAC,aAAa,CAAqC;IAC1D,OAAO,CAAC,2BAA2B,CAAQ;gBAE/B,OAAO,GAAE,kBAAuB;IAItC,KAAK,CAAC,WAAW,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCnG,OAAO,CAAC,oBAAoB;IAyBtB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B,QAAQ,IAAI,MAAM;YAIJ,oBAAoB;IAWlC,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,YAAY;YAKN,gBAAgB;IAa9B,OAAO,CAAC,YAAY;YAYN,uBAAuB;IASrC,OAAO,CAAC,KAAK;YAIC,OAAO;YAIP,eAAe;IA+DvB,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC;YAuBxB,gBAAgB;IASxB,UAAU,CAAC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAS3E,aAAa,CAAC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,cAAc,CAAC,UAAU,CAAC;IAYrF,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA+B9C,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAelD,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAK9C,WAAW,CACf,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GACpE,OAAO,CAAC,YAAY,CAAC;IAelB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBtE,OAAO,KAAK,cAAc,GAEzB;IAED,OAAO,KAAK,WAAW,GAGtB;IAED,OAAO,KAAK,eAAe,GAM1B;IAED,OAAO,CAAC,cAAc;YAIR,eAAe;YAef,iBAAiB;YA2BjB,oBAAoB;YA6CpB,mBAAmB;IA0B3B,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC;YAcrG,qBAAqB;IAW7B,YAAY,CAChB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GACtE,OAAO,CAAC,YAAY,EAAE,CAAC;IAsBpB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAgBpD,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB/C,WAAW,CACf,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAC/B,OAAO,CAAC,YAAY,CAAC;IA6ClB,UAAU,CAAC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAWpG,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAWjD,iBAAiB,CAAC,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAOzE,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IASvF,UAAU,CACd,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;QAAE,OAAO,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,EACzC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GACjE,OAAO,CAAC,YAAY,CAAC;YA6BV,kBAAkB;YAgDlB,iBAAiB;YA4CjB,aAAa;YA0Bb,uBAAuB;YAavB,YAAY;IAsB1B,OAAO,CAAC,qBAAqB;YASf,yBAAyB;YAgBzB,sBAAsB;IAKpC,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,iBAAiB;IAKnB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAmBhH,OAAO,CAAC,iBAAiB;CAsB1B"}
@@ -291,6 +291,20 @@ export class WebexClient {
291
291
  body.files = resolvedOptions.files;
292
292
  return normalizeSdkMessage(await this.request('POST', '/messages', body));
293
293
  }
294
+ async setTyping(roomId, typing = true) {
295
+ if (!this.useInternalAPI) {
296
+ throw new WebexError('Typing indicator requires an extracted or password token with a device URL', 'unsupported');
297
+ }
298
+ const resolvedRoomId = await this.resolveRoomId(roomId);
299
+ const convUuid = this.decodeConvUuid(resolvedRoomId);
300
+ await this.internalRequest(`/conversations/${convUuid}/status/typing`, {
301
+ method: 'POST',
302
+ body: JSON.stringify({
303
+ conversationId: convUuid,
304
+ eventType: typing ? 'status.start_typing' : 'status.stop_typing',
305
+ }),
306
+ });
307
+ }
294
308
  get useInternalAPI() {
295
309
  return (this.tokenType === 'extracted' || this.tokenType === 'password') && this.deviceUrl !== null;
296
310
  }
@@ -806,7 +820,9 @@ function isTrustedWebexHost(host) {
806
820
  host === 'wbx2.com' ||
807
821
  host.endsWith('.wbx2.com') ||
808
822
  host === 'ciscospark.com' ||
809
- host.endsWith('.ciscospark.com'));
823
+ host.endsWith('.ciscospark.com') ||
824
+ host === 'webexcontent.com' ||
825
+ host.endsWith('.webexcontent.com'));
810
826
  }
811
827
  // Pin server-returned upload URLs to HTTPS Webex hosts: they receive the bearer
812
828
  // token (activity calls) and file bytes, so a compromised response must not be