OpenSSHの設定を正本のまま使う、local-firstなSSH workspaceです。接続管理、Terminal、SFTP、Workspace、Snippet、暗号化同期を一つのUIとCLIから扱います。
日本語ドキュメント · English documentation · Releases
macOS / Linux:
Homebrewを未導入の場合は、公式サイトの手順でインストールします。
brew install aida0710/tap/sshcHomebrewを使わない場合は、installerとbinaryを同じReleaseへ固定します。
SSHC_VERSION=v0.36.3 sh -c \
'curl -fsSL https://raw.githubusercontent.com/aida0710/sshc/v0.36.3/install.sh | sh'Windows PowerShell:
powershell -NoProfile -ExecutionPolicy Bypass -Command "irm https://github.com/aida0710/sshc/releases/latest/download/install.ps1 | iex"Android APKと各OS向けbinaryはGitHub Releasesから取得できます。詳しい検証方法と更新手順はインストールガイドを参照してください。
sshc engine
sshcsshc engineはforegroundで動き、デーモン化しません。引数なしの sshc はエンジンを起動しません。自動起動は OS のプロセス管理機能で設定します。Linuxではsshc service installでsystemdユーザーサービス、macOSではlaunchdユーザーエージェントへ登録できます。その他の環境ではtmuxなどを利用できます。
初回はWeb UIまたはCLIでvaultを作成し、開きます。
sshc vault create
sshc vault unlockmaster passwordはWeb UI または sshc vaultから入力します。CLI は対話端末からのみ読み取り、引数や環境変数からは受け取りません。vaultは既定では12 時間操作がない場合に自動lockし、Settingsで1〜999分/時間または自動lockなしへ変更できます。
sshc ssh # 接続先を選択
sshc ssh <接続先> # 対話SSH
sshc ssh <接続先> --non-interactive -- <コマンド>
sshc info <接続先> --json # engineなしで実効設定を表示
sshc status --json # engineの状態
sshc sync # 同期状態
sshc sftp get <接続先> /remote/file ./local-file
sshc sftp put <接続先> ./local-file /remote/file
sshc help # 全command- OpenSSHのコメント、順序、空白、
Includeを保った設定管理 - 接続状態、検索、差分再接続、安全な貼り付け確認、文字コード、Quick Commandsを備えたTerminal
- folder転送、resume、background queue、editorを備えたSFTP
- SSHとlocal shellを最大4 paneに分割するWorkspace
- host、file、Snippet、設定を横断するCommand Palette
- S3互換storageへの暗号化snapshot同期
- SSH、SFTP、Serial、Telnet、同期、Terminal操作のCLI
機能と安全上の境界は利用者向けドキュメントへ集約しています。内部設計はdocs/design.mdを参照してください。
Go 1.26とNode.js 22が必要です。
make build
make test
make e2e
make integration-up
make integration
make integration-downWeb UI変更時はinternal/ui/distも更新します。利用者向けsiteはpages/にあり、npm run buildで検証できます。
