17 KiB
本プロジェクトは現在も活発に開発中です。 機能は変更される可能性があり、一部が動作しなくなることもあります。問題に遭遇した場合や、アイデアがある場合はIssue を作成してください。コントリビューションも歓迎しています!
言語
- English:
README.md - 简体中文:
README.zh-CN.md - 日本語:
README.ja-JP.md
Hermes Desktop は、Hermes Agent(ツール使用、マルチプラットフォームメッセージング、クローズドな学習ループを備えた、自己改善型 AI アシスタント)のインストール・設定・チャットを行うためのネイティブデスクトップアプリです。
CLI を手作業で管理する代わりに、本アプリではインストール、プロバイダのセットアップ、日常的な利用までを一箇所でガイドします。公式の Hermes インストールスクリプトを使用し、Hermes を ~/.hermes に保存し、チャット、セッション、プロファイル、メモリ、スキル、ツール、スケジューリング、メッセージングゲートウェイなどを GUI で操作できます。
インストール
Windows
Windows ユーザーへ: インストーラはコード署名されていません。初回起動時に Windows SmartScreen の警告が表示されます。「詳細情報」→「実行」をクリックしてください。
WSL ユーザーへ: インストーラが
Switching to root user to install dependencies...で停止する場合、Playwright が sudo パスワードを待っていますが、読み取るための TTY がありません。インストール中だけパスワードなしの sudo を許可し、完了後に元へ戻してください。echo "$USER ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/hermes-install # …インストーラを再実行し、完了したら: sudo rm /etc/sudoers.d/hermes-install#109 で追跡しています。
Fedora (RPM)
sudo dnf install ./hermes-desktop-<version>.rpm
Fedora ユーザーへ:
.rpmは GPG 署名されていません。署名検証を強制する設定の場合は、インストールコマンドに--nogpgcheckを追加してください。.rpmビルドは自動アップデートに対応していません(electron-updaterの制約)。アップデートする場合は新しい.rpmを再インストールしてください。
プレビュー
Chat![]() |
Profiles![]() |
Models![]() |
Providers![]() |
Tools![]() |
Skills![]() |
Schedules![]() |
Gateway![]() |
Persona![]() |
Kanban![]() |
Office![]() |
Settings![]() |
機能
- 初回起動時のガイド付きインストール — Hermes Agent のインストールを進捗表示と依存関係解決付きで案内します
- ローカル / リモートバックエンド — Hermes をローカル (
127.0.0.1:8642) で実行するか、URL + API キーを使ってリモートの Hermes API サーバーに接続できます - マルチプロバイダ対応 — OpenRouter, Anthropic, OpenAI, Google (Gemini), xAI (Grok), Nous Portal, Qwen, MiniMax, Hugging Face, Groq、そしてローカルの OpenAI 互換エンドポイント (LM Studio, Ollama, vLLM, llama.cpp)
- ストリーミングチャット UI — SSE ストリーミング、ツール進捗インジケータ、Markdown レンダリング、シンタックスハイライト対応
- トークン使用量のトラッキング — プロンプト / 出力トークン数とコストをチャットフッターにリアルタイム表示。
/usageスラッシュコマンドも利用可能 - 22 種類のスラッシュコマンド —
/new,/clear,/fast,/web,/image,/browse,/code,/shell,/usage,/help,/tools,/skills,/model,/memory,/persona,/version,/compact,/compress,/undo,/retry,/debug,/statusなど - セッション管理 — 全文検索 (SQLite FTS5)、日付別の履歴表示、会話の再開と横断検索
- プロファイル切り替え — Hermes 環境を分離した状態で作成・削除・切り替え可能
- 14 のツールセット — Web、ブラウザ、ターミナル、ファイル、コード実行、ビジョン、画像生成、TTS、スキル、メモリ、セッション検索、Clarify、Delegation、MoA、タスクプランニング
- メモリシステム — メモリエントリの閲覧 / 編集、ユーザープロファイルメモリ、容量トラッキング、検出可能なメモリプロバイダ (Honcho, Hindsight, Mem0, RetainDB, Supermemory, ByteRover) に対応
- ペルソナエディタ — エージェントの SOUL.md パーソナリティを編集・リセット可能
- 保存済みモデル — プロバイダごとのモデル設定を CRUD で管理
- スケジュールタスク — 分単位 / 時間単位 / 日単位 / 週単位 / カスタム cron に対応する cron ジョブビルダー(15 種類の配信先)
- 16 種類のメッセージングゲートウェイ — Telegram, Discord, Slack, WhatsApp, Signal, Matrix, Mattermost, Email (IMAP/SMTP), SMS (Twilio/Vonage), iMessage (BlueBubbles), DingTalk, Feishu/Lark, WeCom, WeChat (iLink Bot), Webhooks, Home Assistant
- Hermes Office (Claw3d) — ビジュアルな 3D インターフェース。開発サーバーとアダプタの管理機能を備える
- バックアップ、インポート、デバッグダンプ — 設定画面からデータの完全なバックアップ / リストアとシステム診断が可能
- ログビューア — ゲートウェイとエージェントのログを設定画面から直接閲覧
- 自動アップデーター — electron-updater を使ったアップデートチェックとインストール
- i18n 対応 — 全画面に対応する英語ロケールを含む国際化フレームワーク。コミュニティ翻訳の受け入れ準備済み
- テストスイート — SSE パーサ、IPC ハンドラ、preload API サーフェス、インストーラユーティリティ、定数バリデーションを Vitest で検証
動作の仕組み
初回起動時、アプリは次の手順で動作します。
- Hermes をローカルで動かすか、リモートの Hermes API サーバーに接続するかを尋ねます。
- ローカルモード:
~/.hermesに Hermes が既にインストールされているかを確認します。なければ、依存関係 (Git, uv, Python 3.11+) を解決しつつ公式インストーラを実行します。 - リモートモード: リモート API の URL と API キーを入力させ、接続を検証し、ローカルインストールをスキップします。
- API プロバイダまたはローカルモデルのエンドポイントを尋ねます。
- プロバイダ設定と API キーを Hermes の設定ファイルに保存します。
- セットアップが完了するとメインのワークスペースを起動します。
ローカルモードでは、チャットリクエストは http://127.0.0.1:8642 経由で SSE ストリーミングされます。リモートモードでは、設定したリモート URL に対して同じストリーミングプロトコルで通信します。デスクトップアプリはストリームをリアルタイムで解析し、ツール進捗、Markdown コンテンツ、トークン使用量を順次レンダリングします。
画面構成
| 画面 | 説明 |
|---|---|
| Chat | ストリーミング会話 UI。スラッシュコマンド、ツール進捗、トークントラッキングに対応 |
| Sessions | 過去の会話の閲覧、検索、再開 |
| Agents | Hermes プロファイルの作成、削除、切り替え |
| Skills | バンドル済み / インストール済みスキルの閲覧、インストール、管理 |
| Models | プロバイダごとに保存されたモデル設定の管理 |
| Memory | メモリエントリとユーザープロファイルの閲覧 / 編集、メモリプロバイダの設定 |
| Soul | アクティブなプロファイルのペルソナ (SOUL.md) を編集 |
| Tools | 個別のツールセットを有効化 / 無効化 |
| Schedules | 配信先付きの cron ジョブを作成・管理 |
| Gateway | メッセージングプラットフォーム統合の設定と制御 |
| Office | Claw3d ビジュアルインターフェースのセットアップと管理 |
| Settings | プロバイダ設定、認証情報プール、バックアップ / インポート、ログビューア、ネットワーク、テーマ |
対応プロバイダ
LLM プロバイダ
| プロバイダ | 備考 |
|---|---|
| OpenRouter | 単一 API で 200 以上のモデルを利用可能(推奨) |
| Anthropic | Claude に直接アクセス |
| OpenAI | GPT に直接アクセス |
| Google (Gemini) | Google AI Studio |
| xAI (Grok) | Grok モデル |
| Nous Portal | 無料枠あり |
| Qwen | QwenAI モデル |
| MiniMax | グローバル / 中国向けエンドポイント |
| Hugging Face | HF Inference 経由で 20 以上のオープンモデル |
| Groq | 高速推論 (Voice/STT) |
| Local/Custom | 任意の OpenAI 互換エンドポイント |
LM Studio、Ollama、vLLM、llama.cpp 用のローカルプリセットが付属しています。
メッセージングプラットフォーム
Telegram、Discord、Slack、WhatsApp、Signal、Matrix/Element、Mattermost、Email (IMAP/SMTP)、SMS (Twilio & Vonage)、iMessage (BlueBubbles)、DingTalk、Feishu/Lark、WeCom、WeChat (iLink Bot)、Webhooks、Home Assistant。
ツール統合
Exa Search、Parallel API、Tavily、Firecrawl、FAL.ai (画像生成)、Honcho、Browserbase、Weights & Biases、Tinker。
開発
前提条件
- Node.js と npm
- Hermes インストーラ用の Unix 系シェル環境
- 初回起動時に Hermes をダウンロードするためのネットワークアクセス
依存関係のインストール
npm install
開発モードでアプリを起動
npm run dev
チェック実行
npm run lint
npm run typecheck
テスト実行
npm run test
npm run test:watch
デスクトップアプリのビルド
npm run build
プラットフォーム別パッケージング:
npm run build:mac
npm run build:win
npm run build:linux
npm run build:rpm # Fedora/RHEL .rpm のみ
初回セットアップ
アプリを初めて開くと、既存の Hermes インストールを検出するか、インストールを提案します。
UI でサポートされているセットアップパス:
OpenRouterAnthropicOpenAI- OpenAI 互換 base URL を使った
Local LLM
以下のローカルプリセットが付属しています。
- LM Studio
- Ollama
- vLLM
- llama.cpp
Hermes のファイルは以下の場所で管理されます。
~/.hermes~/.hermes/.env~/.hermes/config.yaml~/.hermes/hermes-agent~/.hermes/profiles/— 名前付きプロファイルディレクトリ~/.hermes/state.db— セッション履歴データベース~/.hermes/cron/jobs.json— スケジュールタスク
技術スタック
- Electron 39 — クロスプラットフォームのデスクトップシェル
- React 19 — UI フレームワーク
- TypeScript 5.9 — main / renderer プロセス間で型安全性を確保
- Tailwind CSS 4 — ユーティリティファーストのスタイリング
- Vite 7 + electron-vite — 高速な開発サーバーとビルドツール
- better-sqlite3 — FTS5 全文検索付きのローカルセッションストレージ
- i18next — 国際化フレームワーク
- Vitest — テストランナー
補足
- 本デスクトップアプリはエージェントの動作やツール実行を上流の Hermes Agent プロジェクトに依存しています。
- 内蔵インストーラは公式の Hermes インストールスクリプトを
--skip-setup付きで実行し、その後 GUI でプロバイダ設定を完了します。 - ローカルモデルプロバイダには API キーは不要ですが、互換サーバーが事前に起動している必要があります。
- ネットワーク制限のある環境向けに、代替の npm レジストリ経路をサポートしています。
コントリビューション
コントリビューションを歓迎します!始め方はコントリビューションガイドをご覧ください。どこから手を付ければよいか分からない場合は、Open Issues を確認してください。バグを見つけた、または機能要望がある場合は Issue を作成してください。
関連プロジェクト
コアエージェント、ドキュメント、CLI ワークフローについては、Hermes Agent 本体のリポジトリを参照してください。












