三条通道共用同一套「本机 claim 备料 → 云电脑 GUI 落地」骨架;镜像部署是把这套能力复制到 N 台的乘数器。 下面按「第一个案例 → 0→1 逻辑原理 → 批量统计 → Badcase 与优化 → 下一步」展开。
每条通道都以「真实业务首单跑通」作为 0→1 的判定,而非脚本能跑就算数——下面是三条线各自的首个真实案例。
该用户在视频下评论咨询「渭南不锈钢橱柜」。系统自动 claim 锁单 → Langfuse 起话术 →
微信号改写为「+v」话术 → paste.rs 投递到云电脑 → GUI 自动搜人 → OCR 身份门核对昵称 →
进私信 → SendInput 逐字键入 → 模板定位发送键 → 真发出 → 自动去重标记。
「定位对了人 → 没发错 → 真送达 → 自动去重」四件事同时成立, 标志 DM 这条云电脑自动化链路首次端到端打通。
同日云电脑共 22 条真发出,5 条触发风控退回池子,4 个垃圾默认名永久剔除。
反向评论(去目标用户视频评论区触达)此前只能在安卓 ADB / 已停用的 iOS WDA 上跑, 云电脑只发过私信,抖音 PC 客户端的评论能力从未验证。本案是云电脑评论通道的第一单。
先用极简脚本 _probe-reverse-comment.py 验证「评论框是真输入框、SendInput 能落字」,再上业务。
对象 @峥宇60km/小时(OCR 身份门 conf 0.98 通过), 发出一条 35 字的装修报价 + 索要设计师联系方式问询,发布成功(人工刷新评论区核对)。
基线机「黄金款」烤镜像 → 新机「小武」用镜像码克隆。 2026-06-02 克隆开通,2026-06-03 端到端验证通过。
克隆机的 .env 坐标行 + templates\ 随镜像搬,一个字都没改;
唯一手动步骤 = 退掉基线机抖音、扫码登小武自己的号。
同规格机分辨率一致 → 归一化坐标 ×屏宽高 落点不变。 把每台 20–30 分钟的逐机校准压成 ~0。
2 条试发真发出,OCR 身份门 match=True。
坐标随镜像搬、无需重校准,是本案最核心的结论。
私信 DM 与反向评论 RC 走同一条骨架,只在两处分叉——所以合成一张图、用颜色区分,再附一张差异对照表。 第三张是把这套能力复制到 N 台的镜像乘数器。
骨架 4 步两条通道一致,只在起点(DM 自动 claim 锁单 ↔ RC 手动 CSV)和 抖音内子序列(RC 多 3 步)分叉。
设计纪律:大元素走视觉 grounded,小元素(输入框/发送键)走截图实测固定坐标; SendInput 逐字键入绕开剪贴板与中文输入法;OCR 身份门「宁可漏发,不可发错人」——不会把客户的品牌发到错的人那里。
| 维度 | 私信 DM | 反向评论 RC |
|---|---|---|
| 闭环完整度 | claim 4h 锁 + 自动去重,完整闭环 | 手动 CSV,claim/去重/限速队列待接(第 5 节 P0) |
| 抖音内步骤 | 6 步 | +3 步:开视频 / 空格暂停 / 切评论 tab |
| 触达落点 | 私信对话框(一对一) | 视频评论区(公开,发错容错更低) |
| 送达核对 | 输入框清空即记 sent | 人工刷评论区核对自己气泡 |
把「环境 + 抖音客户端 + 校准好的坐标/模板」一次性烤进镜像,新机克隆即继承,开机边际成本只剩「换身份 + 试发」。
| 口径 | 数值 | 说明 |
|---|---|---|
| 已识别并修复 bug | 11 类(DM)+ 10 类(RC) | 多为 GUI 脆性 / 输入法 / 坐标漂移,详见第 4 节 |
| 在册云电脑机队 | 4 台 | 零星(基线/manual)· 小文(野荞,端到端真发)· 小武(镜像克隆首验)· 饭粒 |
| 单台 8h 满跑成本 | ~95 灵豆 | PoC 单点估算,按 ¥9.9/月含 40 灵豆/天换算,待多机长跑回填 |
当前是「机制已跑通、机队尚小」阶段——克隆零校准、22 条真发出、OCR 0.98、两条评论发布均为 实测; 单台总时长、满跑灵豆、命中率/回复率为 估算或 PoC 单点,大规模量产尚未真正铺开,未做多机长跑均值。 漏斗转化(送达率 / 加微率 / 回复率)随机队增长 + 接入 DB 记录后回填,本页不编造规模数字。
通道标签:私信评论镜像通用。 多数问题源于「GUI 自动化在远程桌面上的脆性」,通过「固定坐标 + 输入法纪律 + 身份门 + 字节校验」已系统性收敛、可靠性持续提升。
| 问题 | 表现 / 根因 | 优化方式 | 进展 |
|---|---|---|---|
| 私信中文粘不进去 | 剪贴板被重定向拦截,Ctrl+V 失效 | 改用 Windows SendInput KEYEVENTF_UNICODE 直接键入 |
已修 |
| 通用搜索吞掉首字 | 中文输入法拦截首个按键 | 批量发送前 Win+空格 切英文输入法,写入 SOP 前置检查 |
SOP 已固化 |
| 私信回车不触发搜索 | 输入法 composition 态吞掉 Enter | 英文模式下提交中文 + Enter | 已修 |
| 评论文字漏到终端/桌面 | 打字时前台窗口不是抖音 | AttachThreadInput + SW_MAXIMIZE(非 SW_RESTORE)强制置前 |
已修 |
| 问题 | 表现 / 根因 | 优化方式 | 进展 |
|---|---|---|---|
| 通用小元素视觉定位飘 | Qwen-VL grounded 在远程机对输入框/发送键反复飘 | 大元素保留 grounded;小元素改截图实测固定坐标(归一化×屏宽高) | 已落脚本 |
| 私信发送键左偏误点 | 模板误匹配未读消息红点 | 匹配限定屏幕右 40% 区域 | 已修 |
| 私信打字后「幽灵发送」 | 红色发送键激活触发重新匹配 → 漂移 | 复用打字前坐标,跳过重匹配 | 已修 |
| 评论长文发送键飘移 | 评论框高度随文字变化,发送键移到 ~px(2534,1541) | VL 定位「发送」按钮 + 固定坐标兜底 | 已修 |
| 私信右 40% 内仍偶发误点 | 私信面板在非标准位置打开 | 限定右下输入区(y>500)+ 先确认面板已开再定位 | 部分缓解 |
| 问题 | 表现 / 根因 | 优化方式 | 进展 |
|---|---|---|---|
| 通用同名大号搜错 | 搜「东方」命中「东方甄选」等大号 | OCR 身份门拦截不匹配,宁漏勿错 | 已守卫 |
| 评论短名身份门过松 | 0.95 阈值对 ≤3 字名太松(「小嘟」→「嘟妹」) | 收紧为精确匹配 / 子串约束 | 人工核对兜底 |
| 评论数字用户名无法匹配 | 身份门无法把数字 ID 对到真人昵称 | CSV 一律填真实显示昵称 | 已规范 |
| 私信垃圾默认名回收重发 | 「用户\d+」「0.0」类高优但发不出 | 永久 discard(consume+contacted),当日剔 4 个 | 已剔除 |
| 问题 | 表现 / 根因 | 优化方式 | 进展 |
|---|---|---|---|
| 私信大文件剪贴板截断 | 剪贴板同步截断长文本 | paste.rs HTTP 投递 + 字节校验 |
已修 |
| 评论paste.rs 国内下载卡 | 区域网络问题 | 改 gzip+base64 剪贴板(~7KB + CRC 校验) | 已缓解 |
| 通用「已点发送」≠ 真送达 | 脚本只点了发送,未程序化验证 | 只信真实气泡 / 评论区自己的回显,人工核对兜底 | 人工兜底 |
| 问题 | 表现 / 根因 | 优化方式 | 进展 |
|---|---|---|---|
| 通用分辨率漂移坐标失准 | 无影分辨率自适应漂移(1436→1588→1620…) | 进系统关自适应、锁死 2560×1600;出专门教程 | 教程上线·锁定待落 |
| 镜像磁盘容量不足 | 镜像盘(60/40 GiB)比目标机大 → 变更失败 | 变更前先扩容到 ≥ 镜像盘(异步、只增不减) | 已写 runbook |
| 镜像变配中不能变更 | 扩容刚完处「变配中」过渡态 | 等机器回「运行中」再变更镜像 | 已记录 |
| 镜像channel_pref 锁池死循环 | 新机误设 cloud_pc → 拉单池锁死 |
grounded 通道新号一律 manual |
已校准 |
| 私信拉不了时间窗 leads | export-leads-csv.ts 无 --since-hours |
透传 p_since_hours(RPC 已支持) |
待修·阻塞「拉近 6h」 |
| 私信dispatch 去重缺守卫 | claim_leads_batch 缺守卫 → 同 sec_uid 20h 堆 5 条 |
claim 时加 NOT EXISTS pending/claimed 守卫 |
手动兜底·代码待修 |
目标终态:人工 0 操作(仅监控/告警),LLM 只负责「评分 + 起文案」,claim/去重/限速/重试/送达校验全部交给确定性代码。 达到「0 人值守」前必须先过三道安全闸:短名身份门精度 · 程序化送达校验 · 限速风控闸。
reverse_comment_queue + claim 锁 + 去重
— 当前评论是手动版无队列,防同一用户重复评论;复用 DM 的 dispatch_queue 架构。7911 自动停;参考 ADB 反评 _reverse_throttle.py。--since-hours 透传 + dispatch 去重守卫
— 解锁「拉近 6h,不够再扩 12/24/48h」;同 sec_uid 堆多条根治,去掉手动 abort。RPC 已支持,仅需 CLI/SQL 落地。douyin.com/user/<sec_uid> 直达降 GUI 脆性;投产前必须先 spike 验证 web 版入口可用。