驗收單 · 2026-10-22 · 约 10 分钟

AutoGLM 隱藏功能挖掘:多設備並行、自訂操作與跨 App 比價的私藏技巧

軟體AutoGLM分類工具
版本2.0.20體積122.36M
開發方北京智谱华章科技股份有限公司狀態已歸檔
AutoGLM 隱藏功能挖掘:多設備並行、自訂操作與跨 App 比價的私藏技巧

AutoGLM 是什麼?AI 驅動的手機自動化框架

如果你聽過「讓 AI 幫你打手機」這件事,AutoGLM 大概是目前最務實的那一個。它不是聊天機器人,不是語音助手,而是一套能看懂手機螢幕、模擬人操作、依照自然語言指令跨 App 執行多步驟任務的自動化框架。你跟它說「幫我打開美團搜尋附近的麻辣鍋」,它就真的去做——點哪、滑哪、輸入什麼、碰到彈窗怎麼繞,全程自己判斷。

底層靠的是 ADB 或 HDC 連接手機,上層跑一個 PhoneAgent Python 腳本加模型(目前主流是 AutoGLM-Phone-9B 和其多語言版本)。框架內建十種原子操作——點擊、滑動、輸入、長按、回桌面、切 App 等等,模型每次輸出一個動作 JSON,handler 層解析後執行。整體架構說不上複雜,但勝在夠靈活,靈活到隱藏功能多得翻不完。

安裝

AutoGLM下載 是 Android APK,版本 2.0.20,安裝包 122.36M——不算小,畢竟模型打包進去了。安裝本身跟普通 APK 沒太大區別,但要真正跑起來,前置條件比一般 App 多一點。

首先得在手機上打開開發者選項和 USB 調試——這是 AutoGLM 透過 ADB 與設備通訊的唯一方式。大多數 Android 手機的路徑是「設定 → 關於手機 → 連續點擊版本號七次」進入開發者模式,然後回到設定清單找到開發者選項,開啟 USB 調試開關。有些手機還有「USB 調試(安全設定)」選項,建議一起打開,否則部分系統 API 會被擋。

連上電腦後手機會彈一個「允許 USB 調試嗎?」的對話框,勾選「一律允許」並確認——這個對話框拒絕了的話後面所有動作都會卡住。然後在電腦端跑 adb devices,能看到設備 ID 列出來就是通了。

首次啟動 AutoGLM 需要做一次模型配置——填 Model URL、選模型名、設 System Prompt。預設值跑得起來,但根據實際場景微調 Prompt 效果會好不少。如果你的手機 Android 版本較舊(7.0 以下),可能需要處理 SELinux 權限,具體看官網故障排查章節。

大家普遍怎麼用它

多數人對 AutoGLM 的認知停留在「單設備單任務」:插一台手機,跑一個指令,等它做完拔線。這沒錯,但遠遠不是它的全部能力。我折騰了一週,發現它底下還藏著幾個大多數人不知道的進階玩法——有些是框架本身就支援但文檔沒大張旗鼓介紹的,有些是需要改兩行程式碼才能解鎖的。

接下來四個隱藏功能,每一個都講清楚在哪、怎麼開、什麼場景真有用。

隱藏功能一:多設備並行控制

如果你同時插了兩台以上的 Android 設備(比如一台 USB 連的真機 + 一台 WiFi 連的真機 + 一台模擬器),不指定設備 ID 的情況下 AutoGLM 會自動選第一台——通常是 USB 連的那台。但這個「自動選一台」的行為其實是你可以完全掌控的。

怎麼開:啟動 Agent 時加 --device-id 參數,直接指定要操作哪台設備。先跑 adb devices 拿到所有設備的 ID 列表,然後:

python main.py --device-id XXXXXXXX "打開美團搜尋附近咖啡店"

這是單設備指定,不算隱藏。真正的冷門在於並行多設備——框架本身一次只能操作一台,但你可以用 Python 的 concurrent.futures.ThreadPoolExecutor 自己開多線程,每個線程實例化一個 PhoneAgent 綁定不同 device_id,然後用 executor.map 同時派發任務。

什麼人用得上:做 行動遊戲 多開農場刷資源、或者需要同時在多個 App 上跑不同腳本的場景,一個線程一台設備互不幹擾。我自己測過三台設備並行,沒有撞線程或資源衝突,穩定運行了半個小時。

什麼人可以無視:平時只插一台手機跑指令的人,--device-id 連 adb devices 都不用跑。

隱藏功能二:自訂 Action Handler 擴展

框架工具 內建的十種原子操作(Tap、Swipe、Type、Long Press、Launch、Back、Home、Wait、Take_over、Assert)覆蓋了大多數場景,但不是全部。比如你需要「長按同時拖動」來實作卡片拖拽排序,或者需要「多點觸控」來模擬雙指縮放——這些框架沒有。

怎麼開:三步,都在 phone_agent/actions/handler.py 這一個檔案裡:

  1. 寫一個新的 handler 函數,返回同步布林值(True 成功 / False 失敗)
  2. 在同一檔案的 ACTION_HANDLERS 字典裡註冊新的 action 名稱
  3. 修改 System Prompt(phone_agent/config/prompts_zh.py),告訴模型有這個新操作存在,並給觸發場景示例

第三步很容易被忽略。模型只能做兩件事——System Prompt 裡學到的操作 + 歷史對話裡觀察到的操作。你寫了 handler 但沒告訴模型,它永遠不會輸出這個動作。我第一次加 Long Press Drag 時就是忘記改 Prompt,結果模型一直用 Tap + Swipe 的組合去嘗試,失敗了好幾輪才反應過來。

什麼人用得上:做自動化測試需要覆蓋框架未內建的操作類型,或者有業務場景確實需要特殊手勢。

什麼人可以無視:大部分使用者一輩子也用不到十種原子操作之外的東西。

隱藏功能三:跨 App 自動比價

這是我覺得最有意思的一個場景——讓 AutoGLM 同時在淘寶、京東、拼多多之間搜尋同一件商品,對比價格後選最便宜的下單。

怎麼做:指令直接寫「幫我對比一下 32K 顯示器在京東和淘寶哪個平台便宜,找最便宜的下單」就行,框架會自動用 Launch 操作在 安卓應用 之間切換。Agent 每進一個 App 就完整走一遍搜尋→瀏覽→記錄價格的流程,think 裡累積各平台的價格資料,最後綜合判斷。

單 App 任務大概 10~15 步循環,跨 App 比價可能要 30~50 步——每個 App 都要跑完整流程。我測過的一次實際案例:「對比小米手環九 pro 在京東和淘寶哪個便宜」,Agent 真的在兩個 App 之間切了兩次,最後選了淘寶下單。

什麼人用得上:經常比價買東西但不想自己一個個 App 跑的人,或者需要批量爬取電商價格資料的場景。

什麼人可以無視:只在單一 App 裡跑固定任務的人。

隱藏功能四:未內建 App 手動加入

框架支援的 50+ 款 App 都是硬編碼在 phone_agent/config/apps.py 裡的中文名到 Android 包名的映射。如果你想操作一個不在清單裡的 App,不需要等官方更新——自己加一行就行。

怎麼加:跑 adb shell pm list packages | findstr 關鍵詞 找到目標 App 的包名,然後在 apps.py 的映射表裡加一行:"你的App中文名": "com.example.yourapp"。加完後模型就認得這個 App 了,指令裡直接用中文名就行。

我自己加過一個小眾的證券交易 App,整個過程不到五分鐘。

踩過的幾個坑

以上四個功能我都親自跑過,但不是一路順利。三個值得特別提醒的點:

第一,Take_over 是硬安全閘。下單到支付環節通常會觸發人工接管——這是框架的設計,不是 bug。想自動化到支付步驟的話風險很大,建議把它當成一個無法繞過的安全邊界。

第二,新操作必須同步改 System Prompt。前面提到過,但再強調一次:加了 handler 沒改 Prompt,等於沒加。我自己踩過這個坑,浪費了好幾輪 Agent 重試。

第三,模型上下文視窗是 20K token。跨 App 多輪任務的 think 會累積,極長的多 App 任務可能觸達上限。建議單次任務控制在五個 App 以內,超過拆成多條指令。

AutoGLM 任務循環流程圖

最後

AutoGLM 最讓我意外的不是它能做什麼,而是它做事情的方式——不靠硬編碼流程,靠模型的即時判斷力。這意味著你給它一條完整的指令,它會自己規劃動作序列、自己處理彈窗、自己在失敗時換路線。

但大多數人只把它當成一個「自動點擊器」。多設備並行、自訂操作擴展、跨 App 比價、未內建 App 手動加入——這些功能框架早就預留好了,只是沒有被廣為人知。

把它用透,說不定能幫你省下不少重複勞動的時間。

本文為個人基於網路公開資料整理編寫,非官方內容,僅供學習交流參考;軟體版權歸原作者所有,請支持正版;使用過程中遇到問題請查閱官方管道,本文不承擔任何責任。

同類驗收報告