mcpField
I
iterminal

iterminal

ローカル
github.com/iTophuaクラウド・インフラ41 日前に更新

iterminal について

iTerminalは、開発者や運用担当者向けのSSH接続管理デスクトップアプリで、複数サーバーへの接続とターミナル・ファイル操作をまとめて扱えます。内蔵MCPサーバーからAIツールがSSH接続を操作でき、その操作はターミナルにも表示されます。

主な機能

  1. 01SSH接続のグループ管理と状態表示
  2. 02複数セッションと分割ターミナル
  3. 03SFTPによる閲覧と転送
  4. 04リアルタイムのシステム・プロセス監視
  5. 05Dockerコンテナとイメージの管理
  6. 06接続情報の暗号化保存

活用シーン

  1. 01複数のリモートサーバーを管理・接続
  2. 02SFTPでファイルを転送・編集
  3. 03サーバー資源の確認とプロセス管理
  4. 04AIツールでSSHコマンドやファイル操作を実行

MCP 対応

内蔵MCPサーバーはHTTP APIを通じて、SSHコマンド実行、ファイル操作と転送、システム監視をAIツールに公開します。アプリに同梱され、更新に対応する安定したランチャーを使用します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"itophua-iterminal": {
"command": "npx",
"args": [
"-y",
"iterminal-mcp-server"
]
}
}
}
起動コマンドnpx -y iterminal-mcp-server

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmiterminal-mcp-server2.1.0

ツール

27

掲載時のツール一覧 · 2 週間前に更新

このツールにパラメーターはありません。

詳細

翻訳後に原文が更新されています。最新の内容は原文をご確認ください。

iTerminal - SSH 接続マネージャー

Tauri 2 + React を基盤に構築された最新の SSH 接続管理ツールです。効率的な SSH 接続管理とターミナル操作の体験を提供することに重点を置いています。

プロジェクト紹介

背景

iTerminal は XTerminal に似た SSH 接続管理ツールで、開発者や運用担当者が複数のサーバーをより簡単に管理できるよう支援することを目的としています。

技術スタック
技術バージョン説明
Tauri2.xクロスプラットフォームのデスクトップアプリフレームワーク
React19.xフロントエンド UI フレームワーク
TypeScript5.x型安全な JavaScript
Vite7.x次世代フロントエンドビルドツール
Ant Design6.xエンタープライズ向け UI コンポーネントライブラリ
xterm.js6.xターミナルエミュレーター
Zustand5.x軽量な状態管理
Rust1.75+バックエンドの SSH 実装
russh0.50Rust SSH クライアントライブラリ
russh-sftp2.1Rust SFTP クライアントライブラリ
主な機能
  • 🚀 軽量で高効率 - Tauri を基盤とし、メモリ使用量が少なく、起動が高速です
  • 🔐 安全で信頼性の高い設計 - AES-256-GCM で接続情報を暗号化して保存し、SSH キー認証に対応。パスワードも自動で移行します
  • 🖥️ 複数タブ管理 - 複数の SSH セッションを同時に開けます
  • 📐 ターミナルの分割表示 - 水平/垂直分割、入れ子の分割に対応し、ドラッグでサイズを調整できます
  • 🔍 ターミナル検索 - ターミナルの内容を全文検索できます
  • ⌨️ ショートカットシステム - 豊富なショートカットに対応し、カスタマイズもできます
  • 📁 ファイル管理 - SFTP ファイルの閲覧、アップロードとダウンロード、ドラッグによるアップロード、ファイル検索、圧縮と解凍、ファイルのプレビュー/編集(CodeMirror 6)に対応。パネルはターミナルのディレクトリに追従し、権限が不足している場合は sudo による権限昇格でアップロードできます
  • 📊 システム監視 - CPU、メモリ、ディスクをリアルタイムで監視するパネルと、プロセス管理
  • 🤖 MCP 対応 - MCP サーバーを内蔵(トークン認証 + SSE 転送)。AI が実行した操作はリアルタイムでターミナルに表示されます
  • 🐳 Docker 管理 - コンテナ/イメージ/ログ/コンテナターミナル
  • ✨ AI アシスタント - ターミナルのコンテキストを認識する AI チャット + サーバーを自律的に診断するインテリジェントエージェント Agent
  • 🪟 複数ウィンドウ対応 - 接続を端までドラッグして新しいウィンドウを作成でき、ターミナルの全機能を再利用できます
  • 📋 中国語対応 - 中国語の UI と右クリックメニューを完全にサポートします
  • 🌍 クロスプラットフォーム - Windows、macOS、Linux に対応します
対象ユーザー
  • 開発者
  • システム運用エンジニア
  • DevOps エンジニア
  • 複数のサーバーを管理する必要がある技術者

アプリの画像

接続管理 ターミナルの分割表示 ファイル管理 システム監視

インストールとパッケージ化

環境要件
共通要件
  • Node.js >= 18.x
  • Rust >= 1.75
  • npm または pnpm
Windows
macOS
  • Xcode Command Line Tools: xcode-select --install
Linux (Ubuntu/Debian)
sudo apt update
sudo apt install -y libgtk-3-dev libwebkit2gtk-4.1-dev libayatana-appindicator3-dev librsvg2-dev
開発環境のセットアップ
# 1. 克隆项目
git clone <repository-url>
cd iTerminal

# 2. 安装依赖
npm install

# 3. 启动开发模式
npm run tauri dev
本番環境向けのパッケージ化
# 构建并打包应用
npm run tauri build
パッケージの出力先

ビルド完了後、インストーラーは src-tauri/target/release/bundle/ ディレクトリに出力されます。

プラットフォーム出力形式ファイルの場所
Windows.msi / .exebundle/msi/ bundle/nsis/
macOS.dmg / .appbundle/dmg/ bundle/macos/
Linux.deb / .AppImagebundle/deb/ bundle/appimage/

機能紹介

1. 接続管理
1.1 接続リスト
  • すべての SSH 接続をカード形式で表示します
  • グループ管理(カスタムグループ)
  • タグによる分類
  • 接続状態(オンライン/オフライン)をリアルタイムで表示します
  • 名前、IP、タグで検索・絞り込みできます
  • 接続の並べ替え、複数接続の一括管理
1.2 接続操作
操作説明
接続の新規作成新しい SSH 接続設定を作成します
接続の編集既存の接続情報を変更します
接続の削除個別の接続を削除します
接続の複製既存の設定をすばやく複製して新しい接続を作成します
接続テストSSH の接続性と認証をテストします
クイック接続ワンクリックで SSH ターミナルを開きます
インポート/エクスポートJSON 形式で接続を一括インポート/エクスポートします
IP のコピーワンクリックでサーバーの IP アドレスをコピーします
1.3 接続状態
  • オンライン - ポートに到達できます(緑色のインジケーター)
  • オフライン - ポートに到達できません(灰色のインジケーター)
  • 接続中 - 接続を確立しています(青色のインジケーター)

💡 起動後にすべての接続状態を自動検出し、定期的に更新します。

1.4 接続設定

基本設定:

  • 接続名
  • グループ
  • タグ
  • ホスト名/IP アドレス
  • ポート(デフォルトは 22)
  • ユーザー名

認証方式:

  • パスワード認証
  • SSH キー認証(OpenSSH 形式と PEM 形式に対応)
2. SSH ターミナル
2.1 複数タブ管理
  • 複数の SSH セッションを同時に開けます
  • 接続単位のタブ(各接続で複数のセッションを作成できます)
  • タブにサーバー名/IP を表示します
  • セッション状態を表示します
2.2 ターミナルの分割表示
  • 水平/垂直分割に対応します
  • ドラッグで分割サイズを調整できます
  • 各分割画面のセッションを個別に管理します
  • セッションタブをドラッグして新しい分割画面を作成できます
2.3 ターミナル機能
機能ショートカット/操作
ターミナルエミュレーション完全な xterm.js ターミナル
カラー出力ANSI カラーに対応
コピーツールバーのボタン/右クリックメニュー/CmdOrCtrl+Shift+C
貼り付け右クリックメニュー/CmdOrCtrl+Shift+V
すべて選択右クリックメニュー
検索ツールバーの検索ボタン/CmdOrCtrl+F
全画面表示ツールバーの全画面ボタン
分割表示CmdOrCtrl+D 水平/CmdOrCtrl+Shift+D 垂直
セッションの新規作成CmdOrCtrl+T
セッションを閉じるCmdOrCtrl+W
2.4 ツールバー

フローティングツールバーから、すばやく操作できます:

  • 📋 コピー - 選択したターミナルの内容をコピーします
  • 🔍 検索 - 検索バーを開き、ターミナルの内容を検索します
  • 🖥️ 全画面表示 - ウィンドウを最大化し、サイドバーを折りたたみます
  • 📊 システムモニター - リアルタイムモニターパネルを開きます
  • 📁 ファイル管理 - SFTP ファイル管理パネルを開きます
  • ➖ 折りたたむ - ツールバーを小さな球状に折りたたみます
2.5 マルチウィンドウ対応
  • 接続タブをウィンドウの端にドラッグして、新しいウィンドウを作成します
  • 新しいウィンドウでも、すべてのターミナル機能を利用できます
  • ターミナルセッションは新しいウィンドウに自動的に復元されます
  • ウィンドウの位置は自動的に記憶されます
3. ファイル管理
3.1 ファイルの閲覧
  • SFTP プロトコルによるリモートファイルの閲覧
  • ツリー表示とリスト表示を切り替え
  • パス入力欄からすばやく移動
  • 隠しファイルの表示/非表示を切り替え
  • ファイルサイズを表示
  • 指定したディレクトリにドラッグ&ドロップでアップロード
3.2 ファイル操作
操作説明
ファイルの新規作成空のファイルを作成します
フォルダーの新規作成ディレクトリを作成します
名前の変更ファイル/フォルダーの名前を変更します
削除ファイルまたはディレクトリを削除します
権限の変更chmod による権限設定
圧縮リモートで tar.gz 形式に圧縮します
解凍tar.gz/zip/gz などの形式に対応しています
ファイル検索リモートファイルを検索します
ファイルのプレビューテキストファイルをプレビューします
ファイルの編集リモートファイルをオンラインで編集します
ファイル名のコピー選択したファイル名をコピーします
パスのコピー完全なパスをコピーします
3.3 ファイル転送
  • ファイルのアップロード - 複数のファイルを選択してアップロードできます
  • フォルダーのアップロード - フォルダー全体をアップロードします
  • ドラッグ&ドロップでアップロード - ファイルをパネルに直接ドラッグしてアップロードします
  • ファイルのダウンロード - 保存先を選択してダウンロードします
  • 転送の進捗 - 転送の進捗をリアルタイムで表示します
  • 一時停止/再開 - 転送の一時停止と再開に対応しています
4. システムモニター
4.1 モニターパネル

サーバーの状態をリアルタイムで表示し、自動的に更新します:

システム情報:

  • ホスト名
  • オペレーティングシステム
  • カーネルバージョン
  • 稼働時間

CPU モニター:

  • 全体の使用率
  • 各コアの使用率(視覚表示)
  • コア数
  • ロードアベレージ

メモリモニター:

  • メモリ使用率(視覚表示)
  • 使用量/合計/空き容量
  • Swap の使用状況

ディスクモニター:

  • 各マウントポイントの使用率
  • 使用量/合計/空き容量
  • 使用率(パーセント)

プロセス管理:

  • プロセス一覧(メモリ使用量順)
  • プロセスの終了
4.2 状態表示
  • 🟢 緑 - 使用率 < 70%
  • 🟡 黄 - 使用率 70% - 90%
  • 🔴 赤 - 使用率 > 90%
5. MCP サーバー

MCP(Model Context Protocol)サーバーを内蔵し、AI アシスタントとの連携に対応しています:

  • HTTP API 経由で SSH 接続を制御
  • コマンド実行、ファイル操作、システムモニターに対応
  • Claude などの AI アシスタントと連携可能

プロジェクト構成

iTerminal/
├── src/                        # React 前端
│   ├── main.tsx                # 应用入口
│   ├── App.tsx                 # 路由 + 布局
│   ├── components/             # 公共组件
│   │   ├── Sidebar.tsx         # 侧边栏
│   │   ├── FileManagerPanel.tsx # 文件管理面板
│   │   ├── MonitorPanel.tsx    # 系统监控面板
│   │   ├── SettingsPanel.tsx   # 设置面板
│   │   └── fileManager/        # 文件管理子模块
│   ├── pages/                  # 页面组件
│   │   ├── Terminal.tsx        # 终端页面
│   │   ├── TerminalWindow.tsx  # 新窗口终端
│   │   ├── Connections.tsx     # 连接管理
│   │   └── Transfers.tsx       # 传输管理
│   ├── stores/                 # Zustand 状态管理
│   │   ├── terminalStore.ts    # 连接/会话状态
│   │   └── transferStore.ts    # 传输记录状态
│   ├── services/               # 服务层
│   │   ├── database.ts         # 数据库服务
│   │   └── sftp.ts             # SFTP 服务
│   ├── utils/                  # 工具函数
│   │   ├── paneUtils.ts        # 分屏工具
│   │   └── TerminalManager.ts  # 终端管理
│   └── styles/                 # 全局样式
│       └── global.css          # xterm.js 样式覆盖
├── src-tauri/                  # Rust 后端
│   ├── src/
│   │   ├── main.rs             # Tauri 入口
│   │   ├── lib.rs              # 模块声明
│   │   ├── db/                 # 数据库
│   │   │   ├── schema.sql      # 数据库结构
│   │   │   └── crypto.rs       # 加密模块
│   │   └── commands/           # Tauri 命令
│   │       ├── ssh.rs          # SSH 操作
│   │       ├── sftp.rs         # SFTP 文件传输
│   │       ├── db.rs           # 数据库操作
│   │       ├── api.rs          # HTTP API 服务器
│   │       └── window.rs       # 窗口管理
│   ├── Cargo.toml              # Rust 依赖
│   ├── tauri.conf.json         # Tauri 配置
│   └── capabilities/           # 权限配置
├── mcp/                        # MCP 服务器
│   └── src/index.ts            # MCP 工具定义
├── package.json                # npm 依赖
├── vite.config.ts              # Vite 配置
└── tsconfig.json               # TypeScript 配置

セキュリティに関する注意事項

リスク項目現在の状態推奨事項
パスワードの保存AES-256-GCM で暗号化して保存安全です
ホスト鍵の検証スキップされています今後のバージョンで known_hosts に対応予定です
鍵認証実装済み鍵認証の使用を推奨します
セッションタイムアウト自動ロックなし使用しない接続は手動で切断してください

よくある質問

Q: サーバーに接続できませんか?
  1. ネットワーク接続を確認します
  2. SSH サービスが起動していることを確認します
  3. ユーザー名とパスワード/鍵を確認します
  4. ファイアウォールの設定を確認します
Q: Windows のパッケージ化に失敗しますか?
  1. Visual Studio Build Tools がインストールされていることを確認します
  2. 「Desktop development with C++」ワークロードを選択します
  3. WebView2 Runtime をインストールします
Q: macOS で開けないという警告が表示されますか?
  1. システム設定 → プライバシーとセキュリティ
  2. 「このまま開く」をクリックします
  3. または、次のコマンドを使用します:xattr -cr iTerminal.app
Q: ターミナルの表示が文字化けしますか?
  1. サーバーの locale 設定を確認します
  2. ターミナルのフォントが UTF-8 に対応していることを確認します
  3. ターミナルのフォントを調整してみます

開発計画

実装済みの機能
  • SSH 接続管理
  • 複数セッションのターミナル
  • ターミナル検索機能
  • SFTP ファイル管理
  • ファイルのアップロード/ダウンロード
  • ドラッグ&ドロップでのアップロード
  • sudo による権限昇格アップロード(権限不足時に自動で再試行)
  • システムモニターパネル
  • リモートファイルの圧縮/解凍
  • 鍵認証
  • パスワードの暗号化保存
  • 接続のインポート/エクスポート
  • 切断時の自動再接続
  • ショートカットキーシステム
  • 分割ターミナル
  • ターミナルテーマの設定
  • ファイルのプレビュー/編集(CodeMirror 6)
  • ファイル検索
  • 転送の一時停止/再開
  • MCP サーバー(Token 認証 + SSE 転送 + ログシステム)
  • マルチウィンドウ対応
  • Docker 管理(コンテナー/イメージ/ログ/コンテナーターミナル)
  • AI アシスタント(AI チャット + AI エージェント Agent)
  • テーマの切り替え
  • フォルダーのダウンロード
  • 入力のブロードキャスト(複数の接続に同時入力)
  • コマンドスニペットライブラリ(Pro)
  • ポートフォワーディング(Pro)
実装予定の機能
  • レジューム機能
  • プロセス管理の強化
  • 多言語対応

貢献ガイド

Issue と Pull Request の投稿を歓迎します!

  1. プロジェクトを Fork します
  2. 機能ブランチを作成します (git checkout -b feature/AmazingFeature)
  3. 変更をコミットします (git commit -m 'Add some AmazingFeature')
  4. ブランチにプッシュします (git push origin feature/AmazingFeature)
  5. Pull Request を作成します

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。