takahirom/arbigent
AI Agent for testing Android, iOS, and Web apps. Get Started in 5 Minutes. Arbigent's intuitive UI and powerful code interface make it accessible to everyone, while its scenario breakdown feature ensures scalability for even the most complex tasks.
Arbigent (Arbiter-Agent) – AI代理測試框架
是什麼 – 一個桌面應用程式(搭配CLI包裝器),讓您使用AI代理撰寫、執行與管理行動、網頁與電視應用的UI層測試。它將高階目標(例如 「完成教學」)分解為一連串相依的場景,讓非程式設計人員可在視覺化UI中建立這些場景,同時工程師可從YAML檔案中以程式化方式執行。
核心理念
| 理念 |
為何重要 |
| 場景依賴 |
複雜流程(登入 → 搜尋 → 購買)以小型、可重用的步驟表示,使測試更易維護。 |
| 混合UI + 程式碼工作流程 |
QA工程師可在UI中拖曳並放置場景;開發者可從CI流程中呼叫相同的YAML。 |
| 跨平台支援 |
支援iOS、Android、網頁與電視(含D-鍵導航)。 |
| AI驅動的互動 |
代理讀取過濾後的UI樹與可存取性標籤中嵌入的可選AI提示,然後決定點擊或捲動。 |
| 模型彈性 |
預設使用 gpt-4.1,但可切換至較便宜的模型如 gpt-4o-mini。 |
| 影像斷言與卡頓畫面偵測 |
使用Roborazzi的AI驅動影像斷言來驗證代理操作是否正確,並在卡住時恢復。 |
| MCP(模型上下文協定)支援 |
外部工具(如安裝應用、取得日誌)可透過JSON配置的伺服器從場景中呼叫。 |
| 可重用場景 |
類似GitHub Actions的圖書館式「函數」,可帶參數呼叫,減少重複。 |
| Maestro YAML整合 |
現有的Maestro測試流程可作為AI接管前的決定性設定步驟執行。 |
典型工作流程
- 連接裝置(實體或模擬器)並在Arbigent UI中輸入您的AI提供者API金鑰。
- 建立場景 – 輸入自然語言目標或匯入現有的Maestro YAML / Android Journeys檔案。
- 新增可選鈎子 – 自訂初始化/清理程式碼、MCP伺服器呼叫或可重用場景呼叫。
- 執行 – 在UI中點擊執行,或透過CLI呼叫(
arbigent run --project-file myproj.yml)。
- 檢視 – UI顯示UI樹、截圖與AI生成的操作;失敗可透過影像斷言檢視。
安裝
| 平台 |
步驟 |
| macOS(二進位) |
從Releases頁面下載UI二進位檔;若macOS阻止,請遵循Apple的「仍要開啟」指示。 |
| CLI |
brew tap takahirom/homebrew-repo && brew install takahirom/repo/arbigent(需Java 17+)。 |
| 包裝指令碼 |
產生固定版本的包裝指令碼(arbigent wrapper),首次執行時自動下載正確版本——適用於無需全域安裝的CI環境。 |
適合對象
| 角色 |
優勢 |
| QA工程師 |
無需編碼即可撰寫UI測試;可用自然語言維護測試。 |
| 開發者 / DevOps |
可從CI中程式化執行、平行分片、AI結果快取,以及重用現有的Maestro/YAML資產。 |
| 產品團隊 |
無需撰寫低階UI指令碼,即可在真實裝置上快速原型化端對端流程。 |
優缺點(作者觀點)
| 方面 |
評分(1–5) |
評論 |
| 速度 |
1 |
受限於LLM延遲與真實裝置互動;可透過--shard平行化與結果快取緩解。 |
| 可維護性 |
4 |
自然語言目標與場景分解能抵禦UI變更;可重用場景減少重複。 |
| 利用率(成本) |
1 |
需要裝置資源與付費LLM呼叫(GPT-4o約$0.005/步,$0.02/任務);回放+備援可降低重複AI成本。 |
| 可靠性 |
3 |
內建等待、對話框處理與重試機制有幫助,但模擬器不穩定仍影響執行。 |
| 保真度 |
5 |
在真實/模擬裝置上執行,可驗證影片播放等視覺面向。 |
授權與社群
- 開源 – 免費使用、修改與分發。倉儲歡迎貢獻,並提供可重用場景的規格檔。
- 支援 – 作者提醒存在冒充專案的垃圾帳號;官方更新來自X帳號
@_takahirom_ 與 @new_runnable。
快速入門範例(CLI)
# 安裝CLI(Homebrew)
brew tap takahirom/homebrew-repo
brew install takahirom/repo/arbigent
# 執行儲存的專案檔案
arbigent run --project-file myproject.yml \
--scenario-ids="login-and-play"
結論 – Arbigent是一個專為現代行動/網頁/電視應用設計的AI代理測試框架,結合了視覺化場景撰寫與程式優先執行,同時為自訂工具與既有決定性測試資產提供鈎子。
相關
- 專案
- 專案
- 專案
Core-Mate/OpenGUI一個用於 Android 的行動 GUI 代理框架,讓 AI 代理能在真實裝置上感知並操作應用介面,實現複雜且長時間運行的自動化工作流程。
- 專案
- 專案
google/adk-web一個用於 Google Agent Development Kit 的開發者 UI,可簡化 AI 代理的建置、除錯與協調流程。