agent-messenger 2.0.0 → 2.2.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/marketplace.json +14 -1
- package/.claude-plugin/plugin.json +4 -2
- package/.env.template +35 -17
- package/README.md +37 -33
- package/bun.lock +6 -6
- package/dist/package.json +11 -3
- package/dist/src/cli.d.ts.map +1 -1
- package/dist/src/cli.js +3 -0
- package/dist/src/cli.js.map +1 -1
- package/dist/src/platforms/channeltalk/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/channeltalk/commands/auth.js +35 -28
- package/dist/src/platforms/channeltalk/commands/auth.js.map +1 -1
- package/dist/src/platforms/channeltalk/ensure-auth.js +6 -6
- package/dist/src/platforms/channeltalk/ensure-auth.js.map +1 -1
- package/dist/src/platforms/channeltalk/token-extractor.d.ts +23 -1
- package/dist/src/platforms/channeltalk/token-extractor.d.ts.map +1 -1
- package/dist/src/platforms/channeltalk/token-extractor.js +299 -29
- package/dist/src/platforms/channeltalk/token-extractor.js.map +1 -1
- package/dist/src/platforms/discord/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/discord/commands/auth.js +57 -49
- package/dist/src/platforms/discord/commands/auth.js.map +1 -1
- package/dist/src/platforms/discord/ensure-auth.js +3 -3
- package/dist/src/platforms/discord/ensure-auth.js.map +1 -1
- package/dist/src/platforms/discord/token-extractor.d.ts +6 -1
- package/dist/src/platforms/discord/token-extractor.d.ts.map +1 -1
- package/dist/src/platforms/discord/token-extractor.js +167 -14
- package/dist/src/platforms/discord/token-extractor.js.map +1 -1
- package/dist/src/platforms/instagram/client.d.ts +2 -0
- package/dist/src/platforms/instagram/client.d.ts.map +1 -1
- package/dist/src/platforms/instagram/client.js +2 -2
- package/dist/src/platforms/instagram/client.js.map +1 -1
- package/dist/src/platforms/instagram/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/instagram/commands/auth.js +107 -14
- package/dist/src/platforms/instagram/commands/auth.js.map +1 -1
- package/dist/src/platforms/instagram/ensure-auth.d.ts.map +1 -1
- package/dist/src/platforms/instagram/ensure-auth.js +57 -11
- package/dist/src/platforms/instagram/ensure-auth.js.map +1 -1
- package/dist/src/platforms/instagram/index.d.ts +1 -0
- package/dist/src/platforms/instagram/index.d.ts.map +1 -1
- package/dist/src/platforms/instagram/index.js +1 -0
- package/dist/src/platforms/instagram/index.js.map +1 -1
- package/dist/src/platforms/instagram/token-extractor.d.ts +44 -0
- package/dist/src/platforms/instagram/token-extractor.d.ts.map +1 -0
- package/dist/src/platforms/instagram/token-extractor.js +407 -0
- package/dist/src/platforms/instagram/token-extractor.js.map +1 -0
- package/dist/src/platforms/kakaotalk/client.d.ts.map +1 -1
- package/dist/src/platforms/kakaotalk/client.js +2 -1
- package/dist/src/platforms/kakaotalk/client.js.map +1 -1
- package/dist/src/platforms/kakaotalk/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/kakaotalk/commands/auth.js +14 -13
- package/dist/src/platforms/kakaotalk/commands/auth.js.map +1 -1
- package/dist/src/platforms/kakaotalk/protocol/connection.d.ts.map +1 -1
- package/dist/src/platforms/kakaotalk/protocol/connection.js +2 -1
- package/dist/src/platforms/kakaotalk/protocol/connection.js.map +1 -1
- package/dist/src/platforms/line/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/line/commands/auth.js +6 -5
- package/dist/src/platforms/line/commands/auth.js.map +1 -1
- package/dist/src/platforms/slack/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/slack/commands/auth.js +11 -10
- package/dist/src/platforms/slack/commands/auth.js.map +1 -1
- package/dist/src/platforms/slack/token-extractor.d.ts +9 -0
- package/dist/src/platforms/slack/token-extractor.d.ts.map +1 -1
- package/dist/src/platforms/slack/token-extractor.js +300 -23
- package/dist/src/platforms/slack/token-extractor.js.map +1 -1
- package/dist/src/platforms/teams/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/teams/commands/auth.js +9 -8
- package/dist/src/platforms/teams/commands/auth.js.map +1 -1
- package/dist/src/platforms/teams/ensure-auth.d.ts.map +1 -1
- package/dist/src/platforms/teams/ensure-auth.js +2 -1
- package/dist/src/platforms/teams/ensure-auth.js.map +1 -1
- package/dist/src/platforms/teams/token-extractor.d.ts +5 -0
- package/dist/src/platforms/teams/token-extractor.d.ts.map +1 -1
- package/dist/src/platforms/teams/token-extractor.js +161 -29
- package/dist/src/platforms/teams/token-extractor.js.map +1 -1
- package/dist/src/platforms/telegram/client.d.ts.map +1 -1
- package/dist/src/platforms/telegram/client.js +25 -7
- package/dist/src/platforms/telegram/client.js.map +1 -1
- package/dist/src/platforms/telegram/commands/auth.d.ts.map +1 -1
- package/dist/src/platforms/telegram/commands/auth.js +6 -5
- package/dist/src/platforms/telegram/commands/auth.js.map +1 -1
- package/dist/src/platforms/webex/app-config.d.ts +7 -0
- package/dist/src/platforms/webex/app-config.d.ts.map +1 -0
- package/dist/src/platforms/webex/app-config.js +20 -0
- package/dist/src/platforms/webex/app-config.js.map +1 -0
- package/dist/src/platforms/webex/cli.d.ts +5 -0
- package/dist/src/platforms/webex/cli.d.ts.map +1 -0
- package/dist/src/platforms/webex/cli.js +32 -0
- package/dist/src/platforms/webex/cli.js.map +1 -0
- package/dist/src/platforms/webex/client.d.ts +55 -0
- package/dist/src/platforms/webex/client.d.ts.map +1 -0
- package/dist/src/platforms/webex/client.js +299 -0
- package/dist/src/platforms/webex/client.js.map +1 -0
- package/dist/src/platforms/webex/commands/auth.d.ts +19 -0
- package/dist/src/platforms/webex/commands/auth.d.ts.map +1 -0
- package/dist/src/platforms/webex/commands/auth.js +166 -0
- package/dist/src/platforms/webex/commands/auth.js.map +1 -0
- package/dist/src/platforms/webex/commands/index.d.ts +6 -0
- package/dist/src/platforms/webex/commands/index.d.ts.map +1 -0
- package/dist/src/platforms/webex/commands/index.js +6 -0
- package/dist/src/platforms/webex/commands/index.js.map +1 -0
- package/dist/src/platforms/webex/commands/member.d.ts +7 -0
- package/dist/src/platforms/webex/commands/member.d.ts.map +1 -0
- package/dist/src/platforms/webex/commands/member.js +34 -0
- package/dist/src/platforms/webex/commands/member.js.map +1 -0
- package/dist/src/platforms/webex/commands/message.d.ts +26 -0
- package/dist/src/platforms/webex/commands/message.d.ts.map +1 -0
- package/dist/src/platforms/webex/commands/message.js +153 -0
- package/dist/src/platforms/webex/commands/message.js.map +1 -0
- package/dist/src/platforms/webex/commands/snapshot.d.ts +9 -0
- package/dist/src/platforms/webex/commands/snapshot.d.ts.map +1 -0
- package/dist/src/platforms/webex/commands/snapshot.js +72 -0
- package/dist/src/platforms/webex/commands/snapshot.js.map +1 -0
- package/dist/src/platforms/webex/commands/space.d.ts +11 -0
- package/dist/src/platforms/webex/commands/space.d.ts.map +1 -0
- package/dist/src/platforms/webex/commands/space.js +59 -0
- package/dist/src/platforms/webex/commands/space.js.map +1 -0
- package/dist/src/platforms/webex/credential-manager.d.ts +23 -0
- package/dist/src/platforms/webex/credential-manager.d.ts.map +1 -0
- package/dist/src/platforms/webex/credential-manager.js +148 -0
- package/dist/src/platforms/webex/credential-manager.js.map +1 -0
- package/dist/src/platforms/webex/ensure-auth.d.ts +2 -0
- package/dist/src/platforms/webex/ensure-auth.d.ts.map +1 -0
- package/dist/src/platforms/webex/ensure-auth.js +36 -0
- package/dist/src/platforms/webex/ensure-auth.js.map +1 -0
- package/dist/src/platforms/webex/index.d.ts +8 -0
- package/dist/src/platforms/webex/index.d.ts.map +1 -0
- package/dist/src/platforms/webex/index.js +6 -0
- package/dist/src/platforms/webex/index.js.map +1 -0
- package/dist/src/platforms/webex/token-extractor.d.ts +28 -0
- package/dist/src/platforms/webex/token-extractor.d.ts.map +1 -0
- package/dist/src/platforms/webex/token-extractor.js +344 -0
- package/dist/src/platforms/webex/token-extractor.js.map +1 -0
- package/dist/src/platforms/webex/types.d.ts +127 -0
- package/dist/src/platforms/webex/types.d.ts.map +1 -0
- package/dist/src/platforms/webex/types.js +64 -0
- package/dist/src/platforms/webex/types.js.map +1 -0
- package/dist/src/platforms/whatsapp/client.d.ts.map +1 -1
- package/dist/src/platforms/whatsapp/client.js +6 -2
- package/dist/src/platforms/whatsapp/client.js.map +1 -1
- package/dist/src/shared/utils/derived-key-cache.d.ts +1 -1
- package/dist/src/shared/utils/derived-key-cache.d.ts.map +1 -1
- package/dist/src/shared/utils/error-handler.d.ts +1 -1
- package/dist/src/shared/utils/error-handler.d.ts.map +1 -1
- package/dist/src/shared/utils/error-handler.js +3 -2
- package/dist/src/shared/utils/error-handler.js.map +1 -1
- package/dist/src/shared/utils/stderr.d.ts +5 -0
- package/dist/src/shared/utils/stderr.d.ts.map +1 -0
- package/dist/src/shared/utils/stderr.js +18 -0
- package/dist/src/shared/utils/stderr.js.map +1 -0
- package/dist/src/tui/adapters/webex-adapter.d.ts +14 -0
- package/dist/src/tui/adapters/webex-adapter.d.ts.map +1 -0
- package/dist/src/tui/adapters/webex-adapter.js +79 -0
- package/dist/src/tui/adapters/webex-adapter.js.map +1 -0
- package/dist/src/tui/app.d.ts.map +1 -1
- package/dist/src/tui/app.js +2 -0
- package/dist/src/tui/app.js.map +1 -1
- package/docs/content/docs/cli/channeltalk.mdx +7 -7
- package/docs/content/docs/cli/discord.mdx +3 -3
- package/docs/content/docs/cli/instagram.mdx +28 -6
- package/docs/content/docs/cli/meta.json +1 -0
- package/docs/content/docs/cli/slack.mdx +2 -2
- package/docs/content/docs/cli/teams.mdx +6 -4
- package/docs/content/docs/cli/webex.mdx +310 -0
- package/docs/content/docs/sdk/meta.json +1 -1
- package/docs/content/docs/sdk/webex.mdx +260 -0
- package/docs/content/docs/tui.mdx +4 -3
- package/docs/src/app/page.tsx +2 -2
- package/e2e/README.md +132 -8
- package/e2e/channeltalk.e2e.test.ts +2 -7
- package/e2e/channeltalkbot.e2e.test.ts +2 -6
- package/e2e/config.ts +172 -10
- package/e2e/helpers.ts +7 -0
- package/e2e/instagram.e2e.test.ts +97 -0
- package/e2e/kakaotalk.e2e.test.ts +74 -0
- package/e2e/line.e2e.test.ts +92 -0
- package/e2e/teams.e2e.test.ts +46 -1
- package/e2e/telegram.e2e.test.ts +84 -0
- package/e2e/webex.e2e.test.ts +190 -0
- package/e2e/whatsapp.e2e.test.ts +90 -0
- package/e2e/whatsappbot.e2e.test.ts +78 -0
- package/package.json +11 -3
- package/skills/agent-channeltalk/SKILL.md +9 -9
- package/skills/agent-channeltalk/references/authentication.md +21 -18
- package/skills/agent-channeltalkbot/SKILL.md +1 -1
- package/skills/agent-discord/SKILL.md +5 -5
- package/skills/agent-discord/references/authentication.md +8 -8
- package/skills/agent-discordbot/SKILL.md +1 -1
- package/skills/agent-instagram/SKILL.md +51 -9
- package/skills/agent-instagram/references/authentication.md +35 -3
- package/skills/agent-kakaotalk/SKILL.md +1 -1
- package/skills/agent-line/SKILL.md +1 -1
- package/skills/agent-slack/SKILL.md +5 -5
- package/skills/agent-slack/references/authentication.md +8 -8
- package/skills/agent-slackbot/SKILL.md +1 -1
- package/skills/agent-teams/SKILL.md +6 -6
- package/skills/agent-teams/references/authentication.md +8 -8
- package/skills/agent-telegram/SKILL.md +1 -1
- package/skills/agent-webex/SKILL.md +406 -0
- package/skills/agent-webex/references/authentication.md +371 -0
- package/skills/agent-webex/references/common-patterns.md +726 -0
- package/skills/agent-webex/templates/monitor-space.sh +165 -0
- package/skills/agent-webex/templates/post-message.sh +170 -0
- package/skills/agent-whatsapp/SKILL.md +1 -1
- package/skills/agent-whatsappbot/SKILL.md +1 -1
- package/src/cli.ts +4 -0
- package/src/platforms/channeltalk/commands/auth.test.ts +5 -5
- package/src/platforms/channeltalk/commands/auth.ts +38 -32
- package/src/platforms/channeltalk/ensure-auth.test.ts +6 -6
- package/src/platforms/channeltalk/ensure-auth.ts +6 -6
- package/src/platforms/channeltalk/token-extractor.test.ts +182 -15
- package/src/platforms/channeltalk/token-extractor.ts +344 -30
- package/src/platforms/discord/commands/auth.test.ts +3 -3
- package/src/platforms/discord/commands/auth.ts +58 -54
- package/src/platforms/discord/ensure-auth.test.ts +3 -3
- package/src/platforms/discord/ensure-auth.ts +3 -3
- package/src/platforms/discord/token-extractor.test.ts +199 -27
- package/src/platforms/discord/token-extractor.ts +190 -17
- package/src/platforms/instagram/client.ts +2 -2
- package/src/platforms/instagram/commands/auth.ts +133 -14
- package/src/platforms/instagram/ensure-auth.ts +63 -12
- package/src/platforms/instagram/index.ts +1 -0
- package/src/platforms/instagram/token-extractor.test.ts +424 -0
- package/src/platforms/instagram/token-extractor.ts +478 -0
- package/src/platforms/kakaotalk/client.ts +3 -1
- package/src/platforms/kakaotalk/commands/auth.ts +14 -13
- package/src/platforms/kakaotalk/protocol/connection.ts +3 -1
- package/src/platforms/line/commands/auth.ts +7 -6
- package/src/platforms/slack/cli.test.ts +6 -5
- package/src/platforms/slack/commands/auth.test.ts +11 -7
- package/src/platforms/slack/commands/auth.ts +11 -10
- package/src/platforms/slack/token-extractor.test.ts +98 -1
- package/src/platforms/slack/token-extractor.ts +338 -26
- package/src/platforms/teams/commands/auth.ts +9 -8
- package/src/platforms/teams/ensure-auth.ts +3 -1
- package/src/platforms/teams/token-extractor.test.ts +136 -17
- package/src/platforms/teams/token-extractor.ts +182 -31
- package/src/platforms/telegram/client.test.ts +134 -0
- package/src/platforms/telegram/client.ts +27 -6
- package/src/platforms/telegram/commands/auth.ts +6 -5
- package/src/platforms/webex/app-config.test.ts +98 -0
- package/src/platforms/webex/app-config.ts +31 -0
- package/src/platforms/webex/cli.test.ts +58 -0
- package/src/platforms/webex/cli.ts +39 -0
- package/src/platforms/webex/client.test.ts +743 -0
- package/src/platforms/webex/client.ts +405 -0
- package/src/platforms/webex/commands/auth.test.ts +222 -0
- package/src/platforms/webex/commands/auth.ts +243 -0
- package/src/platforms/webex/commands/index.ts +5 -0
- package/src/platforms/webex/commands/member.test.ts +112 -0
- package/src/platforms/webex/commands/member.ts +45 -0
- package/src/platforms/webex/commands/message.test.ts +235 -0
- package/src/platforms/webex/commands/message.ts +204 -0
- package/src/platforms/webex/commands/snapshot.test.ts +105 -0
- package/src/platforms/webex/commands/snapshot.ts +91 -0
- package/src/platforms/webex/commands/space.test.ts +216 -0
- package/src/platforms/webex/commands/space.ts +74 -0
- package/src/platforms/webex/credential-manager.test.ts +314 -0
- package/src/platforms/webex/credential-manager.ts +197 -0
- package/src/platforms/webex/ensure-auth.test.ts +89 -0
- package/src/platforms/webex/ensure-auth.ts +38 -0
- package/src/platforms/webex/index.test.ts +25 -0
- package/src/platforms/webex/index.ts +19 -0
- package/src/platforms/webex/token-extractor.test.ts +327 -0
- package/src/platforms/webex/token-extractor.ts +393 -0
- package/src/platforms/webex/types.test.ts +307 -0
- package/src/platforms/webex/types.ts +129 -0
- package/src/platforms/whatsapp/client.ts +11 -7
- package/src/shared/utils/derived-key-cache.ts +1 -1
- package/src/shared/utils/error-handler.ts +4 -2
- package/src/shared/utils/stderr.ts +22 -0
- package/src/tui/adapters/webex-adapter.ts +103 -0
- package/src/tui/app.ts +2 -0
|
@@ -3,14 +3,14 @@ title: Channel Talk
|
|
|
3
3
|
description: Complete reference for the agent-channeltalk CLI.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
> **Beta**: Channel Talk support is in beta. Some features may change.
|
|
6
|
+
> **Beta**: Channel Talk support is in beta. Some features may change.
|
|
7
7
|
|
|
8
8
|
> **Tip**: `agent-channeltalk` is a shortcut for `agent-messenger channeltalk`.
|
|
9
9
|
|
|
10
10
|
## Quick Start
|
|
11
11
|
|
|
12
12
|
```bash
|
|
13
|
-
# 1. Credentials are extracted automatically from Channel Talk desktop app
|
|
13
|
+
# 1. Credentials are extracted automatically from Channel Talk desktop app or browser
|
|
14
14
|
agent-channeltalk snapshot --pretty
|
|
15
15
|
|
|
16
16
|
# 2. Send a message to a group
|
|
@@ -37,7 +37,7 @@ Channel Talk has different terminology from Slack or Discord:
|
|
|
37
37
|
|
|
38
38
|
### Zero-Config Credential Extraction
|
|
39
39
|
|
|
40
|
-
agent-channeltalk automatically extracts cookies from the Channel Talk desktop app. No manual setup required, no API keys needed.
|
|
40
|
+
agent-channeltalk automatically extracts cookies from the Channel Talk desktop app (or Chromium browser as fallback). No manual setup required, no API keys needed.
|
|
41
41
|
|
|
42
42
|
```bash
|
|
43
43
|
# Usually automatic — just run any command
|
|
@@ -47,7 +47,7 @@ agent-channeltalk snapshot
|
|
|
47
47
|
agent-channeltalk auth extract
|
|
48
48
|
```
|
|
49
49
|
|
|
50
|
-
The CLI reads two cookies from the desktop app's SQLite database:
|
|
50
|
+
The CLI reads two cookies from the desktop app's SQLite database (or Chromium browser cookies as fallback):
|
|
51
51
|
|
|
52
52
|
- `x-account` (JWT) — your account identity
|
|
53
53
|
- `ch-session-1` (JWT) — your session token
|
|
@@ -75,7 +75,7 @@ agent-channeltalk auth remove <workspace-id>
|
|
|
75
75
|
### Authentication Commands
|
|
76
76
|
|
|
77
77
|
```bash
|
|
78
|
-
# Extract cookies from desktop app (usually automatic)
|
|
78
|
+
# Extract cookies from desktop app or browser (usually automatic)
|
|
79
79
|
agent-channeltalk auth extract
|
|
80
80
|
|
|
81
81
|
# Check auth status
|
|
@@ -222,7 +222,7 @@ The CLI looks for the Channel Talk desktop app's cookie database in:
|
|
|
222
222
|
**Windows:**
|
|
223
223
|
1. `%APPDATA%\Channel Talk\Network\Cookies`
|
|
224
224
|
|
|
225
|
-
If none exist, install the Channel Talk desktop app and log in.
|
|
225
|
+
If none exist, either install the Channel Talk desktop app and log in, or log in via a Chromium browser (Chrome, Edge, Arc, Brave, etc.) — the CLI will fall back to browser extraction automatically.
|
|
226
226
|
|
|
227
227
|
### Cookies expired
|
|
228
228
|
|
|
@@ -246,7 +246,7 @@ npx -y agent-messenger channeltalk snapshot --pretty
|
|
|
246
246
|
|
|
247
247
|
## Limitations
|
|
248
248
|
|
|
249
|
-
- macOS and Windows only
|
|
249
|
+
- Desktop app extraction: macOS and Windows only; browser fallback also supports Linux
|
|
250
250
|
- No real-time events / WebSocket connection
|
|
251
251
|
- No file upload support
|
|
252
252
|
- No message editing or deletion
|
|
@@ -8,7 +8,7 @@ description: Complete reference for the agent-discord CLI.
|
|
|
8
8
|
## Quick Start
|
|
9
9
|
|
|
10
10
|
```bash
|
|
11
|
-
# 1. Extract credentials from Discord desktop app (zero-config!)
|
|
11
|
+
# 1. Extract credentials from Discord desktop app or browser (zero-config!)
|
|
12
12
|
agent-discord auth extract
|
|
13
13
|
|
|
14
14
|
# 2. Get server snapshot
|
|
@@ -22,7 +22,7 @@ agent-discord message send <channel-id> "Hello from AI agent!"
|
|
|
22
22
|
|
|
23
23
|
### Seamless Token Extraction
|
|
24
24
|
|
|
25
|
-
agent-discord automatically extracts your Discord credentials from the desktop app:
|
|
25
|
+
agent-discord automatically extracts your Discord credentials from the desktop app or Chromium browser:
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
28
|
agent-discord auth extract
|
|
@@ -34,7 +34,7 @@ agent-discord auth extract --debug
|
|
|
34
34
|
This command:
|
|
35
35
|
|
|
36
36
|
- Auto-detects your platform (macOS/Linux/Windows)
|
|
37
|
-
- Extracts Discord user token from the desktop app
|
|
37
|
+
- Extracts Discord user token from the desktop app (with browser fallback)
|
|
38
38
|
- Validates token against Discord API
|
|
39
39
|
- Discovers ALL joined servers
|
|
40
40
|
- Stores credentials securely in `~/.config/agent-messenger/`
|
|
@@ -9,26 +9,45 @@ description: Complete reference for the agent-instagram CLI.
|
|
|
9
9
|
|
|
10
10
|
Instagram integration uses a private mobile API (not the official Graph API). No new npm dependencies are required:
|
|
11
11
|
|
|
12
|
-
-
|
|
12
|
+
- **Browser cookie extraction** (recommended): Extracts session cookies from Chromium browsers (Chrome, Chrome Canary, Edge, Arc, Brave, Vivaldi, Chromium). Zero-config.
|
|
13
|
+
- **Username/password auth** (fallback): Authenticates with credentials, with support for 2FA and login challenges.
|
|
13
14
|
- Each command makes HTTP requests on demand. No persistent connection or background process.
|
|
14
15
|
- Multiple Instagram accounts can be linked simultaneously.
|
|
15
16
|
|
|
16
17
|
## Quick Start
|
|
17
18
|
|
|
18
19
|
```bash
|
|
19
|
-
#
|
|
20
|
-
agent-instagram auth
|
|
20
|
+
# 1. Extract cookies from browser (recommended — zero-config)
|
|
21
|
+
agent-instagram auth extract
|
|
21
22
|
|
|
22
|
-
# List DM threads
|
|
23
|
+
# 2. List DM threads
|
|
23
24
|
agent-instagram chat list
|
|
24
25
|
|
|
25
|
-
# Send a message
|
|
26
|
+
# 3. Send a message
|
|
26
27
|
agent-instagram message send 12345678901 "Hello from agent-instagram"
|
|
27
28
|
```
|
|
28
29
|
|
|
29
30
|
## Authentication
|
|
30
31
|
|
|
31
|
-
###
|
|
32
|
+
### Browser Cookie Extraction (Recommended)
|
|
33
|
+
|
|
34
|
+
Extracts your Instagram session cookies from a Chromium browser where you're logged into instagram.com. Zero-config, no password needed.
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
agent-instagram auth extract
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
This command:
|
|
41
|
+
|
|
42
|
+
- Scans Chromium browser profiles for Instagram cookies (SQLite cookie database)
|
|
43
|
+
- Extracts `sessionid`, `csrftoken`, `ds_user_id`, and other session cookies
|
|
44
|
+
- Decrypts encrypted cookies using the browser's encryption key
|
|
45
|
+
- Validates the session against the Instagram API
|
|
46
|
+
- Stores credentials in `~/.config/agent-messenger/`
|
|
47
|
+
- Supported browsers: Chrome, Chrome Canary, Edge, Arc, Brave, Vivaldi, Chromium
|
|
48
|
+
- Auto-extraction runs when no valid session is stored, so manual extraction is rarely needed
|
|
49
|
+
|
|
50
|
+
### Username/Password Login (Fallback)
|
|
32
51
|
|
|
33
52
|
The CLI authenticates as a mobile client using your Instagram username and password. Your existing app sessions are never affected.
|
|
34
53
|
|
|
@@ -74,6 +93,9 @@ agent-instagram auth login --username your_username --password your_password --d
|
|
|
74
93
|
### Account Management
|
|
75
94
|
|
|
76
95
|
```bash
|
|
96
|
+
# Extract cookies from browser (recommended)
|
|
97
|
+
agent-instagram auth extract
|
|
98
|
+
|
|
77
99
|
# Check current auth state
|
|
78
100
|
agent-instagram auth status
|
|
79
101
|
agent-instagram auth status --account <id>
|
|
@@ -8,7 +8,7 @@ description: Complete reference for the agent-slack CLI.
|
|
|
8
8
|
## Quick Start
|
|
9
9
|
|
|
10
10
|
```bash
|
|
11
|
-
# 1. Extract credentials from Slack desktop app (zero-config!)
|
|
11
|
+
# 1. Extract credentials from Slack desktop app or browser (zero-config!)
|
|
12
12
|
agent-slack auth extract
|
|
13
13
|
|
|
14
14
|
# 2. Get workspace snapshot
|
|
@@ -22,7 +22,7 @@ agent-slack message send general "Hello from AI agent!"
|
|
|
22
22
|
|
|
23
23
|
### Seamless Token Extraction
|
|
24
24
|
|
|
25
|
-
agent-slack automatically extracts your Slack credentials from the desktop app:
|
|
25
|
+
agent-slack automatically extracts your Slack credentials from the desktop app or Chromium browser:
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
28
|
agent-slack auth extract
|
|
@@ -8,7 +8,7 @@ description: Complete reference for the agent-teams CLI.
|
|
|
8
8
|
## Quick Start
|
|
9
9
|
|
|
10
10
|
```bash
|
|
11
|
-
# 1. Extract credentials from Teams desktop app (zero-config!)
|
|
11
|
+
# 1. Extract credentials from Teams desktop app or browser (zero-config!)
|
|
12
12
|
agent-teams auth extract
|
|
13
13
|
|
|
14
14
|
# 2. Get team snapshot
|
|
@@ -22,7 +22,7 @@ agent-teams message send <channel-id> "Hello from AI agent!"
|
|
|
22
22
|
|
|
23
23
|
### Seamless Token Extraction
|
|
24
24
|
|
|
25
|
-
agent-teams automatically extracts your Microsoft Teams credentials from the desktop app:
|
|
25
|
+
agent-teams automatically extracts your Microsoft Teams credentials from the desktop app or Chromium browser:
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
28
|
agent-teams auth extract
|
|
@@ -34,7 +34,7 @@ agent-teams auth extract --debug
|
|
|
34
34
|
This command:
|
|
35
35
|
|
|
36
36
|
- Auto-detects your platform (macOS/Linux/Windows)
|
|
37
|
-
- Extracts Teams access token from the desktop app
|
|
37
|
+
- Extracts Teams access token from the desktop app (with browser fallback)
|
|
38
38
|
- Validates token against Teams API
|
|
39
39
|
- Discovers ALL joined teams
|
|
40
40
|
- Stores credentials securely in `~/.config/agent-messenger/`
|
|
@@ -241,7 +241,7 @@ All commands support these options:
|
|
|
241
241
|
|
|
242
242
|
```bash
|
|
243
243
|
# Teams tokens expire in 60-90 minutes! To refresh:
|
|
244
|
-
# 1. Open Microsoft Teams desktop app
|
|
244
|
+
# 1. Open Microsoft Teams desktop app (or log in via browser)
|
|
245
245
|
# 2. Send any message (this refreshes your session cookies)
|
|
246
246
|
# 3. Re-extract:
|
|
247
247
|
agent-teams auth extract
|
|
@@ -281,6 +281,8 @@ Ensure Teams desktop app is:
|
|
|
281
281
|
2. Currently running
|
|
282
282
|
3. Signed in to your account
|
|
283
283
|
|
|
284
|
+
Alternatively, log in via a Chromium browser (Chrome, Edge, Arc, Brave, etc.) — the CLI will fall back to browser extraction automatically.
|
|
285
|
+
|
|
284
286
|
```bash
|
|
285
287
|
# Debug extraction
|
|
286
288
|
agent-teams auth extract --debug
|
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Webex
|
|
3
|
+
description: Complete reference for the agent-webex CLI.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
> **Tip**: `agent-webex` is a shortcut for `agent-messenger webex`.
|
|
7
|
+
|
|
8
|
+
## Quick Start
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
# 1. Extract token from browser (recommended — messages appear as you)
|
|
12
|
+
agent-webex auth extract
|
|
13
|
+
|
|
14
|
+
# 2. Get workspace snapshot
|
|
15
|
+
agent-webex snapshot
|
|
16
|
+
|
|
17
|
+
# 3. Send a message
|
|
18
|
+
agent-webex message send <space-id> "Hello from AI agent!"
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Authentication
|
|
22
|
+
|
|
23
|
+
### Browser Token Extraction (Recommended)
|
|
24
|
+
|
|
25
|
+
Extracts your first-party Webex session token from a Chromium browser where you're logged into web.webex.com. Messages appear as you — no "via agent-messenger" label. Zero-config.
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
agent-webex auth extract
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
This command:
|
|
32
|
+
|
|
33
|
+
- Scans Chromium browser profiles for Webex localStorage data (LevelDB)
|
|
34
|
+
- Extracts the first-party supertoken and device URL
|
|
35
|
+
- Validates the token against the Webex API
|
|
36
|
+
- Stores credentials in `~/.config/agent-messenger/`
|
|
37
|
+
- Supported browsers: Chrome, Chrome Canary, Edge, Arc, Brave, Vivaldi, Chromium
|
|
38
|
+
- Auto-extraction runs when no valid token is stored, so manual extraction is rarely needed
|
|
39
|
+
|
|
40
|
+
### OAuth Device Grant (Fallback)
|
|
41
|
+
|
|
42
|
+
Uses OAuth Device Grant flow with built-in Integration credentials. No tokens to copy, no developer portal setup needed. Messages show "via agent-messenger".
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
agent-webex auth login
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
This command:
|
|
49
|
+
|
|
50
|
+
- Requests a device code from Webex
|
|
51
|
+
- Opens your browser to the Webex verification page
|
|
52
|
+
- Displays a user code for you to enter
|
|
53
|
+
- Polls automatically until you approve
|
|
54
|
+
- Stores access and refresh tokens securely in `~/.config/agent-messenger/`
|
|
55
|
+
- Auto-refreshes expired access tokens (14-day access, 90-day refresh)
|
|
56
|
+
|
|
57
|
+
### How Login Works
|
|
58
|
+
|
|
59
|
+
1. Run `agent-webex auth extract` (recommended) or `agent-webex auth login` (fallback)
|
|
60
|
+
2. For extraction: CLI reads your browser's Webex session — no prompts needed
|
|
61
|
+
3. For Device Grant: Browser opens, enter the displayed code, CLI stores tokens
|
|
62
|
+
4. Access tokens are refreshed automatically
|
|
63
|
+
|
|
64
|
+
### Token Types
|
|
65
|
+
|
|
66
|
+
| Type | Lifetime | Best For |
|
|
67
|
+
| --- | --- | --- |
|
|
68
|
+
| Browser Extraction (recommended) | Session-based (re-extract when expired) | Interactive use, sending as yourself |
|
|
69
|
+
| OAuth Device Grant | 14-day access, 90-day refresh (auto-refresh) | Fallback when no browser session |
|
|
70
|
+
| Bot Token | Never expires | CI/CD, long-running automation |
|
|
71
|
+
| Personal Access Token (PAT) | 12 hours | Quick testing |
|
|
72
|
+
|
|
73
|
+
### Authentication Commands
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
# Extract token from browser (recommended)
|
|
77
|
+
agent-webex auth extract
|
|
78
|
+
|
|
79
|
+
# Log in (Device Grant flow, opens browser)
|
|
80
|
+
agent-webex auth login
|
|
81
|
+
|
|
82
|
+
# Log in with custom Integration credentials
|
|
83
|
+
agent-webex auth login --client-id <id> --client-secret <secret>
|
|
84
|
+
|
|
85
|
+
# Log in with a bot token (never expires)
|
|
86
|
+
agent-webex auth login --token <bot-token>
|
|
87
|
+
|
|
88
|
+
# Log in with a PAT (12-hour lifetime)
|
|
89
|
+
agent-webex auth login --token <pat>
|
|
90
|
+
|
|
91
|
+
# Check auth status
|
|
92
|
+
agent-webex auth status
|
|
93
|
+
|
|
94
|
+
# Log out (clear stored credentials)
|
|
95
|
+
agent-webex auth logout
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### Environment Variables
|
|
99
|
+
|
|
100
|
+
Override the built-in Integration credentials with your own:
|
|
101
|
+
|
|
102
|
+
| Variable | Description |
|
|
103
|
+
| --- | --- |
|
|
104
|
+
| `AGENT_WEBEX_CLIENT_ID` | Webex Integration client ID |
|
|
105
|
+
| `AGENT_WEBEX_CLIENT_SECRET` | Webex Integration client secret |
|
|
106
|
+
|
|
107
|
+
Both must be set together. When set, `auth login` (without `--token`) uses these instead of the built-in credentials.
|
|
108
|
+
|
|
109
|
+
## Commands
|
|
110
|
+
|
|
111
|
+
### Space Commands
|
|
112
|
+
|
|
113
|
+
Webex organizes conversations into "spaces" (group spaces and direct messages).
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
# List spaces
|
|
117
|
+
agent-webex space list
|
|
118
|
+
agent-webex space list --type group
|
|
119
|
+
agent-webex space list --type direct
|
|
120
|
+
agent-webex space list --limit 20
|
|
121
|
+
|
|
122
|
+
# Get space info
|
|
123
|
+
agent-webex space info <space-id>
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
### Message Commands
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
# Send a message
|
|
130
|
+
agent-webex message send <space-id> <text>
|
|
131
|
+
agent-webex message send abc123 "Hello world"
|
|
132
|
+
|
|
133
|
+
# Send a markdown message
|
|
134
|
+
agent-webex message send <space-id> "**Bold** and _italic_" --markdown
|
|
135
|
+
|
|
136
|
+
# Send a direct message by email
|
|
137
|
+
agent-webex message dm <email> <text>
|
|
138
|
+
agent-webex message dm alice@example.com "Hey, quick question"
|
|
139
|
+
agent-webex message dm alice@example.com "**Build failed**" --markdown
|
|
140
|
+
|
|
141
|
+
# List messages in a space
|
|
142
|
+
agent-webex message list <space-id>
|
|
143
|
+
agent-webex message list abc123 --limit 50
|
|
144
|
+
|
|
145
|
+
# Get a specific message
|
|
146
|
+
agent-webex message get <message-id>
|
|
147
|
+
|
|
148
|
+
# Edit a message
|
|
149
|
+
agent-webex message edit <message-id> <space-id> <text>
|
|
150
|
+
agent-webex message edit msg123 abc123 "Updated text" --markdown
|
|
151
|
+
|
|
152
|
+
# Delete a message
|
|
153
|
+
agent-webex message delete <message-id>
|
|
154
|
+
agent-webex message delete <message-id> --force
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
### Member Commands
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
# List members of a space
|
|
161
|
+
agent-webex member list <space-id>
|
|
162
|
+
agent-webex member list abc123 --limit 100
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### Snapshot Command
|
|
166
|
+
|
|
167
|
+
Get comprehensive workspace state for AI agents:
|
|
168
|
+
|
|
169
|
+
```bash
|
|
170
|
+
# Full snapshot (spaces, members, recent messages)
|
|
171
|
+
agent-webex snapshot
|
|
172
|
+
|
|
173
|
+
# Filtered snapshots
|
|
174
|
+
agent-webex snapshot --spaces-only
|
|
175
|
+
agent-webex snapshot --members-only
|
|
176
|
+
|
|
177
|
+
# Limit messages per space
|
|
178
|
+
agent-webex snapshot --limit 10
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
> **Note**: `--members-only` fetches members from the first 10 spaces only (to avoid excessive API calls). Use `member list <space-id>` for specific spaces.
|
|
182
|
+
|
|
183
|
+
## Global Options
|
|
184
|
+
|
|
185
|
+
All commands support these options:
|
|
186
|
+
|
|
187
|
+
```bash
|
|
188
|
+
--pretty # Pretty-print JSON output (default is compact JSON)
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
## Key Differences: Webex vs Slack vs Discord vs Teams
|
|
192
|
+
|
|
193
|
+
| Concept | Slack | Discord | Teams | Webex |
|
|
194
|
+
| --- | --- | --- | --- | --- |
|
|
195
|
+
| Server/Workspace | Workspace | Guild | Team | Organization |
|
|
196
|
+
| Channel | Channel | Channel | Channel | Space |
|
|
197
|
+
| Channel ID format | Alphanumeric (C01234567) | Numeric snowflake | UUID | Base64-encoded opaque ID |
|
|
198
|
+
| Message ID format | Timestamp (1234567890.123456) | Numeric snowflake | UUID | Base64-encoded opaque ID |
|
|
199
|
+
| Token lifetime | Long-lived | Long-lived | 60-90 minutes | 14 days (auto-refresh) |
|
|
200
|
+
| API | Slack Web API | Discord API | Teams Messaging API | Webex REST API |
|
|
201
|
+
| Auth method | Desktop app extraction | Desktop app extraction | Desktop app extraction | OAuth Device Grant |
|
|
202
|
+
| Rate limits | Moderate | Moderate | Strict | ~600 req/min |
|
|
203
|
+
|
|
204
|
+
## Troubleshooting
|
|
205
|
+
|
|
206
|
+
### "Not authenticated"
|
|
207
|
+
|
|
208
|
+
No credentials stored. Log in first:
|
|
209
|
+
|
|
210
|
+
```bash
|
|
211
|
+
agent-webex auth login
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
### Token Expired (401 Unauthorized)
|
|
215
|
+
|
|
216
|
+
**If using Device Grant (default)**: Tokens auto-refresh. If you still get 401s, the refresh token may have expired (after 90 days). Re-run:
|
|
217
|
+
|
|
218
|
+
```bash
|
|
219
|
+
agent-webex auth login
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
**If using a PAT**: Generate a new one at https://developer.webex.com/docs/getting-started
|
|
223
|
+
|
|
224
|
+
**If using a bot token**: Bot tokens don't expire. Double-check the full token was copied correctly.
|
|
225
|
+
|
|
226
|
+
### "Device authorization timed out"
|
|
227
|
+
|
|
228
|
+
You didn't approve the request in the browser before the code expired. Run `auth login` again:
|
|
229
|
+
|
|
230
|
+
```bash
|
|
231
|
+
agent-webex auth login
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
### "Device authorization failed"
|
|
235
|
+
|
|
236
|
+
Possible causes:
|
|
237
|
+
|
|
238
|
+
- Network connectivity issues
|
|
239
|
+
- Custom client ID is invalid or revoked
|
|
240
|
+
- Webex API is temporarily unavailable
|
|
241
|
+
|
|
242
|
+
### Rate Limiting (429 Too Many Requests)
|
|
243
|
+
|
|
244
|
+
Webex allows roughly 600 API calls per minute. Wait a few seconds and retry:
|
|
245
|
+
|
|
246
|
+
```bash
|
|
247
|
+
# Add delays between operations in scripts
|
|
248
|
+
sleep 1
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
### Space or Message Not Found
|
|
252
|
+
|
|
253
|
+
Webex uses opaque Base64-encoded IDs. You can't guess them. Always get IDs from `space list` or `snapshot` first:
|
|
254
|
+
|
|
255
|
+
```bash
|
|
256
|
+
agent-webex space list --pretty
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
### `agent-webex: command not found`
|
|
260
|
+
|
|
261
|
+
The npm package is `agent-messenger`, not `agent-webex`:
|
|
262
|
+
|
|
263
|
+
```bash
|
|
264
|
+
npm install -g agent-messenger
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
## AI Agent Integration
|
|
268
|
+
|
|
269
|
+
See [`skills/agent-webex/`](https://github.com/devxoul/agent-messenger/tree/main/skills/agent-webex) for:
|
|
270
|
+
|
|
271
|
+
- Complete skill documentation
|
|
272
|
+
- Common patterns and runnable templates
|
|
273
|
+
|
|
274
|
+
### Example: AI Agent Workflow
|
|
275
|
+
|
|
276
|
+
```bash
|
|
277
|
+
#!/bin/bash
|
|
278
|
+
# Example: Daily standup automation
|
|
279
|
+
|
|
280
|
+
# 1. Check auth
|
|
281
|
+
if ! agent-webex auth status | jq -e '.authenticated' > /dev/null 2>&1; then
|
|
282
|
+
echo "Not authenticated. Run 'agent-webex auth login' first."
|
|
283
|
+
exit 1
|
|
284
|
+
fi
|
|
285
|
+
|
|
286
|
+
# 2. Get workspace context
|
|
287
|
+
agent-webex snapshot --limit 5 > /tmp/webex-context.json
|
|
288
|
+
|
|
289
|
+
# 3. Send standup reminder
|
|
290
|
+
agent-webex message send $STANDUP_SPACE "Good morning! Time for standup."
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
### Send and Track Pattern
|
|
294
|
+
|
|
295
|
+
```bash
|
|
296
|
+
#!/bin/bash
|
|
297
|
+
# Send a message, then update it later
|
|
298
|
+
|
|
299
|
+
SPACE_ID="Y2lzY29zcGFyazovL..."
|
|
300
|
+
|
|
301
|
+
# Send initial status
|
|
302
|
+
RESULT=$(agent-webex message send "$SPACE_ID" "Deploying v2.1.0...")
|
|
303
|
+
MSG_ID=$(echo "$RESULT" | jq -r '.id')
|
|
304
|
+
|
|
305
|
+
# ... do work ...
|
|
306
|
+
sleep 5
|
|
307
|
+
|
|
308
|
+
# Update the message with final status
|
|
309
|
+
agent-webex message edit "$MSG_ID" "$SPACE_ID" "Deployed v2.1.0 successfully!"
|
|
310
|
+
```
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
{
|
|
2
2
|
"title": "TypeScript SDK",
|
|
3
|
-
"pages": ["slack", "discord", "teams", "whatsapp", "whatsappbot", "line", "instagram", "kakaotalk", "channeltalk", "channeltalkbot"]
|
|
3
|
+
"pages": ["slack", "discord", "teams", "webex", "whatsapp", "whatsappbot", "line", "instagram", "kakaotalk", "channeltalk", "channeltalkbot"]
|
|
4
4
|
}
|