- Android 8.0 以降 — 現在は Google Play のクローズド テストです。参加リンクをモバイル ブラウザーで開いてから、Play でインストールしてください
- iPhone と iPad の iOS 16 以降 — TestFlight のパブリック ベータに参加
- 暗号化バックアップは相互に利用可能:一方のプラットフォームで書き出し、もう一方で取り込み
機能一覧
Mobile SSH の機能
Mobile SSH は Android と iOS の端末から直接 SSH を使うために作られています。端末を開き、生かし続け、ファイルを動かし、サーバーを保存し、モバイルの中断からすばやく復帰します。
- パスワード認証と秘密鍵認証
- Android では Ed25519、ECDSA(P-256/384/521)、RSA の秘密鍵に対応。iOS では Ed25519 と ECDSA。どちらのプラットフォームもパスフレーズで暗号化された鍵を開けます
- ホスト、ポート、ユーザー名、認証情報、秘密鍵、トンネル設定を含む保存済みサーバープロファイル — プロファイルを複製すると、その設定を新しいサーバーに引き継げる
- サーバーに名前を付けると、一覧にはアドレスの代わりにその名前が表示される — 2 つの行が見分けにくくなるときはアドレスが戻ってくる
- 名前、ホスト、ポート、認証情報、あるいは代替アドレスのいずれでも保存済みサーバーを検索
- 同じマシンに 2 つの保存行から接続するとアプリが気づく — ホスト鍵のフィンガープリントを照合し、複数アドレスを持つ 1 つのサーバーへの統合を提案する
- 検索優先の「セッション追加」フロー:専用の検索ページで保存済みサーバーを選んでワンタップ接続
- 保存済みサーバーごとに複数のアドレスを登録して LAN/VPN のローミングに対応 — 順番に接続を試み、前回つながったアドレスを最初に試行。ネットワーク変更時には再接続が働く
- サーバー設定で選べる再利用可能な認証情報レコード
- 作業の再開を軸にしたホーム画面:いま生きている接続と、サーバーで待っている tmux セッション — 後者は保存済みスナップショットから描かれるためネットワークがなくても一覧でき、各行には取得からの経過時間が付く。iOS には「最近」一覧もある
- IPv6 に一貫対応:アドレス欄では角かっこ付きリテラル(ポートは任意で付加可能)、ポート転送ルールでは角かっこ付きの IPv6 宛先を使える
- 成功と失敗のログイン履歴。実際に接続したアドレスと、失敗時はその理由も記録
- Teleport プロキシ トランスポート(実験的、Android):ユーザー名、パスワード、OTP でログインするか、Teleport の設定または identity ファイルをインポートし、クラスターのノードを閲覧して、ターミナル、SFTP、tmux、プラグインをプロキシ トンネル経由で実行
- VT100/xterm-256color 風のターミナル動作。24-bit トゥルーカラーとイタリックに対応し、シェルには TERM=xterm-256color と COLORTERM=truecolor を通知
- スクロールバック バッファは Android と iOS で 1,000/5,000/10,000/50,000 行から選択(既定は 5,000 行)
- ターミナル内検索 — スクロールバックと表示中の画面を検索し、一致箇所を移動(Android と iOS)
- シェル統合(OSC 133):プロンプト間を移動し、コマンドの出力をまるごと選択 — 直前の 1 件だけでなく 300 行前のビルド エラーも — さらに長時間実行コマンドの完了時にアラート(Android と iOS)
- Kitty グラフィックス プロトコルによるターミナル内のインライン画像。ピンチ ズームや折り返しの変化でも消えずに残る(Android と iOS)
- ブロック、点字、六分割のモザイク グリフをアプリ自身が描画するため、chafa、timg、ANSI アートが空の四角にならず、ぴったりと敷き詰められる(Android)
- マウス トラッキングを使う TUI では、タップがそのままクリックになる — htop、vim、ペイン選択をタッチで操作(Android)
- ペインのヘッダーには、tmux への問い合わせやシェルからの OSC 7 通知で得た、そのペインの実際の作業ディレクトリを表示(Android)
- ESC、TAB、CTRL、矢印、Home、End、PgUp、PgDn、キーボード切替からなる 13 キーの拡張キーバー。横スクロールではなく 2 段目に折り返し、収まらない分はオーバーフロー メニューにまとめるので、画面外に隠れるキーはない
- Android と iOS でキーバーをカスタマイズ:F1〜F12、Ctrl の組み合わせ、記号など約 45 種のプリセット パレットから追加でき、削除・並べ替え・非表示、独自のエスケープシーケンス キーの定義、既定値へのリセットをライブ プレビュー付きで実行
- タップでフォーカス、任意で「タップでキーボードを表示」、コピー/全コピー
- ピンチで文字サイズ変更(リモート端末リサイズ付き)
- ペインのダブルタップでフルスクリーン
- 端末テキスト選択(コピー、共有、すべて選択)— 長押しで単語を選択し、コピー後も選択が保持されるため、共有や再コピーができる
- OSC 52 クリップボード — リモートの tmux や vim セッションからテキストをスマホのクリップボードへ直接コピー(Android と iOS)
- ネイティブなパススルーのキーボード入力 — 自動修正がシェルと衝突せず、ソフトキーボードの音声入力も引き続き利用可能
- Android と iOS での外付けおよび Bluetooth キーボード対応(矢印キー、ファンクションキー、Ctrl/Alt の組み合わせを含む)
- ブラケットペーストにより、複数行のクリップボード内容が自動実行されない
- 内蔵の Nerd Font が、システム フォントでは空の四角として表示されてしまう powerline、starship、devicon、Material Design のアイコン グリフを Android と iOS で描画
- ワイド CJK、絵文字、結合文字を Android と iOS で正しく計測・描画。書記素クラスタやゼロ幅接合子にも対応
- 設定可能なターミナル フォント(システム等幅、JetBrains Mono、Source Code Pro)と ANSI カラースキーム(Solarized、Gruvbox、Dracula、Nord)を Android と iOS で提供し、開いているペインに即時反映
- 設定にはピンチ ズームと併用できるターミナルの文字サイズ スライダーがあり、アプリのテーマも System/Light/Dark から選べる
- 同時最大 8 つの SSH セッション
- アクティブセッションのグリッド表示
- バックグラウンドや画面ロックへの耐性:Android ではフォアグラウンド サービスが、アプリをスワイプで閉じたあともシェルとエージェントを動かし続ける。iOS では tmux 自動アタッチがシェルを再アタッチ
- Keepalive と指数バックオフ付きの再接続 — 試行は最大 10 回。すでに離れたネットワークでの失敗は、この上限に数えない
- Wi-Fi、モバイル回線、VPN を切り替えると、死んだ経路のタイムアウトを待たずに即座に接続し直し、すでにバックオフ中のセッションも使えるネットワークが現れた瞬間に再試行する
- 応答が静かに途絶えたサーバー — サスペンドされた VM、固まった踏み台ホストなど — を、返ってこない keepalive から検知して再接続。入力が黙って飲み込まれることはない(iOS)
- スタート画面からの「アクティブセッション」入口。進行中の通知にセッション一覧を表示 — タップで開く
- tmux コマンド追跡と中断した作業向けの reattach ヒント。接続時に何へアタッチするかはサーバーごとに選択可能:自動判別、なし、tmux、herdr、Zellij(Android)
- エージェントはターミナル経由で自ら報告するため、どのエージェントが、どのツールを実行し、あなたの応答待ちかどうかをアプリが把握する — ペインは琥珀色になり、ヘッダーには「claude · needs you」と表示され、ツールバーのバッジが待機中の数を数える
- 「エージェント」一覧からワンタップでエージェントの質問に応答。返答は別のチャネルで送られるため、画面に表示中の内容に打ち込まれることはない
- エージェント フックはアプリ内からサーバーへ導入できる — 特定ベンダー向けの統合ではなく、どのエージェントからでも呼び出せる小さなシェル スクリプト
- Eternal Terminal (ET) トランスポート:ネットワーク切断、スリープ、IP 変更を乗り越えるセッションを実現。SSH 経由のオプション自動 etserver セットアップ付き
- Tmux マネージャー:セッション、ウィンドウ、ペインを一覧表示して切り替え — アタッチ、名前変更、作成、分割、ズーム、強制終了が可能。名前または日付でソートでき、入力待ちのエージェントには 🔔 が付く
- herdr と Zellij のマネージャーは Android と iOS の両方で利用でき、それぞれのセッション、タブ、ペインに同じだけ手が届く — ツールバーのアイコンは、そのプログラムがサーバー上で見つかったときだけ表示される
- ローカルとリモートの二画面 SFTP ブラウザ。すべての転送を表示してスクロールできる転送ログ付き
- アップロード/ダウンロードのキュー。Android では他のアプリから実行中のセッションへファイルを共有すると、そのリモート パスがプロンプトに入力される
- スマホとリモートホスト間でのフォルダーの再帰的なアップロードとダウンロード
- リモートの名前変更、削除、作成、編集、.tar.gz への圧縮、権限変更(chmod/chown)、詳細表示
- ダウンロードしたファイルは両プラットフォームで別のアプリで開ける — iOS ではダウンロードがファイル アプリの「この iPhone 内」にも表示される
- Android では、ファイル転送はその tmux セッションが最後に作業していた場所から開き、ペインのヘッダーにセッション名を表示。記憶がない場合は、そのホストでよく使うディレクトリにフォールバックする
- 名前または日付による並び替え(ホスト単位で記憶)と、最近使ったリモート パスへの復帰
- ファイル サイズは二進接頭辞で表示され、隣のタブのターミナルで ls -h が示す値と一致する
- サーバープロファイルに保存され、接続時に自動で立ち上がるローカル ポートフォワード
- アプリ全体とファイル ブラウザがシステムのライト/ダーク テーマに追従 — Android と iOS で System/Light/Dark から選択
- UI 翻訳:アラビア語、ベンガル語、中国語(簡体・繁体)、英語、フランス語、ドイツ語、ヒンディー語、インドネシア語、日本語、マラーティー語、ポルトガル語、ロシア語、スペイン語、タミル語、テルグ語、トルコ語、ウルドゥー語 — Android はこれにナイジェリアン ピジンとエジプト アラビア語を加えた 20 言語、iOS は 18 言語
- 既定ではシステム言語に追従。端末とは別の言語でアプリを使いたい場合は、設定に言語ピッカーがある
- 端末上で新しい Ed25519 または ECDSA 鍵を生成(Android では RSA も。パスフレーズは任意)
- 生成した公開鍵をコピー・共有・保存して、サーバーの authorized_keys に追加
- 保存済みのサーバーと認証情報をバックアップファイルに書き出し — すべてでも、必要な行だけチェックしてでも可能。フォルダーのヘッダーをタップすればそのフォルダー全体が選ばれる
- 任意のパスフレーズでバックアップを暗号化。インポートはマージまたは置換
- 暗号化しないバックアップはパスワードや鍵を平文で保存します。ファイルを保護するか削除してください
- セキュア スクリーン:Android ではスクリーンショットと画面録画をブロックし、最近のアプリのサムネイルからアプリを隠す。iOS ではアプリ切替時のプレビューを空白にし、画面録画とミラーリングをブロック(iOS では手動のスクリーンショットはブロックできない) — パスワード、鍵、トークンが画面に表示されているとき向けのオプトイン設定
- 保存済みのサーバー、認証情報、鍵は端末内に留まる — シークレットは Android の Keystore と iOS の Keychain に保管され、クラウド アカウントや同期は不要
- 使用状況分析は匿名のもののみ — サーバー、認証情報、コマンド、ファイルの内容を送ることは一切ない。Android には設定にオフにするスイッチがあるが、iOS にはまだない
- プラグインを閲覧・インストール・実行して Mobile SSH を拡張
- プラグインは公開カタログからオンデマンドでダウンロードされ、SHA-256 で検証されてアプリ専用ストレージに保存される
- プラグインは必要なもの(SSH コマンド、トンネル、ストレージ)を宣言し、宣言していない操作はアプリが拒否する
- プラグインがサーバー上で何かを設定するときは、実行前に実際のコマンドが提示され、承認してから走る
- カスタムまたはプライベートなカタログ ソースを設定できるほか、自分のサーバー上のフォルダーからインストールすることも可能
セキュリティ注記:現行のアプリは保存済みのサーバーと認証情報を端末にローカル保存します(iOS ではシークレットはシステムの Keychain に保管)。クラウド同期は提供しません。強固な画面ロックで端末を保護し、共有端末では認証情報を保存しないでください。