Netcattyは、SSH接続とSFTPを作業画面にまとめる
プロジェクト概要:SSH ワークスペース、SFTP、ターミナルを 1 つにまとめました。 Netcatty AI を活用した SSH クライアント、SFTP ブラウザおよびターミナル マネージャ netcatty.app Electron、React、xterm.js で構築された美しく機能豊富な SSH ワークスペース。
ひと目でわかる
- これは何?
- Electron、React、xterm.jsで作られたNetcattyのVault、分割ターミナル、SFTP、Catty Agent、配布形式とWindowsの保存境界を確認する。
- 誰に向いている?
- Netcattyは、複数のサーバーを開発画面の中で扱い、SSH、SFTP、端末分割を一つのアプリに寄せたい人に合います。Catty Agentがコマンドを実行できるため、まず非本番ホストで接続先、秘密鍵、確認手順を試してください。
- 商用利用できる?
- 条件付きでできます。GPL-3.0 はコピーレフトのライセンスで、これを含むソフトウェアを配布する場合、そのソフトウェアのソースコードを同じライセンスで公開する必要があります。配布せず社内で使うだけなら、この義務は生じません。
- 今もメンテナンスされている?
- されています。直近 1 日以内に新しいコミットがあります。
- 何の言語で書かれている?
- 主に TypeScript です(GitHub の言語統計による)。
回答はプロジェクトの GitHub データ(最終同期:2026年9月15日)と当サイトの分析に基づくもので、法的助言ではありません。
オープンソース詳細解説
SSHクライアントではなく作業のまとまりを見る
NetcattyはmacOS、Windows、Linux向けのSSHクライアント兼ターミナルマネージャです。READMEは、開発者、システム管理者、DevOpsエンジニアが複数のリモートサーバーを扱う場面を対象にし、PuTTY、Termius、SecureCRT、macOS Terminal.appの代替候補として位置づけています。SSHだけでなく、ローカル端末、Telnet、Mosh、Serialにも対応するとしていますが、利用可能な場合という但し書きがあります。
Netcattyはシェルそのものを置き換えるものではなく、SSHなどを通じてシェルへ接続するアプリです。ここを取り違えると、シェルの機能、端末エミュレーターの機能、接続管理の機能を同じものとして評価してしまいます。READMEの強みは、接続先を選ぶ画面と、接続後の端末作業を同じワークスペースに置く点にあります。
Vaultでホストをグリッド、リスト、ツリーに分ける
ホスト管理の中心はVaultです。グリッド、リスト、ツリーの三つの表示を切り替え、高速検索でホストやグループを探せます。READMEはグリッドを全体の把握、リストを走査、ツリーを構造の確認に向く表示として説明しています。ドラッグ操作を含む整理方法も示されています。
接続先が増えるほど、端末の数より識別と復元のしやすさが問題になります。Netcattyは接続されたホストのOSを自動検出してアイコン表示し、Ubuntu、Debian、CentOS、Fedora、Arch Linux、Alpine、Amazon Linux、Red Hat、Rocky Linux、openSUSE、Oracle Linux、Kali Linux、AlmaLinuxの13種類をREADMEに挙げています。検出の方法と、一覧外のOSでの表示は文書化されていません。
Catty Agentがサーバー操作の入口になる
Catty AgentはNetcattyに組み込まれたAIアシスタントとして説明されています。自然言語からサーバー管理を行い、状態確認、ログ調査、リソース監視、複数ホストの操作、クラスタ構築やサービス展開を扱うという機能が並びます。単一ホストの診断と、二台のサーバーでDocker Swarmを初期化しトークン交換とノード参加を行うデモもREADMEに掲載されています。
ただし、AIモデルやプロバイダーの名前、コマンド確認の条件、権限分離、操作ログの保存方法はREADMEにありません。サーバーへ接続してコマンドを実行する機能は、便利さより先に権限境界を確認すべき部分です。Catty Agentを使う場合は、読み取り専用のアカウントと検証用ホストを用意し、破壊的操作がどの段階で止まるかを自分で確認してください。
分割端末とインライン画像が変える監視の仕方
ターミナルワークスペースは水平と垂直の分割ペイン、タブ、セッション管理を持ち、複数接続を同時に扱います。READMEの画面例は、デプロイ、ログ、メトリクスを別のペインで並べる使い方を示しています。Kitty graphics、SIXEL、iTermのインライン画像もリモートプログラムから描画できます。
この構成は、複数ウィンドウを行き来する代わりに、一つの画面で作業の状態を見比べる用途に向きます。しかし、ペイン数やセッション数の上限、長時間接続の再接続、端末出力の保存条件はREADMEに記載されていません。監視用途で使うなら、接続が切れた時の通知と、秘密情報が端末履歴や画面に残る範囲を別途調べる必要があります。
SFTPと内蔵エディタは転送運用の一部を短くする
SFTP機能は、ドラッグとドロップによるアップロードとダウンロード、ファイルをその場で編集する内蔵エディタが中心です。カスタムテーマと、端末出力のキーワードハイライト規則も用意されています。SFTPブラウザと端末を一つの画面に置くことで、ファイルを転送してからリモートコマンドを実行する作業の切り替えを減らせます。
一方、READMEは転送の再開、競合解決、権限エラー、エディタの保存方式を説明していません。秘密鍵とパスワードの保存も、利用するOSと配布形式で確認が必要です。ファイル変更を伴う運用では、転送前後のハッシュ、バックアップ、戻し方を用意し、内蔵エディタを本番変更の唯一の記録にしない方がよいでしょう。
Windowsポータブル版の保存場所と鍵の扱い
GitHub ReleasesにはmacOS Universal、Windows x64とarm64、Linux x64とarm64の配布物があります。Windowsポータブル版では、Netcatty.exeまたはポータブルランチャーの隣にdataフォルダを作ると、次回起動時にプロファイルをそこへ保存します。保存済みパスワードと秘密鍵は、作成したWindowsユーザーアカウントで保護されるため、別のPCやアカウントへフォルダを移すと再入力が必要です。
インストール版はエクスプローラーのコンテキストメニューにOpen in Netcattyを追加できます。Windows 11ではShow more optionsを先に選ぶ必要があり、ZIP版とポータブル版は標準では追加しません。READMEはSignPath Foundationのプログラムに申請中で、統合完了までWindowsリリースが無署名の可能性を示しています。配布物の署名状態は、取得した版ごとに確認してください。
Electron 40のアプリを自分でビルドする場合
開発環境はNode.js 18以上とnpmで、macOS、Windows 10以上、Linuxを対象にしています。READMEの基本手順はgit clone、npm install、npm run devです。ビルドはnpm run build、現在のOS向けパッケージはnpm run pack、macOSはpack:mac、Windowsはpack:win、Linuxはpack:linuxを使います。技術スタックにはElectron 40、React 19、TypeScript、Vite 7、xterm.js 5、Tailwind CSS 4、ssh2、ssh2-sftp-client、node-pty、Lucide Reactが挙げられています。
ライセンスのメタデータはGPL-3.0です。再配布と改変を行う場合は、リポジトリのLICENSE本文と依存ライブラリの条件を確認してください。メタデータは5,478スター、485フォーク、135件のオープンIssue、最新リリースv1.1.82を示します。人気や更新頻度だけでなく、接続情報の保存、AI操作の承認、署名済み配布物の確認を導入条件に入れるべきです。
編集部の結論
Netcattyは、複数のサーバーを開発画面の中で扱い、SSH、SFTP、端末分割を一つのアプリに寄せたい人に合います。Catty Agentがコマンドを実行できるため、まず非本番ホストで接続先、秘密鍵、確認手順を試してください。READMEはAIモデルの提供元、転送の再開条件、ペイン数の上限を説明しておらず、そこは採用前の確認項目です。
コミュニティノート