# SSHAiChat **Repository Path**: bouyei/SSHAiChat ## Basic Information - **Project Name**: SSHAiChat - **Description**: 通过AI来管理Linux服务器 - **Primary Language**: Unknown - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-14 - **Last Updated**: 2026-06-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README Based on the provided code map, I can see this is an Avalonia-based desktop application for AI-powered SSH chat. Let me create a comprehensive README for this project. # SSHAiChat [NO MAP] - As there was no existing README found, I'll create a comprehensive one based on the project structure. --- # SSHAiChat SSHAiChat 是一款基于 Avalonia UI 开发的跨平台桌面应用,它将 AI 大语言模型与 SSH 远程服务器管理相结合,提供智能化的Shell命令辅助和安全的脚本执行体验。 ## 功能特性 - 🤖 **AI 智能辅助**:连接 OpenAI 兼容的 AI API,获取智能命令建议和脚本生成 - 🔐 **SSH 连接管理**:支持密码和私钥两种认证方式管理多个 SSH 服务器 - 💬 **交互式聊天界面**:类似聊天软件的界面设计与 AI 进行交互 - ⚠️ **危险命令检测**:自动分析待执行脚本,识别潜在危险操作 - 📝 **脚本执行审批**:用户需要审批 AI 生成的脚本后才能执行 - 📊 **会话历史管理**:保存聊天记录和配置,支持会话恢复 ## 技术栈 - **UI 框架**:Avalonia UI 11.x (跨平台 .NET 桌面应用框架) - **MVVM 框架**:ReactiveUI - **SSH 连接**:SSH.NET - **数据存储**:SQLite - **目标平台**:Windows / macOS / Linux ## 项目结构 ``` src/SSHaiChat/ ├── Models/ # 数据模型 │ ├── AiConfig.cs # AI 配置模型 │ ├── ChatMessage.cs # 聊天消息模型 │ ├── ChatSession.cs # 聊天会话模型 │ ├── SshConfig.cs # SSH 配置模型 │ ├── DangerAnalysis.cs # 危险命令分析 │ └── ScriptExecutionResult.cs # 脚本执行结果 ├── Services/ # 业务服务 │ ├── AiService.cs # AI API 调用服务 │ ├── SshService.cs # SSH 连接服务 │ ├── ConfigService.cs # 配置管理服务 │ ├── DangerousCommandDetector.cs # 危险命令检测 │ ├── ScriptExtractor.cs # 脚本提取器 │ └── Interfaces/ # 服务接口定义 ├── ViewModels/ # 视图模型 │ ├── MainWindowViewModel.cs │ ├── ChatViewModel.cs │ ├── AiConfigListViewModel.cs │ ├── SshConfigListViewModel.cs │ └── ... ├── Views/ # 视图 │ ├── MainWindow.axaml │ ├── ChatView.axaml │ └── ... ├── Data/ # 数据层 │ └── DbManager.cs # 数据库管理 ├── Converters/ # 值转换器 ├── Helpers/ # 辅助工具 │ └── ServiceLocator.cs # 服务定位器 └── Assets/ # 静态资源 ``` ## 快速开始 ### 环境要求 - .NET 8.0 SDK 或更高版本 - Visual Studio 2022 / Rider / VS Code (带 C# 扩展) ### 构建项目 ```bash # 克隆项目 git clone https://gitee.com/bouyei/SSHAiChat.git cd SSHAiChat # 构建 dotnet build src/SSHaiChat/SSHAiChat.csproj # 运行 dotnet run --project src/SSHaiChat/SSHAiChat.csproj ``` ### 使用说明 1. **配置 SSH 连接**:在 SSH 配置页面添加服务器连接信息,支持密码或私钥认证 2. **配置 AI**:在 AI 配置页面添加 API 端点、密钥和模型名称 3. **开始聊天**:选择 SSH 服务器和 AI 配置,开始与 AI 交互 4. **执行脚本**:AI 生成的脚本会经过危险检测,需要用户审批后才能执行 ## 配置说明 ### AI 配置 | 参数 | 说明 | |------|------| | Provider | AI 提供商 (OpenAI/Azure OpenAI/自定义) | | EndpointUrl | API 端点 URL | | ApiKey | API 密钥 | | ModelName | 模型名称 | | Temperature | 生成温度 (0.0-2.0) | | MaxTokens | 最大令牌数 | ### SSH 配置 | 参数 | 说明 | |------|------| | Host | 服务器地址 | | Port | 端口号 (默认 22) | | Username | 用户名 | | AuthMethod | 认证方式 (密码/私钥) | | Password | 密码 | | PrivateKeyPath | 私钥路径 | | Passphrase | 私钥密码短语 | ## 安全特性 - 危险命令检测:自动识别 rm -rf、fork bomb 等高风险操作 - 脚本审批机制:所有待执行脚本需要用户明确审批 - 执行状态跟踪:记录脚本执行结果和输出 ## 许可证 MIT License --- **注意**:本项目仅供学习和研究使用,请遵守相关服务器的使用条款和政策。 ![输入图片说明](src/SSHaiChat/image.png)