agent-messenger 2.20.4 → 2.21.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 (115) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/README.md +8 -5
  3. package/bun.lock +2 -2
  4. package/dist/package.json +10 -2
  5. package/dist/src/cli.d.ts.map +1 -1
  6. package/dist/src/cli.js +3 -0
  7. package/dist/src/cli.js.map +1 -1
  8. package/dist/src/platforms/webexbot/cli.d.ts +5 -0
  9. package/dist/src/platforms/webexbot/cli.d.ts.map +1 -0
  10. package/dist/src/platforms/webexbot/cli.js +30 -0
  11. package/dist/src/platforms/webexbot/cli.js.map +1 -0
  12. package/dist/src/platforms/webexbot/client.d.ts +41 -0
  13. package/dist/src/platforms/webexbot/client.d.ts.map +1 -0
  14. package/dist/src/platforms/webexbot/client.js +66 -0
  15. package/dist/src/platforms/webexbot/client.js.map +1 -0
  16. package/dist/src/platforms/webexbot/commands/auth.d.ts +28 -0
  17. package/dist/src/platforms/webexbot/commands/auth.d.ts.map +1 -0
  18. package/dist/src/platforms/webexbot/commands/auth.js +166 -0
  19. package/dist/src/platforms/webexbot/commands/auth.js.map +1 -0
  20. package/dist/src/platforms/webexbot/commands/index.d.ts +7 -0
  21. package/dist/src/platforms/webexbot/commands/index.d.ts.map +1 -0
  22. package/dist/src/platforms/webexbot/commands/index.js +7 -0
  23. package/dist/src/platforms/webexbot/commands/index.js.map +1 -0
  24. package/dist/src/platforms/webexbot/commands/listen.d.ts +12 -0
  25. package/dist/src/platforms/webexbot/commands/listen.d.ts.map +1 -0
  26. package/dist/src/platforms/webexbot/commands/listen.js +85 -0
  27. package/dist/src/platforms/webexbot/commands/listen.js.map +1 -0
  28. package/dist/src/platforms/webexbot/commands/member.d.ts +19 -0
  29. package/dist/src/platforms/webexbot/commands/member.d.ts.map +1 -0
  30. package/dist/src/platforms/webexbot/commands/member.js +33 -0
  31. package/dist/src/platforms/webexbot/commands/member.js.map +1 -0
  32. package/dist/src/platforms/webexbot/commands/message.d.ts +37 -0
  33. package/dist/src/platforms/webexbot/commands/message.d.ts.map +1 -0
  34. package/dist/src/platforms/webexbot/commands/message.js +142 -0
  35. package/dist/src/platforms/webexbot/commands/message.js.map +1 -0
  36. package/dist/src/platforms/webexbot/commands/shared.d.ts +9 -0
  37. package/dist/src/platforms/webexbot/commands/shared.d.ts.map +1 -0
  38. package/dist/src/platforms/webexbot/commands/shared.js +13 -0
  39. package/dist/src/platforms/webexbot/commands/shared.js.map +1 -0
  40. package/dist/src/platforms/webexbot/commands/space.d.ts +28 -0
  41. package/dist/src/platforms/webexbot/commands/space.d.ts.map +1 -0
  42. package/dist/src/platforms/webexbot/commands/space.js +61 -0
  43. package/dist/src/platforms/webexbot/commands/space.js.map +1 -0
  44. package/dist/src/platforms/webexbot/commands/whoami.d.ts +16 -0
  45. package/dist/src/platforms/webexbot/commands/whoami.d.ts.map +1 -0
  46. package/dist/src/platforms/webexbot/commands/whoami.js +29 -0
  47. package/dist/src/platforms/webexbot/commands/whoami.js.map +1 -0
  48. package/dist/src/platforms/webexbot/credential-manager.d.ts +17 -0
  49. package/dist/src/platforms/webexbot/credential-manager.d.ts.map +1 -0
  50. package/dist/src/platforms/webexbot/credential-manager.js +120 -0
  51. package/dist/src/platforms/webexbot/credential-manager.js.map +1 -0
  52. package/dist/src/platforms/webexbot/index.d.ts +9 -0
  53. package/dist/src/platforms/webexbot/index.d.ts.map +1 -0
  54. package/dist/src/platforms/webexbot/index.js +6 -0
  55. package/dist/src/platforms/webexbot/index.js.map +1 -0
  56. package/dist/src/platforms/webexbot/listener.d.ts +44 -0
  57. package/dist/src/platforms/webexbot/listener.d.ts.map +1 -0
  58. package/dist/src/platforms/webexbot/listener.js +214 -0
  59. package/dist/src/platforms/webexbot/listener.js.map +1 -0
  60. package/dist/src/platforms/webexbot/types.d.ts +60 -0
  61. package/dist/src/platforms/webexbot/types.d.ts.map +1 -0
  62. package/dist/src/platforms/webexbot/types.js +28 -0
  63. package/dist/src/platforms/webexbot/types.js.map +1 -0
  64. package/dist/src/platforms/webexbot/wdm-discovery.d.ts +4 -0
  65. package/dist/src/platforms/webexbot/wdm-discovery.d.ts.map +1 -0
  66. package/dist/src/platforms/webexbot/wdm-discovery.js +36 -0
  67. package/dist/src/platforms/webexbot/wdm-discovery.js.map +1 -0
  68. package/docs/content/docs/cli/meta.json +1 -0
  69. package/docs/content/docs/cli/webexbot.mdx +290 -0
  70. package/docs/content/docs/sdk/meta.json +1 -0
  71. package/docs/content/docs/sdk/webexbot.mdx +340 -0
  72. package/docs/src/app/page.tsx +115 -19
  73. package/package.json +10 -2
  74. package/skills/agent-channeltalk/SKILL.md +1 -1
  75. package/skills/agent-channeltalkbot/SKILL.md +1 -1
  76. package/skills/agent-discord/SKILL.md +1 -1
  77. package/skills/agent-discordbot/SKILL.md +1 -1
  78. package/skills/agent-instagram/SKILL.md +1 -1
  79. package/skills/agent-kakaotalk/SKILL.md +1 -1
  80. package/skills/agent-line/SKILL.md +1 -1
  81. package/skills/agent-slack/SKILL.md +1 -1
  82. package/skills/agent-slackbot/SKILL.md +1 -1
  83. package/skills/agent-teams/SKILL.md +1 -1
  84. package/skills/agent-telegram/SKILL.md +1 -1
  85. package/skills/agent-telegrambot/SKILL.md +1 -1
  86. package/skills/agent-webex/SKILL.md +1 -1
  87. package/skills/agent-webexbot/SKILL.md +361 -0
  88. package/skills/agent-webexbot/references/authentication.md +225 -0
  89. package/skills/agent-webexbot/references/common-patterns.md +590 -0
  90. package/skills/agent-wechatbot/SKILL.md +1 -1
  91. package/skills/agent-whatsapp/SKILL.md +1 -1
  92. package/skills/agent-whatsappbot/SKILL.md +1 -1
  93. package/src/cli.ts +4 -0
  94. package/src/platforms/webex/typings/webex-message-handler.d.ts +360 -29
  95. package/src/platforms/webexbot/cli.ts +42 -0
  96. package/src/platforms/webexbot/client.ts +87 -0
  97. package/src/platforms/webexbot/commands/auth.test.ts +185 -0
  98. package/src/platforms/webexbot/commands/auth.ts +210 -0
  99. package/src/platforms/webexbot/commands/index.ts +6 -0
  100. package/src/platforms/webexbot/commands/listen.test.ts +20 -0
  101. package/src/platforms/webexbot/commands/listen.ts +104 -0
  102. package/src/platforms/webexbot/commands/member.ts +51 -0
  103. package/src/platforms/webexbot/commands/message.ts +197 -0
  104. package/src/platforms/webexbot/commands/shared.ts +22 -0
  105. package/src/platforms/webexbot/commands/space.ts +88 -0
  106. package/src/platforms/webexbot/commands/whoami.ts +43 -0
  107. package/src/platforms/webexbot/credential-manager.test.ts +182 -0
  108. package/src/platforms/webexbot/credential-manager.ts +149 -0
  109. package/src/platforms/webexbot/index.ts +8 -0
  110. package/src/platforms/webexbot/listener.test.ts +234 -0
  111. package/src/platforms/webexbot/listener.ts +255 -0
  112. package/src/platforms/webexbot/types.test.ts +87 -0
  113. package/src/platforms/webexbot/types.ts +72 -0
  114. package/src/platforms/webexbot/wdm-discovery.test.ts +97 -0
  115. package/src/platforms/webexbot/wdm-discovery.ts +43 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-messenger",
3
- "version": "2.20.4",
3
+ "version": "2.21.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
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Agent Messenger
4
4
 
5
- [![npm](https://img.shields.io/npm/v/agent-messenger?color=E67E22)](https://www.npmjs.com/package/agent-messenger) [![platform](https://img.shields.io/badge/platform-slack-4A154B)](https://agent-messenger.dev/docs/cli/slack) [![platform](https://img.shields.io/badge/platform-discord-5865F2)](https://agent-messenger.dev/docs/cli/discord) [![platform](https://img.shields.io/badge/platform-teams-6264A7)](https://agent-messenger.dev/docs/cli/teams) [![platform](https://img.shields.io/badge/platform-webex-00BCF2)](https://agent-messenger.dev/docs/cli/webex) [![platform](https://img.shields.io/badge/platform-telegram-2AABEE)](https://agent-messenger.dev/docs/cli/telegram) [![platform](https://img.shields.io/badge/platform-telegram_bot-2AABEE)](https://agent-messenger.dev/docs/cli/telegrambot) [![platform](https://img.shields.io/badge/platform-whatsapp-25D366)](https://agent-messenger.dev/docs/cli/whatsapp) [![platform](https://img.shields.io/badge/platform-line-06C755)](https://agent-messenger.dev/docs/cli/line) [![platform](https://img.shields.io/badge/platform-instagram-E4405F)](https://agent-messenger.dev/docs/cli/instagram) [![platform](https://img.shields.io/badge/platform-kakaotalk-FEE500)](https://agent-messenger.dev/docs/cli/kakaotalk) [![platform](https://img.shields.io/badge/platform-channel_talk-3B3FE4)](https://agent-messenger.dev/docs/cli/channeltalk)
5
+ [![npm](https://img.shields.io/npm/v/agent-messenger?color=E67E22)](https://www.npmjs.com/package/agent-messenger) [![platform](https://img.shields.io/badge/platform-slack-4A154B)](https://agent-messenger.dev/docs/cli/slack) [![platform](https://img.shields.io/badge/platform-discord-5865F2)](https://agent-messenger.dev/docs/cli/discord) [![platform](https://img.shields.io/badge/platform-teams-6264A7)](https://agent-messenger.dev/docs/cli/teams) [![platform](https://img.shields.io/badge/platform-webex-00BCF2)](https://agent-messenger.dev/docs/cli/webex) [![platform](https://img.shields.io/badge/platform-telegram-2AABEE)](https://agent-messenger.dev/docs/cli/telegram) [![platform](https://img.shields.io/badge/platform-whatsapp-25D366)](https://agent-messenger.dev/docs/cli/whatsapp) [![platform](https://img.shields.io/badge/platform-line-06C755)](https://agent-messenger.dev/docs/cli/line) [![platform](https://img.shields.io/badge/platform-wechat-07C160)](https://agent-messenger.dev/docs/cli/wechatbot) [![platform](https://img.shields.io/badge/platform-instagram-E4405F)](https://agent-messenger.dev/docs/cli/instagram) [![platform](https://img.shields.io/badge/platform-kakaotalk-FEE500)](https://agent-messenger.dev/docs/cli/kakaotalk) [![platform](https://img.shields.io/badge/platform-channel_talk-3B3FE4)](https://agent-messenger.dev/docs/cli/channeltalk)
6
6
 
7
7
  **Your agent messages as you — not as a bot**
8
8
 
@@ -77,6 +77,7 @@ This installs:
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)
80
+ - `agent-webexbot` — Webex Bot CLI (bot token, for server-side/CI/CD with real-time Mercury WebSocket listener)
80
81
  - `agent-telegram` — Telegram CLI (user account via TDLib)
81
82
  - `agent-telegrambot` — Telegram Bot CLI (bot token, for server-side/CI/CD)
82
83
  - `agent-whatsapp` — WhatsApp CLI (user account via Baileys, QR code or pairing code auth)
@@ -96,7 +97,7 @@ Agent Messenger includes [Agent Skills](https://agentskills.io/) that teach your
96
97
 
97
98
  SkillPad is a GUI app for Agent Skills. See [skillpad.dev](https://skillpad.dev/) for more details.
98
99
 
99
- [![Available on SkillPad](https://badge.skillpad.dev/agent-slack/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-slack) [![Available on SkillPad](https://badge.skillpad.dev/agent-slackbot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-slackbot) [![Available on SkillPad](https://badge.skillpad.dev/agent-discord/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-discord) [![Available on SkillPad](https://badge.skillpad.dev/agent-discordbot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-discordbot) [![Available on SkillPad](https://badge.skillpad.dev/agent-teams/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-teams) [![Available on SkillPad](https://badge.skillpad.dev/agent-webex/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-webex) [![Available on SkillPad](https://badge.skillpad.dev/agent-telegram/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-telegram) [![Available on SkillPad](https://badge.skillpad.dev/agent-telegrambot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-telegrambot) [![Available on SkillPad](https://badge.skillpad.dev/agent-whatsapp/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-whatsapp) [![Available on SkillPad](https://badge.skillpad.dev/agent-whatsappbot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-whatsappbot) [![Available on SkillPad](https://badge.skillpad.dev/agent-line/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-line) [![Available on SkillPad](https://badge.skillpad.dev/agent-wechatbot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-wechatbot) [![Available on SkillPad](https://badge.skillpad.dev/agent-instagram/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-instagram) [![Available on SkillPad](https://badge.skillpad.dev/agent-kakaotalk/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-kakaotalk) [![Available on SkillPad](https://badge.skillpad.dev/agent-channeltalk/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-channeltalk) [![Available on SkillPad](https://badge.skillpad.dev/agent-channeltalkbot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-channeltalkbot)
100
+ [![Available on SkillPad](https://badge.skillpad.dev/agent-slack/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-slack) [![Available on SkillPad](https://badge.skillpad.dev/agent-slackbot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-slackbot) [![Available on SkillPad](https://badge.skillpad.dev/agent-discord/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-discord) [![Available on SkillPad](https://badge.skillpad.dev/agent-discordbot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-discordbot) [![Available on SkillPad](https://badge.skillpad.dev/agent-teams/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-teams) [![Available on SkillPad](https://badge.skillpad.dev/agent-webex/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-webex) [![Available on SkillPad](https://badge.skillpad.dev/agent-webexbot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-webexbot) [![Available on SkillPad](https://badge.skillpad.dev/agent-telegram/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-telegram) [![Available on SkillPad](https://badge.skillpad.dev/agent-telegrambot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-telegrambot) [![Available on SkillPad](https://badge.skillpad.dev/agent-whatsapp/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-whatsapp) [![Available on SkillPad](https://badge.skillpad.dev/agent-whatsappbot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-whatsappbot) [![Available on SkillPad](https://badge.skillpad.dev/agent-line/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-line) [![Available on SkillPad](https://badge.skillpad.dev/agent-wechatbot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-wechatbot) [![Available on SkillPad](https://badge.skillpad.dev/agent-instagram/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-instagram) [![Available on SkillPad](https://badge.skillpad.dev/agent-kakaotalk/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-kakaotalk) [![Available on SkillPad](https://badge.skillpad.dev/agent-channeltalk/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-channeltalk) [![Available on SkillPad](https://badge.skillpad.dev/agent-channeltalkbot/dark.svg)](https://skillpad.dev/install/agent-messenger/agent-messenger/agent-channeltalkbot)
100
101
 
101
102
  ### Skills CLI
102
103
 
@@ -188,6 +189,7 @@ const slack = await new SlackClient().login({ token: 'xoxc-...', cookie: 'xoxd-.
188
189
  | `agent-messenger/discordbot` | `DiscordBotClient` |
189
190
  | `agent-messenger/teams` | `TeamsClient` |
190
191
  | `agent-messenger/webex` | `WebexClient` |
192
+ | `agent-messenger/webexbot` | `WebexBotClient` |
191
193
  | `agent-messenger/telegrambot` | `TelegramBotClient` |
192
194
  | `agent-messenger/whatsapp` | `WhatsAppClient` |
193
195
  | `agent-messenger/whatsappbot` | `WhatsAppBotClient` |
@@ -363,8 +365,8 @@ See the [TUI docs](https://agent-messenger.dev/docs/tui) for keybindings, archit
363
365
  | Channel management | ✅ | — | — | — | — | — | — | — | — | — | — |
364
366
  | Reminders | ✅ | — | — | — | — | — | — | — | — | — | — |
365
367
  | User groups | ✅ | — | — | — | — | — | — | — | — | — | — |
366
- | Real-time events (SDK) | ✅ | ✅ | — | | — | — | ✅ | — | ✅ | ✅ | — |
367
- | Bot support | ✅ | ✅ | — | | ✅ | ✅ | — | ✅ | — | — | ✅ |
368
+ | Real-time events (SDK) | ✅ | ✅ | — | | — | — | ✅ | — | ✅ | ✅ | — |
369
+ | Bot support | ✅ | ✅ | — | | ✅ | ✅ | — | ✅ | — | — | ✅ |
368
370
 
369
371
  > ⚠️ **Teams tokens expire in 60-90 minutes.** Re-run `agent-teams auth extract` to refresh. See [Teams Guide](skills/agent-teams/SKILL.md) for details.
370
372
 
@@ -376,6 +378,7 @@ See the [TUI docs](https://agent-messenger.dev/docs/tui) for keybindings, archit
376
378
  - **[Discord Bot Guide](https://agent-messenger.dev/docs/cli/discordbot)** — Bot token integration for server-side and CI/CD
377
379
  - **[Teams Guide](https://agent-messenger.dev/docs/cli/teams)** — Full command reference for Microsoft Teams
378
380
  - **[Webex Guide](skills/agent-webex/SKILL.md)** — Browser token extraction, OAuth Device Grant auth, and Cisco Webex command reference
381
+ - **[Webex Bot Guide](https://agent-messenger.dev/docs/cli/webexbot)** — Bot token integration for server-side and CI/CD with real-time Mercury WebSocket listener
379
382
  - **[Telegram Guide](https://agent-messenger.dev/docs/cli/telegram)** — TDLib setup and Telegram command reference
380
383
  - **[Telegram Bot Guide](https://agent-messenger.dev/docs/cli/telegrambot)** — Bot token integration for server-side and CI/CD
381
384
  - **[WhatsApp Guide](https://agent-messenger.dev/docs/cli/whatsapp)** — Baileys-based WhatsApp integration via QR code or pairing code
@@ -454,7 +457,7 @@ With Agent Messenger, your agent loads the skill it needs, uses the CLI, and mov
454
457
 
455
458
  OAuth requires creating an app and workspace admin approval—days of waiting just to send a message. Agent Messenger skips all of that. Your desktop apps already have valid session tokens; Agent Messenger extracts them directly so you can start messaging immediately. For platforms like Telegram, WhatsApp, and LINE, a one-time authentication flow gets you in fast.
456
459
 
457
- For server-side bots and CI/CD, bot tokens are fully supported via [`agent-slackbot`](skills/agent-slackbot/SKILL.md), [`agent-discordbot`](skills/agent-discordbot/SKILL.md), [`agent-telegrambot`](skills/agent-telegrambot/SKILL.md), [`agent-whatsappbot`](skills/agent-whatsappbot/SKILL.md), [`agent-wechatbot`](skills/agent-wechatbot/SKILL.md), and [`agent-channeltalkbot`](skills/agent-channeltalkbot/SKILL.md).
460
+ For server-side bots and CI/CD, bot tokens are fully supported via [`agent-slackbot`](skills/agent-slackbot/SKILL.md), [`agent-discordbot`](skills/agent-discordbot/SKILL.md), [`agent-webexbot`](skills/agent-webexbot/SKILL.md), [`agent-telegrambot`](skills/agent-telegrambot/SKILL.md), [`agent-whatsappbot`](skills/agent-whatsappbot/SKILL.md), [`agent-wechatbot`](skills/agent-wechatbot/SKILL.md), and [`agent-channeltalkbot`](skills/agent-channeltalkbot/SKILL.md).
458
461
 
459
462
  Inspired by [agent-browser](https://github.com/vercel-labs/agent-browser) from Vercel Labs.
460
463
 
package/bun.lock CHANGED
@@ -10,7 +10,7 @@
10
10
  "@whiskeysockets/baileys": "^7.0.0-rc.9",
11
11
  "better-sqlite3": "^12.0.0",
12
12
  "blessed": "^0.1.81",
13
- "bson": "^7.2.0",
13
+ "bson": "^6.10.4",
14
14
  "classic-level": "^3.0.0",
15
15
  "commander": "^11.1.0",
16
16
  "crypto-js": "^4.2.0",
@@ -366,7 +366,7 @@
366
366
 
367
367
  "browser-or-node": ["browser-or-node@1.3.0", "", {}, "sha512-0F2z/VSnLbmEeBcUrSuDH5l0HxTXdQQzLjkmBR4cYfvg1zJrKSlmIZFqyFR8oX0NrwPhy3c3HQ6i3OxMbew4Tg=="],
368
368
 
369
- "bson": ["bson@7.2.0", "", {}, "sha512-YCEo7KjMlbNlyHhz7zAZNDpIpQbd+wOEHJYezv0nMYTn4x31eIUM2yomNNubclAt63dObUzKHWsBLJ9QcZNSnQ=="],
369
+ "bson": ["bson@6.10.4", "", {}, "sha512-WIsKqkSC0ABoBJuT1LEX+2HEvNmNKKgnTAyd0fL8qzK4SH2i9NXg+t08YtdZp/V9IZ33cxe3iV4yM0qg8lMQng=="],
370
370
 
371
371
  "buffer": ["buffer@6.0.3", "", { "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" } }, "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA=="],
372
372
 
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-messenger",
3
- "version": "2.20.4",
3
+ "version": "2.21.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",
@@ -21,6 +21,7 @@
21
21
  "agent-telegram": "./src/platforms/telegram/cli.ts",
22
22
  "agent-telegrambot": "./src/platforms/telegrambot/cli.ts",
23
23
  "agent-webex": "./src/platforms/webex/cli.ts",
24
+ "agent-webexbot": "./src/platforms/webexbot/cli.ts",
24
25
  "agent-wechatbot": "./src/platforms/wechatbot/cli.ts",
25
26
  "agent-whatsapp": "./src/platforms/whatsapp/cli.ts",
26
27
  "agent-whatsappbot": "./src/platforms/whatsappbot/cli.ts",
@@ -49,6 +50,9 @@
49
50
  "webex": [
50
51
  "./src/platforms/webex/index.ts"
51
52
  ],
53
+ "webexbot": [
54
+ "./src/platforms/webexbot/index.ts"
55
+ ],
52
56
  "whatsapp": [
53
57
  "./src/platforms/whatsapp/index.ts"
54
58
  ],
@@ -108,6 +112,10 @@
108
112
  "types": "./src/platforms/webex/index.ts",
109
113
  "default": "./src/platforms/webex/index.ts"
110
114
  },
115
+ "./webexbot": {
116
+ "types": "./src/platforms/webexbot/index.ts",
117
+ "default": "./src/platforms/webexbot/index.ts"
118
+ },
111
119
  "./whatsapp": {
112
120
  "types": "./src/platforms/whatsapp/index.ts",
113
121
  "default": "./src/platforms/whatsapp/index.ts"
@@ -165,7 +173,7 @@
165
173
  "@whiskeysockets/baileys": "^7.0.0-rc.9",
166
174
  "better-sqlite3": "^12.0.0",
167
175
  "blessed": "^0.1.81",
168
- "bson": "^7.2.0",
176
+ "bson": "^6.10.4",
169
177
  "classic-level": "^3.0.0",
170
178
  "commander": "^11.1.0",
171
179
  "crypto-js": "^4.2.0",
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":";AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAQnC,QAAA,MAAM,OAAO,SAAgB,CAAA;AAuE7B,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":";AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAQnC,QAAA,MAAM,OAAO,SAAgB,CAAA;AA2E7B,eAAe,OAAO,CAAA"}
package/dist/src/cli.js CHANGED
@@ -54,6 +54,9 @@ program.command('channeltalkbot', 'Interact with Channel Talk using API credenti
54
54
  program.command('webex', 'Interact with Cisco Webex', {
55
55
  executableFile: join(__dirname, 'platforms', 'webex', `cli${ext}`),
56
56
  });
57
+ program.command('webexbot', 'Interact with Cisco Webex using bot tokens', {
58
+ executableFile: join(__dirname, 'platforms', 'webexbot', `cli${ext}`),
59
+ });
57
60
  program.command('tui', 'Launch unified messenger TUI', {
58
61
  executableFile: join(__dirname, 'tui', `cli${ext}`),
59
62
  });
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env bun
2
+ import { Command } from 'commander';
3
+ declare const program: Command;
4
+ export default program;
5
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../src/platforms/webexbot/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAYnC,QAAA,MAAM,OAAO,SAAgB,CAAA;AA2B7B,eAAe,OAAO,CAAA"}
@@ -0,0 +1,30 @@
1
+ #!/usr/bin/env bun
2
+ import { Command } from 'commander';
3
+ import pkg from '../../../package.json' with { type: 'json' };
4
+ import { authCommand, listenCommand, memberCommand, messageCommand, spaceCommand, whoamiCommand, } from './commands/index.js';
5
+ const program = new Command();
6
+ program
7
+ .name('agent-webexbot')
8
+ .description('CLI tool for Webex bot integration using bot tokens')
9
+ .version(pkg.version)
10
+ .option('--pretty', 'Pretty-print JSON output')
11
+ .option('--bot <id>', 'Bot ID to use')
12
+ .hook('preAction', (thisCmd, actionCmd) => {
13
+ for (const [key, value] of Object.entries(thisCmd.opts())) {
14
+ if (value === undefined)
15
+ continue;
16
+ const source = actionCmd.getOptionValueSource(key);
17
+ if (source === undefined || source === 'default') {
18
+ actionCmd.setOptionValue(key, value);
19
+ }
20
+ }
21
+ });
22
+ program.addCommand(authCommand);
23
+ program.addCommand(whoamiCommand);
24
+ program.addCommand(messageCommand);
25
+ program.addCommand(spaceCommand);
26
+ program.addCommand(memberCommand);
27
+ program.addCommand(listenCommand);
28
+ program.parseAsync(process.argv);
29
+ export default program;
30
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/platforms/webexbot/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,GAAG,MAAM,uBAAuB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAA;AAC7D,OAAO,EACL,WAAW,EACX,aAAa,EACb,aAAa,EACb,cAAc,EACd,YAAY,EACZ,aAAa,GACd,MAAM,kBAAkB,CAAA;AAEzB,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,gBAAgB,CAAC;KACtB,WAAW,CAAC,qDAAqD,CAAC;KAClE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;KACpB,MAAM,CAAC,UAAU,EAAE,0BAA0B,CAAC;KAC9C,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC;KACrC,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QAC1D,IAAI,KAAK,KAAK,SAAS;YAAE,SAAQ;QACjC,MAAM,MAAM,GAAG,SAAS,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;QAClD,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACjD,SAAS,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;AAC/B,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;AACjC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;AAClC,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;AAChC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;AACjC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;AAEjC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAEhC,eAAe,OAAO,CAAA"}
@@ -0,0 +1,41 @@
1
+ import type { WebexMembership, WebexMessage, WebexPerson, WebexSpace } from '../webex/types.js';
2
+ export declare class WebexBotClient {
3
+ private client;
4
+ private token;
5
+ login(credentials?: {
6
+ token: string;
7
+ }): Promise<this>;
8
+ getToken(): string;
9
+ testAuth(): Promise<WebexPerson>;
10
+ listSpaces(options?: {
11
+ type?: string;
12
+ max?: number;
13
+ }): Promise<WebexSpace[]>;
14
+ getSpace(spaceId: string): Promise<WebexSpace>;
15
+ sendMessage(roomId: string, text: string, options?: {
16
+ markdown?: boolean;
17
+ }): Promise<WebexMessage>;
18
+ sendDirectMessage(personEmail: string, text: string, options?: {
19
+ markdown?: boolean;
20
+ }): Promise<WebexMessage>;
21
+ listMessages(roomId: string, options?: {
22
+ max?: number;
23
+ }): Promise<WebexMessage[]>;
24
+ getMessage(messageId: string): Promise<WebexMessage>;
25
+ deleteMessage(messageId: string): Promise<void>;
26
+ editMessage(messageId: string, roomId: string, text: string, options?: {
27
+ markdown?: boolean;
28
+ }): Promise<WebexMessage>;
29
+ listPeople(options?: {
30
+ email?: string;
31
+ displayName?: string;
32
+ max?: number;
33
+ }): Promise<WebexPerson[]>;
34
+ listMyMemberships(options?: {
35
+ max?: number;
36
+ }): Promise<WebexMembership[]>;
37
+ listMemberships(roomId: string, options?: {
38
+ max?: number;
39
+ }): Promise<WebexMembership[]>;
40
+ }
41
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/platforms/webexbot/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAG5F,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,KAAK,CAAsB;IAE7B,KAAK,CAAC,WAAW,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB3D,QAAQ,IAAI,MAAM;IAOZ,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC;IAIhC,UAAU,CAAC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAI5E,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAI9C,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAIlG,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;IAI7G,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAIjF,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAIpD,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/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;IAIlB,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;IAIpG,iBAAiB,CAAC,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAIzE,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;CAG9F"}
@@ -0,0 +1,66 @@
1
+ import { WebexClient } from '../webex/client.js';
2
+ import { WebexBotError } from './types.js';
3
+ export class WebexBotClient {
4
+ client = new WebexClient();
5
+ token = null;
6
+ async login(credentials) {
7
+ if (credentials) {
8
+ if (!credentials.token) {
9
+ throw new WebexBotError('Token is required', 'missing_token');
10
+ }
11
+ this.token = credentials.token;
12
+ await this.client.login({ token: credentials.token });
13
+ return this;
14
+ }
15
+ const { WebexBotCredentialManager } = await import('./credential-manager.js');
16
+ const credManager = new WebexBotCredentialManager();
17
+ const creds = await credManager.getCredentials();
18
+ if (!creds?.token) {
19
+ throw new WebexBotError('No Webex bot credentials found. Run "auth set <token>" first.', 'no_credentials');
20
+ }
21
+ return this.login({ token: creds.token });
22
+ }
23
+ getToken() {
24
+ if (!this.token) {
25
+ throw new WebexBotError('Not authenticated. Call .login() first.', 'not_authenticated');
26
+ }
27
+ return this.token;
28
+ }
29
+ async testAuth() {
30
+ return this.client.testAuth();
31
+ }
32
+ async listSpaces(options) {
33
+ return this.client.listSpaces(options);
34
+ }
35
+ async getSpace(spaceId) {
36
+ return this.client.getSpace(spaceId);
37
+ }
38
+ async sendMessage(roomId, text, options) {
39
+ return this.client.sendMessage(roomId, text, options);
40
+ }
41
+ async sendDirectMessage(personEmail, text, options) {
42
+ return this.client.sendDirectMessage(personEmail, text, options);
43
+ }
44
+ async listMessages(roomId, options) {
45
+ return this.client.listMessages(roomId, options);
46
+ }
47
+ async getMessage(messageId) {
48
+ return this.client.getMessage(messageId);
49
+ }
50
+ async deleteMessage(messageId) {
51
+ return this.client.deleteMessage(messageId);
52
+ }
53
+ async editMessage(messageId, roomId, text, options) {
54
+ return this.client.editMessage(messageId, roomId, text, options);
55
+ }
56
+ async listPeople(options) {
57
+ return this.client.listPeople(options);
58
+ }
59
+ async listMyMemberships(options) {
60
+ return this.client.listMyMemberships(options);
61
+ }
62
+ async listMemberships(roomId, options) {
63
+ return this.client.listMemberships(roomId, options);
64
+ }
65
+ }
66
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/platforms/webexbot/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { Command } from 'commander';
2
+ import { WebexBotCredentialManager } from '../credential-manager.js';
3
+ interface ActionOptions {
4
+ pretty?: boolean;
5
+ bot?: string;
6
+ _credManager?: WebexBotCredentialManager;
7
+ }
8
+ interface ActionResult {
9
+ success?: boolean;
10
+ error?: string;
11
+ bot_id?: string;
12
+ bot_name?: string;
13
+ valid?: boolean;
14
+ bots?: Array<{
15
+ bot_id: string;
16
+ bot_name: string;
17
+ is_current: boolean;
18
+ }>;
19
+ }
20
+ export declare function setAction(token: string, options: ActionOptions): Promise<ActionResult>;
21
+ export declare function clearAction(options: ActionOptions): Promise<ActionResult>;
22
+ export declare function statusAction(options: ActionOptions): Promise<ActionResult>;
23
+ export declare function listAction(options: ActionOptions): Promise<ActionResult>;
24
+ export declare function useAction(botId: string, options: ActionOptions): Promise<ActionResult>;
25
+ export declare function removeAction(botId: string, options: ActionOptions): Promise<ActionResult>;
26
+ export declare const authCommand: Command;
27
+ export {};
28
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMnC,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAA;AAEjE,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,YAAY,CAAC,EAAE,yBAAyB,CAAA;CACzC;AAED,UAAU,YAAY;IACpB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,IAAI,CAAC,EAAE,KAAK,CAAC;QACX,MAAM,EAAE,MAAM,CAAA;QACd,QAAQ,EAAE,MAAM,CAAA;QAChB,UAAU,EAAE,OAAO,CAAA;KACpB,CAAC,CAAA;CACH;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CA2B5F;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAQ/E;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAiChF;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAe9E;AAED,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAkB5F;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAa/F;AAED,eAAO,MAAM,WAAW,SAwDrB,CAAA"}
@@ -0,0 +1,166 @@
1
+ import { Command } from 'commander';
2
+ import { cliOutput } from '../../../shared/utils/cli-output.js';
3
+ import { formatOutput } from '../../../shared/utils/output.js';
4
+ import { WebexBotClient } from '../client.js';
5
+ import { WebexBotCredentialManager } from '../credential-manager.js';
6
+ export async function setAction(token, options) {
7
+ try {
8
+ const client = await new WebexBotClient().login({ token });
9
+ const authInfo = await client.testAuth();
10
+ if (authInfo.type !== 'bot') {
11
+ return { error: 'Token is not a bot token. Use agent-webex for user tokens.' };
12
+ }
13
+ const botId = options.bot || authInfo.id || 'default';
14
+ const botName = authInfo.displayName || botId;
15
+ const credManager = options._credManager ?? new WebexBotCredentialManager();
16
+ await credManager.setCredentials({
17
+ token,
18
+ bot_id: botId,
19
+ bot_name: botName,
20
+ });
21
+ return {
22
+ success: true,
23
+ bot_id: botId,
24
+ bot_name: botName,
25
+ };
26
+ }
27
+ catch (error) {
28
+ return { error: error.message };
29
+ }
30
+ }
31
+ export async function clearAction(options) {
32
+ try {
33
+ const credManager = options._credManager ?? new WebexBotCredentialManager();
34
+ await credManager.clearCredentials();
35
+ return { success: true };
36
+ }
37
+ catch (error) {
38
+ return { error: error.message };
39
+ }
40
+ }
41
+ export async function statusAction(options) {
42
+ try {
43
+ const credManager = options._credManager ?? new WebexBotCredentialManager();
44
+ const creds = await credManager.getCredentials(options.bot);
45
+ if (!creds) {
46
+ return {
47
+ valid: false,
48
+ error: options.bot
49
+ ? `Bot "${options.bot}" not found. Run "auth list" to see available bots.`
50
+ : 'No credentials configured. Run "auth set <token>" first.',
51
+ };
52
+ }
53
+ let valid = false;
54
+ let authInfo = null;
55
+ try {
56
+ const client = await new WebexBotClient().login({ token: creds.token });
57
+ authInfo = await client.testAuth();
58
+ valid = authInfo.type === 'bot';
59
+ }
60
+ catch {
61
+ valid = false;
62
+ }
63
+ return {
64
+ valid,
65
+ bot_id: authInfo?.id ?? creds.bot_id,
66
+ bot_name: authInfo?.displayName ?? creds.bot_name,
67
+ };
68
+ }
69
+ catch (error) {
70
+ return { error: error.message };
71
+ }
72
+ }
73
+ export async function listAction(options) {
74
+ try {
75
+ const credManager = options._credManager ?? new WebexBotCredentialManager();
76
+ const all = await credManager.listAll();
77
+ return {
78
+ bots: all.map((b) => ({
79
+ bot_id: b.bot_id,
80
+ bot_name: b.bot_name,
81
+ is_current: b.is_current,
82
+ })),
83
+ };
84
+ }
85
+ catch (error) {
86
+ return { error: error.message };
87
+ }
88
+ }
89
+ export async function useAction(botId, options) {
90
+ try {
91
+ const credManager = options._credManager ?? new WebexBotCredentialManager();
92
+ const found = await credManager.setCurrent(botId);
93
+ if (!found) {
94
+ return { error: `Bot "${botId}" not found. Run "auth list" to see available bots.` };
95
+ }
96
+ const creds = await credManager.getCredentials();
97
+ return {
98
+ success: true,
99
+ bot_id: creds?.bot_id,
100
+ bot_name: creds?.bot_name,
101
+ };
102
+ }
103
+ catch (error) {
104
+ return { error: error.message };
105
+ }
106
+ }
107
+ export async function removeAction(botId, options) {
108
+ try {
109
+ const credManager = options._credManager ?? new WebexBotCredentialManager();
110
+ const removed = await credManager.removeBot(botId);
111
+ if (!removed) {
112
+ return { error: `Bot "${botId}" not found. Run "auth list" to see available bots.` };
113
+ }
114
+ return { success: true };
115
+ }
116
+ catch (error) {
117
+ return { error: error.message };
118
+ }
119
+ }
120
+ export const authCommand = new Command('auth')
121
+ .description('Bot authentication commands')
122
+ .addCommand(new Command('set')
123
+ .description('Set bot token')
124
+ .argument('<token>', 'Bot token')
125
+ .option('--bot <id>', 'Bot identifier for switching later')
126
+ .option('--pretty', 'Pretty print JSON output')
127
+ .action(async (token, opts) => {
128
+ cliOutput(await setAction(token, opts), opts.pretty);
129
+ }))
130
+ .addCommand(new Command('clear')
131
+ .description('Clear all stored credentials')
132
+ .option('--pretty', 'Pretty print JSON output')
133
+ .action(async (opts) => {
134
+ cliOutput(await clearAction(opts), opts.pretty);
135
+ }))
136
+ .addCommand(new Command('status')
137
+ .description('Show authentication status')
138
+ .option('--bot <id>', 'Check specific bot (default: current)')
139
+ .option('--pretty', 'Pretty print JSON output')
140
+ .action(async (opts) => {
141
+ const result = await statusAction(opts);
142
+ console.log(formatOutput(result, opts.pretty));
143
+ if (!result.valid)
144
+ process.exit(1);
145
+ }))
146
+ .addCommand(new Command('list')
147
+ .description('List all stored bots')
148
+ .option('--pretty', 'Pretty print JSON output')
149
+ .action(async (opts) => {
150
+ cliOutput(await listAction(opts), opts.pretty);
151
+ }))
152
+ .addCommand(new Command('use')
153
+ .description('Switch active bot')
154
+ .argument('<bot>', 'Bot ID')
155
+ .option('--pretty', 'Pretty print JSON output')
156
+ .action(async (botId, opts) => {
157
+ cliOutput(await useAction(botId, opts), opts.pretty);
158
+ }))
159
+ .addCommand(new Command('remove')
160
+ .description('Remove a stored bot')
161
+ .argument('<bot>', 'Bot ID')
162
+ .option('--pretty', 'Pretty print JSON output')
163
+ .action(async (botId, opts) => {
164
+ cliOutput(await removeAction(botId, opts), opts.pretty);
165
+ }));
166
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export { authCommand } from './auth.js';
2
+ export { listenCommand } from './listen.js';
3
+ export { memberCommand } from './member.js';
4
+ export { messageCommand } from './message.js';
5
+ export { spaceCommand } from './space.js';
6
+ export { whoamiCommand } from './whoami.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA"}
@@ -0,0 +1,7 @@
1
+ export { authCommand } from './auth.js';
2
+ export { listenCommand } from './listen.js';
3
+ export { memberCommand } from './member.js';
4
+ export { messageCommand } from './message.js';
5
+ export { spaceCommand } from './space.js';
6
+ export { whoamiCommand } from './whoami.js';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA"}
@@ -0,0 +1,12 @@
1
+ import { Command } from 'commander';
2
+ import type { WebexBotListenerEventMap } from '../types.js';
3
+ import type { BotOption } from './shared.js';
4
+ type ListenEvent = keyof WebexBotListenerEventMap;
5
+ interface ListenOptions extends BotOption {
6
+ events?: string;
7
+ }
8
+ export declare function parseEvents(events?: string): ListenEvent[];
9
+ export declare function listenAction(options: ListenOptions): Promise<void>;
10
+ export declare const listenCommand: Command;
11
+ export {};
12
+ //# sourceMappingURL=listen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listen.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/webexbot/commands/listen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKnC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAGzC,KAAK,WAAW,GAAG,MAAM,wBAAwB,CAAA;AA6BjD,UAAU,aAAc,SAAQ,SAAS;IACvC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAOD,wBAAgB,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,EAAE,CAe1D;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BxE;AAED,eAAO,MAAM,aAAa,SAOtB,CAAA"}