Skip to content

Terminal

SSHとローカルシェルを同じ画面で開き、複数ペインのワークスペース、検索、クイックコマンド、ポート転送を利用できます。

接続中のTerminalと操作メニュー

接続の進み具合が分かる

名前解決、踏み台への接続、ホスト鍵の確認、認証、シェルの開始、再接続、終了を、別々の段階として表示しています。ホスト鍵の確認待ちや認証失敗が発生した場合、接続を自動では再試行しません。

保存されていないSSHパスワード、鍵パスフレーズ、keyboard-interactiveの秘密入力が必要な場合は、入力した値を表示せず、1文字ごとに*を表示します。BackspaceやCtrl+Uで修正しても平文はスクロールバックに残りません。

[Settings]→[Terminal]の[接続のログ]では、新しく開く接続について、接続段階、試した認証方式、保存済みTOTPを利用できたか、経由地、所要時間を表示できます。[すべて(-vvv)]を選ぶと先頭に現在のログレベルも表示します。パスワード、TOTPコード、セットアップキーはログへ出しません。sshc ssh <接続先> --non-interactiveも同じ設定を使用します。

接続が切れたSSHセッションは、待ち時間を伸ばしながら自動で再接続を試みます。待っている間はペイン上部の[再接続を止める]で打ち切れます。打ち切ったセッションは終了状態のまま一覧に残り、[再接続]で手動で開き直すか、閉じるかを選べます。終了したSSHセッションは、同じペインとスクロールバックを残したまま再接続できます。明示的に閉じたSSH/ローカルシェルはすぐに停止し、一覧からも削除されます。

Terminal操作

  • Ctrl/Cmd+Fによるスクロールバック検索
  • 大文字/小文字、正規表現、該当箇所の強調、検索結果の移動
  • URLとリモートパスのコンテキスト操作、OSC 8リンク
  • クイックコマンドとスニペット
  • 改行や制御文字を含む貼り付けの送信前レビュー
  • OSC 52クリップボード、Kitty keyboard protocol、JISキーボード
  • 接続ごとのUTF-8、Shift_JIS、EUC-JP、ISO-2022-JP
  • ブラウザーの再接続時に直前の出力を復元する16 KiB〜4 MiBのバッファ、1,000〜100,000行のスクロールバック、フォントサイズ
  • WebGLによる描画。利用できない場合や背景画像を使用する場合はDOM描画へ自動で切り替え、設定から常時無効化も可能
  • 圧縮・変換しない背景画像ライブラリ。検索、選択、名前変更、削除と1〜1024 MiBの保存上限に対応し、全体設定と接続別設定の参照も同時更新
  • OSで視差効果・アニメーションを減らす設定が有効な場合は、TerminalとSFTPのテキストエディターでカーソルを静止表示

再接続時は、ブラウザーが描画済みの位置以後だけをエンジン側のバッファから復元します。表示済みの出力を重複させず、ブラウザー側だけに残る古いスクロールバックも消しません。切断が長く、必要な出力がバッファから既に押し出されていた場合は画面で知らせます。どちらのバッファもメモリにだけ保持し、Vault、バックアップ、同期スナップショットには保存しません。

入力とクリップボード

通常の文字選択によるコピーはブラウザー内で完結し、OSC 52を必要としません。選択時の自動コピーと右クリックでの貼り付けは、[Settings]→[Terminal]で切り替えられます。改行、末尾のEnter、またはターミナル制御文字を含む内容はすぐに送信せず、接続先、行数、制御文字を可視化したプレビューを表示します。確認画面で内容を編集でき、行数と警告も編集内容に合わせて更新されます。キャンセル、編集内容の貼り付け、末尾のEnterを1個だけ除いて貼り付けから選べます。プレビューと貼り付け原文は保存しません。

OSC 52はリモート側のソフトウェアが端末のクリップボードへ書き込むための機能です。全体の既定値に加え、SSH接続ごとに許可/拒否を保存できるため、信頼できる接続だけで有効にしてください。

Kitty keyboard protocolは、リモートアプリケーションからの要求に応じた切り替えに対応しています。JISキーボードでは、円記号キーをバックスラッシュとして送るよう設定できます。モバイルでは、Ctrl、Alt、Esc、Tab、矢印などの特殊キーを画面に表示しています。

リンクとリモートパス

OSC 8リンクと画面上のURLは、OS標準のブラウザーで開けます。検出したリモートパスに加え、OSC 7で通知された現在の作業ディレクトリも、Terminalで使用中の接続先を選択したSFTP画面で直接開けます。SFTP側から現在のディレクトリを指定して新しいSSH Terminalを開くこともできます。

ローカルシェル

セッション一覧の[新しいセッション]を選ぶと、SFTPの接続先選択と同じ画面が開きます。先頭の[Local shell](検出したシェルプロファイルがあればプロファイルごとの行)でローカルシェルを、検索・最近使った接続・グループからSSHホストを選べます。ローカルシェルも、SSHと同じTerminalの仕組みで動作しています。[Settings]→[Terminal]ではシェルプロファイルを選べ、ワークスペース、検索、クイックコマンド、一括コマンドを同じように利用できます。macOSやLinuxでエンジンを常駐起動した場合も、zshやfishの行編集に必要なTerminal情報をsshcが設定します。

タイトルと通知

シェルやプログラムがOSC 0/1/2で設定したタイトルは、ペインの見出しとセッション一覧の表示名になります。OSC 9/99/777で送られた通知は未読の印になり、sshcのタブがバックグラウンドにあるときはブラウザー通知と通知音になります。Claude CodeやCodexの通知設定を含む詳細はタイトルと通知を参照してください。

sshcが通常のシェル出力からプログラムの状態を推測したり、コマンドを自動的に再実行したりすることはありません。

ポート転送

SSH接続ごとにLocal forwardingとDynamic SOCKSを管理できます。Local forwardingではローカルの待ち受けアドレス/ポートと転送先のホスト/ポートを指定でき、Dynamic forwardingではローカルにSOCKSエンドポイントを開けます。Remote forwardingには対応していません。

設定方法は、ポート転送を参照してください。

接続を閉じる確認画面では、最初に[開いたままにする]へフォーカスが移ります。Tabで[閉じる]へ移動し、Enterで決定できます。