Files
hkuds--nanobot/docs/guides/wechat-ai-agent.md
T
wehub-resource-sync ba1d0b91a4
Test Suite / webui (push) Failing after 1s
Test Suite / test (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:06:36 +08:00

2.4 KiB

Build a WeChat AI Agent with nanobot

This guide connects nanobot to WeChat through the weixin channel. The channel uses HTTP long polling with QR-code login through the supported upstream API.

What this guide builds

  • the weixin channel enabled in nanobot
  • a QR-code login session
  • one pairing-approved WeChat sender
  • a running gateway for message delivery

Prerequisites

  • A working local nanobot reply:
nanobot agent -m "Hello!"
  • A WeChat account that can complete QR-code login.

Install nanobot

python -m pip install nanobot-ai
nanobot onboard --wizard

Enable the WeChat channel

Install the optional channel dependency:

nanobot plugins enable weixin

Merge this snippet into ~/.nanobot/config.json:

{
  "channels": {
    "weixin": {
      "enabled": true
    }
  }
}

Omitting allowFrom enables pairing-only mode. The first private WeChat message from a new sender gets a pairing code instead of agent access.

Log in:

nanobot channels login weixin

Use --force if you need to discard saved login state and authenticate again.

Run nanobot gateway

nanobot channels status
nanobot gateway

Test a message

Send a private WeChat message to the bot. It should reply with a pairing code. Approve it from a trusted local surface:

nanobot agent -m "/pairing approve ABCD-EFGH"

Send the message again after approval and watch gateway logs for the sender ID and reply.

Security notes

  • Prefer pairing-only mode for first setup. Add allowFrom only when you want a static allowlist.
  • Treat saved login state as sensitive account access.
  • Avoid connecting personal accounts to untrusted workspaces or broad tool permissions.

Troubleshooting

  • If login fails, rerun nanobot channels login weixin --force.
  • If a first private message returns a pairing code, that is expected. Approve the code before testing normal agent replies.
  • If messages are denied without a pairing code, check gateway logs for whether WeChat provided the context token required for nanobot to reply.
  • If polling disconnects, restart the gateway and check network reachability to the upstream service.

Next: memory, automations, MCP tools