Hermes AgentをローカルLLMで動かす方法|LM Studio×gpt-oss-20bで実際に試した【Windows】

Hermes AgentをローカルLLMで動かす ローカルLLM

この記事について(広告・アフィリエイトリンクはありません)

紹介しているソフトはすべて無料で入手できるものです。

Hermes Agent は、Nous Research が作っている AI エージェントです。チャットで頼むと、ファイルを作ったり、コマンドやプログラムを実行したりして作業を進めてくれます。ふつうはクラウドの AI につなぎますが、自分の PC で動くローカルLLMにもつなげます。

この記事では、Windows 11 の PC で Hermes Agent を LM Studio の gpt-oss-20b につなぎ、実際に作業を頼みました。うまくいったこと・失敗したこと、使った VRAM、そしてクラウドに勝手につながっていないかと危ないコマンドを止められるかを確かめた結果をまとめます。

先に結論(今回の環境で)

Hermes Agent v0.22.5 は Windows でそのまま動き、LM Studio の gpt-oss-20b で「ファイルを作る」「CSV を Python で集計する」「フォルダーの中身を数える」ができました。

AI への問い合わせは、補助の処理も含めてすべて自分の PC の LM Studio(127.0.0.1:1234)あてでした(ログと通信の記録で確認)。

ワンショット実行(hermes -z)は、承認の確認を飛ばす作りで、rm -rf(フォルダーを丸ごと消すコマンド)がそのまま実行されました。hermes chat -q では同じコマンドが止められました(スクリプトから起動して出力をファイルに書き出す、端末でない実行。この形では標準の設定で危ないコマンドが自動で止まります)。

gpt-oss-20b を 64,000 トークンの長さで読み込むと、VRAM は約12.8GiB 増えました。

試した環境

OS / GPUWindows 11 / NVIDIA GeForce RTX 5090(32GB)
CPU / メモリAMD Ryzen 9 9950X3D / 128GB
Hermes Agentv0.22.5(Windows ネイティブ版、公式の PowerShell インストーラーで更新)
LM Studio0.4.25(ローカルサーバー、ポート 1234)
LLMopenai/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"

注意

インターネットから取ってきたスクリプトをそのまま実行するコマンドです。公式のアドレス(hermes-agent.nousresearch.com)であることを必ず確かめてください。心配なら、先にファイルとして保存して中身を読んでから実行できます。

入ったら、新しく開いた 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

はまったところ:自動読み込みだと 16k になった

最初は LM Studio の「必要になったら自動で読み込む(JIT)」に任せていました。すると、Hermes の設定で 65,536 と書いていても、LM Studio は 16,384 の長さで読み込んでいました(lms ps で確認)。今回の短い作業は収まりましたが、長い作業では足りなくなります。上のように lms load で長さを指定し、Hermes 側は model.lmstudio_load_mode を explicit(読み込み済みのものを使う)にしておくのが確実です。

準備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 の設定に従います(公式ドキュメントより)。

安全に使うために

大事なファイルがある場所で -z を使わない。使うなら、消えてもよい作業用フォルダーの中だけにする

1回だけ頼むなら hermes chat -q を使う(スクリプトなど端末でない実行や --oneshot 付きなら、標準の設定で危ないコマンドは止まる。端末で -q だけなら対話になり、その場で確認が出る)。対話で使うときは、危ないコマンドの前に確認が出る

-z でも特定のコマンドを止めたいなら、approvals.deny に禁止するコマンドのパターンを書く方法があります。--yolo や approvals.mode: off より先に効く、自分で決める禁止リストです(公式の説明では。筆者は試していません=未検証)

書き込める場所を絞る:環境変数 HERMES_WRITE_SAFE_ROOT で、ファイルを書いてよいフォルダーを指定できる(公式ドキュメント。今回は試していません)

もっと安全にしたいなら、Docker などの隔離した環境で動かす(公式は container か SSH のバックエンドを勧めています。今回は試していません)

rm -rf / のような致命的なコマンドは、どの設定でも止める「hardline」のリストがある、と公式は説明しています(今回は試していません)

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点だけは、最初に知っておくと安心です。

この記事の検証環境

Windows 11 / RTX 5090 / Hermes Agent v0.22.5(検証用プロファイル)/ LM Studio 0.4.25・openai/gpt-oss-20b / 2026年10月30日。-z で9回・chat -q で1回、計10回実行し、時間・VRAM(nvidia-smi)・通信先(0.7秒ごと)を記録。API キーは使っていない。
これまでの検証の一覧はこちら

検証メモ

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 での動作。この記事に画面のスクリーンショットはなく、コマンドの実際の出力をそのまま載せています。

参考にした公式情報

この記事を書いた人
こまたろ

画像生成 AI に興味を持ったのがきっかけで、3年ほど前から ComfyUI を触っています。始めたころは今ほど情報がそろっておらず、何時間もかけて整えた環境が翌日のアップデートで動かなくなったこともありました。

KOBO Lab は、自分の学び直しと、これから ComfyUI を始める人が同じところでつまずかないようにと思って始めたサイトです。初心者も中級者も、迷ったときに開くサイトを目指しています。

検証は、RTX 5090 を積んだ自作 PC 1台で、実際に動かして確かめています。作業を楽にするための自作ツールも作っています。

記事は、運営者自身の経験と検証をもとに、Claudeで下書きを作り、GrokボットとMuseでも添削や確認をして仕上げています。

KOBO Lab の新しい記事を受け取る
ローカルLLM
KOBO Lab の新しい記事を受け取る
タイトルとURLをコピーしました