什么是 Waylay
Waylay 是一个轻量级的 NTQQ 无头桥接工具,使用纯 JavaScript 编写,内置 OneBot v11 + Milky 协议支持。
工作原理
Bot 框架 (Yunzai / Koishi) ←→ Waylay (OneBot v11 / Milky) ←→ wrapper.node ←→ QQ 服务器Waylay 运行在 QQ 的 Electron 进程中:
- 补丁 QQ 的
package.json入口点,加载自定义代码 - 直接
require()NTQQ 的wrapper.node原生模块 - 调用
NodeIQQNTWrapperEngine初始化 QQ 内核 - 通过
NodeIKernelLoginService处理登录(扫码或快速登录) - 创建
NodeIQQNTWrapperSession会话,注册全部内核事件监听 - 对外暴露 OneBot v11 WebSocket、Milky HTTP/WS/SSE、LLOneBot 兼容 Bridge WebSocket
- 同端口提供基于 Waylay 设计系统的 Web 控制台(落地页 / 文档 / 登录二维码 /
/api/status),无需额外服务
项目定位
Waylay 的核心理念是极简 — 用最少的代码完成 QQ Bot 桥接。适合:
- 资源有限的服务器(VPS、树莓派等)
- 偏好简洁部署、不需要复杂功能的用户
- 想要学习 NTQQ 内核 API 的开发者
技术参数
| 指标 | 数值 |
|---|---|
| 源码规模 | ~4,000 行 / 13 个 JS 文件 |
| 运行时依赖 | 1 个(ws) |
| node_modules 大小 | 208 KB |
| 运行内存 | ~150 MB(含 QQ 内核) |
| 查询响应 | < 1ms(事件驱动缓存) |
| 支持的 QQ 版本 | QQ 3.2.27 Linux amd64 |
致谢
感谢以下项目:
- NapCatQQ — 基于 NTQQ 的无头 Bot 框架
- LLOneBot — NTQQ 的 OneBot 协议实现
- OneBot v11 — 统一的 Bot 协议标准