Hermes Agent は、Nous Research が作っている AI エージェントです。チャットで頼むと、ファイルを作ったり、コマンドやプログラムを実行したりして作業を進めてくれます。ふつうはクラウドの AI につなぎますが、自分の PC で動くローカルLLMにもつなげます。
この記事では、Windows 11 の PC で Hermes Agent を LM Studio の gpt-oss-20b につなぎ、実際に作業を頼みました。うまくいったこと・失敗したこと、使った VRAM、そしてクラウドに勝手につながっていないかと危ないコマンドを止められるかを確かめた結果をまとめます。
試した環境
| OS / GPU | Windows 11 / NVIDIA GeForce RTX 5090(32GB) |
| CPU / メモリ | AMD Ryzen 9 9950X3D / 128GB |
| Hermes Agent | v0.22.5(Windows ネイティブ版、公式の PowerShell インストーラーで更新) |
| LM Studio | 0.4.25(ローカルサーバー、ポート 1234) |
| LLM | openai/gpt-oss-20b(LM Studio で約12.11GB) |
| 確認した日 | 2026年10月30日 |
筆者の PC には以前から Hermes Agent が入っていて、ふだんの設定(プロファイル)があります。今回はそれを変えないように、検証用のプロファイルを別に作って試しました。
Hermes Agent は何をするソフトか
公式ドキュメントでは、使いながらスキル(作業の手順)を作って育てていく「自己改善型」の AI エージェントと説明されています。ターミナル(黒い画面)で動く CLI 版と、デスクトップアプリ版があります。
- 対応 OS:Windows(ネイティブ)と WSL2 の両方が「Tier 1」(壊さないように最優先で保守する環境)とされています。WSL2 は必須ではありません
- つなげる AI:クラウドの各社のほか、LM Studio・Ollama などのローカルLLM(OpenAI 互換の API)
- できること:ファイルの読み書き、ターミナルのコマンド実行、Python の実行、Web 検索(鍵が要るもの)など
準備1:Hermes Agent を入れる
公式の手順では、Windows では PowerShell で次の1行を実行します(CLI 版)。
iex (irm https://hermes-agent.nousresearch.com/install.ps1)
インストーラーの中身を読んで確かめたところ、決まった版の uv(Python の管理ツール)と Git をハッシュ値で確かめてから取ってきて、%LOCALAPPDATA%\hermes に入れ、ユーザーの PATH に hermes を足す作りでした。ブラウザー操作や画面操作の追加部品が要らないときは、-SkipBrowser・-SkipComputerUse を付けて省けます。今回は次の形で実行しました。
iex "& { $(irm https://hermes-agent.nousresearch.com/install.ps1) } -NonInteractive -SkipBrowser -SkipComputerUse"
入ったら、新しく開いた PowerShell で hermes doctor を実行し、問題がないか確かめます。今回は「Security Advisories:なし」など、すべて正常でした。
準備2:LM Studio で gpt-oss-20b を 64k で読み込む
Hermes Agent は、道具を使う作業には少なくとも 64,000 トークンのコンテキスト(一度に覚えておける長さ)が要る、と公式ドキュメントに書かれています。実際、今回の作業では1回の問い合わせだけで約11,400トークンを使っていました(Hermes の指示文と道具の説明が長いため)。
LM Studio のローカルサーバーを起動し、コマンドプロンプトで長さを指定して読み込みます。
lms server start --port 1234
lms load openai/gpt-oss-20b --context-length 65536
準備3:Hermes を LM Studio につなぐ
公式の手順では、hermes model(初めてなら hermes setup)を実行して「LM Studio」を選び、http://localhost:1234/v1 のまま進めて、見つかったモデルを選びます。LM Studio でサーバーの認証を有効にしている場合は、鍵(LM_API_KEY)を聞かれます。
今回は、ふだんの設定を変えないよう、検証用のプロファイルを作ってコマンドで設定しました。
hermes profile create kobotest --no-alias
hermes -p kobotest config set model.default openai/gpt-oss-20b
hermes -p kobotest config set model.context_length 65536
hermes -p kobotest config set model.lmstudio_load_mode explicit
設定ファイル(プロファイルの config.yaml)のモデルの部分は、最終的に次のようになりました。API キーは書いていません(ローカルなので不要)。
model:
default: openai/gpt-oss-20b
provider: lmstudio
base_url: http://127.0.0.1:1234/v1
lmstudio_load_mode: explicit
context_length: 65536
ほかに大事な設定は、承認のやり方(approvals.mode)です。何も変えていない状態では smart(補助の AI が危なさを判断し、迷うものだけ人に聞く)でした。
実際に頼んだ作業と結果
作業用のフォルダー(L:\HermesTest\work)を作り、その中だけで作業させました。
| 頼んだこと | 実行回数 | 使った道具 | 結果 | 時間 |
|---|---|---|---|---|
| hello.md を作って中身を読み返す | 1回 | write_file・read_file | 成功(指定どおりの2行) | 45.9秒(モデルの読み込みを含む初回) |
| sales.csv を Python で集計し summary.md に表で書く | 1回 | execute_code(Python) | 成功(商品ごとの合計と総計が正しい) | 7.0秒(16k の自動読み込み) |
| 同じ集計(64k で読み込み、円と指定) | 3回 | execute_code(Python) | 3回中2回成功、1回は LM Studio 側のエラー | 12.1秒・13.3秒(成功分) |
| フォルダーのファイル数を数える | 2回 | terminal など | 2回とも成功 | 7.7秒・7.1秒 |
時間は、コマンドを実行してから Hermes が終わるまでを測りました。2回目以降は1つの作業が約7〜13秒でした。集計の1回目は、通貨の指定をしなかったため、円の数字に「$」を付けて表にしていました(数字自体は正しい)。「円」と書くと「¥」で出ました。
失敗した1回は、LM Studio から「The model produced output that does not match the expected peg-native format」(モデルの出力が想定の形式に合わない)というエラーが返り、Hermes が3回やり直してもだめでした。同じ頼みをもう一度送ると成功しました。gpt-oss-20b の出力の形式の問題と考えられますが、原因は確かめていません。
実際の集計結果(3回目)です。
| Product | Total Qty | Total Sales (¥) |
|---------|-----------|-----------------|
| eraser | 7 | 560 |
| notebook | 6 | 2700 |
| pen | 14 | 1680 |
Grand total: ¥4940
クラウドに勝手につながっていないか確かめた
Hermes Agent は、題名を付けたり、危なさを判断したりする「補助の処理」にも AI を使います。この補助の AI が、設定によってはクラウドを使うことがあります(公式ドキュメントの auxiliary の設定)。そこで、次の2つで確かめました。
- Hermes のログ:補助の処理は「Auxiliary auto-detect: using main provider lmstudio」と出ていて、メインと同じ LM Studio を使っていました。すべての問い合わせが
provider=lmstudio base_url=http://127.0.0.1:1234/v1でした - 通信先の記録:作業中、Hermes とその子プロセスの通信先を0.7秒ごとに記録しました。通信先を記録したのは、全10回のうち8回です(記録していないのは、
chat -qで試した1回と、LM Studio のエラーで失敗した集計の1回)。この8回のうち、2回目以降の7回の作業では、外のアドレスへの通信は0件でした
ただし、検証用プロファイルで最初に動かしたときだけ、外の 443 番(HTTPS)への通信が2件ありました。アドレスは github.com と、Nous Research のサイトと同じアドレス帯でした。更新の確認などと考えられますが、中身は確かめていません。AI への問い合わせ(作業の中身)は、ログ上すべて LM Studio あてでした。
なお、筆者の環境変数にはクラウドの AI の鍵が入っていない状態で試しています。クラウドの鍵を環境変数や .env に入れている人は、補助の AI の行き先(auxiliary の各 provider)を確かめてください。
危ないコマンドは止められるか
エージェントに PC を操作させるとき、いちばん気になるのは「消してはいけないものを消さないか」です。作業用フォルダーの中に捨ててよいフォルダーを作り、rm -rf(フォルダーを中身ごと消すコマンド)で消すよう頼みました。
| 実行のしかた | 承認の設定 | 結果 |
|---|---|---|
hermes -z "…"(ワンショット) | smart(標準) | そのまま実行された |
hermes -z "…"(ワンショット) | manual(全部人に聞く) | そのまま実行された |
hermes chat -q "…"(1問だけのチャット) | smart(標準) | 止められた(BLOCKED) |
chat -q では、画面に次のように出て、フォルダーは消えませんでした。
✗ $ rm -rf trash2 0.8s [BLOCKED: Command flagged as dangerous (recursive delete) ...]
一方、-z(--oneshot)では承認なしで消えました。Hermes のソースコード(hermes_cli/oneshot.py)を確かめると、ワンショット実行は承認を自動で飛ばす(HERMES_YOLO_MODE=1)作りになっていて、説明にも「Approvals are auto-bypassed」と書かれていました。確認する人がいないので、聞かずに進める設計です。
chat -q の止まり方は、実行のしかたで変わります。今回は PowerShell のスクリプトから hermes -p kobotest chat -q "…" を起動し、出力をファイルに書き出しました(端末から直接ではなく、--oneshot も付けていません)。公式ドキュメントによると、端末で -q だけを付けると、最初の質問が入った普通の対話セッションになり、危ないコマンドはその場で承認を聞かれます。--oneshot や -Q を付けたとき、または端末でない実行(今回のようなスクリプトやパイプ経由)では、答えたら終わる1回だけの実行になり、approvals.single_query_mode の標準値 deny によって危ないコマンドは自動で止められます。
なお、hermes -z(hermes --oneshot)と hermes chat --oneshot -q は別の入口で、止まり方も別です。-z は上のとおり承認を自動で飛ばし、chat --oneshot -q は single_query_mode の設定に従います(公式ドキュメントより)。
VRAM と費用
| LM Studio の読み込み方 | 増えた VRAM(作業前との差) |
|---|---|
| 自動読み込み(JIT、長さ 16,384) | 約11.7GiB(2,336 → 14,363MiB) |
lms load(長さ 65,536) | 約12.8GiB(2,356 → 15,493MiB、作業中の最大は 15,676MiB) |
VRAM は nvidia-smi の値(MiB)を 1,024 で割って GiB にしています。RTX 5090(32GB)では余裕がありましたが、VRAM 16GB 以下の GPU では、gpt-oss-20b を 64k で載せると厳しい可能性があります(試していません)。その場合は、もっと小さいモデルを選ぶか、コンテキストを優先して一部を CPU 側に置く設定にすることになります。小さいモデルは道具の使い方が不安定になりやすいので、まずは短い作業から試してください。
費用は、ローカルLLM なので API の料金はかかりません(電気代のみ)。Hermes Agent 自体も無料で使えます。
Ollama で使う場合
Ollama の公式ドキュメントでは、ollama launch hermes を実行すると、Hermes の設定(http://127.0.0.1:11434/v1)まで自動で行えると説明されています。手動なら、hermes model で「Custom endpoint」を選び、上のアドレスを入れて API キーは空のまま。Ollama は標準のコンテキストが短いので、Hermes の公式ドキュメントは OLLAMA_CONTEXT_LENGTH=64000 を付けて起動するよう勧めています。今回は Ollama では試していません。
Claude Code を同じようにローカルLLMで動かす方法は、Claude Code をローカルLLMで動かす方法にまとめています。
よくある質問(FAQ)
Q. Hermes Agent は Windows で使えますか?
はい。公式では Windows ネイティブと WSL2 の両方が Tier 1(最優先で保守)です。今回は Windows 11 ネイティブで v0.22.5 を動かしました。
Q. Hermes Agent をローカルLLMだけで動かせますか?
LM Studio の gpt-oss-20b で、ファイル作成や Python での集計ができました。補助の処理も含めて、AI への問い合わせはすべて LM Studio あてでした(ログと通信の記録で確認)。
Q. どれくらいの VRAM が必要ですか?
今回、gpt-oss-20b を 64k のコンテキストで読み込むと VRAM が約12.8GiB 増えました。Hermes は 64,000 トークン以上のコンテキストを求めるので、モデル本体より多めに見ておく必要があります。
Q. Hermes Agent は勝手にファイルを消しませんか?
対話や chat -q では、rm -rf のような危ないコマンドは止まりました(今回の chat -q はスクリプトから実行。端末でない chat -q や --oneshot 付きでは自動で止まり、端末で -q だけなら対話になってその場で確認が出ます)。ただしワンショット実行(-z)は承認を飛ばす作りで、rm -rf がそのまま実行されました。大事な場所では -z を使わないでください。
Q. API キーは必要ですか?
ローカルLLM だけで使うなら不要です。LM Studio のサーバー認証を有効にしている場合だけ、その鍵を聞かれます。
まとめ
Hermes Agent は、LM Studio の gpt-oss-20b につなぐだけで、クラウドを使わずに簡単な作業をこなせました。コンテキストを 64k で読み込むこと、そして -z は承認を飛ばすことの2点だけは、最初に知っておくと安心です。
検証メモ
LM Studio は検証時点で 0.4.25、2026年10月30日の最新は 0.4.27。最新版での動作は未確認です。
今回試したのは、公式の PowerShell インストーラーで入れるコマンド(CLI)版です。公式には Windows 用のデスクトップアプリ Hermes Desktop(MSIX の .appinstaller で入れるか、CLI 版からコマンド hermes desktop で起動)もありますが、今回は試していません(未検証)。
筆者が使っていたプラグインの1つ(omh)は、今回の v0.22.5 への更新で読み込み対象外になりました。
未確認のこと:Ollama での接続、HERMES_WRITE_SAFE_ROOT・Docker バックエンド・hardline の動き、VRAM 16GB 以下の GPU での動作。この記事に画面のスクリーンショットはなく、コマンドの実際の出力をそのまま載せています。

