Skip to content

0xfnzero/hermes-gui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hermes GUI

A PySide6-based desktop interface for the Hermes AI Agent, inspired by the Hermes Web UI.

English | 中文


English

Features

  • Three-panel Layout: Sidebar (sessions), Chat (center), File Browser (right)
  • Session Management: Create, rename, pin, archive, search, and delete sessions with JSON persistence
  • Multi-Provider Model Support: 20+ providers including OpenRouter, Anthropic, Gemini, DeepSeek, Z.AI, Kimi, MiniMax, GitHub Copilot, OpenAI Codex, Hugging Face, and more
  • Combined Model & API Key Dialog: Select models and configure API keys in one unified interface
  • Chat Interface: Markdown rendering, code syntax highlighting, tool call display
  • File Browser: Browse workspace files with directory tree and preview
  • Task Management: Schedule and manage cron jobs
  • Skills Management: Create and manage agent skills
  • Memory Management: Edit MEMORY.md and USER.md files
  • Theming: Multiple themes (Dark, Light, Slate, Nord) with CSS-like QSS stylesheets
  • Coding Agents: Support for Claude Code, OpenAI Codex, OpenCode, and Hermes Agent orchestration

Supported Model Providers

Provider Models Authentication
OpenRouter 100+ models from all providers OPENROUTER_API_KEY
Anthropic Claude Opus, Sonnet, Haiku ANTHROPIC_API_KEY
Google AI Studio Gemini Pro, Flash GOOGLE_API_KEY
DeepSeek DeepSeek Chat, Reasoner DEEPSEEK_API_KEY
GitHub Copilot GPT-5, Claude, Gemini GITHUB_TOKEN
Z.AI / GLM GLM-5, GLM-4.7 GLM_API_KEY
Kimi / Moonshot Kimi K2.5, Thinking KIMI_API_KEY
MiniMax MiniMax M1/M2 MINIMAX_API_KEY
OpenAI Codex GPT-5.3 Codex OPENAI_API_KEY
Hugging Face Open source models HF_TOKEN
And more...

Installation

# Clone the repository
git clone git@github.com:0xfnzero/hermes-gui.git
cd hermes-gui

# Install dependencies
pip install -r requirements.txt

# Run the application
python main.py

Requirements

  • Python 3.9+
  • PySide6
  • markdown
  • pygments
  • pyyaml

Project Structure

hermes-gui/
├── main.py                    # Application entry point
├── requirements.txt           # Python dependencies
├── src/
│   ├── config.py             # Configuration and themes
│   ├── main_window.py        # Main application window
│   ├── models/
│   │   ├── agents.py         # Model provider definitions (20+ providers)
│   │   ├── session.py        # Session and message models
│   │   └── workspace.py      # File node model
│   ├── widgets/
│   │   ├── sidebar.py        # Left sidebar with sessions
│   │   ├── chat_panel.py     # Chat interface
│   │   ├── file_browser.py   # File browser panel
│   │   ├── model_config_dialog.py  # Combined model & API key config
│   │   ├── provider_config.py      # Multi-provider API key management
│   │   ├── settings_dialog.py      # Settings dialog
│   │   ├── tasks_panel.py    # Task management
│   │   ├── skills_panel.py   # Skills management
│   │   ├── memory_panel.py   # Memory editing
│   │   └── status_bar.py     # Status bar
│   └── utils/
│       └── theme.py          # Theme management

Configuration

Configuration files are stored in ~/.hermes/gui/:

  • settings.json - Theme, window size, default model, provider selection
  • providers.json - API keys for different providers (local storage)
  • sessions/ - Session data in JSON format

Environment Variables

You can also configure API keys via environment variables:

export OPENROUTER_API_KEY="your-key"
export ANTHROPIC_API_KEY="your-key"
export GOOGLE_API_KEY="your-key"
export GITHUB_TOKEN="your-token"
# ... etc

Keyboard Shortcuts

Shortcut Action
Ctrl+N New Session
Ctrl+T New Session
Ctrl+O Open Workspace
Ctrl+K Focus Search
Ctrl+L Focus Chat Input
Ctrl+B Toggle Sidebar
Ctrl+Shift+B Toggle File Browser

中文

功能特性

  • 三面板布局: 侧边栏(会话列表)、聊天区(中间)、文件浏览器(右侧)
  • 会话管理: 创建、重命名、置顶、归档、搜索和删除会话,支持 JSON 持久化
  • 多提供商模型支持: 支持 20+ 个模型提供商,包括 OpenRouter、Anthropic、Gemini、DeepSeek、智谱 AI、月之暗面、MiniMax、GitHub Copilot、OpenAI Codex、Hugging Face 等
  • 统一的模型选择和 API Key 配置: 在一个界面中完成模型选择和 API 密钥配置
  • 聊天界面: Markdown 渲染、代码语法高亮、工具调用显示
  • 文件浏览器: 目录树浏览工作区文件,支持文件预览
  • 任务管理: 定时任务(Cron Job)的调度和管理
  • 技能管理: 创建和管理 Agent 技能
  • 内存管理: 编辑 MEMORY.md 和 USER.md 文件
  • 主题管理: 多种主题(深色、浅色、Slate、Nord),支持 CSS-like QSS 样式表
  • 编程 Agent: 支持 Claude Code、OpenAI Codex、OpenCode 和 Hermes Agent 编排

支持的模型提供商

提供商 模型 认证方式
OpenRouter 100+ 来自各提供商的模型 OPENROUTER_API_KEY
Anthropic Claude Opus、Sonnet、Haiku ANTHROPIC_API_KEY
Google AI Studio Gemini Pro、Flash GOOGLE_API_KEY
DeepSeek DeepSeek Chat、Reasoner DEEPSEEK_API_KEY
GitHub Copilot GPT-5、Claude、Gemini GITHUB_TOKEN
智谱 AI (Z.AI / GLM) GLM-5、GLM-4.7 GLM_API_KEY
月之暗面 (Kimi) Kimi K2.5、Thinking KIMI_API_KEY
MiniMax MiniMax M1/M2 MINIMAX_API_KEY
OpenAI Codex GPT-5.3 Codex OPENAI_API_KEY
Hugging Face 开源模型 HF_TOKEN
更多...

安装

# 克隆仓库
git clone git@github.com:0xfnzero/hermes-gui.git
cd hermes-gui

# 安装依赖
pip install -r requirements.txt

# 运行应用
python main.py

系统要求

  • Python 3.9+
  • PySide6
  • markdown
  • pygments
  • pyyaml

项目结构

hermes-gui/
├── main.py                    # 应用入口
├── requirements.txt           # Python 依赖
├── src/
│   ├── config.py             # 配置和主题
│   ├── main_window.py        # 主应用窗口
│   ├── models/
│   │   ├── agents.py         # 模型提供商定义(20+ 提供商)
│   │   ├── session.py        # 会话和消息模型
│   │   └── workspace.py      # 文件节点模型
│   ├── widgets/
│   │   ├── sidebar.py        # 左侧边栏(会话列表)
│   │   ├── chat_panel.py     # 聊天界面
│   │   ├── file_browser.py   # 文件浏览器
│   │   ├── model_config_dialog.py  # 模型选择和 API Key 配置
│   │   ├── provider_config.py      # 多提供商 API Key 管理
│   │   ├── settings_dialog.py      # 设置对话框
│   │   ├── tasks_panel.py    # 任务管理
│   │   ├── skills_panel.py   # 技能管理
│   │   ├── memory_panel.py   # 内存编辑
│   │   └── status_bar.py     # 状态栏
│   └── utils/
│       └── theme.py          # 主题管理

配置

配置文件存储在 ~/.hermes/gui/ 目录下:

  • settings.json - 主题、窗口大小、默认模型、提供商选择
  • providers.json - 不同提供商的 API 密钥(本地存储)
  • sessions/ - JSON 格式的会话数据

环境变量

你也可以通过环境变量配置 API 密钥:

export OPENROUTER_API_KEY="your-key"
export ANTHROPIC_API_KEY="your-key"
export GOOGLE_API_KEY="your-key"
export GITHUB_TOKEN="your-token"
# ... 等等

键盘快捷键

快捷键 功能
Ctrl+N 新建会话
Ctrl+T 新建会话
Ctrl+O 打开工作区
Ctrl+K 聚焦搜索框
Ctrl+L 聚焦聊天输入框
Ctrl+B 切换侧边栏
Ctrl+Shift+B 切换文件浏览器

License / 许可证

MIT License

About

A PySide6-based desktop interface for the Hermes AI Agent, inspired by the Hermes Web UI.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages