From 88cc5b233a2fce62a465e3c1c6d282855358b877 Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 16 Jun 2026 15:27:24 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E6=B7=BB=E5=8A=A0=20v0.2.0=20=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E7=9A=84=20README=20=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 175 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 175 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..4380d7b --- /dev/null +++ b/README.md @@ -0,0 +1,175 @@ +# 智能 SSH 终端 - SSH AI Agent + +集成 AI 助手的远程运维桌面客户端,支持 SSH 连接、终端管理和自然语言辅助。 + +## 功能特性 + +### 核心功能 + +- **SSH 连接管理**:创建、编辑和管理 SSH 连接配置 +- **分组管理**:将连接按分组组织,便于管理 +- **终端会话**:全功能终端模拟器,支持多标签页 +- **AI 助手集成**:内置 AI 聊天,支持自然语言描述运维任务 + +### v0.2.0 更新 + +- ✅ 优化布局结构:确保 AI 输出内容不影响侧边栏可见性 +- ✅ AI 助手面板独立化:支持自由开关控制 +- ✅ 新增面板切换按钮:在侧边栏底部提供快速开关入口 +- ✅ 所有区域滚动支持:确保内容过多时可正常滚动查看 +- ✅ 侧边栏永不消失:设置 flex-shrink-0 确保导航区域稳定 + +## 技术栈 + +- **Electron**:跨平台桌面应用框架 +- **React**:UI 组件库 +- **TypeScript**:类型安全的 JavaScript 超集 +- **Tailwind CSS**:实用优先的 CSS 框架 +- **XTerm.js**:Web 终端模拟器 +- **Zustand**:轻量级状态管理 + +## 安装与使用 + +### 开发模式 + +```bash +# 安装依赖 +npm install + +# 启动开发服务器(包含热重载) +npm run dev:watch + +# 或直接编译并运行 +npm run dev +``` + +### 构建打包 + +```bash +# 编译前端和后端 +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`:终端模拟器 +- `react` 和 `react-dom`:UI 框架 +- `electron-store`:本地数据存储 +- `openai`:AI 模型集成 +- `lucide-react`:图标库 +- `zustand`:状态管理 + +### 开发工具 +- `typescript`:类型检查 +- `vite`:前端构建工具 +- `electron-builder`:打包工具 +- `tailwindcss`:CSS 框架 + +## 开发者指南 + +### 修改配置 +- TypeScript 配置:`tsconfig.main.json`(主进程),`tsconfig.renderer.json`(渲染进程) +- Vite 配置:`vite.config.ts` +- Tailwind 配置:`src/renderer/tailwind.config.js` +- Electron Builder 配置:`package.json` 的 `build` 字段 + +### 常见问题 + +#### 无法启动开发模式 +确保已完整安装依赖,并且 Node.js 版本大于等于 16。 + +#### 打包时下载 Electron 失败 +可以配置国内镜像源或使用代理: +```bash +# 使用镜像源 +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 助手集成 \ No newline at end of file