iLink 协议连接微信,REST + WebSocket 连接前后端。无需额外中间件,全部在一个二进制里完成。
通过微信 iLink 协议接管会话,扫码登录后即可实时收发文字、图片、视频与文件消息。
浏览器通过 REST API 管理会话与配置,经 WebSocket 接收实时消息与状态变更,界面与后台始终同步。
从扫码连接到实时聊天,WongMod 提供完整的 Web 聊天界面、WebDAV 云存储、多会话管理和消息历史导出。
浏览器直接收发消息,支持文字、图片、视频、文件
媒体文件存到 WebDAV,节省本机磁盘空间
三级角色账号体系,每人独立管理自己的微信会话
完整消息记录,支持导出聊天记录为 HTML
原版 Zyn iLink ChatBox(Python 单文件,最新 v3.2.4)是轻量的多账号客户端;WongMod 把它重构成了可部署的多用户平台。下面从「定位总览、继承强化、新增、移除、行为差异」五个维度完整对比——包括我们刻意没有移植的东西。
| 维度 | 原版 · Python v3.2.4 | WongMod · Rust v3.2.5 |
|---|---|---|
| 运行形态 | Python 3.7+,启动时自动 pip 安装依赖(qrcode / pycryptodomex,含国内镜像探测) | 单二进制 + web/ 目录,零运行时依赖 |
| 用户体系 | 可选全局 Web 密码(单用户模式),或平级多账号(每账号一个微信 bot,无角色、无配额) | owner / admin / user 三级角色、邀请码注册、配额与功能开关、每用户独立 bot |
| 存储 | JSON 文件(config / messages / media_cache 散落目录) | SQLite 分库(system.db + 每用户 user.db)、自动迁移、配额、LRU 媒体清理 |
| 密码与凭证 | PBKDF2 100k 迭代(账号模式) | PBKDF2 600k 迭代 · AES-256-GCM 凭证加密 · Windows DPAPI 主密钥包装 |
| 消息能力 | 文本/图片/视频/文件/语音(收)收发,轮询界面 | 同等收发 + 语音发送 + SQLite 持久化 + 发送状态机 + HTML 导出 |
| 审计与合规 | — | 全量管理操作审计日志(默认 90 天)· S10 破坏性命令二次确认 |
| 服务化运维 | 手动运行 / 启动器热更新 | systemd / NSSM 服务 · iLinkWM 统一命令行 · 一键安装器(SHA-256 校验) |
| 内网穿透 | Serveo SSH 隧道(serveo.net,管理端可开关) | 内置 Serveo 隧道(加固:断线重连、子域校验、二次确认) |
| 安全审计 | — | 静态全量审计:0 高危 / 11 中危(9 已修复、2 风险接受),漏洞披露见 SECURITY.md |
| 开源协议 | Apache-2.0 | Apache-2.0(合规标注原仓库与原作者) |
| 维度 | 原版 · Python v3.2.4 | WongMod · Rust v3.2.5 |
|---|---|---|
| 微信绑定 | 扫码登录、添加联系人二维码(120 秒有效) | 扫码登录 + 会话过期检测与一键重新扫码(reauth)+ 一个账号可绑定多个微信 bot |
| 消息类型 | 文字 / 图片 / 视频 / 文件 / 语音(收) | 五种类型全部支持收发——语音发送在原版中函数未接线、界面无入口,WongMod 已完整接通 |
| 打字指示 | 输入中状态(sendtyping) | 输入中状态 + 收消息自动回执去抖(25 秒) |
| 媒体链路 | CDN 加密上传/下载、SILK/AMR→WAV 转码、缓存与预取 | 同链路 + 客户端直传(预签名 URL)、MD5 去重、7 天 TTL、5GB LRU 清理 |
| 消息历史 | 内存上限 500 条/用户、总计 2000 条 | SQLite 全量持久化、游标分页、按联系人清空/删除、HTML 导出 |
| 多微信账号 | 单进程多账号(accounts 注册表),共享一套 Web 界面 | 每 Web 用户独立 bot 实例互不干扰,可绑定多个微信账号 |
| 公告通知 | 管理员公告以【系统公告】文本消息群发到联系人 | 全局通知 + 分级广播(info / warn / error),WebSocket 推送并持久化 |
| IP 封禁 | banned_ips.json 列表,请求级 403 | IP/CIDR 封禁(可带过期时间)、30 秒缓存、fail-closed |
| 内网穿透 | Serveo SSH 隧道(serveo.net) | 同 Serveo,加固:指数退避自动重连、子域校验、公网来源自动加入放行名单 |
| 平台支持 | Windows / Linux / macOS / Termux(含国内 pip 镜像) | 同四平台 + 官方预编译包(Win x64 / Linux x64·arm64 / macOS arm64) |
| 维度 | 原版 · Python v3.2.4 | WongMod · Rust v3.2.5 |
|---|---|---|
| 多用户角色体系 | — | owner / admin / user 三级,邀请码注册(可过期)、禁用/启用、用户名保留名单、条款同意 |
| 配额与功能开关 | — | 5 维配额(上传/下载/媒体存储/每日消息数/媒体数量)+ 3 项功能开关,逐用户配置 |
| WebDAV 媒体外置 | — | 媒体一键迁移到用户自有 WebDAV(省磁盘)、流量节省模式、迁移进度与 ETA |
| Webhook 出站扩展 | — | 收消息实时转发到自定义地址(HMAC-SHA256 签名、SSRF 防护)——预留的 AI / 机器人扩展点 |
| WebSocket 实时推送 | — | 替代 500ms 轮询:消息、状态、发送回执、二维码状态全事件实时推送 |
| 发送可靠性 | — | 发送状态机 + 5 次指数退避重试、重启后自动恢复未完成发送、失败手动补发 |
| 会话与设备管理 | — | 登录防固定、改密/禁用即时全局吊销、remember-me 设备令牌列表与撤销 |
| 审计日志 | — | 管理操作全量记录,默认保留 90 天 |
| 安全加固 | — | 密码策略 + 弱密码黑名单、全端点限流、CSRF/Origin 校验、SSRF DNS 固定、安全响应头、公网绑定启动守卫、凭证加密落库 |
| 运维体系 | — | 7 步初始化向导、CLI 管理全套、systemd / NSSM 服务、一键安装 + SHA-256 校验 + 版本固定、自更新 |
| 维度 | 原版 · Python v3.2.4 | WongMod · Rust v3.2.5 |
|---|---|---|
| AI 能力全家桶 | 自动回复(gpt-3.5-turbo)、每用户提示词与媒体记忆、识图(gpt-4o)、生图(dall-e-3)、文件识别(PDF/DOCX/XLSX/PPTX)、定时主动消息、工具调用 | 当前版本不内置 AI;计划以 Webhook + 外部机器人配置在后续版本提供(迁移前请确认功能覆盖) |
| 邮箱验证与找回 | 邮箱注册、绑定邮箱、验证码 + 邮件找回密码(仅适配 QQ 邮箱,直连 QQ MX) | 邮箱仅作联系方式字段;密码重置由管理员 CLI 完成 |
| 全局 Web 密码模式 | 单密码保护整个 Web 界面(含 CAPTCHA 与找回流程) | 由账号体系取代;老库 web_password 自动迁移为 owner 账号 |
| 二维码门户 | 独立端口(1146)分享密码,访客扫码加微信 | 每个用户自行登录扫码绑定,不再需要公开门户 |
| 远程内容源(Gitee) | 拉取远程公告 Gg.txt、教程 jc.txt、版本提示 version.txt | 不拉取任何远程内容;公告由管理员本地发布,版本管理交给安装器 |
| 控制台直接收发 | REPL 可直接给联系人发消息、/switch 切换联系人 | 控制台仅保留管理命令;消息收发全部收敛到 Web 界面 |
| SESSION-REUSE 免密续期 | 无密码自动续期会话 | 移除,统一走会话 + 设备令牌(防会话固定) |
| 维度 | 原版 · Python v3.2.4 | WongMod · Rust v3.2.5 |
|---|---|---|
| 推送通道 | 500ms 轮询 + SSE | WebSocket 全事件推送(含发送回执) |
| 存储格式 | JSON 文件(无数据库) | SQLite 分库;启动时自动迁移老库(wechat_bot.db → owner 用户) |
| 密码哈希 | PBKDF2 100k 迭代 | PBKDF2 600k 迭代,登录时自动升级旧哈希 |
| 默认监听 | 0.0.0.0:1145(端口占用自动递增) | 127.0.0.1:8888(公网绑定需显式配置并过安全守卫) |
| 客户端 IP 可信度 | 无条件信任 X-Forwarded-For(可伪造) | 仅信任 ILINK_TRUSTED_PROXIES 配置的代理 |
| 媒体上传 | base64 塞进 JSON(10MB 上限) | multipart 直传(50MB)+ 魔数校验 MIME |
| 免密登录 | 浏览器 canvas 指纹 | 设备令牌(remember-me,可单独撤销) |
| 公告渠道 | 【系统公告】微信文本群发给所有联系人 | Web 通知 + 广播(不打扰微信联系人) |
| 更新方式 | 启动器热更新 | iLinkWM update:固定版本 + SHA-256 校验 + 保留数据 |
| 管理形态 | 控制台 3 个数字命令 | CLI admin 全套子命令 + Web 管理面板(破坏性命令二次身份确认) |
原版参考文件保留在仓库 reference/Zyn-iLink-ChatBox-v3.2.4.py(Apache-2.0 合规对照)。更细的迁移与升级说明见仓库 README 与 CHANGELOG。
AES-256-GCM 落库,Windows 主密钥经 DPAPI 机器作用域包装
所有数据保存在本地 SQLite,不上传任何第三方
SSRF 校验、登录限流、指纹快速登录、审计日志、CLI 二次确认
安装后使用 iLinkWM 命令:直接运行即启动程序;install-service 注册系统服务;update 自更新;uninstall 卸载。
正式版 v3.2.5:Release API 最多重试 3 次;固定版本 API 仍不可用时按资产名走备用直链,下载同名 SHA-256 后执行 --version 验证。无可用包时才回退源码编译。
正式版 v3.2.5:用户态安装到 ~/.local/share/iLinkWM,命令入口 ~/.local/bin/iLinkWM;固定版本 API 失败时使用可预测 Release 直链并校验、运行验证。root 执行 install-service 可注册 systemd 系统服务。
同时下载同名 .zip.sha256 放在 Windows 的 Downloads 中;安装器只扫描符合 ilink_wm_v<版本>_win_x64.zip 的文件,多版本取最新,并用 GitHub 远端 sidecar 对照。哈希异常会 warning 并询问是否继续。
安装后 ilink-wm1 与 iLinkWM 一同进入 PATH;预编译包见 GitHub Releases(Windows x64 / Linux x64·arm64 / macOS arm64 + 源码包,附 SHA-256 校验)。
WongMod 站在巨人的肩膀上。以下项目是本项目的参考来源:
原项目(Python):基于微信官方 iLink 接口的轻量客户端,本项目由其移植重构
开源 iLink 协议生态:协议文档与实现思路参考
本仓库维护者 · 个人主页 FrameCode.GT.TC ↗