Android Termux 実行ガイド

Android Termux 実行ガイド

概要

Android の Termux 環境で Miyabi を実行するための完全ガイドです。インストール、設定、トラブルシューティング、パフォーマンス最適化について説明します。

対象読者

  • Android ユーザー
  • モバイル開発環境を構築したいエンジニア
  • 外出先で開発作業をしたい方

所要時間

  • 読了時間: 15 分
  • セットアップ時間: 20-30 分

前提知識

  • Android の基本操作
  • Linux コマンドラインの基礎
  • Git の基本知識

動作環境

サポート状況

support_status:
  basic_features: ✅ 完全サポート
    - Agent 実行
    - Issue 処理
    - PR 作成
    - Git 操作

  interactive_mode: ⚠️ 制限あり
    - CLI モードを優先
    - 対話形式は動作しない場合あり

  github_integration: ✅ 完全サポート
    - gh CLI 完全動作
    - GitHub API アクセス

  typescript: ✅ 完全サポート
    - TypeScript コンパイル
    - Node.js 実行

推奨スペック

device_requirements:
  android_version: "8.0以上"
  ram: "4GB以上推奨"
  storage: "2GB以上の空き容量"
  network: "安定したインターネット接続"

  optional:
    - 大画面デバイス(タブレット推奨)
    - Bluetooth キーボード
    - USB OTG サポート

インストール手順

ステップ 1: Termux のインストール

# Termux アプリをインストール
# F-Droid(推奨): https://f-droid.org/en/packages/com.termux/
# または GitHub Releases: https://github.com/termux/termux-app/releases

# 初回起動後、パッケージを更新
pkg update && pkg upgrade -y

# 確認プロンプトが表示されたら "y" を入力

ステップ 2: 必須パッケージのインストール

# Node.js、Git、GitHub CLI をインストール
pkg install -y nodejs git gh

# バージョン確認
node --version
# v20.x.x 以上推奨

npm --version
# v9.x.x 以上推奨

git --version
# 2.40 以上推奨

gh --version
# 2.30 以上推奨

ステップ 3: GitHub 認証

# GitHub CLI で認証
gh auth login

# 画面の指示に従って進める:
# ? What account do you want to log into? GitHub.com
# ? What is your preferred protocol for Git operations? HTTPS
# ? Authenticate Git with your GitHub credentials? Yes
# ? How would you like to authenticate GitHub CLI? Login with a web browser

# ワンタイムコードをメモして、ブラウザで認証を完了

# 認証確認
gh auth status

ステップ 4: Miyabi のインストール

# グローバルインストール
npm install -g miyabi

# または既存プロジェクトで
cd your-project
npx miyabi install

Termux 特有の設定

ストレージアクセスの許可

# 内部ストレージへのアクセスを許可
termux-setup-storage

# 権限ダイアログで「許可」を選択

# ホームディレクトリの確認
ls ~/storage/shared/

# プロジェクト用ディレクトリを作成
mkdir -p ~/storage/shared/projects
cd ~/storage/shared/projects

環境変数の設定

# .bashrc に環境変数を追加
cat >> ~/.bashrc << 'EOF'
# Miyabi 設定
export DEVICE_IDENTIFIER="Termux-Android"
export LC_ALL=C
export LANG=C

# GitHub Token(gh CLI を使用するため通常は不要)
# export GITHUB_TOKEN=""

# Anthropic API Key
export ANTHROPIC_API_KEY="sk-ant-xxxxx"

# ログディレクトリ
export LOG_DIRECTORY=".ai/logs"
export REPORT_DIRECTORY=".ai/parallel-reports"

# Termux 向け設定
export DEFAULT_CONCURRENCY=1  # 低めに設定
export USE_TASK_TOOL=false
export USE_WORKTREE=false
EOF

# 設定を反映
source ~/.bashrc

既知の問題と回避方法

問題 1: ロケール警告

症状:

warning: setlocale: LC_ALL: cannot change locale (ja_JP.UTF-8)

回避方法:

# .bashrc に追加(既に上記で設定済み)
echo 'export LC_ALL=C' >> ~/.bashrc
echo 'export LANG=C' >> ~/.bashrc
source ~/.bashrc

影響: 警告メッセージが表示されるのみで、機能には影響なし

問題 2: 対話モードが動作しない

症状: Termux 環境では対話形式のプロンプトが正常に動作しない場合があります。

回避方法: CLI モードを使用

# ❌ 対話モード(動作しない場合あり)
miyabi

# ✅ CLI モード(推奨)
miyabi init my-project
miyabi install --dry-run
miyabi status

Note: v2.0.0 以降、Termux 環境を自動検出して CLI モードに切り替わります。

問題 3: GitHub 認証トークンの期限切れ

症状:

HTTP 401: Bad credentials
The token in ~/.config/gh/hosts.yml is invalid

解決方法:

# gh CLI で再認証
gh auth refresh

# または新しいトークンで再ログイン
gh auth login

# トークンの状態確認
gh auth status

問題 4: メモリ不足エラー

症状: 大規模なプロジェクトで Agent 実行時にメモリ不足が発生

回避方法:

# 並列実行数を減らす
npm run agents:parallel:exec -- --issue 123 --concurrency 1

# または環境変数で制御
export DEFAULT_CONCURRENCY=1

# バックグラウンドアプリを終了してメモリを確保

問題 5: Git push 認証エラー

症状:

git: 'credential-!gh' is not a git command
Authentication failed for 'https://github.com/...'

解決方法:

# Git credential helper を修正
git config --global --unset-all credential.helper
git config --global credential.helper store

# 認証情報を手動設定
git config --global --unset credential.https://github.com.helper
gh auth setup-git

# 確認
git config --list | grep credential

パフォーマンス最適化

並列実行の調整

# デバイスのスペックに応じて調整

# 低スペック(RAM 2-4GB)
export DEFAULT_CONCURRENCY=1

# 中スペック(RAM 4-6GB)
export DEFAULT_CONCURRENCY=2

# 高スペック(RAM 6GB以上)
export DEFAULT_CONCURRENCY=3

バッテリー最適化の無効化

Android の設定でバッテリー最適化を無効化すると、バックグラウンド実行が安定します。

1. Android 設定 → アプリ → Termux
2. バッテリー → 最適化しない を選択

ウェイクロックの取得

長時間実行する Agent の場合:

# Termux API をインストール
pkg install termux-api

# ウェイクロックを取得
termux-wake-lock

# Agent を実行
npm run agents:parallel:exec -- --issues=270

# 実行後にウェイクロックを解放
termux-wake-unlock

ログのクリーンアップ

# 古いログを削除(7日以上前)
find .ai/logs -name "*.md" -mtime +7 -delete

# 古いレポートを削除
find .ai/parallel-reports -name "*.json" -mtime +7 -delete

# ディスク使用量を確認
du -sh .ai/

実践例

例 1: 新規プロジェクトの作成

# プロジェクト用ディレクトリに移動
cd ~/storage/shared/projects

# 新規プロジェクト作成
npx miyabi init my-mobile-app
cd my-mobile-app

# 依存関係インストール
npm install

# Issue を作成
gh issue create --title "Add user authentication" \
  --body "Implement login and registration"

# Agent が自動的に処理(10-15分)
# PR が自動作成されます

例 2: 既存プロジェクトでの作業

# プロジェクトをクローン
cd ~/storage/shared/projects
git clone https://github.com/username/project.git
cd project

# Miyabi をインストール
npx miyabi install

# Issue を処理
npm run agents:parallel:exec -- --issues=270 --concurrency=1

例 3: ステータス確認

# Agent のステータスを確認
npx miyabi status

# ウォッチモード(10秒ごとに更新)
npx miyabi status --watch

# レポート確認
cat .ai/parallel-reports/*.json | jq

ベストプラクティス

1. バッテリー管理

  • 充電中に長時間実行タスクを実行
  • ウェイクロックを活用
  • 不要なバックグラウンドアプリを終了

2. ネットワーク

  • Wi-Fi 接続推奨(モバイルデータの場合は注意)
  • 安定した接続環境で実行
  • データ使用量を監視

3. ストレージ

# 定期的にログをクリーンアップ
find .ai/logs -name "*.md" -mtime +7 -delete

# ディスク使用量を監視
df -h

# node_modules を定期的にクリーン
npm prune

4. セキュリティ

  • .env ファイルにトークンを保存しない
  • gh auth login を使用
  • Termux アプリにロックを設定
  • 重要なプロジェクトは暗号化

トラブルシューティング

デバッグモード

# 詳細なログを出力
DEBUG=agents:* npm run agents:parallel:exec -- --issues=270

# Termux のログを確認
logcat | grep termux

パッケージの再インストール

# Node.js を再インストール
pkg uninstall nodejs
pkg install nodejs

# npm グローバルパッケージを再インストール
npm uninstall -g miyabi
npm install -g miyabi

Termux のリセット

# ⚠️ 注意: すべてのデータが削除されます

# Termux データをバックアップ
tar -czf ~/storage/shared/termux-backup.tar.gz ~/.bashrc ~/projects

# Termux をアンインストール&再インストール
# Android 設定から実行

# バックアップから復元
tar -xzf ~/storage/shared/termux-backup.tar.gz -C /

よくある質問

Q: Termux で完全に動作しますか? A: はい、コアな機能はすべて動作します。対話モードに制限がありますが、CLI モードで代替可能です。

Q: バッテリー消費は? A: Agent 実行中は CPU/ネットワークを使用するため、バッテリー消費は多めです。充電中の実行を推奨します。

Q: 他の Android ターミナルアプリは? A: Termux 以外(Userland、Linux Deploy など)では未検証ですが、Node.js 18+ と gh CLI があれば動作する可能性があります。

Q: root は必要? A: 不要です。通常の Termux 環境で動作します。

関連ドキュメント

参考リンク

次のステップ

  1. 最初の Agent を動かしてみる
  2. 自動化 Workflow を設定する
  3. パフォーマンス監視 を導入する

最終更新: 2025-10-10 バージョン: 2.0.0 ソース: TERMUX_GUIDE.md プラットフォーム: Termux on Android 8.0+ メンテナー: Miyabi Mobile Team