Pi の設定、拡張、プラットフォーム設定、API リファレンス。

Termux (Android) セットアップ

Pi は、Android 用のターミナル エミュレーターおよび Linux 環境である Termux を介して Android 上で実行されます。

前提条件

  1. GitHub または F-Droid から Termux をインストールします (Google Play ではなく、そのバージョンは非推奨です)
  2. クリップボードやその他のデバイスを統合するには、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-settermux-clipboard-get を使用します。これらを機能させるには、Termux:API アプリをインストールする必要があります。

Termux では画像クリップボードはサポートされていません (ctrl+v 画像貼り付け機能は機能しません)。

Termux の AGENTS.md の例

エージェントが Termux 環境を理解できるように、~/.pi/agent/AGENTS.md を作成します。

# 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          # Opens with default app
termux-open --chooser image.jpg      # Choose app
```

## Clipboard
```bash
termux-clipboard-set "text"   # Copy
termux-clipboard-get          # Paste
```

## Notifications
```bash
termux-notification -t "Title" -c "Content"
```

## Device Info
```bash
termux-battery-status         # Battery info
termux-wifi-connectioninfo    # WiFi info
termux-telephony-deviceinfo   # Device info
```

## Sharing
```bash
termux-share -a send file.txt # Share file
```

## Other Useful Commands
```bash
termux-toast "message"        # Quick toast popup
termux-vibrate                # Vibrate device
termux-tts-speak "hello"      # Text to speech
termux-camera-photo out.jpg   # Take photo
```

## 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 はテキストのみをサポートします。
  • ネイティブバイナリなし: クリップボードモジュールなどの一部のオプションのネイティブ依存関係は Android ARM64 では利用できず、インストール時にスキップされます。
  • ストレージへのアクセス: /storage/emulated/0(Downloads など)のファイルにアクセスするには、termux-setup-storage を一度実行して権限を付与します。

トラブルシューティング

クリップボードが動作しない

次の両方のアプリがインストールされていることを確認してください。

  1. Termux(GitHub または F-Droid から)
  2. Termux:API(GitHub または F-Droid から)

次に CLI ツールをインストールします。

pkg install termux-api

共有ストレージに対するアクセス許可が拒否されました

1 回実行してストレージ権限を付与します。

termux-setup-storage

Node.js インストールの問題

npm が失敗した場合は、キャッシュをクリアしてみてください。

npm cache clean --force