Back to Chatgpt On Wechat

WeCom Bot

docs/channels/wecom-bot.mdx

2.1.33.6 KB
Original Source

Connect CowAgent via WeCom AI Bot, supporting both internal direct messages and group chats. No public IP required — uses a WebSocket long connection, with Markdown rendering and streaming output.

<Note> WeCom Bot and WeCom App are two different integration methods. WeCom Bot uses a WebSocket long connection and requires no public IP or domain, making setup much simpler. </Note>

1. Connection methods

No need to create the bot ahead of time. Start CowAgent and open the Web console (local URL: http://127.0.0.1:9899/), go to the Channels tab, click Connect Channel, choose WeCom Bot, switch to QR scan mode, and scan the QR code with WeCom — bot creation and connection complete automatically.

<Note> After a successful scan, you can further configure the bot (name, avatar, visibility scope, etc.) in **WeCom Workbench → AI Bot**. </Note>

Option B: Manual creation

Create the AI Bot in WeCom and obtain the Bot ID and Secret, then connect via the Web console or config file.

Step 1: Create the AI Bot

  1. Open the WeCom client, go to Workbench, and click AI Bot:

  2. Click Create Bot → Manual Creation:

  3. Scroll to the bottom of the right panel and select API Mode:

  4. Set the bot name, avatar, and visibility scope. Choose Long Connection mode, save the Bot ID and Secret, then click Save.

Step 2: Connect to CowAgent

<Tabs> <Tab title="Web Console"> Open the Web console, go to the **Channels** tab, click **Connect Channel**, choose **WeCom Bot**, switch to **Manual** mode, enter the Bot ID and Secret, and click Connect. </Tab> <Tab title="Config File"> Add the following to `config.json`, then start CowAgent:
```json
{
  "channel_type": "wecom_bot",
  "wecom_bot_id": "YOUR_BOT_ID",
  "wecom_bot_secret": "YOUR_SECRET"
}
```

| Parameter | Description |
| --- | --- |
| `wecom_bot_id` | Bot ID of the AI Bot |
| `wecom_bot_secret` | Secret of the AI Bot |
</Tab> </Tabs>

The log line [WecomBot] Subscribe success confirms the connection is established.

<Note> A **webhook (HTTP callback) mode** is also supported: when creating the bot, choose **Use URL callback**, set the receive-message URL to `http(s)://<your-domain-or-ip>:9892/wecombot`, and copy the Token and EncodingAESKey from that page. This mode needs a publicly reachable address and does not support file sending or scheduled push, so the long connection is generally recommended. The corresponding `config.json`:
json
{
  "channel_type": "wecom_bot",
  "wecom_bot_mode": "webhook",
  "wecom_bot_token": "YOUR_TOKEN",
  "wecom_bot_encoding_aes_key": "YOUR_ENCODING_AES_KEY",
  "wecom_bot_port": 9892
}
</Note>

2. Supported features

FeatureStatus
Direct chat
Group chat (@bot)
Text messages✅ Send / Receive
Image messages✅ Send / Receive
File messages✅ Send / Receive
Streaming replies
Scheduled push messages

3. Usage

Search for the bot's name inside WeCom to start a direct chat.

To use the bot in an internal group chat, add it to the group and @-mention it.