-
设备端代码唯一版本改为 device/(手机快照)。phoneuse/ 只留 Mac 侧 frida_bridge、 启动脚本与设计文档;wechat_plain/scripts/auto-reply/ 只留文档。 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
-
红点通知需 atuserlist,深逆向未到底,跟原生引用气泡一起后面做。已确认: - 纯文字@不触发红点;atuserlist 不在 message 行(convertTo cv 无此列) - r0 第5参 obj≠msgSource(当它传会 NPE g9.q5,obj 是"消息key查f9") - 微信 UI 发送链路≠我们合成的 r0+z2.b:hook z2 自学习扫 atuserlist 字段零命中 已部署脚手架(WIP,生产不传 at 无影响,自动回复照常): - SEND_MSG_INTERNAL 支持 --es at → 构造 msgsource - trySendWithRetry/sendViaHighLevel 加 msgSource 参数 - hookAtDiscovery 自学习 z2 派发点 + sAtFieldPath 持久化(目前学不到) 详见 memory wechat-group-at-atuserlist。⚠️ 重编译 hook 会强退微信=要重登, 继续挖前一次想全要抓什么。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
-
- process_event 里确定性拼接 @昵称+U+2005(微信原生分隔符)前缀,仅群消息(isGroup) - 确定性代码不靠 LLM/skill(否则会漏会不一致);安全判定仍在原始 draft 上跑 - 审批页/自动发的文本都带 @;送达校验用带 @ 的文本匹配 - ⚠️ 仅文字@(可见),不带 atuserlist,未必真 ping 红点;真通知需 hook 加 at 列表(README 待收尾) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
-
- 需求文档环节5:补 flush 加固三经验值 + 端到端闭环验证(私聊+群@我送达) - README 真机验证:加 2026-07-12 里程碑段(系统正式跑通,~15s 送达) - .gitignore 忽略 __pycache__/*.pyc Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
-
用户实测发现:触发 NetSceneQueue 派发的是一次真实 app 切换(切走→切回微信), 且要给足时间。旧版单次切换+被动等 25s 常卡几十秒~分钟。三个经验值: - 发送后 sleep(4) 让消息稳稳落库(切太快微信还没登记这条,flush 不到) - _onresume_cycle: HOME 背景化 2.5s → am start LauncherUI 切回停 3s(切换给足时间) - 切回后停前台连查 DWELL_POLLS 轮,不立刻再切走(否则打断正在进行的网络发送); 没到 2 再来一轮,总超时 60s 真机实测:屏幕亮/灭(Dozing)都 ~15s flush 到 status=2。memory wechat-api-send-onresume-flush 已补加固经验。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
-
- app.py 加 GET/POST /api/auto_send:读写 policy_config.json 的 auto_send_enabled(root 属主 644,写经 tmp+su cp,只翻该字段保留 block_keywords) - whitelist.html 顶部加开关卡片(开=白名单自动发/敏感词仍拦,关=全审批),开启二次确认 - orchestrator 每轮 load_config() 即时生效,无需重启 - 真机验证:读接口 enabled=false、POST true/false 文件正确翻转其余字段完整、/whitelist 200 - README 待收尾 #4 标完成 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
-
- text_b64 传中文(--es text 被 shell/am 弄乱→卡 status=1) - z2.b 只入队,发送后 HOME+LauncherUI 触发 onResume 派发(设备机制非代码 bug) - _send_text_verified 轮询 message.status 直到 2,超时仍 1 视为已入队不误报 - 拆 stage 目录(watcher=_stage / orchestrator=_stage_orch)避开拷库竞态 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
-
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
-
wechat_reply_watcher.py:纯 ctypes inotify 监听当前账号 EnMicroMsg.db 目录 (SELinux 放行、零轮询),失败退回 stat mtime;解密增量读 message(isSend=0 & msgId>last)→ 分类(私聊/群@我/群引用我/群其它)→ 写 incoming.jsonl 队列。 账号运行时按 MD5("mm"+uin) 自适应,首跑建基线不重放历史。真机验证 inotify 触发读取、多账号切换自适应、解密/分类均通过。含 --selftest/--once/--tail。 配套需求文档 md/wechat-auto-reply-requirements.md 标注环节1 完成。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
-
Mac side (lemonPCRM): - Express server with /api/master/chat SSE endpoint - MasterSession multi-round orchestration - AgentManager + ToolRegistry - ClaudeCliProtocol ACP implementation Pixel side (wechat_plain/scripts/): - hermes_wechat_daemon.py: standalone daemon - SQLCipher DB decryption with WAL checkpoint fix - Direct LLM API calls (Kimi/Anthropic/OpenAI) - am broadcast to trigger LSPosed send - Auto wake WeChat to foreground before poll/send - lsposed-wechat-sendmsg: LSPosed module - sendTextMessageDirect via WeChat internal API - u01.r1.a -> builder -> m1.a() full chain - Background thread NetScene submission Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
-
包含 ACP 协议层、Agent 运行时、Express API 服务端、 编排引擎及进程管理等完整实现。 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>