H繁中版
<!-- Source: https://hermesbible.com/docs/getting-started/termux -->

在 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] 目前不支援 Android
  • voice 附加元件被 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 — 複製/更新儲存庫
  • clangrustmakepkg-configlibffiopenssl — 在 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-browsernpx 會被發現,無需額外的 PATH 設定。

在有文件記錄之前,將 Android 上的瀏覽器 / WhatsApp 工具視為實驗性功能。


疑難排解

安裝 .[all] 時出現 No solution found

改用經過測試的 Termux 套件:

python -m pip install -e '.[termux]' -c constraints-termux.txt

目前的阻礙是 voice 附加元件:

  • voice 拉取 faster-whisper
  • faster-whisper 依賴 ctranslate2
  • ctranslate2 不發布 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 / maturinANDROID_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-info
  • python --version
  • hermes doctor
  • 確切的安裝指令和完整的錯誤輸出


Nix & NixOS 設定