Shellvana
Shellvana のアプリアイコン: シェルのプロンプトを囲む金色の円 iOS と Android 向けの SSH クライアント

SSH を、読める形に。

ターミナルの出力が、スマホで読める文章になります。表、diff、桁をそろえた出力は、一文字単位でそのまま保たれます。

そのままのターミナル (80 桁)

分類器がブロックごとに、出力を折り返してよいか、桁の間隔をそのまま保つべきかを判断します。表は折り返されると表ではなくなり、diff は折り返されると狭い画面ではまるで読めなくなるからです。判断はすべてブロック単位です。文章はスマホの幅に合わせて折り返し、表、diff、桁をそろえた出力は、サーバーが実際に送ってきた間隔を一文字単位で保ちます。

Shellvana なら、同じバイト列がこう見える

分類器がブロックごとに、出力を折り返してよいか、桁の間隔をそのまま保つべきかを判断します。文章はスマホの幅に合わせて折り返します。表、diff、桁をそろえた出力は、一文字単位でそのまま保ちます。


スマホで

すべての画面が、実際のセッションです。

実際のサーバーに接続した Pixel 7 のキャプチャです。モックアップは一つもありません。

Claude Code の回答が 80 桁のターミナルのグリッドに押し込まれ、単語の途中で行が切れている画面。
80 桁のグリッドほかのクライアントがスマホに表示するのは、こういう画面です。
同じ回答を、大きな明朝体の文章に折り返し直した画面。上にはコマンドがチャットの吹き出しで表示されています。
同じ回答を、折り返し直すとClaude Code の返信が、きちんと読める文章になります。
色付きの git diff のハンク。等幅フォントで、プラスとマイナスがそれぞれの桁にそろっている画面。
diff は桁がそろったままプラスもマイナスも桁の位置を保ち、間隔には手を加えません。
見出し、桁のそろった表、シェルのコードブロックを表示した Markdown のレンダリング結果。
Markdown もそのまま見出し、桁のそろった表、コードブロックを崩しません。
Shellvana 上で htop がリアルタイムに動作し、カラーバーとファンクションキーのフッターもそのまま表示されている画面。
本物の TUI が動くvim、htop、tmux、zellij が普段どおり動きます。
文字サイズのチップと、Newsreader、Lora、Inter のライブプレビュー付きフォント一覧を表示したリーダーのシート。
サイズとフォントを選ぶプレビューを見ながら、セッション中でも変更できます。

ターミナル AI エージェント

Claude Code を読むために作りました。

コマンドラインのコーディングアシスタントは、全画面のターミナル画面として描画されます。行をその場で描き直し、独自の幅でテキストを折り返し、回答の周りにバナー、スピナー、ステータスフッターを表示します。

Shellvana は回答を一つずつ別のメッセージに切り分け、エージェントが独自の幅で折り返した文章を、インラインコードは等幅のまま折り返し直します。回答に含まれるコードは桁そろえを保ち、ワンタップで生のターミナルに切り替えられます。スマホで質問して、回答を文章として読めます。

Shellvana が Claude Code の回答を、流れるような明朝体のテキストで表示している画面。上にはプロンプトが吹き出しで表示されています。
忠実さ

折り返しても、桁は崩しません。

Shellvana はサーバーとの間で固定のターミナルサイズを取り決め、ブロックごとに個別に判断します。段落は、スマホ向けのサイズのプロポーショナルフォントに折り返します。表、diff、ツリー出力、桁をそろえたものは、元の間隔のまま等幅フォントで表示します。

生のグリッドはいつでもワンタップで見られます。サーバーが送ったそのままのバイト列は、ジェスチャーひとつで確認できます。

git diff を Shellvana で表示した画面。追加行は緑、削除行は赤で、桁は完全にそろっている。

あなたのデータ

アカウントも、登録も、テレメトリもありません。

Shellvana が行うネットワーク接続は、あなたが指示した SSH 接続だけです。接続先は、あなたが設定したサーバーに直接です。アプリには、アナリティクス、広告、クラッシュレポートのライブラリは入っていません。

  • 記録は、プラットフォームのセキュアストアから鍵を取り出して、SQLCipher でデバイス上で暗号化されます。
  • Android では、アプリはオペレーティングシステムのバックアップの対象から除外されています。iOS では、バックアップに記録のストアが含まれることがありますが、暗号化されたままです。これを除外するアップデートを準備中です。
  • 秘密鍵は、iOS の Keychain または Android の Keystore に保管されます。Secure Enclave や StrongBox で生成した鍵は、デバイスの外に出すことは一切できません。
  • どのホストにも、セッションを開く前に Face ID、Touch ID、またはデバイスのロック解除を必須にできます。
  • ホスト鍵は初回接続時に固定され、変わった場合は警告が表示されます。
  • セッションのスクリーンショットとアプリ切替時のプレビューは、デフォルトでブロックされます。
  • 30 日より古い記録は自動的に削除されます。1 つのホスト、またはすべてのホストの履歴は、いつでも削除できます。
SSH 鍵の画面。ハードウェア保護の ECDSA 鍵に「Hardware-backed TEE」のラベルがあり、署名にはロック解除が必要と表示されている。

無料版と Pro

読みやすさは、有料機能ではありません。

無料

以下はすべて、いつでも使えます

  • 同時に開けるセッションは 1 つ
  • パスワード認証と鍵認証
  • ホストプロファイル
  • 色と Markdown に対応した、完全な読みやすい表示

Pro

$19.99 USD の買い切り。サブスクはありません。

  • 名前を付けられるタブバーで、同時に 4 セッション
  • ハードウェア保護の鍵認証
  • 追加のリーダー用フォント
  • 記録をまったく残さないシークレットセッション

動作要件

標準的な sshd が動いているホストなら、どれでも。

サーバー側にインストールするものはありません。縦向きでも横向きでも使えます。


ほかのアプリ

同じ開発者のアプリです。

バッジをタップすると、ダウンロードページが開きます。

FauxVkTest

お使いのグラフィックスドライバー (Vulkan) の実際の動作と速度を確認できます。

Android 向け

  • Google Play で手に入れよう: FauxVkTest

FauxCooling

ゲーム中のデバイスを冷やします。AYN と Retroid Pocket の携帯ゲーム機のほか、他社製を含む root 化した端末(スマホ、タブレット、携帯ゲーム機)で使えます。

Android 携帯ゲーム機、スマホ、タブレット向け

  • GitHub からダウンロード: FauxCooling

FauxClockNG

root 権限が必要です。CPU ガバナ、GPU、メモリ、I/O、ネットワークの設定を手動で変更できます。

root 化した Android 向け

  • GitHub からダウンロード: FauxClockNG

RomRoster

持っているすべての携帯ゲーム機のゲームを、ひとつのリストにまとめます。どのデバイスに何が入っているか、すぐ分かります。

Android、iPhone、iPad 向け

  • Google Play で手に入れよう: RomRoster
  • App Store からダウンロード: RomRoster