智能 SSH 终端 - SSH AI Agent

集成 AI 助手的远程运维桌面客户端,支持 SSH 连接、终端管理和自然语言辅助。

功能特性

核心功能

  • SSH 连接管理:创建、编辑和管理 SSH 连接配置
  • 分组管理:将连接按分组组织,便于管理
  • 终端会话:全功能终端模拟器,支持多标签页
  • AI 助手集成:内置 AI 聊天,支持自然语言描述运维任务

v0.2.0 更新

  • 优化布局结构:确保 AI 输出内容不影响侧边栏可见性
  • AI 助手面板独立化:支持自由开关控制
  • 新增面板切换按钮:在侧边栏底部提供快速开关入口
  • 所有区域滚动支持:确保内容过多时可正常滚动查看
  • 侧边栏永不消失:设置 flex-shrink-0 确保导航区域稳定

技术栈

  • Electron:跨平台桌面应用框架
  • ReactUI 组件库
  • TypeScript:类型安全的 JavaScript 超集
  • Tailwind CSS:实用优先的 CSS 框架
  • XTerm.jsWeb 终端模拟器
  • Zustand:轻量级状态管理

安装与使用

开发模式

# 安装依赖
npm install

# 启动开发服务器(包含热重载)
npm run dev:watch

# 或直接编译并运行
npm run dev

构建打包

# 编译前端和后端
npm run build

# 生成绿色免安装版本(目录版)
npm run pack

# 生成完整安装包(NSIS
npm run dist

打包后的文件将存放在 release/ 目录下:

  • 绿色版:release/win-unpacked/智能SSH终端.exe
  • 安装包:release/智能SSH终端-x.x.x-x64.exe

项目结构

.
├── src/
│   ├── main/             # Electron 主进程
│   │   ├── index.ts      # 主入口
│   │   ├── preload.ts    # 预加载脚本
│   │   ├── handlers/     # IPC 处理程序
│   │   └── services/     # 业务服务
│   ├── renderer/         # 渲染进程
│   │   ├── src/          # React 源代码
│   │   ├── index.html    # 入口 HTML
│   │   └── ...
│   └── shared/           # 共享类型定义
├── resources/            # 资源文件
├── dist/                 # 编译输出
├── release/              # 打包输出
└── ...

v0.2.0 布局说明

新的 3 列布局确保了最佳的用户体验:

┌─────────────────────────────────────────────────────────────┐
│                        标题栏                               │
├─────────────────────────────────────────────────────────────┤
│  │   │                                                  │  │
│  │   │  ┌──────────────────────┐                        │  │
│  │   │  │ 会话/分组/模型面板   │                        │  │
│  │   │  └──────────────────────┘                        │  │
│  │   │                                                  │  │
│  │   │  ┌──────────────────────┐                        │  │
│  │   │  │     终端区域         │                        │  │
│  │   │  └──────────────────────┘                        │  │
│  │   │                                                  │  │
│  │   └──────────────────────────────────────────────────┘  │
│  │                                                          │
│  │ 主工作区(管理面板 + 终端)                             │
│  │                                                          │
│  │ ┌───────────────────────────────────────────────────┐  │
│  │ │               AI 助手面板(可展开/收起)          │ │
│  │ │ - 模型选择                                        │ │
│  │ │ - 聊天界面                                        │ │
│  │ │ - 工具调用卡片                                    │ │
│  │ └───────────────────────────────────────────────────┘  │
│  └──────────────────────────────────────────────────────────┘
│                                                            │
└────────────────────────────────────────────────────────────┘

关键改进

  1. 左侧导航:固定宽度,flex-shrink-0 确保永不被压缩
  2. AI 面板开关:在侧边栏底部增加独立的 AI 助手切换按钮
  3. 面板可收起:AI 助手面板支持完全收起,为主工作区提供更大空间

依赖列表

核心依赖

  • @xterm/xterm@xterm/addon-fit:终端模拟器
  • reactreact-domUI 框架
  • electron-store:本地数据存储
  • openaiAI 模型集成
  • lucide-react:图标库
  • zustand:状态管理

开发工具

  • typescript:类型检查
  • vite:前端构建工具
  • electron-builder:打包工具
  • tailwindcssCSS 框架

开发者指南

修改配置

  • TypeScript 配置:tsconfig.main.json(主进程),tsconfig.renderer.json(渲染进程)
  • Vite 配置:vite.config.ts
  • Tailwind 配置:src/renderer/tailwind.config.js
  • Electron Builder 配置:package.jsonbuild 字段

常见问题

无法启动开发模式

确保已完整安装依赖,并且 Node.js 版本大于等于 16。

打包时下载 Electron 失败

可以配置国内镜像源或使用代理:

# 使用镜像源
set ELECTRON_MIRROR=https://npmmirror.com/mirrors/electron/
npm install

许可证

Copyright © 2026 SSH AI Agent Team

更新日志

v0.2.0 (2026-06-16)

  • 优化布局结构,AI 面板独立化
  • 侧边栏永不消失,稳定固定宽度
  • AI 助手支持快速开关控制
  • 所有区域完善滚动条配置
  • 版本号更新至 0.2.0

v0.1.0

  • 初始版本发布
  • 基本 SSH 连接功能
  • 基础 AI 助手集成
S
Description
No description provided
Readme 262 KiB
Languages
TypeScript 98.4%
JavaScript 0.8%
HTML 0.8%