Files
opsxshell/README.md
T
Logan.Li c4bf43f58f docs: 更新项目文档到 v0.3.0 最新进度
README.md: 更新功能特性,标记核心功能完成
ROADMAP.md: 添加 v0.10.0 版本,更新 v1.0.0 状态
PROJECT_EVALUATION.md: 添加 v0.10.0 评估 (95/100)
2026-04-06 01:23:41 +08:00

4.2 KiB
Raw Blame History

OpsXShell GUI

跨平台 SSH/SFTP 终端工具 · 简洁高效 · 安全可靠

功能特性

  • 🔐 SSH 终端 - 支持密码、密钥认证,XTerm.js 高性能终端
  • 📁 SFTP 文件管理 - 双栏可视化文件管理,上传下载,传输队列
  • 🔄 端口转发 - 本地/远程/动态 SOCKS5 代理
  • 📑 多标签页 - 类浏览器标签管理,连接池复用
  • 🎨 现代 UI - 基于 Tailwind CSS 的深色主题界面,多主题配色
  • 🔒 安全可靠 - 敏感数据 AES-256-GCM 加密存储
  • 🌐 跨平台 - 支持 Windows、macOS、Linux

技术栈

层级 技术
框架 Electron 28+
前端 React 18 + TypeScript 5
构建 Vite 5
状态管理 Zustand
样式 Tailwind CSS
终端 XTerm.js
SSH/SFTP node-ssh2

快速开始

环境要求

  • Node.js 18+
  • npm 9+ 或 yarn 1.22+
  • Git

安装

# 安装依赖
npm install

# 启动开发服务器
npm run dev

# 构建应用
npm run build

# 打包分发
npm run dist

平台特定打包

# Windows
npm run dist:win

# macOS
npm run dist:mac

# Linux
npm run dist:linux

项目结构

opsxshell-gui/
├── electron/                 # Electron 主进程
│   ├── main.ts              # 主进程入口
│   ├── preload.ts           # 预加载脚本
│   └── tsconfig.json        # 主进程 TS 配置
├── src/                     # 渲染进程 (React)
│   ├── components/          # 组件
│   │   ├── Sidebar.tsx      # 侧边栏
│   │   ├── TabBar.tsx       # 标签栏
│   │   ├── TabContent.tsx   # 标签内容
│   │   ├── StatusBar.tsx    # 状态栏
│   │   ├── WelcomeView.tsx  # 欢迎页面
│   │   ├── TerminalView.tsx # 终端视图
│   │   ├── SFTPView.tsx     # SFTP 视图
│   │   ├── SettingsView.tsx # 设置视图
│   │   ├── SessionDialog.tsx      # 会话对话框
│   │   └── QuickConnectDialog.tsx # 快速连接对话框
│   ├── stores/              # 状态管理
│   │   ├── tabStore.ts      # 标签状态
│   │   └── connectionStore.ts # 连接状态
│   ├── App.tsx              # 根组件
│   ├── main.tsx             # 渲染入口
│   └── index.css            # 全局样式
├── package.json             # 项目配置
├── vite.config.ts           # Vite 配置
├── tailwind.config.js       # Tailwind 配置
└── tsconfig.json            # TypeScript 配置

界面预览

📱 在线预览: docs/ui-preview.html

在浏览器中打开 docs/ui-preview.html 文件可查看高清界面预览(支持切换终端/SFTP视图):

终端视图

  • 🎨 深色主题 - 基于 Tailwind CSS 的现代化深色界面
  • 📑 标签页管理 - 悬停显示更多操作(...)和关闭(×)按钮
  • 🖥️ 终端区域 - 清晰显示 SSH 连接状态和命令提示符
  • 📊 状态栏 - 实时显示连接状态、延迟和功能入口

SFTP 双栏视图

  • 📂 双栏文件管理器 - 左侧本地目录,右侧远程服务器目录
  • 🧭 面包屑导航 - 清晰的路径导航和返回/前进按钮
  • 📋 文件列表 - 显示名称、修改时间、大小、类型/权限
  • ⚡ 传输队列 - 实时显示上传/下载进度
  • 🔍 Filter/Actions - 筛选和操作下拉菜单

提示:双击 HTML 文件即可在浏览器中查看完整效果,支持终端和 SFTP 视图切换。

快捷键

快捷键 功能
Cmd/Ctrl + N 新建会话
Cmd/Ctrl + K 快速连接
Cmd/Ctrl + T 新建标签
Cmd/Ctrl + W 关闭标签
Cmd/Ctrl + Tab 切换标签
F11 全屏模式

开发计划

  • 基础项目框架
  • Electron 主进程
  • React 前端界面
  • 多标签页系统
  • 会话管理
  • SSH 连接集成 (node-ssh2)
  • 终端模拟器 (XTerm.js)
  • SFTP 文件传输
  • 端口转发
  • 数据持久化 (SQLite)
  • 架构模块化重构
  • 智能命令补全
  • 断点续传

许可证

MIT License - 开源免费使用


Made with ❤️ by OpsXShell Team