feat: add WeChat QR code login and AGP WebSocket channel plugin

- Auth module: WeChat OAuth2 scan-to-login flow with terminal QR code
- Token persistence to ~/.openclaw/wechat-access-auth.json (chmod 600)
- Token resolution: config > saved state > interactive login
- Invite code verification (configurable bypass)
- Production/test environment support
- AGP WebSocket client with heartbeat, reconnect, wake detection
- Message handler: Agent dispatch with streaming text and tool calls
- Random device GUID generation (persisted, no real machine ID)
This commit is contained in:
HenryXiaoYang
2026-03-10 02:29:06 +08:00
commit ba754ccc31
33 changed files with 14992 additions and 0 deletions

38
openclaw.plugin.json Normal file
View File

@@ -0,0 +1,38 @@
{
"id": "wechat-access",
"channels": ["wechat-access"],
"configSchema": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean",
"description": "是否启用服务号渠道"
},
"token": {
"type": "string",
"description": "WebSocket 连接 token手动配置时使用"
},
"wsUrl": {
"type": "string",
"description": "WebSocket 网关地址"
},
"bypassInvite": {
"type": "boolean",
"description": "跳过邀请码验证"
},
"authStatePath": {
"type": "string",
"description": "自定义 token 持久化路径"
},
"environment": {
"type": "string",
"enum": ["production", "test"],
"description": "API 环境production / test"
},
"accounts": {
"type": "object",
"description": "多账号配置"
}
}
}
}