Skip to main content

hermes-desktop-companion

Desktop GUI companion for Hermes Agent - install, configure, chat with AI assistant featuring tool use, memory, skills, and multi-platform messaging

インストールへ移動

ソース情報

リポジトリ
reason-machines/hermes-skills
ソースの最終更新活動
2026年5月16日 15:49
検出された SKILL.md の言語
英語
スター
5
フォーク
0

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
hermes-desktop-companion
description
Desktop GUI companion for Hermes Agent - install, configure, chat with AI assistant featuring tool use, memory, skills, and multi-platform messaging
triggers
["set up hermes desktop application","configure hermes agent gui","install hermes desktop companion","manage hermes profiles and sessions","connect hermes to messaging platforms","troubleshoot hermes desktop app","use hermes agent chat interface","configure hermes memory and skills"]
# Hermes Desktop Companion > Skill by [ara.so](https://ara.so) — Hermes Skills collection. Hermes Desktop is a native Electron-based desktop application for installing, configuring, and interacting with [Hermes Agent](https://github.com/NousResearch/hermes-agent) — a self-improving AI assistant with tool use, multi-platform messaging, and closed learning loop. It provides a GUI alternative to CLI management with streaming chat, session management, profile switching, skill installation, memory editing, and gateway configuration. ## What It Does - **Guided installation**: First-run wizard installs Hermes Agent to `~/.hermes` with dependency resolution - **Local or remote mode**: Run Hermes locally on `127.0.0.1:8642` or connect to remote API server - **Multi-provider support**: OpenRouter, Anthropic, OpenAI, Google Gemini, xAI Grok, Nous Portal, Qwen, MiniMax, Hugging Face, Groq, and local OpenAI-compatible endpoints - **Streaming chat UI**: SSE-based real-time chat with tool progress, markdown rendering, syntax highlighting, token usage tracking - **22 slash commands**: `/new`, `/clear`, `/fast`, `/web`, `/image`, `/browse`, `/code`, `/shell`, `/usage`, `/help`, `/tools`, `/skills`, `/model`, `/memory`, `/persona`, `/version`, `/compact`, `/compress`, `/undo`, `/retry`, `/debug`, `/status` - **Profile management**: Multiple isolated Hermes environments with separate configs - **14 toolsets**: Web search, browser automation, terminal, file ops, code execution, vision, image gen, TTS, skills, memory, session search, clarify, delegation, MoA, task planning - **Memory system**: View/edit entries, user profile memory, capacity tracking, multiple providers (Honcho, Hindsight, Mem0, RetainDB, Supermemory, ByteRover) - **16 messaging gateways**: Telegram, Discord, Slack, WhatsApp, Signal, Matrix, Mattermost, Email, SMS, iMessage, DingTalk, Feishu, WeCom, WeChat, Webhooks, Home Assistant - **Session search**: Full-text search (SQLite FTS5) across conversation history - **Scheduled tasks**: Cron job builder with 15 delivery targets - **Hermes Office (Claw3d)**: Visual 3D interface with adapter management ## Installation ### Download Pre-built Binaries Download from [GitHub Releases](https://github.com/fathah/hermes-desktop/releases/): | Platform | File | |----------|------| | macOS | `.dmg` | | Linux (any) | `.AppImage` | | Debian/Ubuntu | `.deb` | | Fedora/RHEL | `.rpm` | | Windows | `.exe` (NSIS installer) | ### macOS Installation ```bash # After installing the .dmg, remove quarantine attribute xattr -cr "/Applications/Hermes Agent.app" ``` Or right-click → **Open** → confirm in dialog. ### Windows Installation Download `.exe` from releases. Windows SmartScreen will warn (unsigned) — click "More info" → "Run anyway". **Future winget support**: ```powershell winget install NousResearch.HermesDesktop ``` ### Linux Installation **AppImage** (universal): ```bash chmod +x hermes-desktop-*.AppImage ./hermes-desktop-*.AppImage ``` **Debian/Ubuntu**: ```bash sudo dpkg -i hermes-desktop-*.deb sudo apt-get install -f # Fix dependencies if needed ``` **Fedora/RHEL**: ```bash sudo dnf install ./hermes-desktop-*.rpm --nogpgcheck ``` ### WSL Passwordless Sudo (if installer stalls) ```bash echo "$USER ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/hermes-install # Re-run installer, then: sudo rm /etc/sudoers.d/hermes-install ``` ## First-Run Setup 1. **Choose deployment mode**: - **Local**: Installs Hermes to `~/.hermes`, runs on `127.0.0.1:8642` - **Remote**: Connect to existing Hermes API server (requires URL + API key) 2. **Local mode**: Installer checks for Git, uv, Python 3.11+, then runs official Hermes install script 3. **Configure provider**: Select from OpenRouter, Anthropic, OpenAI, Google, xAI, Nous Portal, Qwen, MiniMax, Hugging Face, Groq, or custom local endpoint 4. **Enter credentials**: API keys are saved to Hermes config files (not stored by desktop app) 5. **Launch workspace**: Main UI opens with Chat, Sessions, Agents, Skills, Memory, Tools, etc. ## Configuration ### Provider Configuration **Settings → Provider Config**: ```typescript // Example: OpenRouter setup { provider: "openrouter", apiKey: process.env.OPENROUTER_API_KEY, model: "anthropic/claude-3.5-sonnet", baseUrl: "https://openrouter.ai/api/v1" } // Example: Local Ollama { provider: "openai", apiKey: "not-needed", model: "llama3.1:8b", baseUrl: "http://localhost:11434/v1" } ``` ### Remote Mode Configuration **First run**: - Choose "Remote" mode - Enter API URL: `https://your-hermes-server.com` - Enter API key (from remote Hermes `/api/keys`) - App validates connection before proceeding ### Profile (Agent) Management **Agents screen**: - Create new profile: Creates isolated `~/.hermes/profiles/<name>` directory - Switch profile: Restarts Hermes with new profile context - Delete profile: Removes profile directory and data ```bash # Profiles stored at: ~/.hermes/profiles/ ├── default/ │ ├── config.yaml │ ├── SOUL.md │ ├── memory.db │ └── sessions.db └── work/ └── ... ``` ### Memory Provider Configuration **Memory screen → Configure Providers**: ```typescript // Example: Honcho { provider: "honcho", apiKey: process.env.HONCHO_API_KEY, appId: "hermes-desktop", userId: "user-123" } // Example: Mem0 { provider: "mem0", apiKey: process.env.MEM0_API_KEY, userId: "user-123" } ``` ### Gateway Configuration **Gateway screen** → Select platform → Configure: **Telegram**: ```yaml enabled: true bot_token: ${TELEGRAM_BOT_TOKEN} allowed_users: [123456789] ``` **Discord**: ```yaml enabled: true token: ${DISCORD_BOT_TOKEN} channel_ids: [1234567890123456789] ``` **Email (IMAP/SMTP)**: ```yaml enabled: true imap_server: imap.gmail.com imap_port: 993 smtp_server: smtp.gmail.com smtp_port: 587 username: ${EMAIL_USERNAME} password: ${EMAIL_APP_PASSWORD} ``` **WhatsApp** (via Baileys): ```yaml enabled: true session_path: ~/.hermes/whatsapp-session qr_code_callback: true ``` ## Chat Interface Usage ### Basic Chat Type naturally or use slash commands: ``` > What's the weather in San Francisco? [Hermes uses web search tool, returns answer] > /web latest news on AI regulation [Forces web search, streams results] > /image a cyberpunk city at sunset [Generates image via FAL.ai or configured provider] ``` ### Slash Commands | Command | Description | |---------|-------------| | `/new` | Start new conversation | | `/clear` | Clear current chat | | `/fast` | Switch to faster model | | `/web <query>` | Force web search | | `/image <prompt>` | Generate image | | `/browse <url>` | Browse and extract from URL | | `/code <task>` | Execute code task | | `/shell <command>` | Run shell command | | `/usage` | Show token usage stats | | `/help` | List all commands | | `/tools` | Show enabled tools | | `/skills` | List installed skills | | `/model [name]` | Get/set current model | | `/memory [query]` | Search memory | | `/persona` | Show current persona | | `/version` | Show Hermes version | | `/compact` | Compress chat history | | `/compress` | Deep compress with MoA | | `/undo` | Remove last message | | `/retry` | Retry last message | | `/debug` | Toggle debug mode | | `/status` | Show system status | ### Token Usage Tracking Bottom of chat shows live counts: ``` 📊 Prompt: 1,234 tokens • Completion: 567 tokens • Cost: $0.0123 ``` Use `/usage` for detailed breakdown: ``` > /usage Session Usage: Total Prompt Tokens: 12,345 Total Completion Tokens: 5,678 Total Cost: $0.123 Messages: 15 ``` ## Skills Management ### Installing Skills **Skills screen**: 1. Browse bundled skills (pre-installed with Hermes) 2. Or install from GitHub: ``` Repository: username/repo-name Branch: main (optional) ``` 3. Click **Install** ### Skill Structure Skills are markdown files with YAML frontmatter: ```markdown --- name: web-search-expert description: Expert at web searching and information retrieval triggers: - "search the web for" - "find information about" - "look up" --- # Web Search Expert Use the web_search tool to find current information... ## Examples When user asks: "What's the latest on GPT-5?" 1. Use web_search with query "GPT-5 latest news" 2. Summarize findings 3. Cite sources ``` ### Editing Skills **Skills screen** → Click skill → **Edit**: - Modify triggers, description, or content - Changes saved to `~/.hermes/skills/<name>/SKILL.md` ## Memory System ### Viewing Memory **Memory screen**: - **Memory Entries**: List of stored facts/context - **User Profile**: Persistent user information - **Capacity**: Current usage vs. limit ### Adding Memory Chat naturally — Hermes auto-saves important context: ``` > My name is Alice and I prefer Python over JavaScript [Hermes stores to memory automatically] > What's my name? [Hermes retrieves: "Alice"] ``` Or explicit: ``` > Remember I'm working on a TypeScript project called Hermes Desktop [Hermes: ✓ Stored to memory] ``` ### Editing Memory Entries **Memory screen**: 1. Click entry to view 2. Edit content or delete 3. Save changes ### Memory Providers Configured in **Memory screen → Configure Providers**: - **Honcho**: Managed memory service - **Hindsight**: Self-hosted memory - **Mem0**: Personalized AI memory - **RetainDB**: Vector memory DB - **Supermemory**: Context-aware memory - **ByteRover**: Local memory store ## Session Management ### Searching Sessions **Sessions screen**: - **Search bar**: Full-text search (SQLite FTS5) across all conversations - **Date groups**: Conversations grouped by Today, Yesterday, Last 7 Days, Last 30 Days, Older ```typescript // Example: Search sessions programmatically (if extending app) import { searchSessions } from './main/database'; const results = await searchSessions('typescript error handling'); // Returns: [{ id, title, timestamp, snippet, profileId }, ...] ``` ### Resuming Sessions 1. **Sessions screen** → Click conversation 2. Chat loads with full history 3. Continue conversation from last message ### Deleting Sessions Right-click session → **Delete** or click trash icon. ## Tools Management **Tools screen** → Enable/disable toolsets: | Toolset | Capabilities | |---------|--------------| | **web** | Exa/Tavily search, Firecrawl scraping | | **browser** | Playwright automation, screenshot, PDF | | **terminal** | Shell command execution | | **file** | Read, write, list, move files | | **code** | Python execution in sandbox | | **vision** | Image analysis (GPT-4V, Claude Vision) | | **image** | Generation via FAL.ai/DALL-E | | **tts** | Text-to-speech synthesis | | **skills** | Install/manage skills | | **memory** | Store/retrieve context | | **session** | Search past conversations |
GitHubで見る
この SKILL.md は非常に大きいため、SkillsMP では最初のセクションだけを表示しています。 GitHubで見る