別の Mac のペインを開く
Mytty のペインで、別の Mac で動いているターミナルをそのまま表示できます。画面が映り、キー入力はその Mac に送られるので、デスクトップで動かし始めた agent にノートから触るのに、SSH をもう一本張る必要がありません。
使っている接続は iOS リモートアプリと同じもので、クライアント側が iPhone ではなく Mac になっただけです。
接続される側の Mac でリモートアクセスを有効にする
ターミナルを見せる側の Mac で操作します。
- 設定 > リモートアクセス を開いて有効にします。
- ペアリング QR コードを生成 をクリックします。
- ペアリングリンクをコピー をクリックします。
リンクは使い捨てのトークンを含む mytty://pair?... という URL です。隣の QR コードと同じく 2 分で期限切れになるので、その前にもう一方の Mac に貼り付けてください。
手元の Mac からペアリングする
- 設定 > リモートアクセス を開き、「リモートの Mac」セクションで Mac を追加… をクリックします。
- ペアリングリンクを貼り付けます。
- 名前を付けます。ペインのバッジとステータスバーにこの名前が出ます。
- 相手の Mac がアドレス一覧に出ていれば選び、出ていなければアドレスとポートを入力します。ローカルネットワークで Mytty を広告している Mac は自動的に一覧に出ます。
- ペアリング をクリックします。
ペアリングの鍵は ~/Library/Application Support/mytty/remote-hosts.json に、自分だけが読める権限で保存されます。接続を受け入れる側のデバイス記録とは別のファイルです。どちらの方向も、片方だけ設定できます。
ペインを開く
ペイン > リモートペインを開く… を選びます。ペアリング済みの Mac を選び、続けて表示したいペインを選んだら、開き先を選びます。フォーカス中のペインの右に分割(既定)か、新規タブのどちらかです。
ペインは所属するタブごとにまとめて並びます。mytty-ctl status やスポーン時のラベルで自分に名前を付けているペインは、その名前で並びます。名前のないペインはタブ名にフォールバックしますが、タブ名は同じタブのペインすべてで共通です。iOS アプリの一覧も同じ並びです。
ペイン一覧は接続が確立してから埋まるので、最初の一瞬は空です。すでに third の Mac を表示しているペインは一覧に出ません。リモートペインを数珠つなぎにはできない作りです。
リモートペインでできること・できないこと
リモートペインはローカルのターミナルとは別物で、ローカルのふりもしません。
- どの Mac を表示しているかをバッジに出し、ステータスバーも作業ディレクトリではなくその Mac 名を表示します。
- 接続先が報告する agent の情報 — プロバイダ、モデル、コンテキスト残量、その agent が待っているかどうか — を表示します。数値はすべて接続先の Mac が出したもので、こちらで計測しているものは何もありません。
- 使用量・コストのメーターはローカル専用のままです。手元の Mac のアカウントの話なので、別の Mac の agent の横に並べると誤解を招きます。
mytty-ctlはリモートペインを一覧に出しません。ctl のペイン ID は、この Mac が分割・クローズ・入力できるものに限られます。- セッション復元はペインを開き直して再接続します。復元するプロセスはありません。
同じ Mac に対するペインは 1 本の接続を共有し、最後の 1 つを閉じると接続も閉じます。
制限
見えているのは接続先の画面をスタイル付きテキストに再エンコードしたもので、ターミナルの映像ではありません。色、太字、減光、反転、斜体、下線(波線や色付き下線を含む)、取り消し線は再現されます。インライン画像、Sixel グラフィックス、フォントのリガチャは再現されません。
文字入力、単独キー(Control や Option との組み合わせを含む)、ペースト、スクロール、テキスト選択はいずれも動きます。テキスト選択のコピーは表示中のバッファから取ります。
接続先でペインが閉じられた場合、内容を読んだりコピーしたりできるよう画面はそのまま残りますが、入力はできなくなります。