# HermesDesktop **Repository Path**: DXFB/HermesDesktop ## Basic Information - **Project Name**: HermesDesktop - **Description**: # HermesDesktop **HermesDesktop** 是一个基于 WPF 的桌面客户端,为 [Hermes AI Agent](https://gitee.com/johnconner/Herme) 服务提供完整的图形化操作界面。 ## ✨ 核心功能 - **💬 智能对话**:多会话管理、Token 统计、打字机效果、文件附件、多模型切换 - **🛠️ 技能中心**:统一管 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-08-25 - **Last Updated**: 2026-08-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # HermesDesktop Hermes Desktop 是一个基于 WPF 的桌面客户端应用,用于连接和操作 Hermes AI Agent 服务。该应用提供了完整的对话管理、技能/工具集控制、定时任务调度、看板管理、附件管理、记忆编辑等功能。 ## 功能特性 ### 💬 对话管理 - 支持多会话管理,可创建、切换、搜索会话 - 实时显示上下文使用量(Token 统计) - 支持打字机效果逐字显示 AI 回复 - 文件附件支持(图片预览、文件大小显示) - 支持多模型选择与切换 ### 🛠️ 技能中心 - Skills(技能):查看、管理本地/Hub/Agent 来源的技能 - Toolsets(工具集):Web、Terminal、Memory 等工具集的启用控制 - MCP Servers:管理 Model Context Protocol 服务器 ### ⏰ 定时任务 - Cron 表达式调度任务管理 - 任务状态监控(运行中/已暂停/已排期) - 运行历史记录查看 - 支持按名称/时间排序 ### 📋 看板管理 - 多看板支持(默认看板、求职项目板等) - 任务状态分诊(待分诊/待办/已排期/执行中/受阻/评审中/已完成等) - 拖拽式任务管理(开发中) - 任务统计面板 ### 📦 附件中心 - 图片、文件、链接三种附件类型 - 按类型筛选显示 - 按关键词搜索 - 附件与对话会话关联 ### 🧠 记忆编辑 - 编辑 Memory、User、Soul 三部分记忆内容 - 持久化保存修改 - 自动检测内容变更 ### ⚙️ 设置中心 - API 端点配置 - 模型偏好设置 - 日志查看与管理 - 连接测试与更新检查 ## 技术栈 - **.NET 8** / **WPF** 桌面框架 - **CommunityToolkit.Mvvm** 响应式编程 - **SocketIO** 实时通信 - **HttpClient** REST API 调用 - **XAML** + **C#** 视图与逻辑分离 ## 项目结构 ``` src/HermesDesktop.App/ ├── App.xaml.cs # 应用入口,DI 容器初始化 ├── MainWindow.xaml.cs # 主窗口,会话状态自动保存 ├── Services/ │ ├── HermesApiClient.cs # 核心 API 客户端 │ ├── ChatSocketService.cs # 实时 Socket 通信 │ ├── ModelSettingsService.cs # 模型偏好持久化 │ └── WindowStateService.cs # 窗口位置/大小持久化 ├── ViewModels/ │ ├── MainViewModel.cs # 主视图导航 │ ├── ChatViewModel.cs # 对话逻辑 │ ├── SkillsViewModel.cs # 技能/工具集/MCP │ ├── CronViewModel.cs # 定时任务 │ ├── KanbanViewModel.cs # 看板 │ ├── ArtifactsViewModel.cs # 附件 │ └── MemoryEditorViewModel.cs # 记忆编辑 ├── Views/ # XAML 视图层 ├── Converters/ # 值转换器 └── Themes/ # 样式资源 ``` ## 快速开始 ### 环境要求 - **Windows 10+** - **.NET 8 SDK** 或更高版本 ### 编译运行 ```bash # 克隆或解压项目 cd HermesDesktop # 还原依赖 dotnet restore # 编译项目 dotnet build -c Release # 运行应用 dotnet run --project src/HermesDesktop.App ``` 或者使用 Visual Studio 2022+ 打开 `HermesDesktop.sln` 解决方案直接编译运行。 ## 配置说明 首次启动时,可在 **设置** 页面配置: | 配置项 | 说明 | |--------|------| | API 地址 | Hermes 服务端点,默认为空 | | 用户名 | 登录用户名 | | 密码 | 登录密码 | | 默认模型 | 首选的 AI 模型 | ## 使用指南 ### 开始对话 1. 在设置页面完成认证(填写用户名、密码后点击登录) 2. 返回 **聊天** 视图 3. 在左侧会话列表选择已有会话或点击 **+** 新建 4. 输入内容发送,与 AI 进行交互 ### 管理技能 1. 切换到 **技能** 视图 2. 在 **Skills**、**Toolsets**、**MCP Servers** 三个标签页间切换 3. 点击技能卡片右侧开关可启用/禁用 4. 选中某项可在详情区查看说明 ### 创建定时任务 1. 切换到 **任务** 视图 2. 点击 **新建任务** 按钮 3. 填写任务名称、Cron 表达式、使用的技能等 4. 确认创建后任务将按计划执行 ### 编辑记忆 1. 切换到 **记忆** 视图 2. Memory、User、Soul 三个编辑区 3. 点击 **编辑** 按钮进入编辑模式 4. 修改后点击 **保存** 提交 ## 许可证 本项目遵循 **MIT License**,详情请查看项目根目录 LICENSE 文件。 ## 贡献指南 欢迎提交 Issue 或 Pull Request 贡献代码。在提交前请确保: 1. 代码符合项目现有的 C# 风格与规范 2. 新增功能已添加相应的 XAML 视图与 ViewModel 3. 提交信息清晰描述改动内容 --- **HermesDesktop** - 让 AI Agent 管理更高效 🚀