|
|
折腾了三天终于跑通了:现在 Codex /Claude code/Grok biuld/Cursor等agent 不用越狱就能直接控制我锁着的 iPhone,开 APP、点按钮、输文字、读屏幕全能干,手机刷推,刷朋友圈、发朋友圈都可以,真的牛逼,更狠的是我合盖睡觉的时候,Agent 自己在云端手机里跑任务,醒了邮箱里已经躺好了整理完的结果。
想让 AI 替你碰手机、跑重复活的,这一篇照着做就行,一篇文章把两套方案全写透、讲透:
1️⃣本地 Phone Harness 怎么装、权限坑怎么避、所有命令直接抄;
2️⃣云端异步任务怎么设、怎么锁死权限防 AI 乱点,包括我每天跑的岗位早报 Prompt 也全放出来了。
今早 8 点半我睁开眼,邮箱里已经躺着 12 个新出的 AI 岗位:公司、是否远程、推荐理由、申请链接排得整整齐齐。
我昨晚合电脑前只设了个定时任务,没定闹钟爬起来刷 LinkedIn,也没雇人帮我盯,甚至电脑一整夜都是合着的。
是 AI 自己控制手机,趁我睡觉的时候翻完了所有新岗位整理好发我的 —— 不用越狱,也不用装奇怪的插件,想让 AI 替你刷招聘、整理信息、跑重复任务的,直接照着做就行。
我昨晚合盖前只做了一件事:设了个每天早上八点的 Routine。
发这封早报的不是 Phone Harness,Phone Harness 发不出来——它只能在我 Mac 醒着、手机锁着、人坐在旁边的时候干活。而这封邮件发出来的时候,我还在睡觉。
Phone Harness 干的是另一半的活,它工作时的真实画面是:
Agent 在终端里敲命令,Mac 上那个手机大小的窗口自己在点,真机锁着躺在桌子另一头。你要是中途拿起来解锁,会话立刻断,窗口变成 "iPhone in Use"。
它把 iPhone 镜像窗口当成唯一的传输层:截图看屏幕,用 Apple Vision 做 OCR 拿到「文字 + 坐标」,再用 HID 级的 CGEvent 去点、拖、输入,点完再截一张确认。没有控件树,截图就是真相。
装它不用越狱,也不用 Xcode,甚至不用 WebDriverAgent。
我把安装、权限和 --doctor 在 Codex 里跑了一遍,安装花不了多少实践,最花时间的权限后面单独讲。
这篇分两部分,前半段用 Phone Harness 把 Agent 跑到能看见、能点、能写回手机;后半段就是开头那条早报是怎么来的,也说清 Airtap 不适合干什么。前一层是 Driver,后一层是 Runtime,缺的东西完全不一样。
命令、权限雷区、质检 Prompt 和 Routine 文案都在正文里,可以直接抄作业。只想看早报怎么设的,直接跳第六节。
换 Cursor 或 Claude Code 流程一样,只有一处要跟着改:权限勾在实际跑 Agent 的那个 App 上。
一、先过环境:门槛都在苹果那一侧
推荐:先过环境,下面任何一条不满足,后面全部无效,而且多半不是项目的问题。
- Mac 有 Apple Silicon 或 T2 芯片(2018 年后大部分 Mac 都行,更老的纯 Intel 不支持 iPhone Mirroring)
- macOS Sequoia 15+ / iOS 18+
- 两台设备同一个 Apple Account,开着双重认证
- 蓝牙和 Wi-Fi 都开,iPhone 在 Mac 十米内
- Python 3.12+
- 首次配对要先解锁、在手机上确认;配对完成后,会话期间保持锁定
- sw_vers
- python3 --version
复制代码 配对当天先解锁完成确认,之后把手机放到自己随手拿不到的地方。
不然你下意识拿起来看条消息,镜像断了,你还得反复折腾权限。
二、装:克隆、依赖、PATH,再注册成 skill
官方推荐装在 ~/.phone-harness,和 ~/.nvm 一样当固定家目录,Agent 才找得到。
系统 Python 受 PEP 668 限制的话(用 Homebrew 的很常见),走 venv 更干净:
下面这一段要在同一个终端里连续跑,中间不要新开窗口——source 只对当前这个壳有效:
打开终端,复制以下命令行,粘贴,回车
- git clone https://github.com/ShawnPana/phone-harness.git ~/.phone-harness
- cd ~/.phone-harness
- python3 -m venv .venv
- source .venv/bin/activate
- pip install pyobjc-framework-Cocoa pyobjc-framework-Quartz \
- pyobjc-framework-Vision pyobjc-framework-ApplicationServices
- pip install -e . --no-deps
复制代码
AppKit 在较新 pyobjc 里随 Cocoa 提供;ApplicationServices 是 --doctor 需要的。
装上了还不够,source .venv/bin/activate 只对当前这个壳有效,Cursor 或 Codex 新开的终端经常不在 venv 里,于是报 phone-harness: command not found。你会以为没装上,其实是装上了但那个会话找不到。再跑这一段,把命令链到 PATH:
- mkdir -p ~/.local/bin
- ln -sf ~/.phone-harness/.venv/bin/phone-harness ~/.local/bin/phone-harness
复制代码
装完先看说明和入口:
- cat install.md
- phone-harness --help
- # 或在仓库里:./phone-harness --help
- grep "^def " src/phone_harness/helpers.py
复制代码
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|