agent-messenger 2.10.2 → 2.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +21 -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 +21 -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
|
@@ -54,6 +54,8 @@ oauth_config:
|
|
|
54
54
|
- users:read.email
|
|
55
55
|
- reactions:write
|
|
56
56
|
- reactions:read
|
|
57
|
+
- files:read
|
|
58
|
+
- files:write
|
|
57
59
|
|
|
58
60
|
settings:
|
|
59
61
|
org_deploy_enabled: false
|
|
@@ -108,18 +110,20 @@ agent-slackbot auth remove deploy
|
|
|
108
110
|
|
|
109
111
|
### Scopes Reference
|
|
110
112
|
|
|
111
|
-
| Scope | Used For
|
|
112
|
-
| ------------------ |
|
|
113
|
-
| `chat:write` | Sending and updating messages
|
|
114
|
-
| `channels:history` | Reading public channel messages
|
|
115
|
-
| `channels:read` | Listing public channels
|
|
116
|
-
| `channels:join` | Joining public channels
|
|
117
|
-
| `groups:history` | Reading private channel messages
|
|
118
|
-
| `groups:read` | Listing private channels
|
|
119
|
-
| `users:read` | Listing users
|
|
120
|
-
| `users:read.email` | Reading user emails
|
|
121
|
-
| `reactions:write` | Adding/removing reactions
|
|
122
|
-
| `reactions:read` | Listing reactions
|
|
113
|
+
| Scope | Used For |
|
|
114
|
+
| ------------------ | ------------------------------------ |
|
|
115
|
+
| `chat:write` | Sending and updating messages |
|
|
116
|
+
| `channels:history` | Reading public channel messages |
|
|
117
|
+
| `channels:read` | Listing public channels |
|
|
118
|
+
| `channels:join` | Joining public channels |
|
|
119
|
+
| `groups:history` | Reading private channel messages |
|
|
120
|
+
| `groups:read` | Listing private channels |
|
|
121
|
+
| `users:read` | Listing users |
|
|
122
|
+
| `users:read.email` | Reading user emails |
|
|
123
|
+
| `reactions:write` | Adding/removing reactions |
|
|
124
|
+
| `reactions:read` | Listing reactions |
|
|
125
|
+
| `files:read` | Listing/inspecting/downloading files |
|
|
126
|
+
| `files:write` | Uploading and deleting files |
|
|
123
127
|
|
|
124
128
|
### Environment Variables (CI/CD)
|
|
125
129
|
|
|
@@ -166,8 +170,15 @@ agent-slackbot message update <channel> <ts> <new-text>
|
|
|
166
170
|
|
|
167
171
|
# Delete a message (bot's own messages only)
|
|
168
172
|
agent-slackbot message delete <channel> <ts> --force
|
|
173
|
+
|
|
174
|
+
# Show typing/status indicator in an AI Assistant thread
|
|
175
|
+
agent-slackbot message typing <channel> <thread_ts>
|
|
176
|
+
agent-slackbot message typing C0ACZKTDDC0 1234567890.123456 "is analyzing..."
|
|
177
|
+
agent-slackbot message typing C0ACZKTDDC0 1234567890.123456 "" # clear status
|
|
169
178
|
```
|
|
170
179
|
|
|
180
|
+
`message typing` calls Slack's `assistant.threads.setStatus` API. It only works inside **AI Assistant threads** (not regular channels/DMs) and requires the `chat:write` bot scope. The status auto-clears when your bot posts the next message, or after 2 minutes if no message is sent. Pass an empty string `""` to clear the status manually.
|
|
181
|
+
|
|
171
182
|
### Channel Commands
|
|
172
183
|
|
|
173
184
|
```bash
|
|
@@ -202,18 +213,45 @@ agent-slackbot reaction add C0ACZKTDDC0 1234567890.123456 thumbsup
|
|
|
202
213
|
agent-slackbot reaction remove <channel> <ts> <emoji>
|
|
203
214
|
```
|
|
204
215
|
|
|
216
|
+
### File Commands
|
|
217
|
+
|
|
218
|
+
```bash
|
|
219
|
+
# Upload a file to a channel
|
|
220
|
+
agent-slackbot file upload <channel> <path>
|
|
221
|
+
agent-slackbot file upload C0ACZKTDDC0 ./report.pdf
|
|
222
|
+
agent-slackbot file upload C0ACZKTDDC0 ./log.txt --filename build-log.txt
|
|
223
|
+
agent-slackbot file upload C0ACZKTDDC0 ./screenshot.png --thread 1234567890.123456 --comment "FYI"
|
|
224
|
+
|
|
225
|
+
# List files visible to the bot
|
|
226
|
+
agent-slackbot file list
|
|
227
|
+
agent-slackbot file list --channel C0ACZKTDDC0
|
|
228
|
+
agent-slackbot file list --user U123 --limit 50
|
|
229
|
+
|
|
230
|
+
# Show file details
|
|
231
|
+
agent-slackbot file info <file-id>
|
|
232
|
+
|
|
233
|
+
# Download a file by ID
|
|
234
|
+
agent-slackbot file download <file-id>
|
|
235
|
+
agent-slackbot file download F0123ABC ./downloads/
|
|
236
|
+
|
|
237
|
+
# Delete a file (bot's own files only)
|
|
238
|
+
agent-slackbot file delete <file-id> --force
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
`file upload` requires the `files:write` scope; the read commands (`list`, `info`, `download`) require `files:read`. The bot can only delete files it uploaded.
|
|
242
|
+
|
|
205
243
|
## Key Differences from agent-slack
|
|
206
244
|
|
|
207
|
-
| Feature | agent-slack | agent-slackbot
|
|
208
|
-
| -------------------- | ------------------------------- |
|
|
209
|
-
| Token type | User token (xoxc-) | Bot token (xoxb-)
|
|
210
|
-
| Token source | Auto-extracted from desktop app | Manual from Slack App config
|
|
211
|
-
| Message search | Yes | No
|
|
212
|
-
| File operations | Yes |
|
|
213
|
-
| Snapshot | Yes | No
|
|
214
|
-
| Edit/delete messages | Any message | Bot's own only
|
|
215
|
-
| Multi-bot support | N/A | Yes (`--bot` flag)
|
|
216
|
-
| CI/CD friendly | Requires desktop app | Yes
|
|
245
|
+
| Feature | agent-slack | agent-slackbot |
|
|
246
|
+
| -------------------- | ------------------------------- | ---------------------------------------------- |
|
|
247
|
+
| Token type | User token (xoxc-) | Bot token (xoxb-) |
|
|
248
|
+
| Token source | Auto-extracted from desktop app | Manual from Slack App config |
|
|
249
|
+
| Message search | Yes | No |
|
|
250
|
+
| File operations | Yes | Upload/list/info/download/delete (with scopes) |
|
|
251
|
+
| Snapshot | Yes | No |
|
|
252
|
+
| Edit/delete messages | Any message | Bot's own only |
|
|
253
|
+
| Multi-bot support | N/A | Yes (`--bot` flag) |
|
|
254
|
+
| CI/CD friendly | Requires desktop app | Yes |
|
|
217
255
|
|
|
218
256
|
## AI Agent Integration
|
|
219
257
|
|
|
@@ -29,6 +29,10 @@ agent-teams auth extract
|
|
|
29
29
|
|
|
30
30
|
# Use --debug for troubleshooting
|
|
31
31
|
agent-teams auth extract --debug
|
|
32
|
+
|
|
33
|
+
# Scan custom Chromium profile/user-data dirs (repeatable or comma-separated)
|
|
34
|
+
agent-teams auth extract --browser-profile ~/browser-data
|
|
35
|
+
agent-teams auth extract --browser-profile "$HOME/work-profile,$HOME/personal-profile"
|
|
32
36
|
```
|
|
33
37
|
|
|
34
38
|
This command:
|
|
@@ -38,6 +42,7 @@ This command:
|
|
|
38
42
|
- Validates token against Teams API
|
|
39
43
|
- Discovers ALL joined teams
|
|
40
44
|
- Stores credentials securely in `~/.config/agent-messenger/`
|
|
45
|
+
- Supports `--browser-profile <path>` for agent-browser profiles, custom Chrome user data dirs, or portable browser profiles
|
|
41
46
|
|
|
42
47
|
### TOKEN EXPIRY WARNING
|
|
43
48
|
|
|
@@ -26,6 +26,8 @@ Extracts your first-party Webex session token from a Chromium browser where you'
|
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
28
|
agent-webex auth extract
|
|
29
|
+
agent-webex auth extract --browser-profile ~/browser-data
|
|
30
|
+
agent-webex auth extract --browser-profile "$HOME/work-profile,$HOME/personal-profile"
|
|
29
31
|
```
|
|
30
32
|
|
|
31
33
|
This command:
|
|
@@ -36,6 +38,7 @@ This command:
|
|
|
36
38
|
- Validates the token against the Webex API
|
|
37
39
|
- Stores credentials and encryption keys in `~/.config/agent-messenger/`
|
|
38
40
|
- Supported browsers: Chrome, Chrome Canary, Edge, Arc, Brave, Vivaldi, Chromium
|
|
41
|
+
- Supports `--browser-profile <path>` for agent-browser profiles, custom Chrome user data dirs, or portable browser profiles; repeatable and comma-separated values are accepted
|
|
39
42
|
- Auto-extraction runs when no valid token is stored, so manual extraction is rarely needed
|
|
40
43
|
- Messages are encrypted client-side (JWE/AES-256-GCM) when encryption keys are available; falls back to plaintext otherwise. Re-run `auth extract` to refresh keys for new conversations.
|
|
41
44
|
|
|
@@ -180,7 +180,7 @@ const blocks = ChannelBotClient.wrapTextInBlocks('Hello, world!')
|
|
|
180
180
|
|
|
181
181
|
## ChannelBotCredentialManager
|
|
182
182
|
|
|
183
|
-
Manages Channel Talk Bot credentials stored at `~/.config/agent-messenger/
|
|
183
|
+
Manages Channel Talk Bot credentials stored at `~/.config/agent-messenger/channeltalkbot-credentials.json`. Files are written with `0o600` permissions. If a legacy `channelbot-credentials.json` exists from an older version, it is migrated automatically on first load. The environment variables `E2E_CHANNELTALKBOT_ACCESS_KEY` and `E2E_CHANNELTALKBOT_ACCESS_SECRET` (or legacy `E2E_CHANNELBOT_*`) take precedence when calling `getCredentials()` without a `workspaceId`.
|
|
184
184
|
|
|
185
185
|
```typescript
|
|
186
186
|
import { ChannelBotCredentialManager } from 'agent-messenger/channeltalkbot'
|
|
@@ -273,6 +273,43 @@ import {
|
|
|
273
273
|
} from 'agent-messenger/channeltalkbot'
|
|
274
274
|
```
|
|
275
275
|
|
|
276
|
+
## ChannelBotError
|
|
277
|
+
|
|
278
|
+
All client methods throw `ChannelBotError` on failure. The error includes a `code` field describing the failure category — useful for retry logic and structured error reporting.
|
|
279
|
+
|
|
280
|
+
```typescript
|
|
281
|
+
import { ChannelBotClient, ChannelBotError } from 'agent-messenger/channeltalkbot'
|
|
282
|
+
|
|
283
|
+
const client = await new ChannelBotClient().login({ accessKey, accessSecret })
|
|
284
|
+
|
|
285
|
+
try {
|
|
286
|
+
const blocks = ChannelBotClient.wrapTextInBlocks('Hello!')
|
|
287
|
+
await client.sendGroupMessage('group_id', blocks, 'My Bot')
|
|
288
|
+
} catch (err) {
|
|
289
|
+
if (err instanceof ChannelBotError) {
|
|
290
|
+
console.error(`[${err.code}] ${err.message}`)
|
|
291
|
+
|
|
292
|
+
if (err.code === 'rate_limited') {
|
|
293
|
+
// Back off and retry
|
|
294
|
+
} else if (err.code === 'missing_access_key' || err.code === 'missing_access_secret') {
|
|
295
|
+
// Re-run auth set with valid credentials
|
|
296
|
+
}
|
|
297
|
+
} else {
|
|
298
|
+
throw err
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
Error codes thrown by the client:
|
|
304
|
+
|
|
305
|
+
- `missing_access_key` — `login()` called without an access key
|
|
306
|
+
- `missing_access_secret` — `login()` called without an access secret
|
|
307
|
+
- `not_authenticated` — Method called before `login()` resolved
|
|
308
|
+
- `rate_limited` — Channel Talk returned 429; the client retries with backoff, then surfaces this if retries are exhausted
|
|
309
|
+
- `network_error` — Fetch failed (DNS, connection refused, timeout)
|
|
310
|
+
- `http_<status>` — Channel Talk returned an unexpected status (e.g., `http_500`) without a structured `code` in the error body
|
|
311
|
+
- Channel Talk API error codes (string) — When the response body includes a `code` field, it is propagated as-is. See the [Channel Talk Open API error reference](https://developers.channel.io/reference/error-handling) for codes such as `WorkspaceNotFoundException`, `BotNotFoundException`, etc.
|
|
312
|
+
|
|
276
313
|
## Examples
|
|
277
314
|
|
|
278
315
|
### Auto-Reply Bot
|