WindowsへのHermes AIのインストール:Desktop、PowerShell、WSL2
Windows 10および11におけるHermes AIのインストールガイド。ネイティブPowerShell実行、Hermes Desktop GUIアプリ、WSL2環境の比較から、環境の動作確認、トラブルシューティングまでを詳しく解説します。
目次

Hermes AgentはWindows 10およびWindows 11をサポートしています。ユーザーは、PowerShellによるネイティブ実行、Hermes Desktopグラフィカルアプリケーション、WSL2環境という3つの展開シナリオから選択できます。適切なパスの選択は、必要なビルドツール、ターミナル要件、およびファイルシステムアーキテクチャによって決まります。
インストール方法の選択:ネイティブ環境とWSL2の比較
インストールを開始する前に、タスクの実行コンテキストを決定することが不可欠です:
- ネイティブPowerShellおよびHermes Desktopは同じデータ配置を共有します。ソースコードと仮想環境は
%LOCALAPPDATA%\hermes\hermes-agentに配置され、ユーザー設定、セッション履歴、スキルは%LOCALAPPDATA%\hermesに保存されます。デスクトップインターフェースとコンソールCLIは相互に入れ替え可能であり、まったく同一の状態に対して動作します。 - WSL2はLinux仮想マシン内に環境を隔離し、設定を
~/.hermes内に個別に保存します。
アーキテクチャ選定の具体例
- Windows中心のプロジェクト(PowerShell / .NET / システムユーティリティ):ホスト上のワークフローを自動化したり、Windowsタスクスケジューラを介してTelegramやDiscordのバックグラウンドゲートウェイを実行したり、ローカルのNTFSファイルを操作したりする場合は、ネイティブPowerShellまたはHermes Desktopを選択してください。
- Linuxスタックのプロジェクト(Docker、Make、POSIXスクリプト):エージェントがLinuxバイナリをコンパイルしたり、UNIXソケットと対話したり、Webダッシュボードの内蔵ターミナル経由でセッションを管理したりする必要がある場合は、WSL2内にエージェントを展開してください。ネイティブWindowsビルドではWebダッシュボードのメトリクスや設定画面はサポートされますが、
/chatの内蔵ターミナルタブはPOSIX PTYを必要とするため、WSL2環境でのみ利用可能です。
方法1:PowerShellによるネイティブインストール
ネイティブインストーラーは管理者権限を必要とせず、uv パッケージマネージャー、隔離されたPython 3.11ランタイム、ブラウザ自動化ツール用のNode.js、およびPortableGitを自動的にセットアップします。システム全体にPythonをグローバルインストールする必要はありません。
標準のPowerShellコンソールを開き、次のコマンドを実行します:
iex (irm https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.ps1)
スクリプトは、現在のユーザーの環境変数 PATH に %LOCALAPPDATA%\hermes\bin を追加します。スクリプトの実行が完了したら、コンソールウィンドウを閉じ、新しいターミナルセッションを開いて更新された PATH を反映させてください。高度なスクリプトパラメーターについては、公式Windows Nativeガイドを参照してください。
方法2:GUIクライアント「Hermes Desktop」
Hermes Desktopは、セッションサイドバー、スキルの視覚的グラフ、タブのサポート、および並行エージェント管理を備えたウィンドウインターフェースを提供します。
- Hermes Desktopドキュメントページからインストーラーをダウンロードします。
- ダウンロードしたインストーラーを実行します。初回起動時に、アプリケーションは
%LOCALAPPDATA%\hermes内で依存関係のセットアップスクリプトを自動的にトリガーします。
すでにPowerShell経由でエージェントを設定している場合、デスクトップアプリケーションは既存のAPIキーと保存された対話履歴を即座に読み込みます。
方法3:WSL2環境でのインストール
WSL2は標準的なLinux環境(ext4ファイルシステム、POSIXシグナル、PTYサポート)を提供します。
ステップ1. WSL2の準備
管理者権限で開いたPowerShellコンソール(「管理者として実行」)で、以下を実行します:
wsl --install
システムから指示された場合はコンピューターを再起動し、Linuxのユーザー名とパスワードを設定します。次に、ディストリビューションのバージョンを確認します:
wsl --list --verbose
選択したディストリビューション(デフォルトはUbuntu)の VERSION 列に 2 と表示されていることを確認してください。
ステップ2. Hermes Agentのデプロイ
Ubuntuターミナルを開き、WSL2クイックスタートガイドに従ってインストールコマンドを実行します:
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
source ~/.bashrc
重要:作業用のリポジトリやプロジェクトファイルは、マウントされたWindowsドライブ(
/mnt/c/)上ではなく、Linuxファイルシステム内(例:~/projects/)に保存してください。9Pプロトコルを介したファイル境界をまたぐ呼び出しは、I/Oパフォーマンスの低下やgit操作の遅延を引き起こす可能性があります。
環境の検証と初回起動
診断およびコマンドの実行は、各環境に応じたターミナルで行う必要があります。ネイティブインストールおよびHermes Desktopの場合はPowerShellを使用し、WSL2の場合はUbuntuターミナルを使用してください。
ネイティブインストールおよびHermes Desktopの場合は、新しいPowerShellセッションを開いて次を実行します:
Get-Command hermes
hermes --version
hermes doctor
WSL2インストールの場合は、Ubuntuターミナルを開いて診断を実行します:
command -v hermes
hermes --version
hermes doctor
hermes doctor コマンドは、git、Chromiumブラウザエンジン、および補助ライブラリのパス解決を検証します。
チャットセッションを開始する前にモデルプロバイダーを設定してください。まだ構成されていない場合は、まず hermes setup を実行し、モデルプロバイダーを選択します(ネイティブ環境の場合はPowerShell内、WSL2の場合はUbuntuターミナル内)。
設定が完了したら、ターミナルで標準的な対話を開始し、ファイルの書き込みを必要としないタスクでテストします。なお、hermes chatは権限のサンドボックス化を実施しない点に注意してください:
hermes chat
最初のプロンプトとして、ディスクへの書き込みを伴わない指示(アーキテクチャ概念の説明など)を送信してください。期待される結果は、設定されたモデルプロバイダーが正常に初期化され、文字化けやエンコーディングエラーのないテキストがストリーミング出力されることです。
オプションのモデル設定の詳細については、BetterTokenドキュメントを参照してください。
よくあるトラブルシューティング
| 発生する現象 | 原因 | 解決方法 |
|---|---|---|
hermes: The term 'hermes' is not recognized | アクティブなコンソールセッションに、更新された User PATH が再読み込みされていない。 | PowerShellウィンドウを再起動するか、バイナリを直接呼び出します:& "$env:LOCALAPPDATA\hermes\bin\hermes.exe"。 |
Webダッシュボードの /chat タブにエラーバナーが表示される | ネイティブWindowsにはPOSIX PTYシステムメカニズムが存在しない。 | セッションおよびタスク管理はネイティブで動作しますが、/chat のWebターミナルを利用する場合はWSL2内でエージェントを実行してください。 |
WinError 193: %1 is not a valid Win32 application | .cmd ラッパーを経由せずにスクリプトを直接呼び出そうとしている。 | Windows上では、Nodeおよびnpmツールを明示的な拡張子付きで実行してください(例: npx.cmd)。 |
CLIでUnicode文字の代わりに疑問符(?)が表示される | CP 65001をサポートしていない古いコンソールホストを使用している。 | Windows Terminalを使用してください。また、環境変数 HERMES_DISABLE_WINDOWS_UTF8 が 1 に設定されていないことを確認してください。 |
WSL2内で git status の実行遅延が大きい | プロジェクトの作業ディレクトリが /mnt/c/... 配下に配置されている。 | ネイティブのext4パフォーマンスを活用するために、リポジトリをディストリビューションのLinuxホームディレクトリ(~/code/... など)に再配置してください。 |