agent-messenger 1.5.0 → 1.6.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 (64) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/dist/package.json +1 -1
  3. package/dist/src/platforms/teams/cli.d.ts.map +1 -1
  4. package/dist/src/platforms/teams/cli.js +7 -1
  5. package/dist/src/platforms/teams/cli.js.map +1 -1
  6. package/dist/src/platforms/teams/commands/auth.d.ts +3 -0
  7. package/dist/src/platforms/teams/commands/auth.d.ts.map +1 -1
  8. package/dist/src/platforms/teams/commands/auth.js +208 -107
  9. package/dist/src/platforms/teams/commands/auth.js.map +1 -1
  10. package/dist/src/platforms/teams/commands/channel.js +9 -9
  11. package/dist/src/platforms/teams/commands/channel.js.map +1 -1
  12. package/dist/src/platforms/teams/commands/file.js +9 -9
  13. package/dist/src/platforms/teams/commands/file.js.map +1 -1
  14. package/dist/src/platforms/teams/commands/message.js +12 -12
  15. package/dist/src/platforms/teams/commands/message.js.map +1 -1
  16. package/dist/src/platforms/teams/commands/reaction.js +6 -6
  17. package/dist/src/platforms/teams/commands/reaction.js.map +1 -1
  18. package/dist/src/platforms/teams/commands/snapshot.d.ts.map +1 -1
  19. package/dist/src/platforms/teams/commands/snapshot.js +5 -4
  20. package/dist/src/platforms/teams/commands/snapshot.js.map +1 -1
  21. package/dist/src/platforms/teams/commands/team.d.ts.map +1 -1
  22. package/dist/src/platforms/teams/commands/team.js +21 -25
  23. package/dist/src/platforms/teams/commands/team.js.map +1 -1
  24. package/dist/src/platforms/teams/commands/user.js +9 -9
  25. package/dist/src/platforms/teams/commands/user.js.map +1 -1
  26. package/dist/src/platforms/teams/credential-manager.d.ts +15 -2
  27. package/dist/src/platforms/teams/credential-manager.d.ts.map +1 -1
  28. package/dist/src/platforms/teams/credential-manager.js +110 -28
  29. package/dist/src/platforms/teams/credential-manager.js.map +1 -1
  30. package/dist/src/platforms/teams/ensure-auth.d.ts.map +1 -1
  31. package/dist/src/platforms/teams/ensure-auth.js +46 -16
  32. package/dist/src/platforms/teams/ensure-auth.js.map +1 -1
  33. package/dist/src/platforms/teams/token-extractor.d.ts +8 -2
  34. package/dist/src/platforms/teams/token-extractor.d.ts.map +1 -1
  35. package/dist/src/platforms/teams/token-extractor.js +36 -24
  36. package/dist/src/platforms/teams/token-extractor.js.map +1 -1
  37. package/dist/src/platforms/teams/types.d.ts +121 -0
  38. package/dist/src/platforms/teams/types.d.ts.map +1 -1
  39. package/dist/src/platforms/teams/types.js +16 -0
  40. package/dist/src/platforms/teams/types.js.map +1 -1
  41. package/package.json +1 -1
  42. package/src/platforms/teams/cli.ts +7 -0
  43. package/src/platforms/teams/commands/auth.test.ts +6 -5
  44. package/src/platforms/teams/commands/auth.ts +283 -120
  45. package/src/platforms/teams/commands/channel.test.ts +10 -4
  46. package/src/platforms/teams/commands/channel.ts +9 -9
  47. package/src/platforms/teams/commands/file.test.ts +9 -3
  48. package/src/platforms/teams/commands/file.ts +9 -9
  49. package/src/platforms/teams/commands/message.test.ts +9 -3
  50. package/src/platforms/teams/commands/message.ts +12 -12
  51. package/src/platforms/teams/commands/reaction.test.ts +9 -3
  52. package/src/platforms/teams/commands/reaction.ts +6 -6
  53. package/src/platforms/teams/commands/snapshot.ts +5 -4
  54. package/src/platforms/teams/commands/team.test.ts +19 -12
  55. package/src/platforms/teams/commands/team.ts +22 -28
  56. package/src/platforms/teams/commands/user.ts +9 -9
  57. package/src/platforms/teams/credential-manager.test.ts +30 -24
  58. package/src/platforms/teams/credential-manager.ts +106 -31
  59. package/src/platforms/teams/ensure-auth.test.ts +125 -26
  60. package/src/platforms/teams/ensure-auth.ts +47 -15
  61. package/src/platforms/teams/token-extractor.test.ts +116 -85
  62. package/src/platforms/teams/token-extractor.ts +65 -97
  63. package/src/platforms/teams/types.test.ts +31 -13
  64. package/src/platforms/teams/types.ts +45 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-messenger",
3
- "version": "1.5.0",
3
+ "version": "1.6.0",
4
4
  "description": "Messaging platform interaction skills for AI agents. Interact with Slack, Discord, and Microsoft Teams - send messages, read channels, manage reactions, upload files, and more through simple CLI interfaces.",
5
5
  "author": {
6
6
  "name": "devxoul",
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-messenger",
3
- "version": "1.5.0",
3
+ "version": "1.6.0",
4
4
  "description": "Multi-platform messaging CLI for AI agents (Slack, Discord, Teams)",
5
5
  "repository": {
6
6
  "type": "git",
@@ -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;AAwBvD,QAAA,MAAM,OAAO,aAAgB,CAAA;AAyB7B,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;AA0BvD,QAAA,MAAM,OAAO,aAAgB,CAAA;AA8B7B,eAAe,OAAO,CAAA"}
@@ -2,6 +2,7 @@
2
2
  import { Command } from 'commander';
3
3
  import pkg from '../../../package.json' with { type: 'json' };
4
4
  import { authCommand, channelCommand, fileCommand, messageCommand, reactionCommand, snapshotCommand, teamCommand, userCommand, } from './commands/index.js';
5
+ import { TeamsCredentialManager } from './credential-manager.js';
5
6
  import { ensureTeamsAuth } from './ensure-auth.js';
6
7
  function isAuthCommand(command) {
7
8
  let cmd = command;
@@ -18,10 +19,15 @@ program
18
19
  .description('CLI tool for Microsoft Teams communication')
19
20
  .version(pkg.version)
20
21
  .option('--pretty', 'Pretty-print JSON output')
21
- .option('--team <id>', 'Use specific team');
22
+ .option('--team <id>', 'Use specific team')
23
+ .option('--account <type>', 'Use specific account (work or personal)');
22
24
  program.hook('preAction', async (_thisCommand, actionCommand) => {
23
25
  if (isAuthCommand(actionCommand))
24
26
  return;
27
+ const opts = program.opts();
28
+ if (opts.account) {
29
+ TeamsCredentialManager.accountOverride = opts.account;
30
+ }
25
31
  await ensureTeamsAuth();
26
32
  });
27
33
  program.addCommand(authCommand);
@@ -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;AACnC,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,GACZ,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;KACJ,IAAI,CAAC,aAAa,CAAC;KACnB,WAAW,CAAC,4CAA4C,CAAC;KACzD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;KACpB,MAAM,CAAC,UAAU,EAAE,0BAA0B,CAAC;KAC9C,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAA;AAE7C,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,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;AAE/B,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;AACnC,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,GACZ,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,UAAU,EAAE,0BAA0B,CAAC;KAC9C,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;AAE/B,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAE3B,eAAe,OAAO,CAAA"}
@@ -10,5 +10,8 @@ export declare function logoutAction(options: {
10
10
  export declare function statusAction(options: {
11
11
  pretty?: boolean;
12
12
  }): Promise<void>;
13
+ export declare function switchAccountAction(accountType: string, options: {
14
+ pretty?: boolean;
15
+ }): Promise<void>;
13
16
  export declare const authCommand: Command;
14
17
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/teams/commands/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAOnC,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsIjH;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,CAqC/E;AAED,eAAO,MAAM,WAAW,SAqBrB,CAAA"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/teams/commands/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAQnC,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAkJjH;AAoFD,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,CA4D/E;AAED,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoC3G;AAED,eAAO,MAAM,WAAW,SA4BrB,CAAA"}
@@ -6,112 +6,175 @@ import { TeamsCredentialManager } from '../credential-manager.js';
6
6
  import { TeamsTokenExtractor } from '../token-extractor.js';
7
7
  export async function extractAction(options) {
8
8
  try {
9
- let token;
10
9
  if (options.token) {
11
- token = options.token;
12
- if (options.debug) {
13
- console.error(`[debug] Using provided token: ${token.substring(0, 20)}...`);
14
- }
10
+ await extractManualToken(options.token, options);
11
+ return;
15
12
  }
16
- else {
17
- const extractor = new TeamsTokenExtractor();
18
- if (process.platform === 'darwin') {
19
- console.log('');
20
- console.log(' Extracting your Microsoft Teams credentials...');
21
- console.log('');
22
- console.log(' Your Mac may ask for your password to access Keychain.');
23
- console.log(' This is required because Teams encrypts your login token');
24
- console.log(' using macOS Keychain for security.');
25
- console.log('');
26
- console.log(' What happens:');
27
- console.log(" 1. We read the encrypted token from Teams' cookies");
28
- console.log(' 2. macOS Keychain decrypts it (requires your password)');
29
- console.log(' 3. The token is stored locally in ~/.config/agent-messenger/');
30
- console.log('');
31
- console.log(' Your password is never stored or transmitted anywhere.');
32
- console.log('');
33
- }
34
- if (options.debug) {
35
- console.error(`[debug] Extracting Teams token...`);
36
- }
37
- const extracted = await extractor.extract();
38
- if (!extracted) {
39
- console.log(formatOutput({
40
- error: 'No Teams token found. Make sure Microsoft Teams desktop app is installed and logged in.',
41
- hint: 'Run with --token <token> to manually provide a token, or --debug for more info.',
42
- }, options.pretty));
43
- process.exit(1);
44
- }
45
- token = extracted.token;
13
+ const extractor = new TeamsTokenExtractor();
14
+ if (process.platform === 'darwin') {
15
+ console.log('');
16
+ console.log(' Extracting your Microsoft Teams credentials...');
17
+ console.log('');
18
+ console.log(' Your Mac may ask for your password to access Keychain.');
19
+ console.log(' This is required because Teams encrypts your login token');
20
+ console.log(' using macOS Keychain for security.');
21
+ console.log('');
22
+ console.log(' What happens:');
23
+ console.log(" 1. We read the encrypted token from Teams' cookies");
24
+ console.log(' 2. macOS Keychain decrypts it (requires your password)');
25
+ console.log(' 3. The token is stored locally in ~/.config/agent-messenger/');
26
+ console.log('');
27
+ console.log(' Your password is never stored or transmitted anywhere.');
28
+ console.log('');
46
29
  }
47
30
  if (options.debug) {
48
- console.error(`[debug] Token extracted: ${token.substring(0, 20)}...`);
31
+ console.error('[debug] Extracting Teams tokens from all accounts...');
49
32
  }
50
- try {
51
- const client = new TeamsClient(token);
52
- if (options.debug) {
53
- console.error(`[debug] Testing token validity...`);
54
- }
55
- const authInfo = await client.testAuth();
56
- if (options.debug) {
57
- console.error(`[debug] ✓ Token valid for user: ${authInfo.displayName}`);
58
- console.error(`[debug] Discovering teams...`);
59
- }
60
- const teams = await client.listTeams();
33
+ const extracted = await extractor.extract();
34
+ if (extracted.length === 0) {
35
+ console.log(formatOutput({
36
+ error: 'No Teams token found. Make sure Microsoft Teams desktop app is installed and logged in.',
37
+ hint: 'Run with --token <token> to manually provide a token, or --debug for more info.',
38
+ }, options.pretty));
39
+ process.exit(1);
40
+ }
41
+ if (options.debug) {
42
+ console.error(`[debug] Found ${extracted.length} account(s)`);
43
+ }
44
+ const credManager = new TeamsCredentialManager();
45
+ const config = { current_account: null, accounts: {} };
46
+ const outputAccounts = [];
47
+ for (const { token, accountType } of extracted) {
61
48
  if (options.debug) {
62
- console.error(`[debug] Found ${teams.length} team(s)`);
63
- }
64
- if (teams.length === 0) {
65
- console.log(formatOutput({
66
- error: 'No teams found. Make sure you are a member of at least one Microsoft Teams team.',
67
- }, options.pretty));
68
- process.exit(1);
49
+ console.error(`[debug] Validating ${accountType} account token...`);
69
50
  }
70
- const credManager = new TeamsCredentialManager();
71
- const teamMap = {};
72
- for (const team of teams) {
73
- teamMap[team.id] = {
74
- team_id: team.id,
75
- team_name: team.name,
51
+ try {
52
+ const client = new TeamsClient(token);
53
+ const authInfo = await client.testAuth();
54
+ const teams = await client.listTeams();
55
+ if (options.debug) {
56
+ console.error(`[debug] ✓ ${accountType}: ${authInfo.displayName} (${teams.length} team(s))`);
57
+ }
58
+ const teamMap = {};
59
+ for (const team of teams) {
60
+ teamMap[team.id] = { team_id: team.id, team_name: team.name };
61
+ }
62
+ const account = {
63
+ token,
64
+ token_expires_at: new Date(Date.now() + 60 * 60 * 1000).toISOString(),
65
+ account_type: accountType,
66
+ user_name: authInfo.displayName,
67
+ current_team: teams[0]?.id ?? null,
68
+ teams: teamMap,
76
69
  };
70
+ config.accounts[accountType] = account;
71
+ if (!config.current_account) {
72
+ config.current_account = accountType;
73
+ }
74
+ outputAccounts.push({
75
+ account_type: accountType,
76
+ user: authInfo.displayName,
77
+ teams: teams.map((t) => `${t.id}/${t.name}`),
78
+ });
77
79
  }
78
- const config = {
79
- token: token,
80
- current_team: teams[0].id,
81
- teams: teamMap,
82
- token_expires_at: new Date(Date.now() + 60 * 60 * 1000).toISOString(),
83
- };
84
- await credManager.saveConfig(config);
85
- if (options.debug) {
86
- console.error(`[debug] Credentials saved`);
80
+ catch (error) {
81
+ const errorMessage = error.message;
82
+ const is401 = errorMessage.includes('401') || errorMessage.includes('Unauthorized');
83
+ if (options.debug) {
84
+ console.error(`[debug] ${accountType}: ${errorMessage}`);
85
+ }
86
+ if (extracted.length === 1) {
87
+ console.log(formatOutput({
88
+ error: `Token validation failed: ${errorMessage}`,
89
+ hint: is401
90
+ ? 'Token expired. Open Microsoft Teams, send a message to refresh your session, then run "auth extract" again.'
91
+ : 'Make sure Microsoft Teams desktop app is running and you are logged in.',
92
+ }, options.pretty));
93
+ process.exit(1);
94
+ }
87
95
  }
88
- const output = {
89
- teams: teams.map((t) => `${t.id}/${t.name}`),
90
- current: teams[0].id,
91
- };
92
- console.log(formatOutput(output, options.pretty));
93
- }
94
- catch (error) {
95
- const errorMessage = error.message;
96
- const is401 = errorMessage.includes('401') || errorMessage.includes('Unauthorized');
97
- console.log(formatOutput({
98
- error: `Token validation failed: ${errorMessage}`,
99
- hint: is401
100
- ? 'Token expired. Open Microsoft Teams, send a message to refresh your session, then run "auth extract" again.'
101
- : 'Make sure Microsoft Teams desktop app is running and you are logged in.',
102
- }, options.pretty));
96
+ }
97
+ if (Object.keys(config.accounts).length === 0) {
98
+ console.log(formatOutput({ error: 'All extracted tokens failed validation. Make sure Microsoft Teams is running and logged in.' }, options.pretty));
103
99
  process.exit(1);
104
100
  }
101
+ await credManager.saveConfig(config);
102
+ if (options.debug) {
103
+ console.error('[debug] ✓ Credentials saved');
104
+ }
105
+ console.log(formatOutput({
106
+ accounts: outputAccounts,
107
+ current_account: config.current_account,
108
+ }, options.pretty));
105
109
  }
106
110
  catch (error) {
107
111
  handleError(error);
108
112
  }
109
113
  }
114
+ async function extractManualToken(token, options) {
115
+ if (options.debug) {
116
+ console.error(`[debug] Using provided token: ${token.substring(0, 20)}...`);
117
+ }
118
+ try {
119
+ const client = new TeamsClient(token);
120
+ const authInfo = await client.testAuth();
121
+ const teams = await client.listTeams();
122
+ if (teams.length === 0) {
123
+ console.log(formatOutput({ error: 'No teams found. Make sure you are a member of at least one Microsoft Teams team.' }, options.pretty));
124
+ process.exit(1);
125
+ }
126
+ const credManager = new TeamsCredentialManager();
127
+ const accountType = 'work';
128
+ const teamMap = {};
129
+ for (const team of teams) {
130
+ teamMap[team.id] = { team_id: team.id, team_name: team.name };
131
+ }
132
+ const account = {
133
+ token,
134
+ token_expires_at: new Date(Date.now() + 60 * 60 * 1000).toISOString(),
135
+ account_type: accountType,
136
+ user_name: authInfo.displayName,
137
+ current_team: teams[0].id,
138
+ teams: teamMap,
139
+ };
140
+ const existingConfig = await credManager.loadConfig();
141
+ const config = existingConfig ?? { current_account: accountType, accounts: {} };
142
+ config.accounts[accountType] = account;
143
+ if (!config.current_account) {
144
+ config.current_account = accountType;
145
+ }
146
+ await credManager.saveConfig(config);
147
+ if (options.debug) {
148
+ console.error('[debug] ✓ Credentials saved');
149
+ }
150
+ console.log(formatOutput({
151
+ accounts: [
152
+ {
153
+ account_type: accountType,
154
+ user: authInfo.displayName,
155
+ teams: teams.map((t) => `${t.id}/${t.name}`),
156
+ },
157
+ ],
158
+ current_account: accountType,
159
+ }, options.pretty));
160
+ }
161
+ catch (error) {
162
+ const errorMessage = error.message;
163
+ const is401 = errorMessage.includes('401') || errorMessage.includes('Unauthorized');
164
+ console.log(formatOutput({
165
+ error: `Token validation failed: ${errorMessage}`,
166
+ hint: is401
167
+ ? 'Token expired. Open Microsoft Teams, send a message to refresh your session, then run "auth extract" again.'
168
+ : 'Make sure Microsoft Teams desktop app is running and you are logged in.',
169
+ }, options.pretty));
170
+ process.exit(1);
171
+ }
172
+ }
110
173
  export async function logoutAction(options) {
111
174
  try {
112
175
  const credManager = new TeamsCredentialManager();
113
176
  const config = await credManager.loadConfig();
114
- if (!config?.token) {
177
+ if (!config || Object.keys(config.accounts).length === 0) {
115
178
  console.log(formatOutput({ error: 'Not authenticated. Run "auth extract" first.' }, options.pretty));
116
179
  process.exit(1);
117
180
  }
@@ -126,32 +189,65 @@ export async function statusAction(options) {
126
189
  try {
127
190
  const credManager = new TeamsCredentialManager();
128
191
  const config = await credManager.loadConfig();
129
- if (!config?.token) {
192
+ if (!config || Object.keys(config.accounts).length === 0) {
130
193
  console.log(formatOutput({ error: 'Not authenticated. Run "auth extract" first.' }, options.pretty));
131
194
  process.exit(1);
132
195
  }
133
- let authInfo = null;
134
- let valid = false;
135
- const isExpired = await credManager.isTokenExpired();
136
- if (!isExpired) {
137
- try {
138
- const client = new TeamsClient(config.token, config.token_expires_at);
139
- authInfo = await client.testAuth();
140
- valid = true;
141
- }
142
- catch {
143
- valid = false;
196
+ const accountStatuses = [];
197
+ for (const [key, account] of Object.entries(config.accounts)) {
198
+ const isExpired = account.token_expires_at ? new Date(account.token_expires_at).getTime() <= Date.now() : true;
199
+ let displayName = account.user_name ?? null;
200
+ let valid = false;
201
+ if (!isExpired) {
202
+ try {
203
+ const client = new TeamsClient(account.token, account.token_expires_at);
204
+ const authInfo = await client.testAuth();
205
+ displayName = authInfo.displayName;
206
+ valid = true;
207
+ }
208
+ catch {
209
+ valid = false;
210
+ }
144
211
  }
212
+ accountStatuses.push({
213
+ account_type: key,
214
+ authenticated: valid,
215
+ user: displayName,
216
+ teams_count: Object.keys(account.teams).length,
217
+ token_expires_at: account.token_expires_at ?? null,
218
+ token_expired: isExpired,
219
+ current: key === config.current_account,
220
+ });
145
221
  }
146
- const output = {
147
- authenticated: valid,
148
- user: authInfo?.displayName,
149
- current_team: config.current_team,
150
- teams_count: Object.keys(config.teams).length,
151
- token_expires_at: config.token_expires_at ?? null,
152
- token_expired: isExpired,
153
- };
154
- console.log(formatOutput(output, options.pretty));
222
+ console.log(formatOutput({
223
+ current_account: config.current_account,
224
+ accounts: accountStatuses,
225
+ }, options.pretty));
226
+ }
227
+ catch (error) {
228
+ handleError(error);
229
+ }
230
+ }
231
+ export async function switchAccountAction(accountType, options) {
232
+ try {
233
+ const credManager = new TeamsCredentialManager();
234
+ const config = await credManager.loadConfig();
235
+ if (!config || !config.accounts[accountType]) {
236
+ const available = config ? Object.keys(config.accounts).join(', ') : 'none';
237
+ console.log(formatOutput({
238
+ error: `Account not found: ${accountType}`,
239
+ available,
240
+ hint: 'Run "auth extract" to discover all accounts.',
241
+ }, options.pretty));
242
+ process.exit(1);
243
+ }
244
+ await credManager.setCurrentAccount(accountType);
245
+ const account = config.accounts[accountType];
246
+ console.log(formatOutput({
247
+ current_account: accountType,
248
+ user: account.user_name,
249
+ teams_count: Object.keys(account.teams).length,
250
+ }, options.pretty));
155
251
  }
156
252
  catch (error) {
157
253
  handleError(error);
@@ -172,5 +268,10 @@ export const authCommand = new Command('auth')
172
268
  .addCommand(new Command('status')
173
269
  .description('Show authentication status')
174
270
  .option('--pretty', 'Pretty print JSON output')
175
- .action(statusAction));
271
+ .action(statusAction))
272
+ .addCommand(new Command('switch-account')
273
+ .description('Switch active account (work or personal)')
274
+ .argument('<account-type>', 'Account type: work or personal')
275
+ .option('--pretty', 'Pretty print JSON output')
276
+ .action(switchAccountAction));
176
277
  //# sourceMappingURL=auth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../src/platforms/teams/commands/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../src/platforms/teams/commands/auth.ts"],"names":[],"mappings":"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"}
@@ -6,12 +6,12 @@ import { TeamsCredentialManager } from '../credential-manager.js';
6
6
  export async function listAction(teamId, options) {
7
7
  try {
8
8
  const credManager = new TeamsCredentialManager();
9
- const config = await credManager.loadConfig();
10
- if (!config?.token) {
9
+ const cred = await credManager.getTokenWithExpiry();
10
+ if (!cred) {
11
11
  console.log(formatOutput({ error: 'Not authenticated. Run "auth extract" first.' }, options.pretty));
12
12
  process.exit(1);
13
13
  }
14
- const client = new TeamsClient(config.token, config.token_expires_at);
14
+ const client = new TeamsClient(cred.token, cred.tokenExpiresAt);
15
15
  const channels = await client.listChannels(teamId);
16
16
  const output = channels.map((ch) => ({
17
17
  id: ch.id,
@@ -28,12 +28,12 @@ export async function listAction(teamId, options) {
28
28
  export async function infoAction(teamId, channelId, options) {
29
29
  try {
30
30
  const credManager = new TeamsCredentialManager();
31
- const config = await credManager.loadConfig();
32
- if (!config?.token) {
31
+ const cred = await credManager.getTokenWithExpiry();
32
+ if (!cred) {
33
33
  console.log(formatOutput({ error: 'Not authenticated. Run "auth extract" first.' }, options.pretty));
34
34
  process.exit(1);
35
35
  }
36
- const client = new TeamsClient(config.token, config.token_expires_at);
36
+ const client = new TeamsClient(cred.token, cred.tokenExpiresAt);
37
37
  const channel = await client.getChannel(teamId, channelId);
38
38
  const output = {
39
39
  id: channel.id,
@@ -50,12 +50,12 @@ export async function infoAction(teamId, channelId, options) {
50
50
  export async function historyAction(teamId, channelId, options) {
51
51
  try {
52
52
  const credManager = new TeamsCredentialManager();
53
- const config = await credManager.loadConfig();
54
- if (!config?.token) {
53
+ const cred = await credManager.getTokenWithExpiry();
54
+ if (!cred) {
55
55
  console.log(formatOutput({ error: 'Not authenticated. Run "auth extract" first.' }, options.pretty));
56
56
  process.exit(1);
57
57
  }
58
- const client = new TeamsClient(config.token, config.token_expires_at);
58
+ const client = new TeamsClient(cred.token, cred.tokenExpiresAt);
59
59
  const messages = await client.getMessages(teamId, channelId, options.limit || 50);
60
60
  const output = messages.map((msg) => ({
61
61
  id: msg.id,
@@ -1 +1 @@
1
- {"version":3,"file":"channel.js","sourceRoot":"","sources":["../../../../../src/platforms/teams/commands/channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"channel.js","sourceRoot":"","sources":["../../../../../src/platforms/teams/commands/channel.ts"],"names":[],"mappings":"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"}
@@ -7,12 +7,12 @@ import { TeamsCredentialManager } from '../credential-manager.js';
7
7
  export async function uploadAction(teamId, channelId, path, options) {
8
8
  try {
9
9
  const credManager = new TeamsCredentialManager();
10
- const config = await credManager.loadConfig();
11
- if (!config?.token) {
10
+ const cred = await credManager.getTokenWithExpiry();
11
+ if (!cred) {
12
12
  console.log(formatOutput({ error: 'Not authenticated. Run "auth extract" first.' }, options.pretty));
13
13
  process.exit(1);
14
14
  }
15
- const client = new TeamsClient(config.token, config.token_expires_at);
15
+ const client = new TeamsClient(cred.token, cred.tokenExpiresAt);
16
16
  const filePath = resolve(path);
17
17
  const file = await client.uploadFile(teamId, channelId, filePath);
18
18
  const output = {
@@ -31,12 +31,12 @@ export async function uploadAction(teamId, channelId, path, options) {
31
31
  export async function listAction(teamId, channelId, options) {
32
32
  try {
33
33
  const credManager = new TeamsCredentialManager();
34
- const config = await credManager.loadConfig();
35
- if (!config?.token) {
34
+ const cred = await credManager.getTokenWithExpiry();
35
+ if (!cred) {
36
36
  console.log(formatOutput({ error: 'Not authenticated. Run "auth extract" first.' }, options.pretty));
37
37
  process.exit(1);
38
38
  }
39
- const client = new TeamsClient(config.token, config.token_expires_at);
39
+ const client = new TeamsClient(cred.token, cred.tokenExpiresAt);
40
40
  const files = await client.listFiles(teamId, channelId);
41
41
  const output = files.map((file) => ({
42
42
  id: file.id,
@@ -54,12 +54,12 @@ export async function listAction(teamId, channelId, options) {
54
54
  export async function infoAction(teamId, channelId, fileId, options) {
55
55
  try {
56
56
  const credManager = new TeamsCredentialManager();
57
- const config = await credManager.loadConfig();
58
- if (!config?.token) {
57
+ const cred = await credManager.getTokenWithExpiry();
58
+ if (!cred) {
59
59
  console.log(formatOutput({ error: 'Not authenticated. Run "auth extract" first.' }, options.pretty));
60
60
  process.exit(1);
61
61
  }
62
- const client = new TeamsClient(config.token, config.token_expires_at);
62
+ const client = new TeamsClient(cred.token, cred.tokenExpiresAt);
63
63
  const files = await client.listFiles(teamId, channelId);
64
64
  const fileData = files.find((f) => f.id === fileId);
65
65
  if (!fileData) {
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../../src/platforms/teams/commands/file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../../src/platforms/teams/commands/file.ts"],"names":[],"mappings":"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"}