feat: expose wechat frida routes and coverage matrix

This commit is contained in:
Manus AI
2026-05-19 00:33:32 +08:00
parent 2aadc1dd46
commit 33a317ef85
5 changed files with 1199 additions and 1 deletions

View File

@@ -17,7 +17,7 @@ from pathlib import Path
import markdown
from config import settings
from routers import devices, unified, agent, adb, experience, projects, qrcode, voice, capture, hook_modules, connection, gateway, registry_cluster, discovery, cunke_bao
from routers import devices, unified, agent, adb, experience, projects, qrcode, voice, capture, hook_modules, connection, gateway, registry_cluster, discovery, cunke_bao, frida_wireless, wechat_full
from services.ws_hub import ws_hub
from services.device_manager import device_manager
@@ -604,6 +604,8 @@ app.include_router(gateway.router, prefix="/api/v3", tags=["外部对接网关"]
app.include_router(registry_cluster.router, tags=["多服务器注册中心"])
app.include_router(discovery.router, tags=["设备发现"])
app.include_router(cunke_bao.router, prefix="/api/v3", tags=["存客宝对接"])
app.include_router(frida_wireless.router, prefix="/api/v3", tags=["Frida无线管理"])
app.include_router(wechat_full.router, prefix="/api/v3", tags=["微信全量操作"])
# ========== 健康检查 ==========

View File

@@ -350,3 +350,23 @@
| 2026-05-18 21:23 | v6 真实操作验证 | 阿机+阿桥 | Atlas | 完成 | 发消息 发朋友圈 加好友 付款分析 | 用Frida纯后端无界面执行4个操作消息写入DB(msgId:1779110600010)、朋友圈写入StarSnsInfo(snsId:-5042527660890804000)、好友申请构造钱包DB读取message表20列/StarSnsInfo表18列已确认微信主界面截图27条未读/21个置顶GitHub commit: 31866df | [[dev_log_v6_20260518.md]] |
| 2026-05-18 13:56 | 卡若AI | v8-fix全量接口验证 | 24/26通过(92%) | 好友4991/群50/标签165/图片83069/视频792/收藏10/红包1/视频号2 | API接口文档v8fix.md | 朋友圈DB需先打开界面触发加载消息写入本地DB成功钱包可读取视频号2联系人 |
---
## 2026-05-19 00:35 追加记录AI Skill 安装、微信全量路由接线与真实覆盖矩阵
| 时间 | 人设=浏览器 | 对话链接 | 用户对话整理/扫描 | 本轮完成 | 相关文件链接 | 总进度 | 当前进度 | 本地同步状态 |
|---|---|---|---|---|---|---:|---:|---|
| 2026-05-19 00:35 CST | Codex/本地终端未获取到 Manus/Atlas 公开链接 | 当前 Codex 本地对话未生成公开访问链接 | 用户要求安装 `/Users/karuo/Downloads/ai.zip` `/Users/karuo/Downloads/机擎.zip` 两个 AI skill参考 `iteration_20260518_185854.zip``iteration_20260518_195036.zip``iteration_20260518_213029.zip`延续工作手机开发文档和进度继续完成微信/SDK/手机控制接口并测试扫描结论两个 skill 可安装三个 iteration 包主要提示112/110项能力已规划但需真机验证与数据结构确认”;本地 SDK 存在 `skill_v2` 110动作规划`wechat_full.py` 62个新增路由`wechat_api_v9_final.js` 42个真实 RPC 导出 | 1. 已安装 `karuo-ai-unified` `jiqi-web-dev-orchestrator` 到本机 Codex skills2. 已在 `sdk/app/main.py` 挂载 `frida_wireless.router` `wechat_full.router`HTTP OpenAPI 可见 `/api/v3/frida/*` 13条和 `/api/v3/wechat/*` 64条微信相关路径3. 已完成语法编译FastAPI 离线 OpenAPIHTTP `/health` 验收4. 真机非破坏性状态采集成功设备 `xgfe65eimrrofyws` / `2312DRAABC`微信 PID `20420`当前焦点在微信朋友圈页面5. 已生成 mock 验证报告和真实覆盖矩阵明确区分 mock 通过与真机 RPC 真实覆盖 | [[开发文档/6测试/110项功能逐项确认/2026-05-19/微信SDK真实覆盖矩阵_追加版_20260519_0033.md]][[开发文档/6测试/110项功能逐项确认/2026-05-19/微信SDK真实覆盖矩阵_20260519_0033.json]][[开发文档/6测试/Frida无线控制验证报告_20260519_002820.md]]`/Users/karuo/.codex/skills/karuo-ai-unified/SKILL.md``/Users/karuo/.codex/skills/jiqi-web-dev-orchestrator/SKILL.md``sdk/app/main.py` | 52% | 本轮约 100% | 本地文件写入成功 GitHub 同步 |
### 卡若AI复盘2026-05-19 00:35
**目标&结果**目标是安装两个 AI skill参考三个迭代包继续推进工作手机微信/SDK/手机控制接口结果skill 已安装服务端缺失路由已挂载OpenAPI HTTP 健康检查通过真实覆盖矩阵已生成全量真机 RPC 尚未完成当前以 42 v9 真实 RPC 导出为准
**过程**检查本机 Node/Python/ADB/gh/git 解压并审查 zip 安装本地 skill 读取开发文档与 SDK 发现 `skill_v2` 规划动作和 `wechat_api_v9_final.js` 实际 RPC 数量不一致 补挂 `/api/v3/frida/*` `/api/v3/wechat/*` 编译和 OpenAPI 验证 采集真机状态 写入追加文档
**反思**历史文档里mock 100%”容易被误解为真机 100%”。后续必须按三层口径记录服务端路由Hook RPC 导出真机执行证据
**总结**本轮完成接口接线skill 安装和事实校准给后续继续开发微信控制接口建立了可追踪矩阵
**下一步执行**优先补齐 v9 Hook 中缺失的读类 RPC并按矩阵分批真机验证写类动作必须使用测试对象和显式参数禁止默认触发支付改密解绑删好友等高风险动作

View File

@@ -0,0 +1,866 @@
{
"generated_at": "2026-05-19 00:33 CST",
"summary": {
"skill_v2_actions": 110,
"module_actions": 106,
"modules": 25,
"wechat_full_routes": 62,
"v9_rpc_exports": 42,
"skill_actions_matched_v9_rpc": 13,
"skill_actions_missing_v9_rpc": 97,
"unmapped_v9_rpc_exports": 29
},
"device": {
"serial": "xgfe65eimrrofyws",
"model": "2312DRAABC",
"wechat_pid": "20420",
"focus": "mCurrentFocus=Window{1263395 u0 NotificationShade}; mFocusedApp=ActivityRecord{42fdc4a u0 com.tencent.mm/.plugin.sns.ui.SnsTimeLineUI} t1839}"
},
"rows": [
{
"module": "H15",
"module_name": "消息接收",
"action": "get_messages",
"rpc": "getMessages",
"rpc_in_v9": true
},
{
"module": "H15",
"module_name": "消息接收",
"action": "get_recent_messages",
"rpc": "getRecentMessages",
"rpc_in_v9": true
},
{
"module": "H15",
"module_name": "消息接收",
"action": "search_messages",
"rpc": "searchMessages",
"rpc_in_v9": false
},
{
"module": "H16",
"module_name": "联系人",
"action": "get_contact_info",
"rpc": "getContactInfo",
"rpc_in_v9": false
},
{
"module": "H16",
"module_name": "联系人",
"action": "get_contacts",
"rpc": "getContacts",
"rpc_in_v9": true
},
{
"module": "H16",
"module_name": "联系人",
"action": "search_contacts",
"rpc": "searchContacts",
"rpc_in_v9": true
},
{
"module": "H17",
"module_name": "消息发送",
"action": "send_group_message",
"rpc": "sendGroupMessage",
"rpc_in_v9": false
},
{
"module": "H17",
"module_name": "消息发送",
"action": "send_message",
"rpc": "sendMessage",
"rpc_in_v9": true
},
{
"module": "H18",
"module_name": "好友请求",
"action": "get_friend_requests",
"rpc": "getFriendRequests",
"rpc_in_v9": false
},
{
"module": "H19",
"module_name": "好友管理",
"action": "accept_friend",
"rpc": "acceptFriend",
"rpc_in_v9": false
},
{
"module": "H19",
"module_name": "好友管理",
"action": "add_friend",
"rpc": "addFriend",
"rpc_in_v9": true
},
{
"module": "H19",
"module_name": "好友管理",
"action": "add_friend_by_qr",
"rpc": "addFriendByQr",
"rpc_in_v9": false
},
{
"module": "H19",
"module_name": "好友管理",
"action": "delete_friend",
"rpc": "deleteFriend",
"rpc_in_v9": false
},
{
"module": "H19",
"module_name": "好友管理",
"action": "set_friend_remark",
"rpc": "setFriendRemark",
"rpc_in_v9": false
},
{
"module": "H20",
"module_name": "朋友圈发布",
"action": "delete_moments",
"rpc": "deleteMoments",
"rpc_in_v9": false
},
{
"module": "H20",
"module_name": "朋友圈发布",
"action": "post_moments",
"rpc": "postMoments",
"rpc_in_v9": false
},
{
"module": "H21",
"module_name": "朋友圈浏览",
"action": "comment_moments",
"rpc": "commentMoments",
"rpc_in_v9": false
},
{
"module": "H21",
"module_name": "朋友圈浏览",
"action": "get_moments",
"rpc": "getMoments",
"rpc_in_v9": true
},
{
"module": "H21",
"module_name": "朋友圈浏览",
"action": "like_moments",
"rpc": "likeMoments",
"rpc_in_v9": false
},
{
"module": "H22",
"module_name": "群管理",
"action": "create_group",
"rpc": "createGroup",
"rpc_in_v9": false
},
{
"module": "H22",
"module_name": "群管理",
"action": "get_group_info",
"rpc": "getGroupInfo",
"rpc_in_v9": false
},
{
"module": "H22",
"module_name": "群管理",
"action": "get_group_members",
"rpc": "getGroupMembers",
"rpc_in_v9": true
},
{
"module": "H22",
"module_name": "群管理",
"action": "get_groups",
"rpc": "getGroups",
"rpc_in_v9": true
},
{
"module": "H22",
"module_name": "群管理",
"action": "invite_to_group",
"rpc": "inviteToGroup",
"rpc_in_v9": false
},
{
"module": "H22",
"module_name": "群管理",
"action": "quit_group",
"rpc": "quitGroup",
"rpc_in_v9": false
},
{
"module": "H22",
"module_name": "群管理",
"action": "remove_from_group",
"rpc": "removeFromGroup",
"rpc_in_v9": false
},
{
"module": "H22",
"module_name": "群管理",
"action": "set_group_announcement",
"rpc": "setGroupAnnouncement",
"rpc_in_v9": true
},
{
"module": "H22",
"module_name": "群管理",
"action": "set_group_name",
"rpc": "setGroupName",
"rpc_in_v9": false
},
{
"module": "H23",
"module_name": "账号管理",
"action": "check_account_status",
"rpc": "checkAccountStatus",
"rpc_in_v9": false
},
{
"module": "H23",
"module_name": "账号管理",
"action": "get_profile",
"rpc": "getProfile",
"rpc_in_v9": false
},
{
"module": "H23",
"module_name": "账号管理",
"action": "set_avatar",
"rpc": "setAvatar",
"rpc_in_v9": false
},
{
"module": "H23",
"module_name": "账号管理",
"action": "set_nickname",
"rpc": "setNickname",
"rpc_in_v9": false
},
{
"module": "H23",
"module_name": "账号管理",
"action": "set_region",
"rpc": "setRegion",
"rpc_in_v9": false
},
{
"module": "H23",
"module_name": "账号管理",
"action": "set_sex",
"rpc": "setSex",
"rpc_in_v9": false
},
{
"module": "H23",
"module_name": "账号管理",
"action": "set_signature",
"rpc": "setSignature",
"rpc_in_v9": false
},
{
"module": "H23",
"module_name": "账号管理",
"action": "set_what_up",
"rpc": "setWhatUp",
"rpc_in_v9": false
},
{
"module": "H24",
"module_name": "账号安全",
"action": "bind_phone",
"rpc": "bindPhone",
"rpc_in_v9": false
},
{
"module": "H24",
"module_name": "账号安全",
"action": "change_password",
"rpc": "changePassword",
"rpc_in_v9": false
},
{
"module": "H24",
"module_name": "账号安全",
"action": "enable_fingerprint",
"rpc": "enableFingerprint",
"rpc_in_v9": false
},
{
"module": "H24",
"module_name": "账号安全",
"action": "get_login_devices",
"rpc": "getLoginDevices",
"rpc_in_v9": false
},
{
"module": "H24",
"module_name": "账号安全",
"action": "remove_login_device",
"rpc": "removeLoginDevice",
"rpc_in_v9": false
},
{
"module": "H24",
"module_name": "账号安全",
"action": "set_account_protection",
"rpc": "setAccountProtection",
"rpc_in_v9": false
},
{
"module": "H24",
"module_name": "账号安全",
"action": "unbind_phone",
"rpc": "unbindPhone",
"rpc_in_v9": false
},
{
"module": "H24",
"module_name": "账号安全",
"action": "unblock_self",
"rpc": "unblockSelf",
"rpc_in_v9": false
},
{
"module": "H25",
"module_name": "支付",
"action": "get_transaction_history",
"rpc": "getTransactionHistory",
"rpc_in_v9": false
},
{
"module": "H25",
"module_name": "支付",
"action": "get_wallet_balance",
"rpc": "getWalletBalance",
"rpc_in_v9": false
},
{
"module": "H25",
"module_name": "支付",
"action": "receive_red_packet",
"rpc": "receiveRedPacket",
"rpc_in_v9": false
},
{
"module": "H25",
"module_name": "支付",
"action": "receive_transfer",
"rpc": "receiveTransfer",
"rpc_in_v9": false
},
{
"module": "H25",
"module_name": "支付",
"action": "send_red_packet",
"rpc": "sendRedPacket",
"rpc_in_v9": false
},
{
"module": "H25",
"module_name": "支付",
"action": "send_transfer",
"rpc": "sendTransfer",
"rpc_in_v9": false
},
{
"module": "H26",
"module_name": "二维码",
"action": "generate_group_qr_code",
"rpc": "generateGroupQrCode",
"rpc_in_v9": false
},
{
"module": "H26",
"module_name": "二维码",
"action": "generate_my_qr_code",
"rpc": "generateMyQrCode",
"rpc_in_v9": false
},
{
"module": "H26",
"module_name": "二维码",
"action": "scan_qr_code",
"rpc": "scanQrCode",
"rpc_in_v9": false
},
{
"module": "H27",
"module_name": "视频号",
"action": "browse_channels",
"rpc": "browseChannels",
"rpc_in_v9": false
},
{
"module": "H27",
"module_name": "视频号",
"action": "comment_channel_video",
"rpc": "commentChannelVideo",
"rpc_in_v9": false
},
{
"module": "H27",
"module_name": "视频号",
"action": "follow_channel",
"rpc": "followChannel",
"rpc_in_v9": false
},
{
"module": "H27",
"module_name": "视频号",
"action": "like_channel_video",
"rpc": "likeChannelVideo",
"rpc_in_v9": false
},
{
"module": "H27",
"module_name": "视频号",
"action": "share_channel_video",
"rpc": "shareChannelVideo",
"rpc_in_v9": false
},
{
"module": "H27",
"module_name": "视频号",
"action": "unfollow_channel",
"rpc": "unfollowChannel",
"rpc_in_v9": false
},
{
"module": "H28",
"module_name": "标签",
"action": "create_label",
"rpc": "createLabel",
"rpc_in_v9": false
},
{
"module": "H28",
"module_name": "标签",
"action": "delete_label",
"rpc": "deleteLabel",
"rpc_in_v9": false
},
{
"module": "H28",
"module_name": "标签",
"action": "get_contacts_by_label",
"rpc": "getContactsByLabel",
"rpc_in_v9": false
},
{
"module": "H28",
"module_name": "标签",
"action": "get_labels",
"rpc": "getLabels",
"rpc_in_v9": true
},
{
"module": "H28",
"module_name": "标签",
"action": "set_contact_label",
"rpc": "setContactLabel",
"rpc_in_v9": false
},
{
"module": "H29",
"module_name": "收藏",
"action": "add_favorite",
"rpc": "addFavorite",
"rpc_in_v9": false
},
{
"module": "H29",
"module_name": "收藏",
"action": "delete_favorite",
"rpc": "deleteFavorite",
"rpc_in_v9": false
},
{
"module": "H29",
"module_name": "收藏",
"action": "get_favorites",
"rpc": "getFavorites",
"rpc_in_v9": true
},
{
"module": "H30",
"module_name": "设置",
"action": "clear_chat_history",
"rpc": "clearChatHistory",
"rpc_in_v9": false
},
{
"module": "H30",
"module_name": "设置",
"action": "pin_chat",
"rpc": "pinChat",
"rpc_in_v9": false
},
{
"module": "H30",
"module_name": "设置",
"action": "set_chat_background",
"rpc": "setChatBackground",
"rpc_in_v9": false
},
{
"module": "H30",
"module_name": "设置",
"action": "set_do_not_disturb",
"rpc": "setDoNotDisturb",
"rpc_in_v9": false
},
{
"module": "H30",
"module_name": "设置",
"action": "set_notification",
"rpc": "setNotification",
"rpc_in_v9": false
},
{
"module": "H30",
"module_name": "设置",
"action": "set_privacy",
"rpc": "setPrivacy",
"rpc_in_v9": false
},
{
"module": "H31",
"module_name": "搜索",
"action": "global_search",
"rpc": "globalSearch",
"rpc_in_v9": true
},
{
"module": "H32",
"module_name": "小程序",
"action": "get_recent_mini_programs",
"rpc": "getRecentMiniPrograms",
"rpc_in_v9": false
},
{
"module": "H32",
"module_name": "小程序",
"action": "open_mini_program",
"rpc": "openMiniProgram",
"rpc_in_v9": false
},
{
"module": "H32",
"module_name": "小程序",
"action": "share_mini_program",
"rpc": "shareMiniProgram",
"rpc_in_v9": false
},
{
"module": "H33",
"module_name": "文件传输",
"action": "send_card",
"rpc": "sendCard",
"rpc_in_v9": false
},
{
"module": "H33",
"module_name": "文件传输",
"action": "send_file",
"rpc": "sendFile",
"rpc_in_v9": false
},
{
"module": "H33",
"module_name": "文件传输",
"action": "send_image",
"rpc": "sendImage",
"rpc_in_v9": false
},
{
"module": "H33",
"module_name": "文件传输",
"action": "send_link",
"rpc": "sendLink",
"rpc_in_v9": false
},
{
"module": "H33",
"module_name": "文件传输",
"action": "send_location",
"rpc": "sendLocation",
"rpc_in_v9": false
},
{
"module": "H33",
"module_name": "文件传输",
"action": "send_video",
"rpc": "sendVideo",
"rpc_in_v9": false
},
{
"module": "H33",
"module_name": "文件传输",
"action": "send_voice",
"rpc": "sendVoice",
"rpc_in_v9": false
},
{
"module": "H34",
"module_name": "消息转发",
"action": "forward_message",
"rpc": "forwardMessage",
"rpc_in_v9": false
},
{
"module": "H34",
"module_name": "消息转发",
"action": "forward_multiple",
"rpc": "forwardMultiple",
"rpc_in_v9": false
},
{
"module": "H34",
"module_name": "消息转发",
"action": "revoke_message",
"rpc": "revokeMessage",
"rpc_in_v9": false
},
{
"module": "H35",
"module_name": "注册/登录",
"action": "auto_register",
"rpc": "autoRegister",
"rpc_in_v9": false
},
{
"module": "H35",
"module_name": "注册/登录",
"action": "check_login_state",
"rpc": "checkLoginState",
"rpc_in_v9": false
},
{
"module": "H35",
"module_name": "注册/登录",
"action": "get_sim_phone",
"rpc": "getSimPhone",
"rpc_in_v9": false
},
{
"module": "H35",
"module_name": "注册/登录",
"action": "login_by_password",
"rpc": "loginByPassword",
"rpc_in_v9": false
},
{
"module": "H35",
"module_name": "注册/登录",
"action": "login_by_sms",
"rpc": "loginBySms",
"rpc_in_v9": false
},
{
"module": "H35",
"module_name": "注册/登录",
"action": "logout",
"rpc": "logout",
"rpc_in_v9": false
},
{
"module": "H35",
"module_name": "注册/登录",
"action": "register_account",
"rpc": "registerAccount",
"rpc_in_v9": false
},
{
"module": "H35",
"module_name": "注册/登录",
"action": "switch_account",
"rpc": "switchAccount",
"rpc_in_v9": false
},
{
"module": "H36",
"module_name": "公众号",
"action": "follow_official_account",
"rpc": "followOfficialAccount",
"rpc_in_v9": false
},
{
"module": "H36",
"module_name": "公众号",
"action": "get_official_account_articles",
"rpc": "getOfficialAccountArticles",
"rpc_in_v9": false
},
{
"module": "H36",
"module_name": "公众号",
"action": "get_official_accounts",
"rpc": "getOfficialAccounts",
"rpc_in_v9": false
},
{
"module": "H36",
"module_name": "公众号",
"action": "unfollow_official_account",
"rpc": "unfollowOfficialAccount",
"rpc_in_v9": false
},
{
"module": "H37",
"module_name": "表情",
"action": "add_custom_emoji",
"rpc": "addCustomEmoji",
"rpc_in_v9": false
},
{
"module": "H37",
"module_name": "表情",
"action": "send_emoji",
"rpc": "sendEmoji",
"rpc_in_v9": false
},
{
"module": "H38",
"module_name": "浮窗",
"action": "add_to_float",
"rpc": "addToFloat",
"rpc_in_v9": false
},
{
"module": "H38",
"module_name": "浮窗",
"action": "remove_from_float",
"rpc": "removeFromFloat",
"rpc_in_v9": false
},
{
"module": "H39",
"module_name": "设备信息",
"action": "get_device_info",
"rpc": "getDeviceInfo",
"rpc_in_v9": false
},
{
"module": "H39",
"module_name": "设备信息",
"action": "get_network_info",
"rpc": "getNetworkInfo",
"rpc_in_v9": false
},
{
"module": "H39",
"module_name": "设备信息",
"action": "get_storage_info",
"rpc": "getStorageInfo",
"rpc_in_v9": false
},
{
"module": "SYSTEM",
"module_name": "系统",
"action": "batch_execute",
"rpc": "batchExecute",
"rpc_in_v9": false
},
{
"module": "SYSTEM",
"module_name": "系统",
"action": "get_hook_status",
"rpc": "getHookStatus",
"rpc_in_v9": false
},
{
"module": "SYSTEM",
"module_name": "系统",
"action": "get_process_info",
"rpc": "getProcessInfo",
"rpc_in_v9": false
},
{
"module": "SYSTEM",
"module_name": "系统",
"action": "get_wechat_version",
"rpc": "getWechatVersion",
"rpc_in_v9": false
}
],
"v9_rpc_exports": [
"ping",
"initDbs",
"getAccountInfo",
"getContacts",
"getContactCount",
"getContactDetail",
"searchContacts",
"getLabels",
"getLabelContacts",
"getAllStats",
"getRecentMessages",
"getMessages",
"sendMessage",
"massMessage",
"getGroups",
"getGroupCount",
"getGroupDetail",
"getGroupMembers",
"setGroupAnnouncement",
"setGroupNickname",
"getSnsDbInfo",
"getMoments",
"postMoment",
"getFinderInfo",
"getFinderContacts",
"getFinderAccounts",
"getFavorites",
"getWalletInfo",
"getWalletLedger",
"getLuckyMoney",
"getImageCount",
"getVideoList",
"getFileList",
"getAppBrandList",
"globalSearch",
"rawQuery",
"rawWrite",
"getTableInfo",
"listTables",
"addFriend",
"takeScreenshot",
"navigate"
],
"unmapped_v9_rpc_exports": [
"getAccountInfo",
"getAllStats",
"getAppBrandList",
"getContactCount",
"getContactDetail",
"getFileList",
"getFinderAccounts",
"getFinderContacts",
"getFinderInfo",
"getGroupCount",
"getGroupDetail",
"getImageCount",
"getLabelContacts",
"getLuckyMoney",
"getSnsDbInfo",
"getTableInfo",
"getVideoList",
"getWalletInfo",
"getWalletLedger",
"initDbs",
"listTables",
"massMessage",
"navigate",
"ping",
"postMoment",
"rawQuery",
"rawWrite",
"setGroupNickname",
"takeScreenshot"
]
}

View File

@@ -0,0 +1,204 @@
# 微信SDK真实覆盖矩阵追加版 2026-05-19 00:33
> 本文只追加不覆盖旧结论。目的把“规划动作”“服务端路由”“Hook RPC真实导出”“真机状态”分开避免继续把 mock 通过率误写成真机全量通过率。
## 1. 本轮用户对话整理与扫描
| 项 | 内容 |
|---|---|
| 用户目标 | 安装 `ai.zip``机擎.zip` 两个 AI skill参考三个 iteration zip延续工作手机开发文档和进度把微信/SDK/手机控制接口继续开发并测试。 |
| 输入文件 | `/Users/karuo/Downloads/ai.zip``/Users/karuo/Downloads/机擎.zip``/Users/karuo/Downloads/iteration_20260518_185854.zip``/Users/karuo/Downloads/iteration_20260518_195036.zip``/Users/karuo/Downloads/iteration_20260518_213029.zip` |
| 已安装 skill | `/Users/karuo/.codex/skills/karuo-ai-unified/SKILL.md``/Users/karuo/.codex/skills/jiqi-web-dev-orchestrator/SKILL.md`;重启 Codex 后自动出现在技能列表。 |
| 迭代包参考结论 | 早前归档显示已梳理约 110/112 项微信控制能力但核心风险是“真机可用性验证”和“RPC 真实导出不等于规划动作”。 |
| 本轮处理策略 | 先补服务端路由挂载,再建立真实覆盖矩阵;不执行破坏性微信动作,不做支付、改密、发红包、删好友等操作。 |
## 2. 当前真实覆盖结论
| 指标 | 数值 | 说明 |
|---|---:|---|
| `skill_v2.py` 规划动作 | 110 | `WECHAT_ACTIONS` 中的动作数量。 |
| 模块动作 | 106 | H15-H39 模块内动作数,不含系统动作。 |
| 模块数 | 25 | H15-H39 共 25 个模块。 |
| `wechat_full.py` 路由 | 62 | 本轮已挂载到 FastAPI `/api/v3/wechat/*`。 |
| FastAPI OpenAPI 总路径 | 315 | 本轮离线导入和 HTTP 启动均验证通过。 |
| FastAPI 微信路径 | 64 | 包含原有 `/api/v3/wechat-sport/*` 与新增 `/api/v3/wechat/*`。 |
| FastAPI Frida 路径 | 13 | 新增 `/api/v3/frida/*` 已挂载。 |
| `wechat_api_v9_final.js` 实际 RPC 导出 | 42 | 从 `rpc.exports` 静态解析得到。 |
| 规划动作命中 v9 RPC | 13 | `skill_v2` 映射的 RPC 名称能在 v9 Hook 中找到。 |
| 规划动作缺 v9 RPC | 97 | 后续必须补 Hook 或改映射。 |
## 3. 真机非破坏性状态
| 项 | 值 |
|---|---|
| ADB Serial | `xgfe65eimrrofyws` |
| 手机型号 | `2312DRAABC` |
| 微信 PID | `20420` |
| 当前窗口焦点 | `mCurrentFocus=Window{1263395 u0 NotificationShade}; mFocusedApp=ActivityRecord{42fdc4a u0 com.tencent.mm/.plugin.sns.ui.SnsTimeLineUI} t1839}` |
| 本轮真机动作边界 | 只采集设备/微信状态,没有发送消息、改资料、支付、删改好友或群。 |
## 4. 已完成代码接线
| 文件 | 本轮变更 |
|---|---|
| `sdk/app/main.py` | 挂载 `frida_wireless.router``/api/v3/frida/*`,挂载 `wechat_full.router``/api/v3/wechat/*`。 |
| `开发文档/6、测试/Frida无线控制验证报告_20260519_002820.md` | 生成 mock 模式验证报告106/106 通过。该报告只能证明规划动作/测试框架可跑,不能替代真机 RPC 通过。 |
| 本文 JSON | 机器可读矩阵:[[开发文档/6、测试/110项功能逐项确认/2026-05-19/微信SDK真实覆盖矩阵_20260519_0033.json]] |
## 5. 规划动作到 v9 RPC 覆盖表
| 模块 | 名称 | Action | 规划 RPC | v9真实导出 |
|---|---|---|---|---|
| H15 | 消息接收 | `get_messages` | `getMessages` | 已导出 |
| H15 | 消息接收 | `get_recent_messages` | `getRecentMessages` | 已导出 |
| H15 | 消息接收 | `search_messages` | `searchMessages` | 缺失 |
| H16 | 联系人 | `get_contact_info` | `getContactInfo` | 缺失 |
| H16 | 联系人 | `get_contacts` | `getContacts` | 已导出 |
| H16 | 联系人 | `search_contacts` | `searchContacts` | 已导出 |
| H17 | 消息发送 | `send_group_message` | `sendGroupMessage` | 缺失 |
| H17 | 消息发送 | `send_message` | `sendMessage` | 已导出 |
| H18 | 好友请求 | `get_friend_requests` | `getFriendRequests` | 缺失 |
| H19 | 好友管理 | `accept_friend` | `acceptFriend` | 缺失 |
| H19 | 好友管理 | `add_friend` | `addFriend` | 已导出 |
| H19 | 好友管理 | `add_friend_by_qr` | `addFriendByQr` | 缺失 |
| H19 | 好友管理 | `delete_friend` | `deleteFriend` | 缺失 |
| H19 | 好友管理 | `set_friend_remark` | `setFriendRemark` | 缺失 |
| H20 | 朋友圈发布 | `delete_moments` | `deleteMoments` | 缺失 |
| H20 | 朋友圈发布 | `post_moments` | `postMoments` | 缺失 |
| H21 | 朋友圈浏览 | `comment_moments` | `commentMoments` | 缺失 |
| H21 | 朋友圈浏览 | `get_moments` | `getMoments` | 已导出 |
| H21 | 朋友圈浏览 | `like_moments` | `likeMoments` | 缺失 |
| H22 | 群管理 | `create_group` | `createGroup` | 缺失 |
| H22 | 群管理 | `get_group_info` | `getGroupInfo` | 缺失 |
| H22 | 群管理 | `get_group_members` | `getGroupMembers` | 已导出 |
| H22 | 群管理 | `get_groups` | `getGroups` | 已导出 |
| H22 | 群管理 | `invite_to_group` | `inviteToGroup` | 缺失 |
| H22 | 群管理 | `quit_group` | `quitGroup` | 缺失 |
| H22 | 群管理 | `remove_from_group` | `removeFromGroup` | 缺失 |
| H22 | 群管理 | `set_group_announcement` | `setGroupAnnouncement` | 已导出 |
| H22 | 群管理 | `set_group_name` | `setGroupName` | 缺失 |
| H23 | 账号管理 | `check_account_status` | `checkAccountStatus` | 缺失 |
| H23 | 账号管理 | `get_profile` | `getProfile` | 缺失 |
| H23 | 账号管理 | `set_avatar` | `setAvatar` | 缺失 |
| H23 | 账号管理 | `set_nickname` | `setNickname` | 缺失 |
| H23 | 账号管理 | `set_region` | `setRegion` | 缺失 |
| H23 | 账号管理 | `set_sex` | `setSex` | 缺失 |
| H23 | 账号管理 | `set_signature` | `setSignature` | 缺失 |
| H23 | 账号管理 | `set_what_up` | `setWhatUp` | 缺失 |
| H24 | 账号安全 | `bind_phone` | `bindPhone` | 缺失 |
| H24 | 账号安全 | `change_password` | `changePassword` | 缺失 |
| H24 | 账号安全 | `enable_fingerprint` | `enableFingerprint` | 缺失 |
| H24 | 账号安全 | `get_login_devices` | `getLoginDevices` | 缺失 |
| H24 | 账号安全 | `remove_login_device` | `removeLoginDevice` | 缺失 |
| H24 | 账号安全 | `set_account_protection` | `setAccountProtection` | 缺失 |
| H24 | 账号安全 | `unbind_phone` | `unbindPhone` | 缺失 |
| H24 | 账号安全 | `unblock_self` | `unblockSelf` | 缺失 |
| H25 | 支付 | `get_transaction_history` | `getTransactionHistory` | 缺失 |
| H25 | 支付 | `get_wallet_balance` | `getWalletBalance` | 缺失 |
| H25 | 支付 | `receive_red_packet` | `receiveRedPacket` | 缺失 |
| H25 | 支付 | `receive_transfer` | `receiveTransfer` | 缺失 |
| H25 | 支付 | `send_red_packet` | `sendRedPacket` | 缺失 |
| H25 | 支付 | `send_transfer` | `sendTransfer` | 缺失 |
| H26 | 二维码 | `generate_group_qr_code` | `generateGroupQrCode` | 缺失 |
| H26 | 二维码 | `generate_my_qr_code` | `generateMyQrCode` | 缺失 |
| H26 | 二维码 | `scan_qr_code` | `scanQrCode` | 缺失 |
| H27 | 视频号 | `browse_channels` | `browseChannels` | 缺失 |
| H27 | 视频号 | `comment_channel_video` | `commentChannelVideo` | 缺失 |
| H27 | 视频号 | `follow_channel` | `followChannel` | 缺失 |
| H27 | 视频号 | `like_channel_video` | `likeChannelVideo` | 缺失 |
| H27 | 视频号 | `share_channel_video` | `shareChannelVideo` | 缺失 |
| H27 | 视频号 | `unfollow_channel` | `unfollowChannel` | 缺失 |
| H28 | 标签 | `create_label` | `createLabel` | 缺失 |
| H28 | 标签 | `delete_label` | `deleteLabel` | 缺失 |
| H28 | 标签 | `get_contacts_by_label` | `getContactsByLabel` | 缺失 |
| H28 | 标签 | `get_labels` | `getLabels` | 已导出 |
| H28 | 标签 | `set_contact_label` | `setContactLabel` | 缺失 |
| H29 | 收藏 | `add_favorite` | `addFavorite` | 缺失 |
| H29 | 收藏 | `delete_favorite` | `deleteFavorite` | 缺失 |
| H29 | 收藏 | `get_favorites` | `getFavorites` | 已导出 |
| H30 | 设置 | `clear_chat_history` | `clearChatHistory` | 缺失 |
| H30 | 设置 | `pin_chat` | `pinChat` | 缺失 |
| H30 | 设置 | `set_chat_background` | `setChatBackground` | 缺失 |
| H30 | 设置 | `set_do_not_disturb` | `setDoNotDisturb` | 缺失 |
| H30 | 设置 | `set_notification` | `setNotification` | 缺失 |
| H30 | 设置 | `set_privacy` | `setPrivacy` | 缺失 |
| H31 | 搜索 | `global_search` | `globalSearch` | 已导出 |
| H32 | 小程序 | `get_recent_mini_programs` | `getRecentMiniPrograms` | 缺失 |
| H32 | 小程序 | `open_mini_program` | `openMiniProgram` | 缺失 |
| H32 | 小程序 | `share_mini_program` | `shareMiniProgram` | 缺失 |
| H33 | 文件传输 | `send_card` | `sendCard` | 缺失 |
| H33 | 文件传输 | `send_file` | `sendFile` | 缺失 |
| H33 | 文件传输 | `send_image` | `sendImage` | 缺失 |
| H33 | 文件传输 | `send_link` | `sendLink` | 缺失 |
| H33 | 文件传输 | `send_location` | `sendLocation` | 缺失 |
| H33 | 文件传输 | `send_video` | `sendVideo` | 缺失 |
| H33 | 文件传输 | `send_voice` | `sendVoice` | 缺失 |
| H34 | 消息转发 | `forward_message` | `forwardMessage` | 缺失 |
| H34 | 消息转发 | `forward_multiple` | `forwardMultiple` | 缺失 |
| H34 | 消息转发 | `revoke_message` | `revokeMessage` | 缺失 |
| H35 | 注册/登录 | `auto_register` | `autoRegister` | 缺失 |
| H35 | 注册/登录 | `check_login_state` | `checkLoginState` | 缺失 |
| H35 | 注册/登录 | `get_sim_phone` | `getSimPhone` | 缺失 |
| H35 | 注册/登录 | `login_by_password` | `loginByPassword` | 缺失 |
| H35 | 注册/登录 | `login_by_sms` | `loginBySms` | 缺失 |
| H35 | 注册/登录 | `logout` | `logout` | 缺失 |
| H35 | 注册/登录 | `register_account` | `registerAccount` | 缺失 |
| H35 | 注册/登录 | `switch_account` | `switchAccount` | 缺失 |
| H36 | 公众号 | `follow_official_account` | `followOfficialAccount` | 缺失 |
| H36 | 公众号 | `get_official_account_articles` | `getOfficialAccountArticles` | 缺失 |
| H36 | 公众号 | `get_official_accounts` | `getOfficialAccounts` | 缺失 |
| H36 | 公众号 | `unfollow_official_account` | `unfollowOfficialAccount` | 缺失 |
| H37 | 表情 | `add_custom_emoji` | `addCustomEmoji` | 缺失 |
| H37 | 表情 | `send_emoji` | `sendEmoji` | 缺失 |
| H38 | 浮窗 | `add_to_float` | `addToFloat` | 缺失 |
| H38 | 浮窗 | `remove_from_float` | `removeFromFloat` | 缺失 |
| H39 | 设备信息 | `get_device_info` | `getDeviceInfo` | 缺失 |
| H39 | 设备信息 | `get_network_info` | `getNetworkInfo` | 缺失 |
| H39 | 设备信息 | `get_storage_info` | `getStorageInfo` | 缺失 |
| SYSTEM | 系统 | `batch_execute` | `batchExecute` | 缺失 |
| SYSTEM | 系统 | `get_hook_status` | `getHookStatus` | 缺失 |
| SYSTEM | 系统 | `get_process_info` | `getProcessInfo` | 缺失 |
| SYSTEM | 系统 | `get_wechat_version` | `getWechatVersion` | 缺失 |
## 6. v9 已导出但未被 skill_v2 映射的 RPC
| RPC | 说明 |
|---|---|
| `getAccountInfo` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getAllStats` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getAppBrandList` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getContactCount` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getContactDetail` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getFileList` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getFinderAccounts` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getFinderContacts` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getFinderInfo` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getGroupCount` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getGroupDetail` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getImageCount` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getLabelContacts` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getLuckyMoney` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getSnsDbInfo` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getTableInfo` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getVideoList` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getWalletInfo` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `getWalletLedger` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `initDbs` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `listTables` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `massMessage` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `navigate` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `ping` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `postMoment` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `rawQuery` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `rawWrite` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `setGroupNickname` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
| `takeScreenshot` | 需要确认是否应纳入 skill_v2 或保留为底层工具。 |
## 7. 下一步执行顺序
1. 优先补齐“读类/低风险类”缺失 RPC账号状态、设备信息、群/联系人详情、收藏、搜索、朋友圈读取。
2. 对写类动作建立真机验收沙箱:只允许 `filehelper`、测试群、测试素材路径,禁止默认执行支付/改密/解绑/删除。
3.`HookExecutor.ACTION_TO_RPC``WechatSkillV2.WECHAT_ACTIONS``wechat_api_v9_final.js rpc.exports` 三处名称统一,避免 `postMoment/postMoments``getContactDetail/getContactInfo` 这类错配。
4. 每完成一批 RPC追加一版矩阵不覆盖本文。
## 8. 卡若AI复盘
**目标&结果**:安装并启用两个 AI skill延续三个迭代包和本地开发文档补上服务端全量微信/Frida 路由挂载并建立真实覆盖矩阵。结果skill 已安装FastAPI 路由已可见,真机状态可采集,但全量真 RPC 仍未完成。
**过程**:解压审查 zip → 安装 skill → 读取开发文档 → 扫描 SDK/Hook/路由 → 挂载缺失路由 → 静态编译 → OpenAPI 离线和 HTTP 验收 → 采集真机状态 → 生成矩阵。
**反思**历史文档中存在“mock 通过率”和“真机全量通过率”混写问题,后续必须按真实 RPC 导出和真机执行证据拆开记录。
**总结**本轮推进的是接口接线与事实校准不是宣称所有微信功能已真机完成当前可信进度应按“服务端接线完成、Hook 全量补齐进行中”口径管理。
**下一步执行**:先补齐 v9 Hook 缺失 RPC 并做只读真机验证,再逐项开放写类动作验收。

View File

@@ -0,0 +1,106 @@
# 工作手机SDK - Frida无线控制验证报告
> 版本: 3.1.0 | 时间: 2026-05-19T00:28:20.076236
> 连接方式: WiFi TCP (Frida mock)
## 📊 验证总览
| 指标 | 数值 |
|------|------|
| 总操作数 | 106 |
| 总模块数 | 24 |
| 测试数 | 106 |
| 通过 | 106 |
| 失败 | 0 |
| 跳过 | 0 |
| **通过率** | **100.0%** |
## 📋 模块验证详情
| 模块 | 名称 | 总数 | 通过 | 失败 | 通过率 |
|------|------|------|------|------|--------|
| ✅ H15 | 消息接收 | 3 | 3 | 0 | 100% |
| ✅ H16 | 联系人 | 3 | 3 | 0 | 100% |
| ✅ H17 | 消息发送 | 2 | 2 | 0 | 100% |
| ✅ H18 | 好友请求 | 1 | 1 | 0 | 100% |
| ✅ H19 | 好友管理 | 5 | 5 | 0 | 100% |
| ✅ H20 | 朋友圈发布 | 2 | 2 | 0 | 100% |
| ✅ H21 | 朋友圈浏览 | 3 | 3 | 0 | 100% |
| ✅ H22 | 群管理 | 9 | 9 | 0 | 100% |
| ✅ H23 | 账号管理 | 8 | 8 | 0 | 100% |
| ✅ H24 | 账号安全 | 8 | 8 | 0 | 100% |
| ✅ H25 | 支付 | 6 | 6 | 0 | 100% |
| ✅ H26 | 二维码 | 3 | 3 | 0 | 100% |
| ✅ H27 | 视频号 | 6 | 6 | 0 | 100% |
| ✅ H28 | 标签 | 5 | 5 | 0 | 100% |
| ✅ H29 | 收藏 | 3 | 3 | 0 | 100% |
| ✅ H30 | 设置 | 6 | 6 | 0 | 100% |
| ✅ H31 | 搜索 | 1 | 1 | 0 | 100% |
| ✅ H32 | 小程序 | 3 | 3 | 0 | 100% |
| ✅ H33 | 文件传输 | 7 | 7 | 0 | 100% |
| ✅ H34 | 消息转发 | 3 | 3 | 0 | 100% |
| ✅ H35 | 注册/登录 | 8 | 8 | 0 | 100% |
| ✅ H36 | 公众号 | 4 | 4 | 0 | 100% |
| ✅ H37 | 表情 | 2 | 2 | 0 | 100% |
| ✅ H38 | 浮窗 | 2 | 2 | 0 | 100% |
| ✅ H39 | 设备信息 | 3 | 3 | 0 | 100% |
## 🏗️ 架构验证
### 连接模式
```
服务器 (FastAPI) ←→ WiFi TCP ←→ 手机 (Termux + frida-server)
微信进程 (Frida Hook)
```
### 支持的连接模式
| 模式 | 需要Root | 连接方式 | 说明 |
|------|----------|----------|------|
| remote | ✅ | WiFi TCP → frida-server | 最稳定,推荐 |
| gadget | ❌ | WiFi TCP → frida-gadget | 免Root需重装微信 |
| auto | 自动 | 自动检测Root选择 | 一键部署 |
### 通道优先级
1. **Hook 通道** (Frida RPC) — WiFi 无线,延迟 <50ms
2. **WebSocket Agent** 通过 Agent 中转
3. **UI 自动化** (uiautomator2) 最后降级
## 📝 总结
```
验证时间: 2026-05-19T00:28:20.076236
测试模式: mock
连接方式: WiFi TCP (无USB)
总操作数: 106
测试数: 106
通过: 106 | 失败: 0 | 跳过: 0
通过率: 100.0%
模块概览:
✅ H15 消息接收: 3/3 (100%)
✅ H16 联系人: 3/3 (100%)
✅ H17 消息发送: 2/2 (100%)
✅ H18 好友请求: 1/1 (100%)
✅ H19 好友管理: 5/5 (100%)
✅ H20 朋友圈发布: 2/2 (100%)
✅ H21 朋友圈浏览: 3/3 (100%)
✅ H22 群管理: 9/9 (100%)
✅ H23 账号管理: 8/8 (100%)
✅ H24 账号安全: 8/8 (100%)
✅ H25 支付: 6/6 (100%)
✅ H26 二维码: 3/3 (100%)
✅ H27 视频号: 6/6 (100%)
✅ H28 标签: 5/5 (100%)
✅ H29 收藏: 3/3 (100%)
✅ H30 设置: 6/6 (100%)
✅ H31 搜索: 1/1 (100%)
✅ H32 小程序: 3/3 (100%)
✅ H33 文件传输: 7/7 (100%)
✅ H34 消息转发: 3/3 (100%)
✅ H35 注册/登录: 8/8 (100%)
✅ H36 公众号: 4/4 (100%)
✅ H37 表情: 2/2 (100%)
✅ H38 浮窗: 2/2 (100%)
✅ H39 设备信息: 3/3 (100%)
```