在 Android 上使用 Termux 運行 Hermes
這是透過 Termux 在 Android 手機上直接運行 Hermes Agent 的經過測試路徑。
它為你提供一個在手機上可用的本地 CLI,加上目前已知可以在 Android 上乾淨安裝的核心附加元件。
經過測試的路徑支援什麼?
經過測試的 Termux 套件安裝:
- Hermes CLI
- cron 支援
- PTY/背景終端機支援
- Telegram 閘道支援(手動/盡力背景運行)
- MCP 支援
- Honcho 記憶支援
- ACP 支援
具體來說,它對應到:
python -m pip install -e '.[termux]' -c constraints-termux.txt
什麼還不在經過測試的路徑中?
有些功能仍然需要桌面/伺服器風格的相依性,這些相依性尚未在 Android 上發布,或尚未在手機上驗證:
.[all]目前不支援 Androidvoice附加元件被faster-whisper -> ctranslate2阻擋,而ctranslate2不發布 Android wheels- 自動瀏覽器 / Playwright 引導在 Termux 安裝器中被跳過
- Docker 終端機隔離在 Termux 中不可用
- Android 可能仍會暫停 Termux 背景任務,所以閘道持久性是盡力而為而非正常的管理服務
這並不妨礙 Hermes 作為手機原生 CLI 代理良好運作——只是意味著建議的行動安裝比桌面/伺服器安裝更為精簡。
選項 1:一行安裝器
Hermes 現在提供 Termux 感知的安裝路徑:
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
在 Termux 上,安裝器會自動:
- 使用
pkg處理系統套件 - 使用
python -m venv建立虛擬環境 - 先嘗試廣泛的
.[termux-all]附加元件,然後回退到較小的.[termux]附加元件(然後是基礎安裝)——curl 安裝器會自動匹配此順序 - 將
hermes連結到$PREFIX/bin,使其保持在你的 Termux PATH 中 - 跳過未經測試的瀏覽器 / WhatsApp 引導
如果你想要明確的指令或需要偵錯失敗的安裝,請使用下面的手動路徑。
選項 2:手動安裝(完全明確)
1. 更新 Termux 並安裝系統套件
pkg update
pkg install -y git python clang rust make pkg-config libffi openssl nodejs ripgrep ffmpeg
為什麼需要這些套件?
python— 執行環境 + 虛擬環境支援git— 複製/更新儲存庫clang、rust、make、pkg-config、libffi、openssl— 在 Android 上建置一些 Python 相依性所需nodejs— 用於超出經過測試核心路徑之外實驗的可選 Node 執行環境ripgrep— 快速檔案搜尋ffmpeg— 媒體 / TTS 轉換
2. 複製 Hermes
git clone https://github.com/NousResearch/hermes-agent.git
cd hermes-agent
3. 建立虛擬環境
python -m venv venv
source venv/bin/activate
export ANDROID_API_LEVEL="$(getprop ro.build.version.sdk)"
python -m pip install --upgrade pip setuptools wheel
ANDROID_API_LEVEL 對於 Rust / maturin 基礎的套件(如 jiter)很重要。
4. 安裝經過測試的 Termux 套件
python -m pip install -e '.[termux]' -c constraints-termux.txt
如果你只想要最小的核心代理,這也行:
python -m pip install -e '.' -c constraints-termux.txt
5. 將 hermes 加入你的 Termux PATH
ln -sf "$PWD/venv/bin/hermes" "$PREFIX/bin/hermes"
$PREFIX/bin 在 Termux 中已經在 PATH 上,所以這讓 hermes 指令在新 shell 中持久存在,無需每次都重新啟動虛擬環境。
6. 驗證安裝
hermes version
hermes doctor
7. 啟動 Hermes
hermes
建議的後續設定
設定模型
hermes model
或直接在 ~/.hermes/.env 中設定金鑰。
稍後重新執行完整的互動式設定精靈
hermes setup
手動安裝可選的 Node 相依性
經過測試的 Termux 路徑故意跳過了 Node/瀏覽器引導。如果你稍後想嘗試瀏覽器工具:
pkg install nodejs-lts
npm install
瀏覽器工具會自動將 Termux 目錄(/data/data/com.termux/files/usr/bin)納入其 PATH 搜尋,所以 agent-browser 和 npx 會被發現,無需額外的 PATH 設定。
在有文件記錄之前,將 Android 上的瀏覽器 / WhatsApp 工具視為實驗性功能。
疑難排解
安裝 .[all] 時出現 No solution found
改用經過測試的 Termux 套件:
python -m pip install -e '.[termux]' -c constraints-termux.txt
目前的阻礙是 voice 附加元件:
voice拉取faster-whisperfaster-whisper依賴ctranslate2ctranslate2不發布 Android wheels
uv pip install 在 Android 上失敗
改用 Termux 路徑,使用 stdlib venv + pip:
python -m venv venv
source venv/bin/activate
export ANDROID_API_LEVEL="$(getprop ro.build.version.sdk)"
python -m pip install --upgrade pip setuptools wheel
python -m pip install -e '.[termux]' -c constraints-termux.txt
jiter / maturin 對 ANDROID_API_LEVEL 報錯
在安裝前明確設定 API 層級:
export ANDROID_API_LEVEL="$(getprop ro.build.version.sdk)"
python -m pip install -e '.[termux]' -c constraints-termux.txt
hermes doctor 說缺少 ripgrep 或 Node
使用 Termux 套件安裝它們:
pkg install ripgrep nodejs
安裝 Python 套件時建置失敗
確保已安裝建置工具鏈:
pkg install clang rust make pkg-config libffi openssl
然後重試:
python -m pip install -e '.[termux]' -c constraints-termux.txt
手機上的已知限制
- Docker 後端不可用
- 在經過測試的路徑中,透過
faster-whisper的本地語音轉錄不可用 - 安裝器故意跳過了瀏覽器自動化設定
- 一些可選附加元件可能有效,但目前只有
.[termux]和.[termux-all]被記錄為經過測試的 Android 套件
如果你遇到新的 Android 特定問題,請在 GitHub 上開一個 issue 並附上:
- 你的 Android 版本
termux-infopython --versionhermes doctor- 確切的安裝指令和完整的錯誤輸出