Loading...
Loading...
Interact with Channel Talk workspaces using API credentials - send messages, read chats, manage groups and bots
npx skill4agent add devxoul/agent-messenger agent-channeltalkbot@nameblocks[{ type: "text", value: "..." }]# Set your API credentials
agent-channeltalkbot auth set your-access-key your-access-secret
# Verify authentication
agent-channeltalkbot auth status
# Get a workspace overview
agent-channeltalkbot snapshot --pretty
# Send a message to a UserChat
agent-channeltalkbot message send abc123-chat-id "Hello from the CLI!"
# Send a message to a Group
agent-channeltalkbot message send @support "Team update: deployment complete"# Set credentials (validates against Channel Talk API before saving)
agent-channeltalkbot auth set your-access-key your-access-secret
# Check auth status
agent-channeltalkbot auth status
# Clear stored credentials
agent-channeltalkbot auth clear~/.config/agent-messenger/MEMORY.mdReadWrite~/.config/agent-messenger/MEMORY.mdRead~/.config/agent-messenger/MEMORY.mdWriteauth listsnapshotgroup listsnapshotchat listmanager listbot listauth botWrite@nameMEMORY.md# Agent Messenger Memory
## Channel Talk Workspaces
- `abc123` - Acme Support
## Default Bot (Acme Support)
- Support Bot
## Groups (Acme Support)
- `grp_111` - @support (Support Inbox)
- `grp_222` - @billing (Billing Inbox)
- `grp_333` - @engineering (Engineering)
## Recent UserChats (Acme Support)
- `uc_aaa` - John Doe inquiry (opened)
- `uc_bbb` - Refund request (closed)
## Managers (Acme Support)
- `mgr_001` - Alice (Team Lead)
- `mgr_002` - Bob (Support Agent)
## Bots (Acme Support)
- Support Bot (default, used for auto-replies)
- Notification Bot (used for alerts)
## Aliases
- "support" -> `grp_111` (@support in Acme Support)
## Notes
- Support Bot is used for closing chats and auto-replies
- Notification Bot is used for CI/CD alerts to @engineeringMemory lets you skip repeatedandgroup listcalls. When you already know an ID from a previous session, use it directly.chat list
# Set workspace credentials (validates against API)
agent-channeltalkbot auth set <access-key> <access-secret>
# Check auth status
agent-channeltalkbot auth status
# Clear all credentials
agent-channeltalkbot auth clear
# List stored workspaces
agent-channeltalkbot auth list
# Switch active workspace
agent-channeltalkbot auth use <workspace-id>
# Remove a stored workspace
agent-channeltalkbot auth remove <workspace-id>
# Set default bot name for sending messages
agent-channeltalkbot auth bot <name># Show current authenticated bot
agent-channeltalkbot whoami
agent-channeltalkbot whoami --pretty
agent-channeltalkbot whoami --workspace <workspace-id># Send a message to a UserChat or Group
agent-channeltalkbot message send <target> <text>
agent-channeltalkbot message send abc123-chat-id "Hello!"
agent-channeltalkbot message send @support "Team update"
# List messages from a UserChat or Group
agent-channeltalkbot message list <target>
agent-channeltalkbot message list abc123-chat-id --limit 50
# Get a specific message by ID
# Note: Searches the latest 100 messages. Older messages may not be found.
agent-channeltalkbot message get <target> <message-id>
@--type userchat--type group# List UserChats (default: opened)
agent-channeltalkbot chat list
agent-channeltalkbot chat list --state opened
agent-channeltalkbot chat list --state snoozed
agent-channeltalkbot chat list --state closed
# Get a specific UserChat
agent-channeltalkbot chat get <chat-id>
# Close a UserChat (requires --bot or default bot)
agent-channeltalkbot chat close <chat-id>
agent-channeltalkbot chat close <chat-id> --bot "Support Bot"
# Delete a UserChat (requires --force)
agent-channeltalkbot chat delete <chat-id> --force# List groups
agent-channeltalkbot group list
# Get a group by ID or @name
agent-channeltalkbot group get <group>
agent-channeltalkbot group get @support
# Get messages from a group
agent-channeltalkbot group messages <group>
agent-channeltalkbot group messages @support --limit 50# List all managers
agent-channeltalkbot manager list
# Get a specific manager
agent-channeltalkbot manager get <manager-id># List all bots
agent-channeltalkbot bot list
# Create a new bot
agent-channeltalkbot bot create <name>
agent-channeltalkbot bot create "Deploy Bot" --color "#FF5733" --avatar-url "https://example.com/avatar.png"
# Delete a bot (requires --force)
agent-channeltalkbot bot delete <bot-id> --force# Brief snapshot (default) — fast, minimal API calls
agent-channeltalkbot snapshot
# Full snapshot — includes messages, managers, bots (slow, large output)
agent-channeltalkbot snapshot --full
# Filtered full snapshots
agent-channeltalkbot snapshot --full --groups-only
agent-channeltalkbot snapshot --full --chats-only
# Limit messages per group/chat (only with --full)
agent-channeltalkbot snapshot --full --limit 10--full{
"id": "msg_abc123",
"chat_id": "uc_def456",
"person_type": "bot",
"plain_text": "Hello world",
"created_at": 1705312200000
}--prettyagent-channeltalkbot group list --pretty| Option | Description |
|---|---|
| Human-readable output instead of JSON |
| Use a specific workspace for this command |
| Use a specific bot name for this command |
references/common-patterns.mdtemplates/post-message.shmonitor-chat.shworkspace-summary.sh{
"error": "No credentials. Run \"auth set <access-key> <access-secret>\" first."
}No credentialsWorkspace not foundBot name is requiredUse --force to confirm deletion~/.config/agent-messenger/channeltalkbot-credentials.json{
"current": { "workspace_id": "abc123" },
"workspaces": {
"abc123": {
"workspace_id": "abc123",
"workspace_name": "My Workspace",
"access_key": "...",
"access_secret": "..."
}
},
"default_bot": "Support Bot"
}| Feature | agent-channeltalk | agent-channeltalkbot |
|---|---|---|
| Auth type | Cookie extraction (browser) | API credentials (access key/secret) |
| Token source | Auto-extracted from session | Channel Talk admin Open API |
| Acts as | Manager (you) | Bot (named identity) |
| Send group messages | Yes | Yes (requires bot name) |
| Send user-chat reply | Yes | Yes |
| Manage bots | No | Yes (create / delete) |
| Workspace snapshot | Yes | Yes |
| Search messages | Yes (UI search) | No (API limitation) |
| CI/CD friendly | Requires browser session | Yes (just set access key/secret) |
agent-channeltalkbot: command not foundagent-channeltalkbotagent-messengeragent-channeltalkbotagent-channeltalkbot message send abc123-chat-id "Hello"npx -ynpx -y agent-messenger channeltalkbot message send abc123-chat-id "Hello"Note: If the user prefers a different package runner (e.g.,,bunx,pnpx), use that instead.pnpm dlx
npx agent-channeltalkbotbunx agent-channeltalkbotpnpm dlx agent-channeltalkbotagent-channeltalkbotagent-channeltalkbot auth set <access-key> <access-secret>Retry-Afterauth bot <name>--bot <name>bot list