agent-messenger 2.19.5 → 2.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/dist/package.json +1 -1
  3. package/dist/src/platforms/line/client.d.ts +4 -0
  4. package/dist/src/platforms/line/client.d.ts.map +1 -1
  5. package/dist/src/platforms/line/client.js +124 -24
  6. package/dist/src/platforms/line/client.js.map +1 -1
  7. package/dist/src/platforms/line/e2ee-storage.d.ts +16 -0
  8. package/dist/src/platforms/line/e2ee-storage.d.ts.map +1 -0
  9. package/dist/src/platforms/line/e2ee-storage.js +93 -0
  10. package/dist/src/platforms/line/e2ee-storage.js.map +1 -0
  11. package/dist/src/platforms/teams/cli.d.ts.map +1 -1
  12. package/dist/src/platforms/teams/cli.js +2 -1
  13. package/dist/src/platforms/teams/cli.js.map +1 -1
  14. package/dist/src/platforms/teams/client.d.ts +4 -1
  15. package/dist/src/platforms/teams/client.d.ts.map +1 -1
  16. package/dist/src/platforms/teams/client.js +84 -0
  17. package/dist/src/platforms/teams/client.js.map +1 -1
  18. package/dist/src/platforms/teams/commands/chat.d.ts +13 -0
  19. package/dist/src/platforms/teams/commands/chat.d.ts.map +1 -0
  20. package/dist/src/platforms/teams/commands/chat.js +111 -0
  21. package/dist/src/platforms/teams/commands/chat.js.map +1 -0
  22. package/dist/src/platforms/teams/commands/index.d.ts +1 -0
  23. package/dist/src/platforms/teams/commands/index.d.ts.map +1 -1
  24. package/dist/src/platforms/teams/commands/index.js +1 -0
  25. package/dist/src/platforms/teams/commands/index.js.map +1 -1
  26. package/dist/src/platforms/teams/types.d.ts +24 -0
  27. package/dist/src/platforms/teams/types.d.ts.map +1 -1
  28. package/dist/src/platforms/teams/types.js +8 -0
  29. package/dist/src/platforms/teams/types.js.map +1 -1
  30. package/dist/src/tui/adapters/line-adapter.js +1 -1
  31. package/dist/src/tui/adapters/line-adapter.js.map +1 -1
  32. package/docs/content/docs/cli/line.mdx +13 -11
  33. package/package.json +1 -1
  34. package/skills/agent-channeltalk/SKILL.md +1 -1
  35. package/skills/agent-channeltalkbot/SKILL.md +1 -1
  36. package/skills/agent-discord/SKILL.md +1 -1
  37. package/skills/agent-discordbot/SKILL.md +1 -1
  38. package/skills/agent-instagram/SKILL.md +1 -1
  39. package/skills/agent-kakaotalk/SKILL.md +1 -1
  40. package/skills/agent-line/SKILL.md +7 -5
  41. package/skills/agent-line/references/common-patterns.md +5 -2
  42. package/skills/agent-slack/SKILL.md +1 -1
  43. package/skills/agent-slackbot/SKILL.md +1 -1
  44. package/skills/agent-teams/SKILL.md +20 -2
  45. package/skills/agent-teams/references/common-patterns.md +28 -0
  46. package/skills/agent-telegram/SKILL.md +1 -1
  47. package/skills/agent-telegrambot/SKILL.md +1 -1
  48. package/skills/agent-webex/SKILL.md +1 -1
  49. package/skills/agent-wechatbot/SKILL.md +1 -1
  50. package/skills/agent-whatsapp/SKILL.md +1 -1
  51. package/skills/agent-whatsappbot/SKILL.md +1 -1
  52. package/src/platforms/line/client.test.ts +223 -20
  53. package/src/platforms/line/client.ts +141 -29
  54. package/src/platforms/line/e2ee-storage.test.ts +154 -0
  55. package/src/platforms/line/e2ee-storage.ts +119 -0
  56. package/src/platforms/teams/cli.ts +2 -0
  57. package/src/platforms/teams/client.test.ts +96 -0
  58. package/src/platforms/teams/client.ts +133 -0
  59. package/src/platforms/teams/commands/chat.test.ts +100 -0
  60. package/src/platforms/teams/commands/chat.ts +131 -0
  61. package/src/platforms/teams/commands/index.ts +1 -0
  62. package/src/platforms/teams/types.ts +20 -0
  63. package/src/tui/adapters/line-adapter.ts +1 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-messenger",
3
- "version": "2.19.5",
3
+ "version": "2.20.1",
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/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-messenger",
3
- "version": "2.19.5",
3
+ "version": "2.20.1",
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",
@@ -47,6 +47,8 @@ export declare class LineClient {
47
47
  onPincode: (pin: string) => void;
48
48
  }): Promise<LineLoginResult>;
49
49
  login(credentials?: LineAccountCredentials): Promise<this>;
50
+ private persistAccountE2EEKeys;
51
+ private repairSelfE2EEKey;
50
52
  getProfile(): Promise<LineProfile>;
51
53
  getFriends(): Promise<LineFriend[]>;
52
54
  getChats(options?: {
@@ -55,6 +57,8 @@ export declare class LineClient {
55
57
  getMessages(chatId: string, options?: {
56
58
  count?: number;
57
59
  }): Promise<LineMessage[]>;
60
+ private decryptMessageText;
61
+ private resolveAuthorNames;
58
62
  sendMessage(chatId: string, text: string): Promise<LineSendResult>;
59
63
  streamEvents(signal: AbortSignal): AsyncGenerator<LineRawEvent, void, unknown>;
60
64
  close(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/platforms/line/client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAWzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,KAAK,EACV,sBAAsB,EACtB,QAAQ,EACR,UAAU,EACV,mBAAmB,EACnB,UAAU,EACV,eAAe,EACf,WAAW,EACX,WAAW,EACX,cAAc,EACf,MAAM,SAAS,CAAA;AAGhB,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE;QACH,EAAE,EAAE,OAAO,CAAA;QACX,WAAW,CAAC,EAAE,OAAO,CAAA;QACrB,eAAe,CAAC,EAAE,OAAO,CAAA;QACzB,WAAW,CAAC,EAAE,OAAO,CAAA;QACrB,MAAM,CAAC,EAAE,OAAO,CAAA;QAChB,EAAE,CAAC,EAAE,OAAO,CAAA;QACZ,IAAI,CAAC,EAAE,OAAO,CAAA;QACd,IAAI,CAAC,EAAE,OAAO,CAAA;QACd,MAAM,CAAC,EAAE,OAAO,CAAA;QAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;KACnB,CAAA;IACD,EAAE,EAAE;QAAE,EAAE,EAAE,OAAO,CAAA;KAAE,CAAA;IACnB,IAAI,EAAE;QAAE,EAAE,EAAE,OAAO,CAAA;KAAE,CAAA;IACrB,WAAW,EAAE,OAAO,CAAA;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,gBAAgB,CAAC,EAAE,mBAAmB,CAAA;CACvC;AAED,MAAM,MAAM,YAAY,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,cAAc,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,aAAa,CAAA;CAAE,CAAA;AAwD9G,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,WAAW,CAAuB;gBAE9B,WAAW,CAAC,EAAE,qBAAqB;IAIzC,WAAW,CAAC,OAAO,EAAE;QACzB,MAAM,CAAC,EAAE,UAAU,CAAA;QACnB,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;QAC9B,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;KACjC,GAAG,OAAO,CAAC,eAAe,CAAC;IAuCtB,cAAc,CAAC,OAAO,EAAE;QAC5B,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,CAAA;QAChB,MAAM,CAAC,EAAE,UAAU,CAAA;QACnB,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;KACjC,GAAG,OAAO,CAAC,eAAe,CAAC;IAyCtB,KAAK,CAAC,WAAW,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAqB1D,UAAU,IAAI,OAAO,CAAC,WAAW,CAAC;IAclC,UAAU,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAkBnC,QAAQ,CAAC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAwF3D,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAqCjF,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IA+CjE,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,cAAc,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC;IA6CrF,KAAK,IAAI,IAAI;IAIb,OAAO,CAAC,YAAY;CAMrB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/platforms/line/client.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
- import { copyFileSync, existsSync, mkdirSync } from 'node:fs';
1
+ import { mkdirSync } from 'node:fs';
2
2
  import { join } from 'node:path';
3
3
  import { getConfigDir } from '../../shared/utils/config-dir.js';
4
4
  import { FileStorage } from '../../vendor/linejs/base/storage/mod.js';
5
5
  import { loginWithQR as linejsLoginWithQR, loginWithPassword as linejsLoginWithPassword, loginWithAuthToken as linejsLoginWithAuthToken, } from '../../vendor/linejs/client/mod.js';
6
6
  import { LineCredentialManager } from './credential-manager.js';
7
+ import { ensureSelfKeyForMid, migrateOwnE2EEKeys } from './e2ee-storage.js';
7
8
  import { LineError } from './types.js';
8
9
  const MAX_MESSAGE_ID = 9223372036854775807n;
9
10
  function wrapError(error, code) {
@@ -42,17 +43,18 @@ function mapChatType(rawType) {
42
43
  function getDefaultDevice() {
43
44
  return 'ANDROIDSECONDARY';
44
45
  }
45
- function createStorage(accountId) {
46
+ function lineStorageDir() {
46
47
  const dir = join(getConfigDir(), 'line-storage');
47
48
  mkdirSync(dir, { recursive: true });
48
- const defaultPath = join(dir, 'default.json');
49
- if (!accountId)
50
- return new FileStorage(defaultPath);
51
- const accountPath = join(dir, `${accountId}.json`);
52
- if (!existsSync(accountPath) && existsSync(defaultPath)) {
53
- copyFileSync(defaultPath, accountPath);
54
- }
55
- return new FileStorage(accountPath);
49
+ return dir;
50
+ }
51
+ // Per-account stores stay isolated: blindly cloning default.json would copy another
52
+ // account's E2EE private keys into this account's file. E2EE key material is migrated
53
+ // explicitly via migrateOwnE2EEKeys after login resolves the account MID.
54
+ function createStorage(accountId) {
55
+ const dir = lineStorageDir();
56
+ const fileName = accountId ? `${accountId}.json` : 'default.json';
57
+ return new FileStorage(join(dir, fileName));
56
58
  }
57
59
  export class LineClient {
58
60
  client = null;
@@ -70,7 +72,7 @@ export class LineClient {
70
72
  }, { device, storage });
71
73
  this.client = client;
72
74
  const profile = await client.base.talk.getProfile();
73
- createStorage(profile.mid);
75
+ await this.persistAccountE2EEKeys(client, profile.mid);
74
76
  const now = new Date().toISOString();
75
77
  await this.credManager.setAccount({
76
78
  account_id: profile.mid,
@@ -103,7 +105,7 @@ export class LineClient {
103
105
  }, { device, storage });
104
106
  this.client = client;
105
107
  const profile = await client.base.talk.getProfile();
106
- createStorage(profile.mid);
108
+ await this.persistAccountE2EEKeys(client, profile.mid);
107
109
  const now = new Date().toISOString();
108
110
  await this.credManager.setAccount({
109
111
  account_id: profile.mid,
@@ -137,12 +139,38 @@ export class LineClient {
137
139
  const device = creds.device ?? getDefaultDevice();
138
140
  const storage = createStorage(creds.account_id);
139
141
  this.client = await linejsLoginWithAuthToken(creds.auth_token, { device, storage });
142
+ await this.repairSelfE2EEKey(this.client, creds.account_id);
140
143
  return this;
141
144
  }
142
145
  catch (error) {
143
146
  throw wrapError(error, 'login_failed');
144
147
  }
145
148
  }
149
+ // A fresh QR/email login writes E2EE keys into the shared default store. Copy only
150
+ // this account's verified key material into its isolated per-account store so token
151
+ // logins (which read the per-account store) can later encrypt for E2EE chats.
152
+ async persistAccountE2EEKeys(client, mid) {
153
+ try {
154
+ const advertised = await client.base.talk.getE2EEPublicKeys().catch(() => undefined);
155
+ const target = createStorage(mid);
156
+ await migrateOwnE2EEKeys(client.base.storage, target, mid, advertised);
157
+ }
158
+ catch (error) {
159
+ warnDegraded('persist account E2EE keys', error);
160
+ }
161
+ }
162
+ // Token sessions don't perform an E2EE handshake, so getE2EESelfKeyData can't find
163
+ // a key under the account MID even when the keyId-addressed key already exists in
164
+ // storage. Promote it to the MID address, trusting only server-advertised keyIds.
165
+ async repairSelfE2EEKey(client, mid) {
166
+ try {
167
+ const advertised = await client.base.talk.getE2EEPublicKeys().catch(() => undefined);
168
+ await ensureSelfKeyForMid(client.base.storage, mid, advertised);
169
+ }
170
+ catch (error) {
171
+ warnDegraded('repair self E2EE key', error);
172
+ }
173
+ }
146
174
  async getProfile() {
147
175
  try {
148
176
  const profile = await this.ensureClient().base.talk.getProfile();
@@ -274,23 +302,76 @@ export class LineClient {
274
302
  messagesCount: count,
275
303
  },
276
304
  });
277
- return (rawMessages ?? []).map((msg) => {
278
- const decryptionError = getUndecryptableMessageError(msg);
305
+ const messages = rawMessages ?? [];
306
+ const authorNames = await this.resolveAuthorNames(client, messages);
307
+ return await Promise.all(messages.map(async (msg) => {
308
+ const { text, decryptionError } = await this.decryptMessageText(client, msg);
309
+ const authorId = String(msg.from ?? '');
310
+ const authorName = authorNames.get(authorId);
279
311
  return {
280
312
  message_id: String(msg.id),
281
313
  chat_id: chatId,
282
- author_id: String(msg.from ?? ''),
283
- text: msg.text || null,
314
+ author_id: authorId,
315
+ ...(authorName && { author_name: authorName }),
316
+ text,
284
317
  ...(decryptionError && { decryption_error: decryptionError }),
285
318
  content_type: String(msg.contentType ?? 'NONE'),
286
319
  sent_at: new Date(Number(msg.createdTime)).toISOString(),
287
320
  };
288
- });
321
+ }));
289
322
  }
290
323
  catch (error) {
291
324
  throw wrapError(error, 'get_messages_failed');
292
325
  }
293
326
  }
327
+ // getPreviousMessagesV2WithRequest returns Letter-Sealing messages as encrypted
328
+ // chunks with null text, so they must be decrypted with the same path streamEvents
329
+ // uses. Plain messages already carry text and skip decryption.
330
+ async decryptMessageText(client, msg) {
331
+ if (!isEncryptedChunkMessage(msg)) {
332
+ return { text: msg.text || null };
333
+ }
334
+ try {
335
+ const decrypted = await client.base.e2ee.decryptE2EEMessage(normalizeE2EEMetadata(msg));
336
+ return { text: decrypted.text ?? null };
337
+ }
338
+ catch (error) {
339
+ return { text: null, decryptionError: getDecryptionError(error) };
340
+ }
341
+ }
342
+ // getContacts doesn't return the current user, so self-authored messages need
343
+ // getProfile separately. Lookups degrade to bare MIDs rather than failing.
344
+ async resolveAuthorNames(client, messages) {
345
+ const names = new Map();
346
+ const authorMids = [...new Set(messages.map((m) => String(m.from ?? '')).filter((mid) => mid.length > 0))];
347
+ if (authorMids.length === 0)
348
+ return names;
349
+ const selfMid = client.base.profile?.mid;
350
+ const contactMids = authorMids.filter((mid) => mid !== selfMid);
351
+ if (contactMids.length > 0) {
352
+ try {
353
+ const contacts = await client.base.talk.getContacts({ mids: contactMids });
354
+ for (const contact of contacts ?? []) {
355
+ if (contact.displayName)
356
+ names.set(contact.mid, contact.displayName);
357
+ }
358
+ }
359
+ catch (error) {
360
+ warnDegraded('resolve message author names', error);
361
+ }
362
+ }
363
+ if (selfMid && authorMids.includes(selfMid) && !names.has(selfMid)) {
364
+ try {
365
+ const profile = await client.base.talk.getProfile();
366
+ if (profile.displayName)
367
+ names.set(selfMid, profile.displayName);
368
+ }
369
+ catch (error) {
370
+ warnDegraded('resolve own display name', error);
371
+ }
372
+ }
373
+ return names;
374
+ }
294
375
  async sendMessage(chatId, text) {
295
376
  try {
296
377
  const client = this.ensureClient();
@@ -350,6 +431,12 @@ export class LineClient {
350
431
  })) {
351
432
  yield { kind: 'event', op };
352
433
  if (op.type === 'SEND_MESSAGE' || op.type === 'RECEIVE_MESSAGE') {
434
+ // Plain messages already carry their text and must skip decryption, same
435
+ // as the history path (decryptMessageText). Force-decrypting a plain op
436
+ // returns an object without `.text`, silently dropping the message to
437
+ // null text with no decryption_error — indistinguishable from an empty
438
+ // message downstream.
439
+ //
353
440
  // A single undecryptable message must not kill the stream: the failing
354
441
  // op stays in the sync window and would be re-fetched every poll, causing
355
442
  // an endless decrypt-fail -> reconnect loop. Fall back to the raw op and
@@ -357,13 +444,15 @@ export class LineClient {
357
444
  let raw = op.message;
358
445
  let decrypted = true;
359
446
  let decryptionError;
360
- try {
361
- raw = await client.base.e2ee.decryptE2EEMessage(op.message);
362
- }
363
- catch (error) {
364
- raw = op.message;
365
- decrypted = false;
366
- decryptionError = getDecryptionError(error);
447
+ if (isEncryptedChunkMessage(op.message)) {
448
+ try {
449
+ raw = await client.base.e2ee.decryptE2EEMessage(normalizeE2EEMetadata(op.message));
450
+ }
451
+ catch (error) {
452
+ raw = op.message;
453
+ decrypted = false;
454
+ decryptionError = getDecryptionError(error);
455
+ }
367
456
  }
368
457
  decryptionError ??= getUndecryptableMessageError(raw);
369
458
  yield {
@@ -419,6 +508,17 @@ function isEncryptedChunkMessage(raw) {
419
508
  return false;
420
509
  return hasE2EEMetadata(message.contentMetadata) || hasE2EEMetadata(message.metadata);
421
510
  }
511
+ // decryptE2EEMessage reads messageObj.contentMetadata.e2eeVersion unconditionally.
512
+ // History messages from getPreviousMessagesV2WithRequest may carry E2EE metadata
513
+ // only under `metadata`, which would crash the decryptor on undefined.e2eeVersion.
514
+ function normalizeE2EEMetadata(msg) {
515
+ const m = msg;
516
+ if (hasE2EEMetadata(m.contentMetadata))
517
+ return msg;
518
+ if (!hasE2EEMetadata(m.metadata))
519
+ return msg;
520
+ return { ...msg, contentMetadata: m.metadata };
521
+ }
422
522
  function hasE2EEMetadata(raw) {
423
523
  if (!raw || typeof raw !== 'object')
424
524
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/platforms/line/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/platforms/line/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ export interface E2EEKeyStore {
2
+ get(key: string): Promise<unknown> | unknown;
3
+ set(key: string, value: string): Promise<void> | void;
4
+ }
5
+ export interface E2EEKeyData {
6
+ keyId: number | string;
7
+ privKey: string;
8
+ pubKey: string;
9
+ e2eeVersion?: number;
10
+ }
11
+ export type E2EEPublicKey = {
12
+ keyId?: number | string;
13
+ } | ReadonlyArray<unknown>;
14
+ export declare function ensureSelfKeyForMid(storage: E2EEKeyStore, mid: string, advertisedKeys: ReadonlyArray<E2EEPublicKey> | undefined): Promise<boolean>;
15
+ export declare function migrateOwnE2EEKeys(source: E2EEKeyStore, target: E2EEKeyStore, mid: string, advertisedKeys: ReadonlyArray<E2EEPublicKey> | undefined): Promise<number>;
16
+ //# sourceMappingURL=e2ee-storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e2ee-storage.d.ts","sourceRoot":"","sources":["../../../../src/platforms/line/e2ee-storage.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAA;IAC5C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CACtD;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,MAAM,aAAa,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;AAwDhF,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,YAAY,EACrB,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,SAAS,GACvD,OAAO,CAAC,OAAO,CAAC,CAelB;AAMD,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,SAAS,GACvD,OAAO,CAAC,MAAM,CAAC,CAoBjB"}
@@ -0,0 +1,93 @@
1
+ const SELF_KEY_PREFIX = 'e2eeKeys:';
2
+ function selfKey(id) {
3
+ return `${SELF_KEY_PREFIX}${id}`;
4
+ }
5
+ function isE2EEKeyData(value) {
6
+ if (!value || typeof value !== 'object')
7
+ return false;
8
+ const data = value;
9
+ return typeof data.privKey === 'string' && typeof data.pubKey === 'string';
10
+ }
11
+ function parseKeyData(raw) {
12
+ if (typeof raw !== 'string')
13
+ return isE2EEKeyData(raw) ? raw : null;
14
+ try {
15
+ const parsed = JSON.parse(raw);
16
+ return isE2EEKeyData(parsed) ? parsed : null;
17
+ }
18
+ catch {
19
+ return null;
20
+ }
21
+ }
22
+ // The stored payload carries its own keyId. Requiring it to equal the slot it was
23
+ // read from rejects entries mislabeled under an advertised keyId, so only a payload
24
+ // genuinely belonging to that keyId is ever trusted.
25
+ function keyDataMatchesSlot(data, keyId) {
26
+ return String(data.keyId) === String(keyId);
27
+ }
28
+ function keyIdOf(key) {
29
+ if (Array.isArray(key)) {
30
+ const id = key[2];
31
+ return typeof id === 'number' || typeof id === 'string' ? id : undefined;
32
+ }
33
+ const id = key.keyId;
34
+ return typeof id === 'number' || typeof id === 'string' ? id : undefined;
35
+ }
36
+ function advertisedKeyIds(keys) {
37
+ if (!keys)
38
+ return [];
39
+ const ids = [];
40
+ for (const key of keys) {
41
+ const id = keyIdOf(key);
42
+ if (id !== undefined)
43
+ ids.push(id);
44
+ }
45
+ return ids;
46
+ }
47
+ // Ensures the account's own self-key is addressable by MID for getE2EESelfKeyData,
48
+ // which checks `e2eeKeys:<mid>` before falling back to a live Thrift channel. The
49
+ // keyId-addressed entry is only trusted when the server advertises that exact keyId
50
+ // for this account, so a contaminated store (another account's key copied in) can
51
+ // never promote a foreign private key to this MID. Returns true when a self-key
52
+ // becomes available under the MID.
53
+ export async function ensureSelfKeyForMid(storage, mid, advertisedKeys) {
54
+ if (!mid)
55
+ return false;
56
+ const existing = parseKeyData(await storage.get(selfKey(mid)));
57
+ if (existing)
58
+ return true;
59
+ for (const keyId of advertisedKeyIds(advertisedKeys)) {
60
+ const candidate = parseKeyData(await storage.get(selfKey(keyId)));
61
+ if (candidate && keyDataMatchesSlot(candidate, keyId)) {
62
+ await storage.set(selfKey(mid), JSON.stringify(candidate));
63
+ return true;
64
+ }
65
+ }
66
+ return false;
67
+ }
68
+ // Copies only this account's E2EE key material out of a shared (default) store into
69
+ // an isolated per-account store. Trust is anchored to the server-advertised keyIds
70
+ // for `mid`, so foreign-account keys present in the shared store are never carried
71
+ // over. Used right after a fresh login resolves the account MID.
72
+ export async function migrateOwnE2EEKeys(source, target, mid, advertisedKeys) {
73
+ if (!mid)
74
+ return 0;
75
+ let migrated = 0;
76
+ const own = parseKeyData(await source.get(selfKey(mid)));
77
+ if (own) {
78
+ await target.set(selfKey(mid), JSON.stringify(own));
79
+ migrated++;
80
+ }
81
+ for (const keyId of advertisedKeyIds(advertisedKeys)) {
82
+ const data = parseKeyData(await source.get(selfKey(keyId)));
83
+ if (!data || !keyDataMatchesSlot(data, keyId))
84
+ continue;
85
+ await target.set(selfKey(keyId), JSON.stringify(data));
86
+ migrated++;
87
+ const publicKey = await source.get(`e2eePublicKeys:${keyId}`);
88
+ if (typeof publicKey === 'string')
89
+ await target.set(`e2eePublicKeys:${keyId}`, publicKey);
90
+ }
91
+ return migrated;
92
+ }
93
+ //# sourceMappingURL=e2ee-storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e2ee-storage.js","sourceRoot":"","sources":["../../../../src/platforms/line/e2ee-storage.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../src/platforms/teams/cli.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAA;AA4BvD,QAAA,MAAM,OAAO,aAAgB,CAAA;AA8B7B,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../src/platforms/teams/cli.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,WAAW,CAAA;AA6BvD,QAAA,MAAM,OAAO,aAAgB,CAAA;AA+B7B,eAAe,OAAO,CAAA"}
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { Command } from 'commander';
3
3
  import pkg from '../../../package.json' with { type: 'json' };
4
- import { authCommand, channelCommand, fileCommand, messageCommand, reactionCommand, snapshotCommand, teamCommand, userCommand, whoamiCommand, } from './commands/index.js';
4
+ import { authCommand, channelCommand, chatCommand, fileCommand, messageCommand, reactionCommand, snapshotCommand, teamCommand, userCommand, whoamiCommand, } from './commands/index.js';
5
5
  import { TeamsCredentialManager } from './credential-manager.js';
6
6
  import { ensureTeamsAuth } from './ensure-auth.js';
7
7
  function isAuthCommand(command) {
@@ -32,6 +32,7 @@ program.hook('preAction', async (_thisCommand, actionCommand) => {
32
32
  program.addCommand(authCommand);
33
33
  program.addCommand(teamCommand);
34
34
  program.addCommand(channelCommand);
35
+ program.addCommand(chatCommand);
35
36
  program.addCommand(fileCommand);
36
37
  program.addCommand(messageCommand);
37
38
  program.addCommand(reactionCommand);
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/platforms/teams/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,cAAc,EACd,WAAW,EACX,cAAc,EACd,eAAe,EACf,eAAe,EACf,WAAW,EACX,WAAW,EACX,aAAa,GACd,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAG/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;KACJ,IAAI,CAAC,aAAa,CAAC;KACnB,WAAW,CAAC,4CAA4C,CAAC;KACzD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;KACpB,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC;KAC1C,MAAM,CAAC,kBAAkB,EAAE,yCAAyC,CAAC,CAAA;AAExE,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,EAAE;IAC9D,IAAI,aAAa,CAAC,aAAa,CAAC;QAAE,OAAM;IACxC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAC3B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,sBAAsB,CAAC,eAAe,GAAG,IAAI,CAAC,OAA2B,CAAA;IAC3E,CAAC;IACD,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,cAAc,CAAC,CAAA;AAClC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;AAC/B,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;AAClC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;AACnC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;AACnC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;AAC/B,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/teams/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,cAAc,EACd,WAAW,EACX,WAAW,EACX,cAAc,EACd,eAAe,EACf,eAAe,EACf,WAAW,EACX,WAAW,EACX,aAAa,GACd,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAG/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;KACJ,IAAI,CAAC,aAAa,CAAC;KACnB,WAAW,CAAC,4CAA4C,CAAC;KACzD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;KACpB,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC;KAC1C,MAAM,CAAC,kBAAkB,EAAE,yCAAyC,CAAC,CAAA;AAExE,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,EAAE;IAC9D,IAAI,aAAa,CAAC,aAAa,CAAC;QAAE,OAAM;IACxC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAC3B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,sBAAsB,CAAC,eAAe,GAAG,IAAI,CAAC,OAA2B,CAAA;IAC3E,CAAC;IACD,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,cAAc,CAAC,CAAA;AAClC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;AAC/B,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;AAC/B,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;AAClC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;AACnC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;AACnC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;AAC/B,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;AAEjC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAE3B,eAAe,OAAO,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { TeamsAccountType, TeamsChannel, TeamsFile, TeamsMessage, TeamsRegion, TeamsTeam, TeamsUser } from './types.js';
1
+ import type { TeamsAccountType, TeamsChannel, TeamsChat, TeamsFile, TeamsMessage, TeamsRegion, TeamsTeam, TeamsUser } from './types.js';
2
2
  export declare class TeamsClient {
3
3
  private token;
4
4
  private tokenExpiresAt?;
@@ -27,6 +27,9 @@ export declare class TeamsClient {
27
27
  private requestFormData;
28
28
  testAuth(): Promise<TeamsUser>;
29
29
  listTeams(): Promise<TeamsTeam[]>;
30
+ listChats(): Promise<TeamsChat[]>;
31
+ getChatMessages(chatId: string, limit?: number): Promise<TeamsMessage[]>;
32
+ sendChatMessage(chatId: string, content: string): Promise<TeamsMessage>;
30
33
  getTeam(teamId: string): Promise<TeamsTeam>;
31
34
  listChannels(teamId: string): Promise<TeamsChannel[]>;
32
35
  getChannel(teamId: string, channelId: string): Promise<TeamsChannel>;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/platforms/teams/client.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,WAAW,EACX,SAAS,EACT,SAAS,EACV,MAAM,SAAS,CAAA;AAehB,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,cAAc,CAAC,CAAM;IAC7B,OAAO,CAAC,iBAAiB,CAAiB;IAC1C,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,gBAAgB,CAAiB;IACzC,OAAO,CAAC,OAAO,CAA0C;IACzD,OAAO,CAAC,oBAAoB,CAAY;IAElC,KAAK,CAAC,WAAW,CAAC,EAAE;QACxB,KAAK,EAAE,MAAM,CAAA;QACb,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,WAAW,CAAC,EAAE,gBAAgB,CAAA;QAC9B,MAAM,CAAC,EAAE,WAAW,CAAA;KACrB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCjB,SAAS,IAAI,WAAW;IAIxB,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,YAAY;YAUN,gBAAgB;IAa9B,OAAO,CAAC,YAAY;YAYN,uBAAuB;IASrC,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,aAAa;YAKP,cAAc;YA0Bd,OAAO;YAqEP,eAAe;IAsCvB,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC;IAc9B,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAgCjC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAI3C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAIrD,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IASpE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAStF,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAS3F,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IASvF,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASlF,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS/F,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASlG,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAI/C,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAI3C,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAcnF,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;CAQzE"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/platforms/teams/client.ts"],"names":[],"mappings":"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"}