callstack/agent-device

CLI to control iOS and Android devices for AI agents

它解決了什麼

agent-device 為 AI 編碼代理提供了一種跨多個平台與應用程式互動並驗證的方式。它解決了代理無法「看見」或控制實際運行中的應用程式以驗證其程式碼變更是否真的在真實環境中有效的問題,彌合了編寫程式碼與端到端驗證之間的差距。

它是如何運作的

該工具以 CLI 形式運行,代理可以使用它來檢查應用程式狀態並執行操作。它使用「inspect-act-verify」迴圈:代理讀取 UI 的 token 高效無障礙快照(使用應用程式的無障礙樹),透過參考(refs)或選擇器識別元素,並執行命令來與 UI 互動(例如點擊、填寫欄位、滾動)。

它與各種平台特定後端整合:XCTest 用於 iOS/tvOS,ADB 用於 Android,Vega CLI/VDA 用於 Vega 虛擬設備,AT-SPI 用於 Linux,此外還有 macOS 的本地幫手以及用於網頁自動化的 agent-browser

它適合誰使用

  • AI 編碼代理:使用 Cursor、Codex、Claude Code 或 Windsurf 等工具的開發者,希望他們的代理能在運行中的應用程式中驗證變更。
  • QA 工程師:構建 AI 驅動的 QA 代理以自動化發現與錯誤回報的團隊。
  • 開發者:從事原生 iOS/Android、React Native、Expo 和 Flutter 應用程式的開發者。

亮點

  • 多平台支援:適用於 iOS、Android、tvOS、Android TV、Amazon Vega OS TV、網頁、macOS 和 Linux。
  • Token 高效快照:使用無障礙樹為代理提供 UI 的緊湊表示。
  • 證據捕捉:能夠保存螢幕截圖、影片、日誌、追蹤和 React 設定檔以供審閱。
  • 工作流重播:將工作步驟儲存為 .ad 腳本,或匯出為 Maestro YAML 以進行可重複測試。
  • 廣泛框架支援:與原生應用程式、React Native、Expo 和 Flutter 相容。