基于 微信ClawBot (iLink) 实现的个人微信消息推送 API 服务。
它体积极小(≈10MB),内存占用极低(≈10MB),极易部署(Docker/二进制),极易调用(HTTP API)。
无额外依赖,独立运行,方便供其他程序请求,发送微信通知。
Tip
没错!个人微信消息推送它来了!再也不用折腾企业微信/第三方服务号了!
*当前灰度中,可用性待观察
- 多账号支持:支持同时登录多个微信号,每个账号独立推送、互不干扰
- 扫码登录:控制台直接打印二维码,微信扫码即可完成授权
- 持久化存储:登录凭证(Token、游标等)自动保存,重启后自动重连
- 命令行交互:内置简易控制台,可直接在终端中收发微信消息
- HTTP API:提供标准 RESTful 接口,支持通过 API 发送文本消息及设置“正在输入”状态
创建 docker-compose.yml 文件:
name: weclawbot-api
services:
weclawbot-api:
image: cp0204/weclawbot-api:latest
container_name: weclawbot-api
ports:
- "26322:26322"
volumes:
- ./config:/app/config
restart: unless-stoppeddocker run -d \
--name weclawbot-api \
-p 26322:26322 \
-v ./config:/app/config \
--restart unless-stopped \
cp0204/weclawbot-api:latest容器启动后,进入容器终端(sh),输入 bot 扫码登录,授权后的信息将保存在挂载的 config 目录下。
NAS 部署可通过 WebUI 进入容器终端,也可以在宿主机上通过以下命令进入:
# 宿主机进入容器终端
docker exec -it weclawbot-api botTip
授权成功后,在微信发一条消息给微信ClawBot,否则无法激活 API 发信。
Warning
请妥善保管 config/auth.json 文件及 api_token,不要泄露。
/login: 发起新的扫码登录流程/bots: 列出当前所有已登录bot_id及其api_token/bot <序号>: 切换当前活跃发送身份/del <序号>: 删除指定索引的 Bot 账号配置
Tip
新手省流版,发消息直接替换参数访问:
http://192.168.8.8:26322/bots/{bot_id}/messages?token={api_token}&text=Hello
API 支持 GET 和 POST 请求,兼容以下多种提交方式:
- GET
- POST
application/jsonapplication/x-www-form-urlencodedmultipart/form-data
所有接口均需验证 api_token(可通过 /bots 命令或查看 config/auth.json 获取)
你可以通过以下任一方式传递 Token:
- Header:
Authorization: Bearer <api_token> - Body/Query:
token=<api_token>
Endpoint: /bots/{bot_id}/messages
参数:
text: 消息文本内容。
示例:
# GET
curl http://192.168.8.8:26322/bots/{xxx@im.bot}/messages?token={api_token}&text=Hello# POST
curl -X POST http://192.168.8.8:26322/bots/{xxx@im.bot}/messages \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {api_token}" \
-d '{
"text": "Hello, this is a POST request!"
}'Endpoint: /bots/{bot_id}/typing
参数:
status:1=正在输入,2=停止输入
示例:
# GET
curl http://192.168.8.8:26322/bots/{xxx@im.bot}/typing?token={api_token}&status=1# POST
curl -X POST http://192.168.8.8:26322/bots/{xxx@im.bot}/typing \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {api_token}" \
-d '{
"status": 1
}'所有 API 均返回标准 JSON 结构:
成功响应 (200 OK):
{
"code": 200,
"message": "OK"
}错误响应 (4xx/5xx):
{
"code": 401,
"error": "Unauthorized"
}