本机 QQ 的 Satori v1 实现端,供 Koishi adapter-satori 连接。
当前按 QQ 9.3.60.40970(NT)核验。
- 在 vector 启用本模块,作用域勾选 QQ(
com.tencent.mobileqq)。 - 安装后重启 QQ。
- Koishi 配置
adapter-satori,endpoint指向http://127.0.0.1:3001。
本机 QQ 的 Satori v1 实现端,供 Koishi adapter-satori 连接。
当前按 QQ 9.3.60.40970(NT)核验。
com.tencent.mobileqq)。adapter-satori,endpoint 指向 http://127.0.0.1:3001。9/7/2026, 8:48:59 AM
IMPORTANCE_LOW)通知,随内核状态实时切换「运行中 / 等待登录 / 服务异常」,并显示账号、本地端口、事件连接数与在线时长,作为「机器人是否还活着」的直观指示。以 QQ 自身 Context 与通知权限发出,模块不声明任何权限;它不是前台服务、不提供保活权重。可用配置 status_notification: false 关闭。因随 QQ 身份发出,需 QQ 具备通知权限(Android 13+ 的 POST_NOTIFICATIONS,默认已授予;若手动关闭了 QQ 通知则不显示)。GET /healthz(本地免鉴权)健康探针:直接返回 online/listening/self_id/在线时长,把「真在线」与「端口在听但内核离线」分开——补齐既有「端口在听却隐性离线」盲区,机器可读,与通知栏状态同源。docs/ARCHITECTURE.md 新增「可观测性」说明:进程内不做保活,只做 HTTP 自愈(accept 循环 3s 重绑)与状态上报(healthz + 通知)。
⚠️ 本版签名密钥变更,无法覆盖安装。升级前请先卸载旧版模块,再安装本版 APK,
然后在 vector/LSPosed 中重新启用模块并勾选 QQ 作用域,最后重启 QQ。
9/5/2026, 7:07:54 AM
session 长期为空,所有发送以 kernel offline or not ready 失败,而 HTTP 端口与 QQ 前台状态均无从区分该情形。getMsgService/getGroupService),QQ 正常运行时会频繁调用它们,据此捕获活动会话对象,数秒内自愈且无需重启 QQ;已捕获时经无锁身份校验短路,热路径零额外开销。9/4/2026, 5:43:20 AM
MsgRecord.senderRoleType 与 RevokeElement.senderUid 被移除,缺失的可选字段不再导致入站消息或撤回事件丢失;改从群成员缓存解析群主/管理员角色。9/2/2026, 11:16:08 PM
LSPosedPackageProbe 的实测命中路径):构建新增隐身变体 build/SatoriQQ.stealth.apk,清单不含任何 xposed* meta-data,消除跨应用包扫描(getInstalledApplications(GET_META_DATA))对本模块的唯一可见命中。SatoriQQ.apk)保持原样:vector/LSPosed 首次列模块与注册仍需 meta-data;守护进程对已启用模块只认 assets/xposed_init,PACKAGE_REPLACED 不触发再校验,因此「先启用、再 pm install -r 隐身包」可长期共存,升级版本照常。./build.sh 第 7 步用 aapt dump xmltree 断言双 APK 的 meta-data 面(引导 ≥4 条、隐身 =0),防止回归;新增 ManifestStealthTest 校验双清单的包名/版本/标签同步契约。9/2/2026, 9:11:43 AM
forward_mode:auto(原生优先,fake 兜底)/ native(自聊脚手架)/ fake(SsoSendLongMsg 卡片)。QQNT 9.3.55 实测只有原生卡片能正常点开。msgId,可被 message.delete 撤回;卡片自动入本地存档,可按 QQ msgId 回查与快照。[CQ:json] / [CQ:lightapp] 卡片不再因载荷含逗号或括号而截断,reply/forward 等段类型补齐。key= 边界分割,值内含逗号不再误切。message.list 查询,保证新发卡片可靠可见、可管理。9/1/2026, 9:08:50 PM
message_search:在单个会话的近期 QQ 本地历史中按关键词、发送者与时间范围搜索,扫描范围有硬上限并支持续查。group_anniversary:提供近期入群周年日历、周年数和倒计时,正确处理设备时区与 2 月 29 日。random_team:按指定成员、角色或近期活跃度生成安全随机且人数均衡的分队结果。msgId,并兼容旧版本曾发出的 msgSeq 引用。internal/status 在总反检测开关关闭时不再错误报告子功能为启用。9/1/2026, 3:41:38 PM
group_active:按最后发言时间给出群「潜水榜 / 活跃榜」,支持 order、days、role、limit,并统计从未发言人数。member_info:一次取回单个群成员的角色、群名片、头衔、等级、入群与最后发言时间,免去遍历成员列表。random_member:群随机点名 / 抽奖,支持 count、排除自己 / 管理、限定近 N 天活跃,采用无重复的 Fisher–Yates 抽取。internal/capabilities 与文档同步登记上述动作。8/31/2026, 1:51:53 PM
msgId 去重,避免 Bot 回复期间误吞客户端连发消息8/31/2026, 7:12:19 AM
qq-client:{QQ号} 虚拟身份投递到 Koishi,避免 Core 忽略 self 消息onAddSendMsg 入站处理peer_id 路由