Gary
Hsieh
2026 · taipeiloading
回到文章列表
軟體工程AI 趨勢2026-08-25

Mobile Harness 的心智模型

Mobile Harness 的心智模型

Mobile Harness 的心智模型。

Coding Agent 現在已經很會寫 code 了,Mobile 開發下一步就是讓 Agent 自己打開 App、操作手機、跑測試,最後自己驗證結果:Hardware-in-the-loop。

研究了一輪 GitHub 上的工具,像《Mobile MCP》、《Phone Harness》、《Mobilerun》,整理後,Mobile Harness 可以用三個問題理解:

1. 跑在哪裡?

Simulator / Emulator,還是真實手機?

如果只是測自己開發的 App,Simulator 其實非常強。Agent 可以 build、install、launch、截圖、重開 App、收 log,整個 runtime 都在控制範圍內。

真機的價值則在 Camera、Bluetooth、Sensor、真實效能、系統互動,或是你今天就是要操作一支真的 iPhone / Android。

2. AI 怎麼看手機?

第一種是 Accessibility Tree。Agent 直接拿到 Button、TextField、Label 這些結構化資訊,定位準、速度快,也非常省 Token。

另一種是 Visual。Screenshot 給 AI 看,AI 找位置、做操作、再 Screenshot 驗證。這種幾乎什麼 UI 都能處理,代價就是 Vision Inference。20 個步驟的測試流程,每一步都先截圖、看 Vision、做事情、再截圖,AI 的 token 跟效能延遲很快就會越來越爆炸。

所以現在也開始出現 Hybrid 的做法:Accessibility 能解決就直接解決,需要看畫面再進 Vision。

3. Agent 怎麼控制它?

這也是各家 Mobile Harness 很不一樣的地方。

有些直接包成 MCP Tools,Claude Code、Codex 接上去就可以操作;有些走 CLI / Python API;也有很薄的 Harness,直接給 Agent primitives,缺什麼 helper 再自己加上去(run time)。

把這三個問題套上目前主流工具,頭腦就清楚很多

《Mobile MCP》:MCP + 跨平台 + Structured UI

它把 iOS、Android、Simulator、Emulator、Real Device 的操作包成 MCP Tools。

最大的優勢就是標準化。你的 Agent 本來就支援 MCP,接進去之後就可以拿 UI 資訊、Tap、Swipe、輸入、Screenshot。

如果目標是做一般 App 的 Testing Agent,我會先從這類開始。

《Phone Harness》:Real iPhone + Visual

它直接利用 macOS 的 iPhone Mirroring 控制你手上的真實 iPhone。Screenshot、Apple Vision OCR、找座標、操作,再 Screenshot 驗證。

整個 Harness 不多,但是 Agent 缺什麼操作可以自己寫 helper 補上去。

適合真的需要「操作實體 iPhone」的場景,但如果大量 workflow 都靠 Screenshot + Vision,token 跟 latency 就要算進去。

《Mobilerun》:Hybrid

它把 Accessibility Tree 跟 Screenshot / Vision 放在一起。Structured state 拿得到就直接拿,需要理解畫面再進 Vision,所以它的定位剛好在前面兩種 perception 中間。

總結來說,如果今天要做 Testing Agent

先看測試內容。

  • 一般 Native App、Login、購物流程、Settings、Regression Test,優先 Simulator + Accessibility。
  • 遊戲、地圖、Drawing App、影音 Editor、Canvas UI,就會需要更多 Visual。
  • Camera、Bluetooth、Sensor、效能或真實系統行為,再選需要實體的 Harness 或上裝置。

心智圖:

Accessibility → OCR → Cropped Vision → Full Screenshot

問對問題:

Where does it run?

How does it see?

How does Agent control it?

#Harness#Agent#MCP#Claude Code#AI