Pi 官方文档
Android 上的 Termux
Termux (Android) 安装
Pi 可以通过 Termux 在 Android 上运行。Termux 是 Android 上的终端模拟器和 Linux 环境。
前置条件
- 从 GitHub 或 F-Droid 安装 Termux(不要用 Google Play,那里的版本已弃用)
- 从 GitHub 或 F-Droid 安装 Termux:API,用于剪贴板和其他设备集成
安装
# Update packages
pkg update && pkg upgrade
# Install dependencies
pkg install nodejs termux-api git
# Install pi
npm install -g --ignore-scripts @earendil-works/pi-coding-agent
# Create config directory
mkdir -p ~/.pi/agent
# Run pi
pi
剪贴板支持
在 Termux 中运行时,剪贴板操作会使用 termux-clipboard-set 和 termux-clipboard-get。要让它们生效,必须安装 Termux:API 应用。
Termux 不支持图片剪贴板(ctrl+v 图片粘贴功能无法使用)。
Termux 的 AGENTS.md 示例
创建 ~/.pi/agent/AGENTS.md,帮助 agent 理解 Termux 环境:
# Agent Environment: Termux on Android
## Location
- **OS**: Android (Termux terminal emulator)
- **Home**: `/data/data/com.termux/files/home`
- **Prefix**: `/data/data/com.termux/files/usr`
- **Shared storage**: `/storage/emulated/0` (Downloads, Documents, etc.)
## Opening URLs
```bash
termux-open-url "https://example.com"
```
## Opening Files
```bash
termux-open file.pdf # 使用默认应用打开
termux-open --chooser image.jpg # 选择应用
```
## Clipboard
```bash
termux-clipboard-set "text" # 复制
termux-clipboard-get # 粘贴
```
## Notifications
```bash
termux-notification -t "Title" -c "Content"
```
## Device Info
```bash
termux-battery-status # 电池信息
termux-wifi-connectioninfo # WiFi 信息
termux-telephony-deviceinfo # 设备信息
```
## Sharing
```bash
termux-share -a send file.txt # 分享文件
```
## Other Useful Commands
```bash
termux-toast "message" # 快速弹出提示
termux-vibrate # 让设备振动
termux-tts-speak "hello" # 文本转语音
termux-camera-photo out.jpg # 拍照
```
## Notes
- Termux:API app must be installed for `termux-*` commands
- Use `pkg install termux-api` for the command-line tools
- Storage permission needed for `/storage/emulated/0` access
限制
- 没有图片剪贴板:Termux 的剪贴板 API 只支持文本
- 没有原生二进制文件:某些可选的原生依赖项(例如 clipboard 模块)在 Android ARM64 上不可用,安装时会被跳过
- 存储访问:要访问
/storage/emulated/0(Downloads 等)中的文件,先运行一次termux-setup-storage以授予权限
故障排查
剪贴板无法使用
确保两个应用都已安装:
- Termux(来自 GitHub 或 F-Droid)
- Termux:API(来自 GitHub 或 F-Droid)
然后安装 CLI 工具:
pkg install termux-api
共享存储权限被拒绝
运行一次以授予存储权限:
termux-setup-storage
Node.js 安装问题
如果 npm 失败,可以尝试清理缓存:
npm cache clean --force