agent-messenger 2.10.2 → 2.11.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.
- package/.claude-plugin/plugin.json +1 -1
- package/.env.template +4 -1
- package/README.md +77 -27
- package/bun.lock +26 -0
- package/dist/package.json +14 -1
- package/dist/src/platforms/channeltalk/commands/auth.d.ts +2 -1
- package/dist/src/platforms/channeltalk/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/channeltalk/commands/auth.js +5 -3
- package/dist/src/platforms/channeltalk/commands/auth.js.map +1 -1
- package/dist/src/platforms/channeltalk/token-extractor.d.ts +2 -1
- package/dist/src/platforms/channeltalk/token-extractor.d.ts.map +1 -1
- package/dist/src/platforms/channeltalk/token-extractor.js +22 -6
- package/dist/src/platforms/channeltalk/token-extractor.js.map +1 -1
- package/dist/src/platforms/channeltalkbot/cli.d.ts.map +1 -1
- package/dist/src/platforms/channeltalkbot/cli.js +11 -1
- package/dist/src/platforms/channeltalkbot/cli.js.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/auth.js +1 -5
- package/dist/src/platforms/channeltalkbot/commands/auth.js.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/bot.d.ts.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/bot.js +1 -6
- package/dist/src/platforms/channeltalkbot/commands/bot.js.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/chat.d.ts.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/chat.js +1 -6
- package/dist/src/platforms/channeltalkbot/commands/chat.js.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/group.d.ts.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/group.js +1 -6
- package/dist/src/platforms/channeltalkbot/commands/group.js.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/manager.d.ts.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/manager.js +1 -6
- package/dist/src/platforms/channeltalkbot/commands/manager.js.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/message.d.ts.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/message.js +1 -6
- package/dist/src/platforms/channeltalkbot/commands/message.js.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/whoami.d.ts.map +1 -1
- package/dist/src/platforms/channeltalkbot/commands/whoami.js +1 -6
- package/dist/src/platforms/channeltalkbot/commands/whoami.js.map +1 -1
- package/dist/src/platforms/channeltalkbot/credential-manager.d.ts +5 -0
- package/dist/src/platforms/channeltalkbot/credential-manager.d.ts.map +1 -1
- package/dist/src/platforms/channeltalkbot/credential-manager.js +34 -4
- package/dist/src/platforms/channeltalkbot/credential-manager.js.map +1 -1
- package/dist/src/platforms/discord/commands/auth.d.ts +1 -0
- package/dist/src/platforms/discord/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/discord/commands/auth.js +3 -1
- package/dist/src/platforms/discord/commands/auth.js.map +1 -1
- package/dist/src/platforms/discord/listener.d.ts +2 -0
- package/dist/src/platforms/discord/listener.d.ts.map +1 -1
- package/dist/src/platforms/discord/listener.js +51 -21
- package/dist/src/platforms/discord/listener.js.map +1 -1
- package/dist/src/platforms/discord/token-extractor.d.ts +2 -1
- package/dist/src/platforms/discord/token-extractor.d.ts.map +1 -1
- package/dist/src/platforms/discord/token-extractor.js +21 -6
- package/dist/src/platforms/discord/token-extractor.js.map +1 -1
- package/dist/src/platforms/discordbot/cli.d.ts.map +1 -1
- package/dist/src/platforms/discordbot/cli.js +12 -1
- package/dist/src/platforms/discordbot/cli.js.map +1 -1
- package/dist/src/platforms/discordbot/client.d.ts +3 -0
- package/dist/src/platforms/discordbot/client.d.ts.map +1 -1
- package/dist/src/platforms/discordbot/client.js +3 -0
- package/dist/src/platforms/discordbot/client.js.map +1 -1
- package/dist/src/platforms/discordbot/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/discordbot/commands/auth.js +1 -5
- package/dist/src/platforms/discordbot/commands/auth.js.map +1 -1
- package/dist/src/platforms/discordbot/commands/message.d.ts.map +1 -1
- package/dist/src/platforms/discordbot/commands/message.js +1 -6
- package/dist/src/platforms/discordbot/commands/message.js.map +1 -1
- package/dist/src/platforms/discordbot/commands/server.d.ts.map +1 -1
- package/dist/src/platforms/discordbot/commands/server.js +1 -4
- package/dist/src/platforms/discordbot/commands/server.js.map +1 -1
- package/dist/src/platforms/discordbot/commands/whoami.d.ts.map +1 -1
- package/dist/src/platforms/discordbot/commands/whoami.js +1 -6
- package/dist/src/platforms/discordbot/commands/whoami.js.map +1 -1
- package/dist/src/platforms/discordbot/index.d.ts +3 -1
- package/dist/src/platforms/discordbot/index.d.ts.map +1 -1
- package/dist/src/platforms/discordbot/index.js +2 -1
- package/dist/src/platforms/discordbot/index.js.map +1 -1
- package/dist/src/platforms/discordbot/listener.d.ts +43 -0
- package/dist/src/platforms/discordbot/listener.d.ts.map +1 -0
- package/dist/src/platforms/discordbot/listener.js +292 -0
- package/dist/src/platforms/discordbot/listener.js.map +1 -0
- package/dist/src/platforms/discordbot/types.d.ts +161 -0
- package/dist/src/platforms/discordbot/types.d.ts.map +1 -1
- package/dist/src/platforms/discordbot/types.js +34 -0
- package/dist/src/platforms/discordbot/types.js.map +1 -1
- package/dist/src/platforms/instagram/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/instagram/commands/auth.js +3 -1
- package/dist/src/platforms/instagram/commands/auth.js.map +1 -1
- package/dist/src/platforms/instagram/token-extractor.d.ts +2 -1
- package/dist/src/platforms/instagram/token-extractor.d.ts.map +1 -1
- package/dist/src/platforms/instagram/token-extractor.js +11 -2
- package/dist/src/platforms/instagram/token-extractor.js.map +1 -1
- package/dist/src/platforms/slack/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/slack/commands/auth.js +4 -2
- package/dist/src/platforms/slack/commands/auth.js.map +1 -1
- package/dist/src/platforms/slack/token-extractor.d.ts +4 -1
- package/dist/src/platforms/slack/token-extractor.d.ts.map +1 -1
- package/dist/src/platforms/slack/token-extractor.js +64 -15
- package/dist/src/platforms/slack/token-extractor.js.map +1 -1
- package/dist/src/platforms/slackbot/cli.d.ts.map +1 -1
- package/dist/src/platforms/slackbot/cli.js +15 -3
- package/dist/src/platforms/slackbot/cli.js.map +1 -1
- package/dist/src/platforms/slackbot/client.d.ts +22 -1
- package/dist/src/platforms/slackbot/client.d.ts.map +1 -1
- package/dist/src/platforms/slackbot/client.js +104 -1
- package/dist/src/platforms/slackbot/client.js.map +1 -1
- package/dist/src/platforms/slackbot/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/slackbot/commands/auth.js +1 -5
- package/dist/src/platforms/slackbot/commands/auth.js.map +1 -1
- package/dist/src/platforms/slackbot/commands/file.d.ts +3 -0
- package/dist/src/platforms/slackbot/commands/file.d.ts.map +1 -0
- package/dist/src/platforms/slackbot/commands/file.js +164 -0
- package/dist/src/platforms/slackbot/commands/file.js.map +1 -0
- package/dist/src/platforms/slackbot/commands/index.d.ts +1 -0
- package/dist/src/platforms/slackbot/commands/index.d.ts.map +1 -1
- package/dist/src/platforms/slackbot/commands/index.js +1 -0
- package/dist/src/platforms/slackbot/commands/index.js.map +1 -1
- package/dist/src/platforms/slackbot/commands/message.d.ts.map +1 -1
- package/dist/src/platforms/slackbot/commands/message.js +19 -0
- package/dist/src/platforms/slackbot/commands/message.js.map +1 -1
- package/dist/src/platforms/slackbot/commands/whoami.d.ts.map +1 -1
- package/dist/src/platforms/slackbot/commands/whoami.js +1 -6
- package/dist/src/platforms/slackbot/commands/whoami.js.map +1 -1
- package/dist/src/platforms/slackbot/credential-manager.d.ts +1 -0
- package/dist/src/platforms/slackbot/credential-manager.d.ts.map +1 -1
- package/dist/src/platforms/slackbot/credential-manager.js +30 -2
- package/dist/src/platforms/slackbot/credential-manager.js.map +1 -1
- package/dist/src/platforms/slackbot/index.d.ts +4 -1
- package/dist/src/platforms/slackbot/index.d.ts.map +1 -1
- package/dist/src/platforms/slackbot/index.js +1 -0
- package/dist/src/platforms/slackbot/index.js.map +1 -1
- package/dist/src/platforms/slackbot/listener.d.ts +44 -0
- package/dist/src/platforms/slackbot/listener.d.ts.map +1 -0
- package/dist/src/platforms/slackbot/listener.js +313 -0
- package/dist/src/platforms/slackbot/listener.js.map +1 -0
- package/dist/src/platforms/slackbot/types.d.ts +196 -1
- package/dist/src/platforms/slackbot/types.d.ts.map +1 -1
- package/dist/src/platforms/slackbot/types.js +4 -1
- package/dist/src/platforms/slackbot/types.js.map +1 -1
- package/dist/src/platforms/teams/commands/auth.d.ts +1 -0
- package/dist/src/platforms/teams/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/teams/commands/auth.js +37 -6
- package/dist/src/platforms/teams/commands/auth.js.map +1 -1
- package/dist/src/platforms/teams/ensure-auth.js +31 -9
- package/dist/src/platforms/teams/ensure-auth.js.map +1 -1
- package/dist/src/platforms/teams/token-extractor.d.ts +4 -1
- package/dist/src/platforms/teams/token-extractor.d.ts.map +1 -1
- package/dist/src/platforms/teams/token-extractor.js +71 -29
- package/dist/src/platforms/teams/token-extractor.js.map +1 -1
- package/dist/src/platforms/webex/commands/auth.d.ts +1 -0
- package/dist/src/platforms/webex/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/webex/commands/auth.js +3 -1
- package/dist/src/platforms/webex/commands/auth.js.map +1 -1
- package/dist/src/platforms/webex/token-extractor.d.ts +3 -1
- package/dist/src/platforms/webex/token-extractor.d.ts.map +1 -1
- package/dist/src/platforms/webex/token-extractor.js +16 -2
- package/dist/src/platforms/webex/token-extractor.js.map +1 -1
- package/dist/src/platforms/wechatbot/cli.d.ts.map +1 -1
- package/dist/src/platforms/wechatbot/cli.js +11 -1
- package/dist/src/platforms/wechatbot/cli.js.map +1 -1
- package/dist/src/platforms/wechatbot/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/wechatbot/commands/auth.js +1 -5
- package/dist/src/platforms/wechatbot/commands/auth.js.map +1 -1
- package/dist/src/platforms/wechatbot/commands/message.d.ts.map +1 -1
- package/dist/src/platforms/wechatbot/commands/message.js +1 -6
- package/dist/src/platforms/wechatbot/commands/message.js.map +1 -1
- package/dist/src/platforms/wechatbot/commands/template.d.ts.map +1 -1
- package/dist/src/platforms/wechatbot/commands/template.js +1 -6
- package/dist/src/platforms/wechatbot/commands/template.js.map +1 -1
- package/dist/src/platforms/wechatbot/commands/user.d.ts.map +1 -1
- package/dist/src/platforms/wechatbot/commands/user.js +1 -6
- package/dist/src/platforms/wechatbot/commands/user.js.map +1 -1
- package/dist/src/platforms/wechatbot/commands/whoami.d.ts.map +1 -1
- package/dist/src/platforms/wechatbot/commands/whoami.js +1 -6
- package/dist/src/platforms/wechatbot/commands/whoami.js.map +1 -1
- package/dist/src/platforms/whatsappbot/cli.d.ts.map +1 -1
- package/dist/src/platforms/whatsappbot/cli.js +11 -1
- package/dist/src/platforms/whatsappbot/cli.js.map +1 -1
- package/dist/src/platforms/whatsappbot/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/whatsappbot/commands/auth.js +1 -5
- package/dist/src/platforms/whatsappbot/commands/auth.js.map +1 -1
- package/dist/src/platforms/whatsappbot/commands/message.d.ts.map +1 -1
- package/dist/src/platforms/whatsappbot/commands/message.js +1 -6
- package/dist/src/platforms/whatsappbot/commands/message.js.map +1 -1
- package/dist/src/platforms/whatsappbot/commands/template.d.ts.map +1 -1
- package/dist/src/platforms/whatsappbot/commands/template.js +1 -6
- package/dist/src/platforms/whatsappbot/commands/template.js.map +1 -1
- package/dist/src/platforms/whatsappbot/commands/whoami.d.ts.map +1 -1
- package/dist/src/platforms/whatsappbot/commands/whoami.js +1 -6
- package/dist/src/platforms/whatsappbot/commands/whoami.js.map +1 -1
- package/dist/src/shared/chromium/browsers.d.ts +8 -0
- package/dist/src/shared/chromium/browsers.d.ts.map +1 -1
- package/dist/src/shared/chromium/browsers.js +58 -3
- package/dist/src/shared/chromium/browsers.js.map +1 -1
- package/dist/src/shared/chromium/cli-options.d.ts +5 -0
- package/dist/src/shared/chromium/cli-options.d.ts.map +1 -0
- package/dist/src/shared/chromium/cli-options.js +8 -0
- package/dist/src/shared/chromium/cli-options.js.map +1 -0
- package/dist/src/shared/chromium/index.d.ts +3 -1
- package/dist/src/shared/chromium/index.d.ts.map +1 -1
- package/dist/src/shared/chromium/index.js +2 -1
- package/dist/src/shared/chromium/index.js.map +1 -1
- package/dist/src/shared/utils/cli-output.d.ts +7 -0
- package/dist/src/shared/utils/cli-output.d.ts.map +1 -0
- package/dist/src/shared/utils/cli-output.js +7 -0
- package/dist/src/shared/utils/cli-output.js.map +1 -0
- package/dist/src/tui/app.d.ts.map +1 -1
- package/dist/src/tui/app.js +73 -20
- package/dist/src/tui/app.js.map +1 -1
- package/docs/content/docs/cli/channeltalk.mdx +4 -0
- package/docs/content/docs/cli/discord.mdx +5 -0
- package/docs/content/docs/cli/instagram.mdx +3 -0
- package/docs/content/docs/cli/slack.mdx +5 -0
- package/docs/content/docs/cli/slackbot.mdx +60 -22
- package/docs/content/docs/cli/teams.mdx +5 -0
- package/docs/content/docs/cli/webex.mdx +3 -0
- package/docs/content/docs/sdk/channeltalkbot.mdx +38 -1
- package/docs/content/docs/sdk/discordbot.mdx +501 -0
- package/docs/content/docs/sdk/meta.json +2 -0
- package/docs/content/docs/sdk/slackbot.mdx +576 -0
- package/e2e/README.md +1 -1
- package/e2e/config.ts +9 -4
- package/examples/discordbot-listen.ts +65 -0
- package/examples/slackbot-listen.ts +65 -0
- package/package.json +14 -1
- package/skills/agent-channeltalk/SKILL.md +5 -1
- package/skills/agent-channeltalk/references/authentication.md +5 -1
- package/skills/agent-channeltalkbot/SKILL.md +17 -3
- package/skills/agent-channeltalkbot/references/authentication.md +7 -5
- package/skills/agent-discord/SKILL.md +5 -1
- package/skills/agent-discord/references/authentication.md +7 -1
- package/skills/agent-discordbot/SKILL.md +13 -2
- package/skills/agent-discordbot/references/common-patterns.md +1 -1
- package/skills/agent-instagram/SKILL.md +7 -1
- package/skills/agent-instagram/references/authentication.md +6 -0
- package/skills/agent-kakaotalk/SKILL.md +1 -1
- package/skills/agent-line/SKILL.md +1 -1
- package/skills/agent-slack/SKILL.md +5 -1
- package/skills/agent-slack/references/authentication.md +7 -1
- package/skills/agent-slackbot/SKILL.md +56 -4
- package/skills/agent-slackbot/references/authentication.md +4 -0
- package/skills/agent-teams/SKILL.md +5 -1
- package/skills/agent-teams/references/authentication.md +7 -1
- package/skills/agent-telegram/SKILL.md +1 -1
- package/skills/agent-webex/SKILL.md +7 -1
- package/skills/agent-webex/references/authentication.md +6 -0
- package/skills/agent-wechatbot/SKILL.md +16 -1
- package/skills/agent-wechatbot/references/authentication.md +219 -0
- package/skills/agent-wechatbot/references/common-patterns.md +358 -0
- package/skills/agent-wechatbot/templates/account-summary.sh +122 -0
- package/skills/agent-wechatbot/templates/post-message.sh +122 -0
- package/skills/agent-wechatbot/templates/send-template.sh +152 -0
- package/skills/agent-whatsapp/SKILL.md +1 -1
- package/skills/agent-whatsappbot/SKILL.md +30 -1
- package/src/platforms/channeltalk/commands/auth.test.ts +15 -3
- package/src/platforms/channeltalk/commands/auth.ts +15 -5
- package/src/platforms/channeltalk/token-extractor.ts +24 -5
- package/src/platforms/channeltalkbot/cli.ts +9 -0
- package/src/platforms/channeltalkbot/commands/auth.ts +1 -5
- package/src/platforms/channeltalkbot/commands/bot.ts +1 -6
- package/src/platforms/channeltalkbot/commands/chat.ts +1 -6
- package/src/platforms/channeltalkbot/commands/group.ts +1 -6
- package/src/platforms/channeltalkbot/commands/manager.ts +1 -6
- package/src/platforms/channeltalkbot/commands/message.ts +1 -6
- package/src/platforms/channeltalkbot/commands/whoami.test.ts +2 -0
- package/src/platforms/channeltalkbot/commands/whoami.ts +1 -6
- package/src/platforms/channeltalkbot/credential-manager.test.ts +96 -2
- package/src/platforms/channeltalkbot/credential-manager.ts +37 -4
- package/src/platforms/discord/commands/auth.ts +13 -2
- package/src/platforms/discord/listener.test.ts +59 -1
- package/src/platforms/discord/listener.ts +43 -19
- package/src/platforms/discord/token-extractor.ts +30 -6
- package/src/platforms/discordbot/cli.ts +10 -0
- package/src/platforms/discordbot/client.ts +4 -0
- package/src/platforms/discordbot/commands/auth.ts +1 -5
- package/src/platforms/discordbot/commands/message.ts +1 -6
- package/src/platforms/discordbot/commands/server.ts +1 -5
- package/src/platforms/discordbot/commands/whoami.ts +1 -6
- package/src/platforms/discordbot/index.test.ts +82 -0
- package/src/platforms/discordbot/index.ts +27 -9
- package/src/platforms/discordbot/listener.test.ts +1002 -0
- package/src/platforms/discordbot/listener.ts +321 -0
- package/src/platforms/discordbot/types.ts +163 -0
- package/src/platforms/instagram/commands/auth.ts +9 -1
- package/src/platforms/instagram/token-extractor.ts +13 -1
- package/src/platforms/slack/commands/auth.ts +11 -2
- package/src/platforms/slack/token-extractor.test.ts +96 -0
- package/src/platforms/slack/token-extractor.ts +76 -13
- package/src/platforms/slackbot/cli.ts +13 -1
- package/src/platforms/slackbot/client.test.ts +274 -0
- package/src/platforms/slackbot/client.ts +130 -2
- package/src/platforms/slackbot/commands/auth.ts +1 -5
- package/src/platforms/slackbot/commands/file.test.ts +201 -0
- package/src/platforms/slackbot/commands/file.ts +212 -0
- package/src/platforms/slackbot/commands/index.ts +1 -0
- package/src/platforms/slackbot/commands/message.ts +22 -0
- package/src/platforms/slackbot/commands/whoami.ts +1 -6
- package/src/platforms/slackbot/credential-manager.test.ts +62 -2
- package/src/platforms/slackbot/credential-manager.ts +32 -2
- package/src/platforms/slackbot/index.test.ts +59 -0
- package/src/platforms/slackbot/index.ts +31 -7
- package/src/platforms/slackbot/listener.test.ts +1012 -0
- package/src/platforms/slackbot/listener.ts +362 -0
- package/src/platforms/slackbot/types.ts +224 -1
- package/src/platforms/teams/commands/auth.test.ts +1 -1
- package/src/platforms/teams/commands/auth.ts +66 -7
- package/src/platforms/teams/ensure-auth.test.ts +56 -5
- package/src/platforms/teams/ensure-auth.ts +39 -11
- package/src/platforms/teams/token-extractor.test.ts +146 -24
- package/src/platforms/teams/token-extractor.ts +87 -29
- package/src/platforms/webex/commands/auth.ts +13 -2
- package/src/platforms/webex/token-extractor.ts +25 -3
- package/src/platforms/wechatbot/cli.ts +9 -0
- package/src/platforms/wechatbot/commands/auth.ts +1 -5
- package/src/platforms/wechatbot/commands/message.ts +1 -6
- package/src/platforms/wechatbot/commands/template.ts +1 -6
- package/src/platforms/wechatbot/commands/user.ts +1 -6
- package/src/platforms/wechatbot/commands/whoami.ts +1 -6
- package/src/platforms/whatsappbot/cli.ts +9 -0
- package/src/platforms/whatsappbot/commands/auth.ts +1 -5
- package/src/platforms/whatsappbot/commands/message.ts +1 -6
- package/src/platforms/whatsappbot/commands/template.ts +1 -6
- package/src/platforms/whatsappbot/commands/whoami.ts +1 -6
- package/src/shared/chromium/browsers.test.ts +80 -0
- package/src/shared/chromium/browsers.ts +72 -3
- package/src/shared/chromium/cli-options.test.ts +22 -0
- package/src/shared/chromium/cli-options.ts +12 -0
- package/src/shared/chromium/index.ts +3 -0
- package/src/shared/utils/cli-output.test.ts +57 -0
- package/src/shared/utils/cli-output.ts +8 -0
- package/src/tui/app.ts +129 -20
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-messenger",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.11.0",
|
|
4
4
|
"description": "Messaging platform interaction skills for AI agents. Interact with Slack, Discord, Microsoft Teams, Webex, Telegram, 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/.env.template
CHANGED
|
@@ -49,4 +49,7 @@ E2E_KAKAOTALK_CHAT_ID=
|
|
|
49
49
|
E2E_CHANNEL_WORKSPACE_ID=
|
|
50
50
|
|
|
51
51
|
# Channel Talk Bot
|
|
52
|
-
|
|
52
|
+
# Preferred: E2E_CHANNELTALKBOT_*. Legacy E2E_CHANNELBOT_* still accepted as fallback.
|
|
53
|
+
E2E_CHANNELTALKBOT_WORKSPACE_ID=
|
|
54
|
+
E2E_CHANNELTALKBOT_ACCESS_KEY=
|
|
55
|
+
E2E_CHANNELTALKBOT_ACCESS_SECRET=
|
package/README.md
CHANGED
|
@@ -39,9 +39,9 @@ One CLI for Slack, Discord, Teams, Webex, Telegram, WhatsApp, LINE, Instagram, K
|
|
|
39
39
|
|
|
40
40
|
Every platform gates API access behind OAuth apps that need admin approval — days of waiting just to send a message. And even then, your agent is a **bot**, not you. Different name, different permissions, different context.
|
|
41
41
|
|
|
42
|
-
Agent Messenger reads session tokens from your Slack, Discord, Teams, KakaoTalk, or Channel Talk desktop app — zero config. If the desktop app isn't installed, it falls back to extracting from Chromium browsers. Webex and Instagram tokens are extracted directly from browsers. Telegram authenticates with a one-time phone code, and WhatsApp with a QR code or pairing code. Either way, your agent operates **as you** — same name, same permissions, same context. Bot tokens are fully supported too for server-side and CI/CD use cases.
|
|
42
|
+
Agent Messenger reads session tokens from your Slack, Discord, Teams, KakaoTalk, or Channel Talk desktop app — zero config. If the desktop app isn't installed, it falls back to extracting from Chromium browsers, with `auth extract --browser-profile <path>` for custom Chromium profile locations. Webex and Instagram tokens are extracted directly from browsers. Telegram authenticates with a one-time phone code, and WhatsApp with a QR code or pairing code. Either way, your agent operates **as you** — same name, same permissions, same context. Bot tokens are fully supported too for server-side and CI/CD use cases.
|
|
43
43
|
|
|
44
|
-
- **Auto-Extract Auth** — Reads tokens from Slack, Discord, Teams, KakaoTalk, and Channel Talk desktop apps, with browser fallback
|
|
44
|
+
- **Auto-Extract Auth** — Reads tokens from Slack, Discord, Teams, KakaoTalk, and Channel Talk desktop apps, with browser fallback and custom Chromium profile paths via `--browser-profile`. Webex and Instagram tokens extracted from Chromium browsers. Telegram and WhatsApp authenticate with a one-time code — still under a minute
|
|
45
45
|
- **Act As Yourself** — Extracts your user session — not a bot token. Your agent sends messages, reacts, and searches as you. Need bot mode? Bot CLIs are included too
|
|
46
46
|
- **One Interface** — Consistent command style across 7 platforms for supported actions (e.g. message send, message search, channel list, snapshot). Learn once
|
|
47
47
|
- **Agent-Native Output** — JSON by default for LLM tool use. `--pretty` for human-readable. Structured output your agent can parse and act on
|
|
@@ -225,6 +225,56 @@ listener.on('message', (event) => {
|
|
|
225
225
|
await listener.start()
|
|
226
226
|
```
|
|
227
227
|
|
|
228
|
+
### Real-time Events (Discord Bot)
|
|
229
|
+
|
|
230
|
+
Stream messages, reactions, and slash command interactions directly from Discord's Gateway WebSocket — no public HTTP endpoint required.
|
|
231
|
+
|
|
232
|
+
```typescript
|
|
233
|
+
import { DiscordBotClient, DiscordBotListener, DiscordIntent } from 'agent-messenger/discordbot'
|
|
234
|
+
|
|
235
|
+
const client = await new DiscordBotClient().login({ token: 'YOUR_BOT_TOKEN' })
|
|
236
|
+
const listener = new DiscordBotListener(client, {
|
|
237
|
+
// Privileged intents (MessageContent, GuildMembers, GuildPresences) must be enabled
|
|
238
|
+
// in the Discord Developer Portal before they can be used.
|
|
239
|
+
intents: DiscordIntent.Guilds | DiscordIntent.GuildMessages | DiscordIntent.MessageContent,
|
|
240
|
+
})
|
|
241
|
+
|
|
242
|
+
listener.on('message_create', (event) => {
|
|
243
|
+
console.log(`New message in ${event.channel_id}: ${event.content}`)
|
|
244
|
+
})
|
|
245
|
+
|
|
246
|
+
listener.on('interaction_create', (event) => {
|
|
247
|
+
const name = (event.data as { name?: string } | undefined)?.name
|
|
248
|
+
console.log(`Slash command received: ${name}`)
|
|
249
|
+
})
|
|
250
|
+
|
|
251
|
+
await listener.start()
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
### Real-time Events (Slack Bot)
|
|
255
|
+
|
|
256
|
+
Stream Events API events, slash commands, and interactive components over Slack's Socket Mode WebSocket — no public HTTP endpoint required. Requires an app-level token (`xapp-...`) with the `connections:write` scope, separate from your bot token.
|
|
257
|
+
|
|
258
|
+
```typescript
|
|
259
|
+
import { SlackBotClient, SlackBotListener } from 'agent-messenger/slackbot'
|
|
260
|
+
|
|
261
|
+
const client = await new SlackBotClient().login({ token: 'xoxb-...' })
|
|
262
|
+
const listener = new SlackBotListener(client, {
|
|
263
|
+
appToken: process.env.SLACK_APP_TOKEN!, // xapp-...
|
|
264
|
+
})
|
|
265
|
+
|
|
266
|
+
listener.on('message', ({ ack, event }) => {
|
|
267
|
+
ack()
|
|
268
|
+
console.log(`New message in ${event.channel}: ${event.text}`)
|
|
269
|
+
})
|
|
270
|
+
|
|
271
|
+
listener.on('slash_commands', ({ ack, body }) => {
|
|
272
|
+
ack({ text: `Got \`${body.command} ${body.text}\`` })
|
|
273
|
+
})
|
|
274
|
+
|
|
275
|
+
await listener.start()
|
|
276
|
+
```
|
|
277
|
+
|
|
228
278
|
## TUI (Experimental)
|
|
229
279
|
|
|
230
280
|
A unified terminal interface for all your messaging platforms in one screen. Navigate between Slack, Discord, Teams, Webex, Telegram, WhatsApp, LINE, Instagram, KakaoTalk, and Channel Talk — all from your terminal.
|
|
@@ -247,31 +297,31 @@ See the [TUI docs](https://agent-messenger.dev/docs/tui) for keybindings, archit
|
|
|
247
297
|
|
|
248
298
|
## Supported Platforms
|
|
249
299
|
|
|
250
|
-
| Feature | Slack | Discord | Teams | Webex | Telegram | WhatsApp | LINE | Instagram | KakaoTalk | Channel Talk (beta) |
|
|
251
|
-
| -------------------------- | :---: | :-----: | :---: | :---: | :------: | :------: | :---: | :-------: | :-------: | :-----------------: |
|
|
252
|
-
| Auto credential extraction | ✅ | ✅ | ✅ | ✅ | — | — | — | ✅ | ✅ | ✅ |
|
|
253
|
-
| Send & list messages | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
254
|
-
| Direct messages | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
255
|
-
| Search messages | ✅ | ✅ | — | — | — | ✅ | — | ✅ | — | ✅ |
|
|
256
|
-
| Threads | ✅ | ✅ | — | — | — | — | — | — | — | — |
|
|
257
|
-
| Channels & Users | ✅ | ✅ | ✅ | ✅ | partial | — | ✅ | — | — | ✅ |
|
|
258
|
-
| Reactions | ✅ | ✅ | ✅ | — | — | ✅ | — | — | — | — |
|
|
259
|
-
| File uploads | ✅ | ✅ | ✅ | — | — | — | — | — | — | — |
|
|
260
|
-
| File downloads | ✅ | — | — | — | — | — | — | — | — | — |
|
|
261
|
-
| Workspace snapshots | ✅ | ✅ | ✅ | ✅ | — | — | — | — | — | ✅ |
|
|
262
|
-
| Multi-workspace / account | ✅ | ✅ | ✅ | — | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
263
|
-
| Activity feed | ✅ | — | — | — | — | — | — | — | — | — |
|
|
264
|
-
| Drafts | ✅ | — | — | — | — | — | — | — | — | — |
|
|
265
|
-
| Saved items | ✅ | — | — | — | — | — | — | — | — | — |
|
|
266
|
-
| Unread messages | ✅ | — | — | — | — | — | — | — | — | — |
|
|
267
|
-
| Sidebar sections | ✅ | — | — | — | — | — | — | — | — | — |
|
|
268
|
-
| Pins & bookmarks | ✅ | — | — | — | — | — | — | — | — | — |
|
|
269
|
-
| Scheduled messages | ✅ | — | — | — | — | — | — | — | — | — |
|
|
270
|
-
| Channel management | ✅ | — | — | — | — | — | — | — | — | — |
|
|
271
|
-
| Reminders | ✅ | — | — | — | — | — | — | — | — | — |
|
|
272
|
-
| User groups | ✅ | — | — | — | — | — | — | — | — | — |
|
|
273
|
-
| Real-time events (SDK) | ✅ | ✅ | — | — | — | — | ✅ | ✅ | ✅ | — |
|
|
274
|
-
| Bot support | ✅ | ✅ | — | — | — | ✅ | — | — | — | ✅ |
|
|
300
|
+
| Feature | Slack | Discord | Teams | Webex | Telegram | WhatsApp | LINE | WeChat | Instagram | KakaoTalk | Channel Talk (beta) |
|
|
301
|
+
| -------------------------- | :---: | :-----: | :---: | :---: | :------: | :------: | :---: | :----: | :-------: | :-------: | :-----------------: |
|
|
302
|
+
| Auto credential extraction | ✅ | ✅ | ✅ | ✅ | — | — | — | — | ✅ | ✅ | ✅ |
|
|
303
|
+
| Send & list messages | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | — | ✅ | ✅ | ✅ |
|
|
304
|
+
| Direct messages | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
305
|
+
| Search messages | ✅ | ✅ | — | — | — | ✅ | — | — | ✅ | — | ✅ |
|
|
306
|
+
| Threads | ✅ | ✅ | — | — | — | — | — | — | — | — | — |
|
|
307
|
+
| Channels & Users | ✅ | ✅ | ✅ | ✅ | partial | — | ✅ | ✅ | — | — | ✅ |
|
|
308
|
+
| Reactions | ✅ | ✅ | ✅ | — | — | ✅ | — | — | — | — | — |
|
|
309
|
+
| File uploads | ✅ | ✅ | ✅ | — | — | — | — | — | — | — | — |
|
|
310
|
+
| File downloads | ✅ | — | — | — | — | — | — | — | — | — | — |
|
|
311
|
+
| Workspace snapshots | ✅ | ✅ | ✅ | ✅ | — | — | — | — | — | — | ✅ |
|
|
312
|
+
| Multi-workspace / account | ✅ | ✅ | ✅ | — | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
313
|
+
| Activity feed | ✅ | — | — | — | — | — | — | — | — | — | — |
|
|
314
|
+
| Drafts | ✅ | — | — | — | — | — | — | — | — | — | — |
|
|
315
|
+
| Saved items | ✅ | — | — | — | — | — | — | — | — | — | — |
|
|
316
|
+
| Unread messages | ✅ | — | — | — | — | — | — | — | — | — | — |
|
|
317
|
+
| Sidebar sections | ✅ | — | — | — | — | — | — | — | — | — | — |
|
|
318
|
+
| Pins & bookmarks | ✅ | — | — | — | — | — | — | — | — | — | — |
|
|
319
|
+
| Scheduled messages | ✅ | — | — | — | — | — | — | — | — | — | — |
|
|
320
|
+
| Channel management | ✅ | — | — | — | — | — | — | — | — | — | — |
|
|
321
|
+
| Reminders | ✅ | — | — | — | — | — | — | — | — | — | — |
|
|
322
|
+
| User groups | ✅ | — | — | — | — | — | — | — | — | — | — |
|
|
323
|
+
| Real-time events (SDK) | ✅ | ✅ | — | — | — | — | ✅ | — | ✅ | ✅ | — |
|
|
324
|
+
| Bot support | ✅ | ✅ | — | — | — | ✅ | — | ✅ | — | — | ✅ |
|
|
275
325
|
|
|
276
326
|
> ⚠️ **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.
|
|
277
327
|
|
package/bun.lock
CHANGED
|
@@ -13,9 +13,15 @@
|
|
|
13
13
|
"bson": "^7.2.0",
|
|
14
14
|
"classic-level": "^3.0.0",
|
|
15
15
|
"commander": "^11.1.0",
|
|
16
|
+
"crypto-js": "^4.2.0",
|
|
17
|
+
"curve25519-js": "^0.0.4",
|
|
18
|
+
"node-bignumber": "^1.2.2",
|
|
19
|
+
"node-int64": "^0.4.0",
|
|
16
20
|
"node-jose": "^2.2.0",
|
|
17
21
|
"pino": "^10.3.1",
|
|
18
22
|
"qrcode": "^1.5.4",
|
|
23
|
+
"thrift": "^0.20.0",
|
|
24
|
+
"tweetnacl": "^1.0.3",
|
|
19
25
|
"ws": "^8.19.0",
|
|
20
26
|
"zod": "^4.3.6",
|
|
21
27
|
},
|
|
@@ -331,6 +337,8 @@
|
|
|
331
337
|
|
|
332
338
|
"array-union": ["array-union@2.1.0", "", {}, "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw=="],
|
|
333
339
|
|
|
340
|
+
"async-limiter": ["async-limiter@1.0.1", "", {}, "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ=="],
|
|
341
|
+
|
|
334
342
|
"async-mutex": ["async-mutex@0.5.0", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-1A94B18jkJ3DYq284ohPxoXbfTA5HsQ7/Mf4DEhcyLx3Bz27Rh59iScbB6EPiP+B+joue6YCxcMXSbFC1tZKwA=="],
|
|
335
343
|
|
|
336
344
|
"asynckit": ["asynckit@0.4.0", "", {}, "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="],
|
|
@@ -355,6 +363,8 @@
|
|
|
355
363
|
|
|
356
364
|
"braces": ["braces@3.0.3", "", { "dependencies": { "fill-range": "^7.1.1" } }, "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA=="],
|
|
357
365
|
|
|
366
|
+
"browser-or-node": ["browser-or-node@1.3.0", "", {}, "sha512-0F2z/VSnLbmEeBcUrSuDH5l0HxTXdQQzLjkmBR4cYfvg1zJrKSlmIZFqyFR8oX0NrwPhy3c3HQ6i3OxMbew4Tg=="],
|
|
367
|
+
|
|
358
368
|
"bson": ["bson@7.2.0", "", {}, "sha512-YCEo7KjMlbNlyHhz7zAZNDpIpQbd+wOEHJYezv0nMYTn4x31eIUM2yomNNubclAt63dObUzKHWsBLJ9QcZNSnQ=="],
|
|
359
369
|
|
|
360
370
|
"buffer": ["buffer@6.0.3", "", { "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" } }, "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA=="],
|
|
@@ -385,6 +395,8 @@
|
|
|
385
395
|
|
|
386
396
|
"content-type": ["content-type@1.0.5", "", {}, "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA=="],
|
|
387
397
|
|
|
398
|
+
"crypto-js": ["crypto-js@4.2.0", "", {}, "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q=="],
|
|
399
|
+
|
|
388
400
|
"curve25519-js": ["curve25519-js@0.0.4", "", {}, "sha512-axn2UMEnkhyDUPWOwVKBMVIzSQy2ejH2xRGy1wq81dqRwApXfIzfbE3hIX0ZRFBIihf/KDqK158DLwESu4AK1w=="],
|
|
389
401
|
|
|
390
402
|
"debug": ["debug@4.4.3", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="],
|
|
@@ -497,6 +509,8 @@
|
|
|
497
509
|
|
|
498
510
|
"is-stream": ["is-stream@1.1.0", "", {}, "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ=="],
|
|
499
511
|
|
|
512
|
+
"isomorphic-ws": ["isomorphic-ws@4.0.1", "", { "peerDependencies": { "ws": "*" } }, "sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w=="],
|
|
513
|
+
|
|
500
514
|
"keyv": ["keyv@5.6.0", "", { "dependencies": { "@keyv/serialize": "^1.1.1" } }, "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw=="],
|
|
501
515
|
|
|
502
516
|
"koffi": ["koffi@2.15.2", "", {}, "sha512-r9tjJLVRSOhCRWdVyQlF3/Ugzeg13jlzS4czS82MAgLff4W+BcYOW7g8Y62t9O5JYjYOLAjAovAZDNlDfZNu+g=="],
|
|
@@ -549,10 +563,14 @@
|
|
|
549
563
|
|
|
550
564
|
"node-abi": ["node-abi@3.89.0", "", { "dependencies": { "semver": "^7.3.5" } }, "sha512-6u9UwL0HlAl21+agMN3YAMXcKByMqwGx+pq+P76vii5f7hTPtKDp08/H9py6DY+cfDw7kQNTGEj/rly3IgbNQA=="],
|
|
551
565
|
|
|
566
|
+
"node-bignumber": ["node-bignumber@1.2.2", "", {}, "sha512-VoTZHmdFQpZH1+q1dz2qcHNCwTWsJg2T3PYwlAyDNFOfVhSYUKQBLFcCpCud+wJBGgCttGavZILaIggDIKqEQQ=="],
|
|
567
|
+
|
|
552
568
|
"node-forge": ["node-forge@1.4.0", "", {}, "sha512-LarFH0+6VfriEhqMMcLX2F7SwSXeWwnEAJEsYm5QKWchiVYVvJyV9v7UDvUv+w5HO23ZpQTXDv/GxdDdMyOuoQ=="],
|
|
553
569
|
|
|
554
570
|
"node-gyp-build": ["node-gyp-build@4.8.4", "", { "bin": { "node-gyp-build": "bin.js", "node-gyp-build-optional": "optional.js", "node-gyp-build-test": "build-test.js" } }, "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ=="],
|
|
555
571
|
|
|
572
|
+
"node-int64": ["node-int64@0.4.0", "", {}, "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw=="],
|
|
573
|
+
|
|
556
574
|
"node-jose": ["node-jose@2.2.0", "", { "dependencies": { "base64url": "^3.0.1", "buffer": "^6.0.3", "es6-promise": "^4.2.8", "lodash": "^4.17.21", "long": "^5.2.0", "node-forge": "^1.2.1", "pako": "^2.0.4", "process": "^0.11.10", "uuid": "^9.0.0" } }, "sha512-XPCvJRr94SjLrSIm4pbYHKLEaOsDvJCpyFw/6V/KK/IXmyZ6SFBzAUDO9HQf4DB/nTEFcRGH87mNciOP23kFjw=="],
|
|
557
575
|
|
|
558
576
|
"normalize-path": ["normalize-path@3.0.0", "", {}, "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="],
|
|
@@ -611,6 +629,8 @@
|
|
|
611
629
|
|
|
612
630
|
"pump": ["pump@3.0.4", "", { "dependencies": { "end-of-stream": "^1.1.0", "once": "^1.3.1" } }, "sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA=="],
|
|
613
631
|
|
|
632
|
+
"q": ["q@1.5.1", "", {}, "sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw=="],
|
|
633
|
+
|
|
614
634
|
"qified": ["qified@0.9.1", "", { "dependencies": { "hookified": "^2.1.1" } }, "sha512-n7mar4T0xQ+39dE2vGTAlbxUEpndwPANH0kDef1/MYsB8Bba9wshkybIRx74qgcvKQPEWErf9AqAdYjhzY2Ilg=="],
|
|
615
635
|
|
|
616
636
|
"qrcode": ["qrcode@1.5.4", "", { "dependencies": { "dijkstrajs": "^1.0.1", "pngjs": "^5.0.0", "yargs": "^15.3.1" }, "bin": { "qrcode": "bin/qrcode" } }, "sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg=="],
|
|
@@ -677,6 +697,8 @@
|
|
|
677
697
|
|
|
678
698
|
"thread-stream": ["thread-stream@4.0.0", "", { "dependencies": { "real-require": "^0.2.0" } }, "sha512-4iMVL6HAINXWf1ZKZjIPcz5wYaOdPhtO8ATvZ+Xqp3BTdaqtAwQkNmKORqcIo5YkQqGXq5cwfswDwMqqQNrpJA=="],
|
|
679
699
|
|
|
700
|
+
"thrift": ["thrift@0.20.0", "", { "dependencies": { "browser-or-node": "^1.2.1", "isomorphic-ws": "^4.0.1", "node-int64": "^0.4.0", "q": "^1.5.0", "ws": "^5.2.3" } }, "sha512-oSmJTaoIAGolpupVHFfsWcmdEKX81fcDI6ty0hhezzdgZvp0XyXgMe9+1YusI8Ahy0HK4n8jlNrkPjOPeHZjdQ=="],
|
|
701
|
+
|
|
680
702
|
"tinypool": ["tinypool@2.1.0", "", {}, "sha512-Pugqs6M0m7Lv1I7FtxN4aoyToKg1C4tu+/381vH35y8oENM/Ai7f7C4StcoK4/+BSw9ebcS8jRiVrORFKCALLw=="],
|
|
681
703
|
|
|
682
704
|
"to-regex-range": ["to-regex-range@5.0.1", "", { "dependencies": { "is-number": "^7.0.0" } }, "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ=="],
|
|
@@ -691,6 +713,8 @@
|
|
|
691
713
|
|
|
692
714
|
"tunnel-agent": ["tunnel-agent@0.6.0", "", { "dependencies": { "safe-buffer": "^5.0.1" } }, "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w=="],
|
|
693
715
|
|
|
716
|
+
"tweetnacl": ["tweetnacl@1.0.3", "", {}, "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw=="],
|
|
717
|
+
|
|
694
718
|
"typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="],
|
|
695
719
|
|
|
696
720
|
"uint8array-extras": ["uint8array-extras@1.5.0", "", {}, "sha512-rvKSBiC5zqCCiDZ9kAOszZcDvdAHwwIKJG33Ykj43OKcWsnmcBRL09YTU4nOeHZ8Y2a7l1MgTd08SBe9A8Qj6A=="],
|
|
@@ -735,6 +759,8 @@
|
|
|
735
759
|
|
|
736
760
|
"qified/hookified": ["hookified@2.1.1", "", {}, "sha512-AHb76R16GB5EsPBE2J7Ko5kiEyXwviB9P5SMrAKcuAu4vJPZttViAbj9+tZeaQE5zjDme+1vcHP78Yj/WoAveA=="],
|
|
737
761
|
|
|
762
|
+
"thrift/ws": ["ws@5.2.4", "", { "dependencies": { "async-limiter": "~1.0.0" } }, "sha512-fFCejsuC8f9kOSu9FYaOw8CdO68O3h5v0lg4p74o8JqWpwTf9tniOD+nOB78aWoVSS6WptVUmDrp/KPsMVBWFQ=="],
|
|
763
|
+
|
|
738
764
|
"tsc-alias/commander": ["commander@9.5.0", "", {}, "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ=="],
|
|
739
765
|
|
|
740
766
|
"@whiskeysockets/baileys/@hapi/boom/@hapi/hoek": ["@hapi/hoek@9.3.0", "", {}, "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ=="],
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-messenger",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.11.0",
|
|
4
4
|
"description": "Multi-platform messaging CLI for AI agents (Slack, Discord, Teams, Webex, Telegram, WhatsApp, LINE, Instagram, KakaoTalk, Channel Talk)",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -36,6 +36,9 @@
|
|
|
36
36
|
"discord": [
|
|
37
37
|
"./src/platforms/discord/index.ts"
|
|
38
38
|
],
|
|
39
|
+
"discordbot": [
|
|
40
|
+
"./src/platforms/discordbot/index.ts"
|
|
41
|
+
],
|
|
39
42
|
"teams": [
|
|
40
43
|
"./src/platforms/teams/index.ts"
|
|
41
44
|
],
|
|
@@ -82,6 +85,10 @@
|
|
|
82
85
|
"types": "./src/platforms/discord/index.ts",
|
|
83
86
|
"default": "./src/platforms/discord/index.ts"
|
|
84
87
|
},
|
|
88
|
+
"./discordbot": {
|
|
89
|
+
"types": "./src/platforms/discordbot/index.ts",
|
|
90
|
+
"default": "./src/platforms/discordbot/index.ts"
|
|
91
|
+
},
|
|
85
92
|
"./teams": {
|
|
86
93
|
"types": "./src/platforms/teams/index.ts",
|
|
87
94
|
"default": "./src/platforms/teams/index.ts"
|
|
@@ -146,9 +153,15 @@
|
|
|
146
153
|
"bson": "^7.2.0",
|
|
147
154
|
"classic-level": "^3.0.0",
|
|
148
155
|
"commander": "^11.1.0",
|
|
156
|
+
"crypto-js": "^4.2.0",
|
|
157
|
+
"curve25519-js": "^0.0.4",
|
|
158
|
+
"node-bignumber": "^1.2.2",
|
|
159
|
+
"node-int64": "^0.4.0",
|
|
149
160
|
"node-jose": "^2.2.0",
|
|
150
161
|
"pino": "^10.3.1",
|
|
151
162
|
"qrcode": "^1.5.4",
|
|
163
|
+
"thrift": "^0.20.0",
|
|
164
|
+
"tweetnacl": "^1.0.3",
|
|
152
165
|
"ws": "^8.19.0",
|
|
153
166
|
"zod": "^4.3.6"
|
|
154
167
|
},
|
|
@@ -5,6 +5,7 @@ import { ChannelTokenExtractor } from '../token-extractor.js';
|
|
|
5
5
|
interface ActionOptions {
|
|
6
6
|
workspace?: string;
|
|
7
7
|
pretty?: boolean;
|
|
8
|
+
browserProfile?: string[];
|
|
8
9
|
_credManager?: ChannelCredentialManager;
|
|
9
10
|
}
|
|
10
11
|
interface WorkspaceSummary {
|
|
@@ -40,7 +41,7 @@ type ChannelTokenExtractorLike = Pick<ChannelTokenExtractor, 'extract'>;
|
|
|
40
41
|
export declare function setChannelAuthCommandDependenciesForTesting(dependencies: {
|
|
41
42
|
createChannelClient?: (accountCookie: string, sessionCookie?: string) => ChannelClientLike | Promise<ChannelClientLike>;
|
|
42
43
|
createCredentialManager?: () => ChannelCredentialManagerLike;
|
|
43
|
-
createTokenExtractor?: () => ChannelTokenExtractorLike;
|
|
44
|
+
createTokenExtractor?: (browserProfile?: string[]) => ChannelTokenExtractorLike;
|
|
44
45
|
}): void;
|
|
45
46
|
export declare function resetChannelAuthCommandDependenciesForTesting(): void;
|
|
46
47
|
export declare function extractAction(options?: ActionOptions): Promise<ExtractResult | ErrorResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/channeltalk/commands/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/channeltalk/commands/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { Command } from 'commander';
|
|
2
|
+
import { collectBrowserProfileOption } from '../../../shared/chromium/index.js';
|
|
2
3
|
import { formatOutput } from '../../../shared/utils/output.js';
|
|
3
4
|
import { ChannelClient } from '../client.js';
|
|
4
5
|
import { ChannelCredentialManager } from '../credential-manager.js';
|
|
5
6
|
import { ChannelTokenExtractor } from '../token-extractor.js';
|
|
6
7
|
let createChannelClient = async (accountCookie, sessionCookie) => new ChannelClient().login({ accountCookie, sessionCookie });
|
|
7
8
|
let createCredentialManager = () => new ChannelCredentialManager();
|
|
8
|
-
let createTokenExtractor = () => new ChannelTokenExtractor();
|
|
9
|
+
let createTokenExtractor = (browserProfile) => new ChannelTokenExtractor(undefined, browserProfile);
|
|
9
10
|
export function setChannelAuthCommandDependenciesForTesting(dependencies) {
|
|
10
11
|
if (dependencies.createChannelClient)
|
|
11
12
|
createChannelClient = dependencies.createChannelClient;
|
|
@@ -17,12 +18,12 @@ export function setChannelAuthCommandDependenciesForTesting(dependencies) {
|
|
|
17
18
|
export function resetChannelAuthCommandDependenciesForTesting() {
|
|
18
19
|
createChannelClient = async (accountCookie, sessionCookie) => new ChannelClient().login({ accountCookie, sessionCookie });
|
|
19
20
|
createCredentialManager = () => new ChannelCredentialManager();
|
|
20
|
-
createTokenExtractor = () => new ChannelTokenExtractor();
|
|
21
|
+
createTokenExtractor = (browserProfile) => new ChannelTokenExtractor(undefined, browserProfile);
|
|
21
22
|
}
|
|
22
23
|
export async function extractAction(options = {}) {
|
|
23
24
|
try {
|
|
24
25
|
const credManager = options._credManager ?? createCredentialManager();
|
|
25
|
-
const extractor = createTokenExtractor();
|
|
26
|
+
const extractor = createTokenExtractor(options.browserProfile);
|
|
26
27
|
const extracted = await extractor.extract();
|
|
27
28
|
if (extracted.length === 0) {
|
|
28
29
|
return {
|
|
@@ -180,6 +181,7 @@ export function createAuthCommand() {
|
|
|
180
181
|
.addCommand(new Command('extract')
|
|
181
182
|
.description('Extract cookies from Channel Talk desktop app or a supported Chromium browser')
|
|
182
183
|
.option('--pretty', 'Pretty print JSON output')
|
|
184
|
+
.option('--browser-profile <path>', 'Additional Chromium profile/user-data directory to scan (repeatable, comma-separated supported)', collectBrowserProfileOption, [])
|
|
183
185
|
.action(async (opts) => {
|
|
184
186
|
cliOutput(await extractAction(opts), opts.pretty);
|
|
185
187
|
}))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../src/platforms/channeltalk/commands/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../src/platforms/channeltalk/commands/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,8 @@ export declare class ChannelTokenExtractor {
|
|
|
4
4
|
private platform;
|
|
5
5
|
private decryptor;
|
|
6
6
|
private cookieReader;
|
|
7
|
-
|
|
7
|
+
private customBrowserProfileDirs;
|
|
8
|
+
constructor(platform?: NodeJS.Platform, customBrowserProfileDirs?: string[]);
|
|
8
9
|
getAppDataDir(): string | null;
|
|
9
10
|
getCookiesPath(): string | null;
|
|
10
11
|
getBrowserCookiesPaths(): string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-extractor.d.ts","sourceRoot":"","sources":["../../../../src/platforms/channeltalk/token-extractor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"token-extractor.d.ts","sourceRoot":"","sources":["../../../../src/platforms/channeltalk/token-extractor.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAExD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAUpD,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,wBAAwB,CAAU;gBAE9B,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,EAAE,wBAAwB,CAAC,EAAE,MAAM,EAAE;IAO3E,aAAa,IAAI,MAAM,GAAG,IAAI;IA6B9B,cAAc,IAAI,MAAM,GAAG,IAAI;IAgB/B,sBAAsB,IAAI,MAAM,EAAE;IAqBlC,mBAAmB,IAAI,eAAe,EAAE;IAIlC,OAAO,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC;IA+BjD,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIlD,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,oBAAoB;IAiC5B,OAAO,CAAC,iBAAiB;YAOX,0BAA0B;YAa1B,qBAAqB;YAkBrB,4BAA4B;IAa1C,OAAO,CAAC,qBAAqB;IAkB7B,OAAO,CAAC,2BAA2B;IAcnC,OAAO,CAAC,qBAAqB;CAgB9B"}
|
|
@@ -3,7 +3,7 @@ import { pbkdf2Sync } from 'node:crypto';
|
|
|
3
3
|
import { existsSync } from 'node:fs';
|
|
4
4
|
import { homedir } from 'node:os';
|
|
5
5
|
import { join } from 'node:path';
|
|
6
|
-
import { BROWSER_KEYCHAIN_VARIANTS, CHROMIUM_BROWSERS, ChromiumCookieDecryptor, ChromiumCookieReader, discoverBrowserProfileDirs, findLocalStatePath, getBrowserBasePath, } from '../../shared/chromium/index.js';
|
|
6
|
+
import { BROWSER_KEYCHAIN_VARIANTS, CHROMIUM_BROWSERS, ChromiumCookieDecryptor, ChromiumCookieReader, discoverBrowserProfileDirs, findLocalStatePath, getBrowserBasePath, getAgentBrowserProfileDirs, } from '../../shared/chromium/index.js';
|
|
7
7
|
const COOKIE_QUERY = `
|
|
8
8
|
SELECT name, value, encrypted_value FROM cookies
|
|
9
9
|
WHERE name IN ('x-account', 'ch-session-1', 'ch-session')
|
|
@@ -13,8 +13,10 @@ export class ChannelTokenExtractor {
|
|
|
13
13
|
platform;
|
|
14
14
|
decryptor;
|
|
15
15
|
cookieReader;
|
|
16
|
-
|
|
16
|
+
customBrowserProfileDirs;
|
|
17
|
+
constructor(platform, customBrowserProfileDirs) {
|
|
17
18
|
this.platform = platform ?? process.platform;
|
|
19
|
+
this.customBrowserProfileDirs = customBrowserProfileDirs ?? [];
|
|
18
20
|
this.cookieReader = new ChromiumCookieReader();
|
|
19
21
|
this.decryptor = new ChromiumCookieDecryptor({ platform: this.platform });
|
|
20
22
|
}
|
|
@@ -63,6 +65,10 @@ export class ChannelTokenExtractor {
|
|
|
63
65
|
paths.push(join(profileDir, 'Network', 'Cookies'));
|
|
64
66
|
}
|
|
65
67
|
}
|
|
68
|
+
for (const profileDir of getAgentBrowserProfileDirs({ customProfileDirs: this.customBrowserProfileDirs })) {
|
|
69
|
+
paths.push(join(profileDir, 'Cookies'));
|
|
70
|
+
paths.push(join(profileDir, 'Network', 'Cookies'));
|
|
71
|
+
}
|
|
66
72
|
return paths;
|
|
67
73
|
}
|
|
68
74
|
getKeychainVariants() {
|
|
@@ -71,15 +77,25 @@ export class ChannelTokenExtractor {
|
|
|
71
77
|
async extract() {
|
|
72
78
|
const results = [];
|
|
73
79
|
const seenAccounts = new Set();
|
|
80
|
+
if (this.customBrowserProfileDirs.length > 0) {
|
|
81
|
+
for (const browserResult of await this.extractAllFromBrowserPaths()) {
|
|
82
|
+
if (!seenAccounts.has(browserResult.accountCookie)) {
|
|
83
|
+
seenAccounts.add(browserResult.accountCookie);
|
|
84
|
+
results.push(browserResult);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
74
88
|
const desktopResult = await this.extractFromDesktopApp();
|
|
75
89
|
if (desktopResult && !seenAccounts.has(desktopResult.accountCookie)) {
|
|
76
90
|
seenAccounts.add(desktopResult.accountCookie);
|
|
77
91
|
results.push(desktopResult);
|
|
78
92
|
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
seenAccounts.
|
|
82
|
-
|
|
93
|
+
if (this.customBrowserProfileDirs.length === 0) {
|
|
94
|
+
for (const browserResult of await this.extractAllFromBrowserPaths()) {
|
|
95
|
+
if (!seenAccounts.has(browserResult.accountCookie)) {
|
|
96
|
+
seenAccounts.add(browserResult.accountCookie);
|
|
97
|
+
results.push(browserResult);
|
|
98
|
+
}
|
|
83
99
|
}
|
|
84
100
|
}
|
|
85
101
|
return results;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-extractor.js","sourceRoot":"","sources":["../../../../src/platforms/channeltalk/token-extractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,OAAO,EACL,yBAAyB,EACzB,iBAAiB,EACjB,uBAAuB,EACvB,oBAAoB,EACpB,0BAA0B,EAC1B,kBAAkB,EAClB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"token-extractor.js","sourceRoot":"","sources":["../../../../src/platforms/channeltalk/token-extractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../src/platforms/channeltalkbot/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAcnC,QAAA,MAAM,OAAO,SAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../../src/platforms/channeltalkbot/cli.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAcnC,QAAA,MAAM,OAAO,SAAgB,CAAA;AA8B7B,eAAe,OAAO,CAAA"}
|
|
@@ -9,7 +9,17 @@ program
|
|
|
9
9
|
.version(pkg.version)
|
|
10
10
|
.option('--pretty', 'Pretty-print JSON output')
|
|
11
11
|
.option('--workspace <id>', 'Workspace ID to use')
|
|
12
|
-
.option('--bot <name>', 'Bot name to use for sending messages')
|
|
12
|
+
.option('--bot <name>', 'Bot name to use for sending messages')
|
|
13
|
+
.hook('preAction', (thisCmd, actionCmd) => {
|
|
14
|
+
for (const [key, value] of Object.entries(thisCmd.opts())) {
|
|
15
|
+
if (value === undefined)
|
|
16
|
+
continue;
|
|
17
|
+
const source = actionCmd.getOptionValueSource(key);
|
|
18
|
+
if (source === undefined || source === 'default') {
|
|
19
|
+
actionCmd.setOptionValue(key, value);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
});
|
|
13
23
|
program.addCommand(authCommand);
|
|
14
24
|
program.addCommand(whoamiCommand);
|
|
15
25
|
program.addCommand(messageCommand);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/platforms/channeltalkbot/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,UAAU,EACV,WAAW,EACX,YAAY,EACZ,cAAc,EACd,cAAc,EACd,eAAe,EACf,aAAa,GACd,MAAM,kBAAkB,CAAA;AAEzB,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,sBAAsB,CAAC;KAC5B,WAAW,CAAC,6DAA6D,CAAC;KAC1E,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;KACpB,MAAM,CAAC,UAAU,EAAE,0BAA0B,CAAC;KAC9C,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,cAAc,EAAE,sCAAsC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/platforms/channeltalkbot/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,UAAU,EACV,WAAW,EACX,YAAY,EACZ,cAAc,EACd,cAAc,EACd,eAAe,EACf,aAAa,GACd,MAAM,kBAAkB,CAAA;AAEzB,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,sBAAsB,CAAC;KAC5B,WAAW,CAAC,6DAA6D,CAAC;KAC1E,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;KACpB,MAAM,CAAC,UAAU,EAAE,0BAA0B,CAAC;KAC9C,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC;KACjD,MAAM,CAAC,cAAc,EAAE,sCAAsC,CAAC;KAC9D,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,WAAW,CAAC,CAAA;AAC/B,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;AAChC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;AAClC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;AAC9B,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAA;AAEnC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAEhC,eAAe,OAAO,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/channeltalkbot/commands/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../../src/platforms/channeltalkbot/commands/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMnC,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAA;AAEnE,UAAU,aAAa;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,YAAY,CAAC,EAAE,2BAA2B,CAAA;CAC3C;AAED,UAAU,YAAY;IACpB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,KAAK,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IACzF,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAsB,SAAS,CAC7B,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,YAAY,CAAC,CAoBvB;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAqChF;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAQ/E;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAe9E;AAED,wBAAsB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAkBlG;AAED,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAarG;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAQ3F;AAED,eAAO,MAAM,WAAW,SAkErB,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Command } from 'commander';
|
|
2
|
+
import { cliOutput } from '../../../shared/utils/cli-output.js';
|
|
2
3
|
import { formatOutput } from '../../../shared/utils/output.js';
|
|
3
4
|
import { ChannelBotClient } from '../client.js';
|
|
4
5
|
import { ChannelBotCredentialManager } from '../credential-manager.js';
|
|
@@ -124,11 +125,6 @@ export async function botAction(name, options) {
|
|
|
124
125
|
return { error: error.message };
|
|
125
126
|
}
|
|
126
127
|
}
|
|
127
|
-
function cliOutput(result, pretty, exitOnError = true) {
|
|
128
|
-
console.log(formatOutput(result, pretty));
|
|
129
|
-
if (result.error && exitOnError)
|
|
130
|
-
process.exit(1);
|
|
131
|
-
}
|
|
132
128
|
export const authCommand = new Command('auth')
|
|
133
129
|
.description('Authentication commands')
|
|
134
130
|
.addCommand(new Command('set')
|