本地 LLM 控制 Android 手機:RikkaHub Agent 做到幾多,又要交出咩權限
3C 產品

本地 LLM 控制 Android 手機:RikkaHub Agent 做到幾多,又要交出咩權限

圖片:via XDA Developers — https://www.xda-developers.com/turned-phone-ai-agent-powered-local-llm-installed-software/
TechLab 編輯部(譯)·

模型可以留喺屋企部電腦,手機負責睇畫面、收指令同執行工具

XDA 技術編輯 Adam Conway 最近試咗一套幾進取嘅 Android agent:手機可以睇通知、搵檔案、撳畫面、開網頁、跑 Termux 指令,背後再由自己架設嘅 LLM 決定下一步。佢甚至只係問 whisper.cpp 裝好未,agent 檢查完環境之後,獲批准安裝依賴、下載原始碼同完成編譯。成件事幾有科幻味,不過呢次始終係單一作者實驗,亦涉及一套仍然快速改緊嘅細型開源項目,距離一般 Android 用戶放心長開仲有段路。

「本地 LLM」多數喺另一部機跑

原文最易令人誤會嘅位係 local。Conway 平時用嘅 Qwen 3.6 27B,係 Q4_K_M 量化版本,模型權重大約佔 16GB,由配備 24GB VRAM 嘅 Radeon RX 7900 XTX 主機負責推理;另一個 Qwen 3.6 35B A3B endpoint 就跑喺有 128GB unified memory 嘅 Lenovo ThinkStation PGX。手機經 OpenAI-compatible API 將 prompt、工具結果同畫面資料送去呢啲主機,再接收模型揀好嘅工具指令。資料可以留喺自己個網絡,但模型運算根本冇發生喺手機。

手機本身跑嘅係 agent harness,即係管理對話、整理工具描述、呼叫模型,再按模型輸出執行動作嗰層。Conway 亦喺 Oppo Find N5 用 LiteRT-LM 跑過 2.6GB 嘅 Gemma 4 E2B,證明全手機推理行得通;但工具調用初期試過變成普通文字,更新後雖然識正確呼叫,速度仍然好慢,開齊工具後 32K context 嘅 prefill 壓力亦相當大。想操作順暢啲,暫時用屋企主機跑模型會實際好多。

RikkaHub Agent 點樣郁到部手機

RikkaHub Agent 係 Android LLM 客戶端 RikkaHub 嘅獨立 fork,上面加咗超過 80 項裝置工具。當中包括點按、掃動、輸入文字、截圖、開 app、讀通知、SMS、聯絡人、感應器同共享儲存空間,亦有內置瀏覽器、SSH、排程、Telegram bot、MCP、檔案管理同 Termux workspace。部分操作靠一般 Android runtime permission,畫面自動操作同通知讀取就要額外開 accessibility service 或 notification access,官方 FAQ 表明唔使 root、Magisk 或 custom ROM。

個模型每一輪只會收到已啟用工具嘅名稱、用途同參數格式,揀中一項後由手機執行,再將結果送返模型決定下一步。呢種做法慳咗用家逐條寫 Tasker rule,但工具一多,模型要消化嘅內容亦急升。Conway 嘅設定由約 7,000 input tokens 升到 32,000,細模型除咗慢,亦較容易揀錯工具或者填錯參數。agent 做唔做到件事,好睇模型嘅 tool-calling 能力,唔可以淨係睇一般聊天表現。

安裝流程本身已經係信任測試

項目要求 Android 8.0 或以上,用家要由 GitHub Releases 自行安裝 APK,再加入雲端 provider、本地 OpenAI-compatible endpoint,或者下載 LiteRT 模型。之後仲要逐個 assistant 開啟工具,同按用途授予檔案、通知、SMS、位置或 accessibility 等權限。檔案搜尋功能會要求 MANAGE_EXTERNAL_STORAGE;Android 官方文件講得好清楚,呢項特殊權限可以讀寫大部分共享儲存空間,範圍遠闊過普通相片或文件選取器。

原文標題話 agent 自己裝軟件,實際情況係作者批准後,佢喺 Termux 環境安裝依賴、拉取 whisper.cpp 原始碼、編譯程式,之後再獲一次批准安裝 ffmpeg。原文冇證明佢可以靜靜地繞過 Android 安裝畫面,自行裝另一個 APK。 不過如果用家另行授予未知來源安裝權限,又畀 accessibility 工具控制畫面,揀錯套件、撳錯確認或者拉到有問題嘅依賴,風險自然會高好多。APK、模型、Termux 套件同第三方 skill 每一層都要計入供應鏈風險。

三層保護有用,但唔好當成保險箱

RikkaHub Agent 預設關閉所有裝置工具,開啟後會按 assistant 分開權限;有副作用嘅操作執行前亦會提供只准今次、今次對話、長期允許或拒絕。最後仲有一組 deterministic HARDLINE 規則,直接攔截清機、重啟、fork bomb 同破壞系統檔案等 shell 指令。方向係合理嘅,尤其高風險操作保留真人確認,亦符合 OWASP 對 agent 最小權限同 human-in-the-loop 嘅建議。

不過最後嗰層主要靠簡單 pattern matching,開發者亦承認用變數等寫法可能避過。更實際嘅警號係 v2.1.17 修正過一個安全漏洞:Telegram bot 模式錯誤繞過逐項批准,令 Termux、SSH 同寫檔工具可以直接執行。開發者主動披露同修正值得肯定,但件事亦證明**呢次漏洞顯示,部分執行路徑有機會繞過批准畫面。**長期允許高權限工具,更會直接削弱前面兩層保護。

惡意 prompt 可以由網頁、通知同檔案入手

呢類 agent 會讀網頁、通知、文件、Telegram 訊息同工具錯誤,任何一項都可能夾帶惡意指令。攻擊者唔使直接同模型對話,只要令 agent 讀到一段叫佢搜尋私人檔案、轉發內容或者執行指令嘅文字,已經可能觸發 indirect prompt injection。OWASP 特別提醒,模型輸出唔應該兼任授權判斷;高風險動作要由另一層政策檢查,批准亦要綁實工具、目標同完整參數,唔可以用一句「今次對話全部准許」含糊放行。

私隱方面亦要分清楚:接駁屋企 server 可以避免交資料畀大型雲端模型供應商,但手機仍會將 prompt、通知內容、檔案片段甚至截圖送去嗰部 server。轉用雲端 provider,資料就會離開自己設備;再開 LAN Web UI 或 Telegram bot,控制入口仲會伸延去其他裝置同互聯網。打算研究呢套架構,較穩陣係用冇放私人訊息、相片、銀行 app 同工作帳戶嘅後備手機,逐項開權限,每次更新後重新檢查批准紀錄。至於日常主力機,等項目再成熟、有獨立安全審計同更細緻嘅權限政策,會實際好多。


參考來源

本文根據原文及公開資料整理;資料有出入時,以原文及官方資料為準。

分享:WhatsAppThreadsTelegramFacebook