コンテンツにスキップ

変更履歴

Hermes の利用者影響をバージョンごとに一覧化したページ。設定画面に直接現れない破壊的変更や、Desktop アプリの外(CLI・ブラウザのダッシュボード)で提供される機能も、読者が把握できるようにここへまとめる。

v0.20.0 → v0.21.0(The Pantheon Release)

Section titled “v0.20.0 → v0.21.0(The Pantheon Release)”

出典:

  • Bot Mode(ボット)がデスクトップに同梱・既定オン: プロファイルごとに名前と決定論的なアバター(ランダム / ロック)を持つボットが共有の名簿(ロースター)に並び、複数のボットと自分が 1 つの部屋で話す Discord 風のグループチャット、コンポーザーからの @ メンション、部屋の名前と画像の編集、ボット専用のルーティン(定期実行)ペインが加わった。デスクトップ側の実体はバンドル済みデスクトッププラグイン Bots(Plugins 画面で無効化できる)で、独立したルートではなくサイドバー上端の「SESSIONS | BOTS | TERMINAL」タブとして現れる(#87886・#88243・#89386・#96726)→ ボットPlugins
  • hermes peer(ボット間 DM): 任意の Hermes エージェントがハンドル名で別のエージェントへメッセージを送れる。プロファイルやゲートウェイをまたいで動き、返信は各ボットの正典ボットチャットに残るため、エージェント同士の会話を後から読み返せる。CLI と会話内から使う機能で、デスクトップ専用の入口画面は確認できていない(#88725・#88178・#91487)→ ボット
  • cron ジョブのメモリと継続(continuity): スケジュール実行のエージェントが他のエージェントと同じく永続メモリを読み書きするようになった。continuity を有効にすると各実行の出力が次の実行へ引き継がれ(監視ジョブの重複報告を防ぐ)、ジョブごとに耐久的なメモ帳(notepad)が付き、監視モードのジョブは変化が無ければ LLM を呼ばない。cron の出力はボットの正典ボットチャットへ届けられる。デスクトップでは「継続」のチェックボックスはコアの「スケジュール済みジョブ」画面ではなく、Bot Mode の「ルーティン」ペインにある(リリースノートの示唆と所在が異なる点に注意。#91447・#80774・#81139・#81138)→ ボットスケジュール自動化
  • サブエージェントのライブ操作: delegate_task が実行中の子エージェントの一覧・途中の軌道修正・早期停止(部分結果を保持)に対応した。子の出力に対する JSON スキーマ検証、委譲ごとのコスト表示、既定値の引き上げ(イテレーション 250・同時実行 10)も加わった。デスクトップ側はサブエージェント表示の改善(タイムアウト・キャンセル状態の正規化)にとどまり、操作ボタンは確認できていない(#85232・#81144・#81142・#86506・#86745)→ 詳細
  • MCP コマンドセンター: 「スキルとツール」の MCP タブに、mcp.json スニペット・npx / docker コマンド・claude mcp add 行・URL・Cursor リンクを貼り付けるだけの「何でも貼り付け」インポート、ツール呼び出しが失敗する前に再認証を促すバックグラウンド健全性チェック、サーバーごとのスキーマトークン推定と過去 30 日の使用回数を示すコスト / 使用量オーバーレイ、明示確認付きで MCP サーバーを追加する hermes:// ディープリンクが加わった(#87525・#87572・#87576・#87579・#87581)→ MCP
  • CLI のパワーウェーブ: Ctrl+P(/palette)のあいまい検索コマンドパレット、入力に応じて絞り込まれる /model ピッカー、推論モード・保留中の承認・コンテキスト使用量を示す /status、キャッシュヒット率・レイテンシ・トークン / 秒をフィールド単位で切り替えられるステータスバー、グローバル緊急停止、セッションのピン留め、CLI / TUI のターミナルペットが加わった。ターミナルペットはデスクトップでは以前から存在する機能で、今回の新規はターミナル側(#90730・#90717・#90745・#98250・#98282・#97666)→ スラッシュコマンド一覧
  • エージェントがアプリ内ブラウザを操作: 右レールの「プレビュー」ペインが見るだけの窓から操作対象になり、エージェントがページの移動・クリック・読み取りを直接行う(ツール名 drive_preview)。プレビューにはアドレスバー(戻る / 進む / 再読み込み / アドレス入力)が付き、ページをシステムブラウザへポップアウトでき、リンクの右クリックメニュー(ブラウザで開く・URL をコピー)も加わった(#90197・#89366)→ Browser
  • 新プロバイダー 6 件とモデルカタログの拡充: Meta Model API(Muse Spark)が組み込みプロバイダーとして加わり、CommandCode・Tencent TokenPlan・Nebius Token Factory・Ramp Router・Actual Computer も追加された。カタログには GLM-5.3-Flash・qwen3.8-max / flash・Gemini 3.7 Flash・MiniMax M3 free・Nemotron 3.5 Lightning が入り、model_overrides でモデルのコンテキスト窓や価格を自分で上書きできる(#88565・#88308・#97917・#97916・#97915・#85560)→ プロバイダーモデル
  • ローカルモデル(llama.cpp ランタイム): hermes desktop --local で起動したときだけ、プロバイダー設定に「ローカルモデル」サブビューが現れる。llama.cpp のインストールと更新、マシンの GPU / RAM 判定、おすすめモデルのダウンロードと読み込み、Hugging Face 検索、GGUF の手動追加をアプリ内で行える。通常起動では表示されない(local_runtime.* の既定はオフ)→ プロバイダー
  • セキュリティ強化: 保護された命令ファイル(AGENTS.md・スキル・メモリ)への書き込みが常に承認必須になった。ターミナルエラー・.env の読み取り・チェックポイント・ACP ログにまたがる秘密情報リダクションの穴を塞ぎ、承認システムが Windows の破壊的コマンドを学習し、macOS の権限付与が更新をまたいで維持される TCC 署名 ID が導入された(#81152・#80965・#84428・#95091)→ 安全に設定するための確認事項
  • プロダクティビティスキルの追加: document-to-action-items・meeting-action-items・email-inbox-triage・github-issue-to-pr・weekly-review-planning・competitor-news-monitor・product-price-monitor・social-media-content-calendar のほか、HAR から API クライアントを生成するスキル、publish-sitesession-librarianblocked-page-recoverymerge-reconcilerplan-interrogation が加わった。SKILL.md 作成時の助言リンターも入った(#81185 ほか)→ スキルとツール
  • 観測(Observability)サブシステム: モデル / プロバイダーの使用量レポートとツールメトリクスの集計が加わり、パイプラインが詰まってもエージェントを止めない有界のライフサイクルになった(#68881・#68882・#83514)
  • 設定サイドバーが 17 画面 → 18 画面: 設定セクション「Browser」が「安全性」の次に新設された。日本語リソースが未整備のため、日本語 UI でもサイドバーは英語 Browser のまま。ほかの画面の追加・削除・改名はない → 全設定項目索引
  • Browser 画面: 「Use My Real Browser Profile」(browser.use_real_profile、既定オフ、ラベル・説明とも英語表示)を新設し、既定ブラウザのプロファイルを Hermes 管理のスナップショットへ複製して同梱 Chromium で使う。あわせて「ブラウザーのプライベート URL」「プライベート URL にはローカルブラウザーを使用」の 2 行がこの画面に置かれた。安全性画面の「プライベート URL を許可」(security.allow_private_urls)は別項目として残っている。同じ実プロファイルのトグルは「スキルとツール」→ ツールセット → Browser の先頭にも日本語ラベル(「実際のブラウザプロファイルを使用」)で出る → Browser安全性
  • 設定内検索: 設定カード上端の「検索 ⌘K」ピルから ⌘K パレットの設定スコープが開く。設定画面で入力欄の外に文字を打っても検索が始まる。索引対象は設定項目・API キーと認証情報・外観設定・プラグイン → 全設定項目索引
  • 「適用対象」プロファイルスコープ: プロファイルが 2 つ以上あるときだけ、設定ファイル由来の画面(モデル・チャット・ワークスペース・安全性・Browser・メモリとコンテキスト・音声・詳細・ツールとキー)の上部に「適用対象」チップ列が出る。アプリ全体のプロファイルを切り替えずに、別プロファイルの config.yaml を編集できる。Plugins 画面の Agent plugins にも同趣旨の「Applies to:」セレクタがある → プロファイル管理
  • モデル画面: 補助モデルのタスクから「ウェブ抽出」が消え、「レビュー(/review レビューサブエージェント)」が加わった(8 タスクのまま)。アップデート後にバックエンドが古いコードのまま動いているときは「バックエンドを再起動」ボタンが出る。メインモデルの変更が cron ジョブに影響する場合は「スケジュール済みジョブの確認が必要です」の警告が出る → モデル
  • 外観画面に 8 項目を追加: セッションリストの密度(コンパクト / 標準 / 詳細)、タブバー(自動 / 常に表示 / 表示しない)、イントロ表示、フローティング入力欄、アプリ内ヒント(閉じたヒントを元に戻すボタン付き)、ガイドツアー、バイブハート、思考ブロックをデフォルトで折りたたむ。ウィンドウの透過は「クリア / ガラス」の 2 モードになり、ガラスでは色味・フェード・くもりの質感・適用範囲を調整できる(Linux では非表示)。テーマは 11 種になり VS Code Marketplace の検索欄が付いた → 外観
  • 詳細画面: 「Disable F12 DevTools」(英語表示・端末ローカル設定)が「コンピューターをスリープさせない」の直下に加わった。「有効なツールセット」を空にする編集は確認ダイアログを挟む。自動保存は差分保存になり、画面を開いている間に hermes config set で変えた項目を古い値で上書きしなくなった → 詳細
  • 音声画面: 「Client Direct」(voice.client_direct、既定オン。ラベル未定義のため英語表示)が末尾に加わった。リモートクライアントが STT / TTS プロバイダーを直接呼ぶかゲートウェイ経由で中継するかを決める → 音声
  • ゲートウェイ画面の再編: プロファイル別の「適用対象」スコープ、「デフォルトゲートウェイを使用」カード、SSH の「リモートプロファイル(任意)」欄が無くなり、接続設定はマシン単位になった(プロファイルは接続先ゲートウェイから検出)。旧 Connections ページを統合した「Registered gateways」セクション(英語表示。接続の追加・編集・削除・プライマリ設定・疎通テスト・全インスタンス一括更新)、「OS キーチェーンで保存済みのシークレットを暗号化」トグル(既定オフ)、平文トークン保存の確認ダイアログと警告バナー、SSH 接続を登録したときだけ出る「Managed updates」セクションが加わった。旧 ?tab=connections はゲートウェイ画面へリダイレクトされる → ゲートウェイ
  • プロバイダー画面: アカウント一覧の 2 番目が Fireworks から「ローカルモデル」(--local 起動時のみ)に替わり、Fireworks 行は「その他のプロバイダー」の折りたたみへ移った。切断・削除の確認は OS ダイアログからアプリ内ダイアログになった → プロバイダー
  • キーボードショートカットの既定値: session.new から shift+n が外れ(大文字 N や IME で誤発火するため)、セッション切替に Ctrl+PageDown / PageUp が加わった。新規アクションは「Toggle tabs」(⌘⌥T)・「Open browser」(⌘⇧L)・「Archive session」(既定なし)で、読み取り専用行に「Focus composer」(⌘L)と HUD をポインタへ寄せる ⌘⇧G が加わった。旧 view.terminalSelection は「Send selection to composer」(⌘L)に改名 → キーボードショートカット(設定タブ)キーボードショートカット
  • Plugins 画面: Desktop plugins に同梱の Accent PickerBotsKanban が並ぶ(既定オンは Bots のみ)。Agent plugins には「Applies to:」プロファイルセレクタと ?tab=plugins&plugin=<id> のディープリンクが加わり、同梱エージェントプラグインは一覧から除外される。プラグインのインストールモーダル(英語表示。内容物・インストール先・ソースコードの確認と Tier-1 セキュリティスキャン付き)が新設された → Plugins
  • 情報画面: ランタイムだけ更新されてデスクトップのビルドが古い場合に「アプリのビルドが古くなっています」バナー(「インストーラーを入手」)が出る。更新済みのアプリがすでに入れ替わっていて再起動だけが残っている場合は、代わりに「再起動して更新を完了」バナー(「Hermes を再起動」ボタン)が出る(コミット c5c9aa8d までの追加分)。浅い clone で更新件数を数えられない場合も「新しい更新の準備ができました。」で更新を案内する → 情報
  • アーカイブ済みチャット: 完全削除の確認がアプリ内ダイアログ(「完全に削除」)になり、削除時に未読状態も破棄する → アーカイブ済みチャット
  • メイン画面のサイドバー: 上部ナビにアイコン付きの日本語ラベル(新しいセッション / スキルとツール / メッセージング / アーティファクト / スケジュール済みジョブ)が縦に並び、「スケジュール済みジョブ」が新たに加わった。スケジュール済みジョブ画面の左ペインにはブレーンプリント(アプリの表記。一覧は英語 16 件)が並ぶ。接続スイッチャー、セッション行のピン留め・未読・ジェスチャ、コンポーザーのサジェスチョンピル、音声メニューと応答の自動読み上げが加わった
  • 「スキルとツール」のタブが 4 → 3: 「ハブ」タブが無くなり、Skills Hub のブラウザはスキルタブの下部に埋め込まれた(「Hide the hub browser」で畳める)→ スキルとツール
  • 更新の引き渡し: すべての OS で「終了 → 更新 → 再起動」を 1 つのシムウィンドウで行う。Windows で「Updating Hermes」のまま止まる問題が解消した(#83634・#90937・#95897)
  • 診断の送信: エラーカードから、秘密情報を除去したデバッグバンドルをサポート向けに送れる(#92020)→ 問題の切り分け
  • 細かな改善: ⌘⇧G で HUD をカーソル位置へ移動、コンポーザーにフォーカスしなくても貼り付け、ターンごとの所要時間バッジ、macOS の読みやすい透過、Linux のランチャー登録とキーチェーン自動検出、WebSocket 再接続時に取りこぼしのないイベント再生、デスクトップコードの分割再編(#83130・#84955・#87245・#88744・#76456・#84903・#94219・#89611)

破壊的変更・設定キーの変更(移行注記)

Section titled “破壊的変更・設定キーの変更(移行注記)”
  • agent.max_turns の既定が 500null(無制限): 1 ターンあたりのツール呼び出し上限が既定では効かなくなった(resolve_turn_limitNone を無制限として扱う)。設定画面(詳細)の「最大エージェントステップ」は空欄が上限なしを意味し、明示した数値はそのまま使われる。上限を保ちたい場合は数値を入れる → 詳細
  • agent.verify_on_stop の既定が autofalse: 停止時の検証は既定で行わない。必要なら明示的に有効にする
  • delegation.max_iterations の既定が 50250delegation.max_concurrent_children310: サブエージェントのターン上限と並列数が引き上げられた。設定画面(詳細)の「サブエージェントターン上限」「並列サブエージェント」に反映される → 詳細
  • agent.restart_after_turn_timeout の既定が 216001800 秒、agent.gateway_turn_lease_timeout18005: 膠着したターンの救済がより早く働く。長時間の単一ターンを意図的に走らせている場合は値を見直す
  • gateway.scale_to_zero.idle_timeout_minutes の既定が 52: アイドル時のゲートウェイ縮退が早まった
  • compression.codex_responses_compact_threshold の既定が 200000null: Codex Responses 経路の圧縮しきい値は自動判定に変わった
  • tools.tool_search.max_search_limit の既定が 2025: ツール検索の返却上限
  • 補助タスク auxiliary.web_extract.* の廃止: provider / model / base_url / api_key / reasoning_effort / timeout の 6 キーが既定値から消え、モデル画面の補助モデルからも「ウェブ抽出」が外れた。代わりに auxiliary.review.*/review のレビューサブエージェント)と auxiliary.background_review.* が加わった → モデル
  • stt.provider の既定値定義の削除: 既定値 localDEFAULT_CONFIG から消え、未設定時は自動検出(ローカル優先)になった。音声画面の「音声認識プロバイダー」自体は残っており、実機では Local と表示される。voice.submit_modedirect)は config.yaml 専用の新キー → 音声
  • 保護された命令ファイルの書き込み承認: AGENTS.md・スキル・メモリストアへの書き込みは自動承認下でも承認必須になった(#81152)→ 安全に設定するための確認事項
  • ゲートウェイ接続のマシン単位化: プロファイル別の接続オーバーライド(connection.jsonprofiles.<profile>.*)を編集する UI が無くなった。プロファイルは接続先ゲートウェイ側から検出される → ゲートウェイ
  • スラッシュコマンドの改名: /background/bg に改名され、旧別名の /btw は「会話を中断せずに脇の質問をする」別コマンドとして独立した → スラッシュコマンド一覧
  • 撤回された機能(本リリースに含まれない): Model Council モード(/council)、DCP コンテキストエンジン、WS 専用ゲートウェイサーバー(#94245。#96118 で差し戻し。seq 付きイベント再生 #94219 は出荷)。Electron は 40.10.2 に戻された
  • 供給網対応: 上流の侵害を受けて Blender の MCP カタログエントリと同梱スキルが削除された(#83404)。プラグインのインストールには Tier-1 セキュリティスキャンが入る(#80728)→ MCP

設定 API・config.yaml の差分(GUI 非表示)

Section titled “設定 API・config.yaml の差分(GUI 非表示)”

既定値が変わったキー(全 9 件):

キーv0.20v0.21備考
_config_version3439中間タグを含む 5 回のマイグレーション
agent.max_turns500null移行注記を参照
agent.verify_on_stop"auto"false移行注記を参照
agent.restart_after_turn_timeout216001800移行注記を参照
agent.gateway_turn_lease_timeout18005移行注記を参照
compression.codex_responses_compact_threshold200000null移行注記を参照
delegation.max_iterations50250移行注記を参照
delegation.max_concurrent_children310移行注記を参照
gateway.scale_to_zero.idle_timeout_minutes52移行注記を参照
tools.tool_search.max_search_limit2025移行注記を参照

削除されたキー(全 7 件):

  • auxiliary.web_extract.provider(旧既定 auto)/ auxiliary.web_extract.model(空欄)/ auxiliary.web_extract.base_url(空欄)/ auxiliary.web_extract.api_key(空欄)/ auxiliary.web_extract.reasoning_effort(空欄)/ auxiliary.web_extract.timeout360)─ 補助タスク「ウェブ抽出」の廃止
  • stt.provider(旧既定 local)─ 移行注記を参照

新設されたトップレベルセクション(既定値のみで GUI に入力欄はなく、config.yaml の直接編集で使う):

  • bot_mode.*: envelope_ttl_seconds900。ボット間メッセージの封筒の有効期限)/ turn_wait_seconds120。相手ボットのターン完了を待つ秒数)。agent.bot_mode_protocol(オン)も同時に加わった → ボット
  • local_runtime.*(既定オフ): ローカルモデルの llama.cpp ランタイム。backendauto)/ port0 = 自動)/ models_max4)/ tagb10679。llama.cpp のビルドタグ)/ detect_ports(空配列)→ プロバイダー
  • loops.*: /loop の反復実行の制約。max_ticks100)/ min_interval_seconds30)/ self_paced_floor_seconds60)/ self_paced_ceiling_seconds900)→ スラッシュコマンド一覧
  • kanban.*: done_sub_retention_days30)/ max_in_progressnull = 無制限)/ review_dispatch(オン。レビュー工程の自動ディスパッチ)
  • models_dev.url(空欄): models.dev レジストリの取得先上書き
  • runtime.nofile_soft_limit4096): 開けるファイル数のソフト上限

既存セクションへ追加された主なキー(GUI に項目を持たない。かっこ内は既定値):

  • エージェント: agent.execution_guidanceauto)/ agent.reasoning_echo(オフ)/ agent.stall_guards(オン)/ agent.turn_liveness.poll_stimeout_s15.0 / 600.0。ターンの生存監視)/ agent.empty_response_guard.enabledcost_threshold_usd(オン / 0.25。空応答の再試行ガード)/ agent.run_budget_secondsnull)/ agent.cron_drain_timeout30)/ agent.gateway_startup_warmup_timeout20)/ agent.reconnect_attention_after7200)/ agent.sanitizer_heal_escalation_threshold3
  • 承認: approvals.single_query_modeapprovals.unattended_mode(各 deny。単発クエリと無人実行での承認の扱い)/ security.approval.transportbuiltin)・security.approval.transport_fallbackdeny)/ security.allow_data_training_tiers_noninteractive(オフ。データ学習ティアのモデルを非対話で許可しない)→ 安全性
  • 補助タスク: auxiliary.review.*providerauto、他は空欄)/ auxiliary.background_review.enabledmax_input_tokens(オン / 600000)/ auxiliary.compression.max_output_tokens0)/ auxiliary.title_generation.prefer_fast_model(オフ)→ モデル
  • ブラウザ: browser.use_real_profile(オフ。Browser 画面に項目あり)/ browser.real_profile_pin(空欄)/ browser.real_profile_autoclose(オフ)/ browser.backend(空欄)/ browser.snapshot_threshold15000)/ browser.extension_control.enableddeveloper_mode(各オフ)→ Browser
  • 圧縮: compression.tail_modelean。軽量な tail モード)/ compression.checkpoint_required(オフ)/ compression.hygiene_max_turn_hold_seconds10)→ メモリとコンテキスト
  • コード実行: code_execution.kernel_idle_timeout1800)/ code_execution.max_session_kernels4)→ ワークスペース
  • Computer Use: computer_use.permission_modestandard)/ computer_use.allow_unsigned_driver(オフ)/ computer_use.capability_manifest(空欄)
  • cron: cron.allow_agent_scheduling(オフ。エージェント自身によるジョブ登録)/ cron.script_timeout_seconds3600)/ cron.media_send_timeout_seconds300
  • 委譲: delegation.surface_child_process_notifications(オフ)
  • ダッシュボード: dashboard.trusted_proxies(空配列)/ dashboard.ws_ping_intervalws_ping_timeout(各 20.0)/ dashboard.startup_orphan_sweep(オン)/ dashboard.ws_orphan_activity_stale_s600.0)/ dashboard.ws_orphan_reap_grace_s20.0
  • デスクトップ: desktop.password_storeauto。Linux のキーチェーン自動検出)/ desktop.ozone_platform_hintauto
  • 表示: display.background_process_notificationsconcise)/ display.cli_multiline_shortcuts(オン)/ display.cli_rebuild_scrollback_on_redraw(オフ)/ display.status_bar.fields(空配列。ステータスバーのフィールド選択)/ display.platforms.wecom.streaming(オン)
  • ゲートウェイ: gateway.startup_watchdog(オン)・gateway.startup_watchdog_timeout_seconds300)/ gateway.loop_watchdog_max_strikes3)・loop_watchdog_probe_interval_s30.0)・loop_watchdog_probe_timeout_s10.0)/ gateway.multiplex_profile_allowlistnull。多重化で配信するプロファイルの選別)/ gateway.signal_interrupt_grace_timeout1
  • メモリ: memory.nudge_interval10)/ curator.archive_ttl_days0
  • プラグイン: plugins.hook_callback_timeout30
  • セッション: session.terminal_continue(オン)
  • スキル: skills.ledger(オン)/ skills.project_discovery(オン)/ skills.tier1_advisory(オン。SKILL.md の助言リンター)/ skills.trusted_project_dirs(空配列)/ skills.create_dir(空欄)
  • テレメトリ: telemetry.shared_metrics.send(オフ)/ telemetry.shared_metrics.endpoint(Nous のテレメトリ URL。send がオフの間は送信しない)
  • ターミナル: terminal.temp_dir(空欄)/ terminal.docker_shared_container_key(空欄)/ terminal.oneshot_completion_wait_seconds600.0
  • 更新: updates.auto_switch_parked_branch(オン)/ updates.parked_branch_strategyswitch
  • 音声: voice.client_direct(オン。音声画面に項目あり)/ voice.submit_modedirect)→ 音声
  • Web: web.cache_enabled(オン)・web.cache_ttl_minutes20)・web.cache_exempt_hosts(空配列)/ web.keyless_fallbackweb.keyless_rescue(各オン。キー無しの検索・取得へのフォールバック)
  • 保護された命令ファイル(AGENTS.md・スキル・メモリストア)への書き込みを常に承認必須にした(#81152)。
  • リダクションの網羅性向上: 環境変数名の変種・制御文字での分割・process(list)・チェックポイントで漏れていた経路を閉じ、.env の読み取りをファイル読み取り検知で伏せ、ターミナル例外結果と ACP の stderr、SSH ターゲットのログも対象にした(#80965・#80964・#81675・#81686・#88232)。
  • Windows の破壊的コマンドとパスが承認システムに掛かるようになった(#84428)。
  • 供給網対応: Blender の MCP カタログエントリとスキルを上流の侵害を受けて削除し、プラグインのインストールに Tier-1 セキュリティスキャンを導入した(#83404・#80728)。
  • macOS の TCC 権限が更新をまたいで維持される署名 ID を導入した(hermes desktop --setup-tcc-identity。#95091)。
  • PKCE の cookie を HTTPS 上で SameSite=None にし、クリアパスを揃えた(#83536)。

コマンドレジストリ(hermes_cli/commands.py)は 95 件 → 101 件。詳細は スラッシュコマンド一覧 を参照。

  • 追加(7 件): /bg(別セッションでバックグラウンド実行)/ /btw(会話を中断せずに脇の質問)/ /loop(別名 /proactive。このセッションでプロンプトを定期再実行)/ /palette(あいまい検索のコマンドパレット。Ctrl+P と同じ)/ /plan.hermes/plans/ に Markdown の実装計画を書くだけで実行しない)/ /review(直前の作業を独立したサブエージェントにレビューさせる)/ /worktree(隔離した git worktree の表示・一覧・作成・整理)
  • 改名(1 件): /background/bg。旧別名だった /btw は独立コマンドになった
  • 説明の変更(6 件): /browser(Browser Use モードへの切り替えを追加)/ /busy(Enter の挙動から「メッセージの扱い」へ表現変更)/ /help/help skills/help <文字列> の絞り込み)/ /rollback(復元時に手編集を保持、--all で上書き)/ /save(「保存」から「書き出し」へ。引数なしで使い方を表示)/ /verbose(循環から log 段階が外れた)
  • デスクトップ: コンポーザーのローカルなコマンド一覧は縮小され、バックエンドのコマンドカタログを動的に取得する方式へ委ねられた(ソースの一覧定義が 35 件 → 20 件。実機のコンポーザー表示は未確認のため間接確認)
  • Slack: chat.startStream によるネイティブのライブカード(ストリーミング返信)と、オプトインのプラン / タスクカード。ネイティブ・Relay の両経路で送信リンクのプレビュー抑止(#85476・#95142)
  • Telegram: @botname のインラインピッカーで全コマンドとスキルを検索できる(Telegram のコマンドメニュー上限を回避。#98317)
  • Relay: ネイティブの静的 / 動的プラグイン初期化、下書きストリーミングとタスクカードのライブカード操作、セッションスパンの分割、Relay 経路のボイスノート STT の復活、転送の重複排除とフェイルファスト修正(#77915・#85796・#85467・#95274・#89584)
  • WeCom: display.platforms.wecom.streaming(既定オン)でストリーミング表示を選べる
  • ゲートウェイ全般: 制御ソケット(identify / status)でフリート側からゲートウェイ自身へ問い合わせられ、更新時はツリーキルではなく穏やかな一時停止になった。多重化プロファイルの選択配信、プロファイル別 MCP ライフサイクル RPC、最新メッセージを示すロースタープレビュー、簡潔なバックグラウンド通知が既定、ウォッチドッグ発火時のスタックダンプ(#92447・#95695・#83400・#86473・#85905・#85877・#86248・#92317)
  • 配信の取りこぼし: 最終応答の飲み込みと分割配信のバグクラスを解消した(#79669)
  • CLI: hermes approval-check(コマンドを実行せずに承認判定を試す)、hermes peer(ボット間 DM)、hermes desktop --setup-tcc-identity(macOS の TCC 署名 ID)、hermes desktop --local(ローカルモデル画面の有効化)。ステータスバーのセッションタイトル表示、補助モデルピッカーでのサブエージェントモデル指定、Ctrl+C の修正(Kitty キーボードプロトコルの送出停止。#81137・#81947・#80463・#87074)
  • cron: 監視モード(ハッシュ抑止の変化検知)、ジョブごとの耐久メモ帳、ディスパッチ前の設定検証、確認済み失敗の再通知抑止、ジョブごとの推論強度固定、「今すぐ実行」の即時安全実行(#81138・#81139・#81140・#95017・#91244・#70638)
  • かんばん: 衝突ホットスポットのフラグ、決定所有権の契約、メモリを考慮したディスパッチガード、notify / wake の配信モード(#83428・#83424・#88115・#85487)
  • ツール: 中断したコマンドが作業ディレクトリを汚さない、Windows のリネーム競合からの回復、コロンを含むセッション ID でのサンドボックスマウント修正、ビジョン出力の上限撤廃、子エージェントの未コミット作業を削除しない委譲(#85654・#84852・#93488・#75253・#88419)
  • ツール結果の扱い: サンドボックス無しのセッションで大きすぎるツール結果を切り詰めずキャッシュへ退避する。clarify が 1 回の呼び出しで複数の独立した質問をまとめて出せる(#89028・#89467)
  • Verify サブシステム: 実行レシピの検出と環境マニフェストにより「動いた」という主張をビルド / テストコマンドの検出で裏付ける(#80686)
  • インフラ: macOS / Windows の実 OS CI レーン、ブートストラップインストーラのパイプ EOF 待ち解消(#77992・#92009・#90941)

v0.19.0 → v0.20.0(The Herald Release)

Section titled “v0.19.0 → v0.20.0(The Herald Release)”

出典:

  • ストリーミング会話音声と barge-in: 応答を句読点単位で逐次読み上げ、読み上げ中に話しかけると即座に割り込んで停止する。CLI の音声モード・デスクトップ・ゲートウェイアダプタのすべてに対応した(#69511・#73862・#74223・#74000・#69602)→ 音声
  • ウェイクワードとハンズフリー操作: オンデバイス検出のウェイクワードが加わった(音声は機器の外に出ない)。任意のフレーズを指定でき、マルチプロファイルの音声ルーティングにも対応する。「stop」と言えば全サーフェスの発話を終了できる。既定はオフで、/wake で切り替える(#70509・#73106・#73933)
  • 全プラットフォームで音声対応: WhatsApp / Feishu / DingTalk / LINE / QQ / Photon / Weixin でボイスノートの送受信と文字起こしに対応した。OpenAI の gpt-transcribe も使える(#73515・#73508・#73910・#73513・#73067)→ 音声
  • grounded-citations スキル: 引用を実際のページ本文と照合して幻覚を防ぐ。ファクトチェックモードでは任意の文書・主張を検証できる(#71698・#77104)
  • アウトバウンド Webhook: セッション活動・ターン完了・ツールイベントを、HMAC 署名付きで任意の HTTP エンドポイントへプッシュ配信する(#69406)
  • A2A v1.0(Agent-to-Agent): 他の A2A 互換エージェントの発見・通信・被駆動ができるプラグインが加わった(#77109)
  • CLI のパワーユーザー向けコマンド群: !command(シェルの即時実行)・/init(AGENTS.md の生成)・/diff/context/focus・Ctrl+S(プロンプトの一時保存)が追加された。hermes import-agent で Claude Code・Codex CLI の設定を一括移行できる(#72257・#72178・#72240・#72242・#72302・#72262・#72190)→ スラッシュコマンド一覧
  • ターン途中の軌道修正(redirect): /stop せずに作業中へ修正指示を入力すると、それまでの作業内容と元のプロンプトを保持したまま方向転換する(#63104・#72339・#74736)
  • ツールの自己回復: 端末出力が長すぎる場合の切り詰め対応(ファイルへ退避)、patch の適用済み検知と空白差異の診断、write_file のディスク内容検証、検索失敗時の近傍探索が加わった(#77041・#76998・#77024・#77055・#77011・#76992)
  • コンプレッション(コンテキスト圧縮)の全面改修: 大コンテキストモデル向けの事前ツール結果プルーニング、ターンごとの微小圧縮、直近 N 件のユーザーメッセージを必ず残す tail 保証、要約の進捗連動タイムアウト、プルーニング済みスキルのゴースト化防止が加わった(#70254・#75345・#70250・#71508・#70275)→ メモリとコンテキスト
  • スマート承認の強化: hermes approvals suggest が承認履歴から allowlist 案を自動生成する。approvals.smart_policy には承認ポリシーを自然文で書ける。連続拒否のサーキットブレーカーと、docker / podman のデーモンリダイレクトコマンドに対する新しい承認ゲートも加わった(#72259・#72186・#72203・#74446・#71092)→ 安全性
  • 高速化全般: hermes -w のコールドスタートが約 14 秒 → 約 1.8 秒に短縮された。hermes update の no-op が 2〜6 秒短縮され、config 読み込みのディープコピー廃止でテレメトリゲートが 54 倍高速化した(#76032・#71637・#74218・#74204・#71835)
  • 新しいプラットフォーム・接続経路: Block 社の Nostr ベースメッセンジャー Buzz が、ネイティブ WebSocket と NIP-42 認証を備えたバンドルゲートウェイとして追加された。Vercel AI Gateway プロバイダーと Vercel Sandbox ターミナルバックエンドが復活し、デスクトップには SSH リモートバックエンドの接続モードが加わった。Relay は API パリティの 4 フェーズ、HSP は個人・組織のスキル同期に対応した(#73610・#73761・#74518・#68130・#71300〜#71624・#66730)
  • 外観にターミナルフォントとメッセージリアクションを追加: ターミナルフォント(terminal.font_family)はインストール済みフォントから選び、Nerd Font にも対応する。空欄なら内蔵の JetBrains Mono を使う。メッセージリアクション(store/reactions-enabled)は iMessage 風のタップバックの ON / OFF を切り替える → 外観
  • UI スケールの既定が 100% → 90%: プリセット行(90 / 100 / 110 / 125 / 150 / 175%)そのものは変わらず、初期表示値だけが変更された → 外観
  • チャットに添付・プレビューの最大読み込みサイズを追加: “Max preview / image load size”(MB 単位、デバイスローカル保存)が加わった。日本語リソースが未整備のため、日本語 UI でもこの項目だけ英語表示になる → チャット
  • 古いチャットの自動アーカイブ: アーカイブ済みチャットに sessions.auto_archive / sessions.auto_archive_days の設定が加わった。既定はオフ、既定日数は 3 日で、ピン留めしたチャットは対象外 → アーカイブ済みチャット
  • ゲートウェイのリモートプロファイルと表記変更: SSH 接続時に「リモートプロファイル(任意)」欄が追加された。プロファイル固有スコープの「ローカルゲートウェイ」は「デフォルトゲートウェイを使用」へ改名され、選ぶとオーバーライドが削除される意味が分かりやすくなった → ゲートウェイ
  • クイック入力: グローバルショートカットでどこからでもミニ入力欄を呼び出し、プロンプトを送信できる。既定は無効 → 詳細
  • MoA プリセットの個別トグル: 参照モデルとアグリゲーターを、それぞれ個別に有効・無効化できるトグルが加わった → モデル
  • 音声の選択肢の変更: STT(OpenAI)のモデル選択肢に gpt-transcribe が加わった。TTS(OpenAI)の音声候補は選択モデルに応じて絞り込まれ、tts-1 / tts-1-hd を選ぶと 9 音声のみになる(残り 4 音声は gpt-4o-mini-tts 専用)→ 音声
  • 請求画面の大規模リライト: 画面内部に「概要」「プラン比較」の 2 ビューが新設され、現在のプランカードの「プランを見る」からドリルダウンする。プラン比較とダウングレード確認のフロー、クレジットの自動リロード、ティア別アート、旧価格の表示が加わった。クレジット不足バナーはチャットなど設定画面の外にも表示される → 請求
  • ツールセット設定パネル(Capabilities)の操作変更: 行のクリックが「選択」から「展開」に変わり、有効化は明示的な「このバックエンドを使う」ボタンで行う。プロバイダー行に「使用中」バッジが付き、環境変数フィールドには右クリックのコンテキストメニューが追加された → スキルとツール
  • 通知の種別追加: 「クレジット通知」「プラグイン通知」が加わった → 通知
  • 設定画面のローディング表示: スピナーからスケルトン UI に刷新された
  • アーティファクト: バージョン管理されたカードと、サンドボックス化されたライブプレビュー(右レールのビューア)に対応した(#72345)→ アーティファクト
  • プラグイン SDK: かんばんを最初のプラグインとして実装し、ctx.download でのファイル受け渡し、ウィジェットアプリ SDK、複数 GUI ウィンドウに対応した(#61173・#74413・#68306)→ プラグイン
  • Webhooks ページと Cron Blueprints ページの新設: いずれも設定画面ではなく独立したルート(/webhooks/cron 配下)として追加された
  • ステータスバーが既定で非表示に: 表示の切り替えはキーバインド(view.toggleStatusbar)か、ステータスバーの右クリックメニューで行う。設定画面に専用のトグルは無い
  • ウィンドウ・ペーン操作: クイックエントリウィンドウ、フローティングペインの配置、⌘O でフォルダをプロジェクトとして開く操作が加わった(#72315・#68259・#73143・#75848・#74623)
  • コンポーザーの改善: 添付ファイル・フォルダ・リンクのピッカー、元に戻すスタック、ダブル ESC で下書き破棄、ダブル Enter でキュー送信に対応した(#74668・#73110・#72201・#72288・#73101)
  • キーボード操作の強化: ⌘⇧M でモデル切替、⌘K で YOLO モードのトグル表示、各ピッカーがキーボード操作優先になった(#74545・#74674・#74602・#69799・#74234)→ キーボードショートカット(設定タブ)
  • サイドバーとトーストの改善: サイドバーに日付区切りとピン留めセクションが加わり、クレジット使用量のトーストとタイムゾーンピッカーの検索にも対応した(#70822・#72303・#70066・#73505)
  • ネイティブサインイン: RFC 8252 準拠のサインイン(システムブラウザーと PKCE を使い、webview の cookie を使わない)に変わった。初回起動のオンボーディングには「既存 Hermes に接続」の導線が加わった(#67920・#70907)
  • 60fps 化の第 2 波: ストリーミングコストを定額化し、ドラッグ中も 60fps を維持する。非表示ペインのタイマーを停止することで、アイドル時の CPU 使用率をほぼゼロにした

破壊的変更・設定キーの変更(移行注記)

Section titled “破壊的変更・設定キーの変更(移行注記)”
  • Node.js 26 が必須: installers / heal / upgrade のすべての経路で必要になった。管理対象の Node・uv が PATH の裸解決より優先され、旧世代の管理ツリーは対象メジャーへ自動修復される(#76459)
  • Homebrew と pip / PyPI ホイールのインストールチャンネルが廃止: サポートされるのはシェルインストーラ・Docker・Nix のみになった(#68217)
  • agent.max_turns の既定が 90 → 500: 1 ターンあたりのツール呼び出し(イテレーション)の上限。複雑なタスクが日常的に 90 回を超えていたため引き上げられた。設定画面(詳細)に既存の入力欄があり、明示的に設定済みの値は影響を受けない → 詳細
  • tools.tool_search.threshold_pct の既定が 10 → 5: ツール一覧の自動表示に使うコンテキスト長比率のしきい値。予算を縮小するかわりに、縮退時はサーバー要約ヒントで補う
  • stt.language の新設と既定 en: STT のグローバル既定言語。誤った言語検出を防ぐために明示指定へ変わった。日本語で音声入力する場合は変更が要る → 音声
  • checkpoints.delete_orphans の廃止: workdir が消えたチェックポイントを自動削除するトグルが撤去された。workdir の消失が「プロジェクトの削除」なのか「外部ボリューム・ネットワーク共有・VPN が未マウントなだけ」なのかを自動判別できないため。orphan の削除は明示コマンド hermes checkpoints prune--keep-orphans でスキップ)に一本化された
  • display.tool_progress_overrides の撤去: 既に非推奨だったキーが既定値から完全に消えた。ユーザーが設定済みの値は後方互換で引き続き読み取られ、display.platforms へ畳み込まれる
  • 設定マイグレーションの自動対応フロアが v12: テーブル駆動のマイグレーションレジストリが導入された(#74237・#74200・#74182・#74433)
  • スキルツリーの整理: yuanbaosegment-anythingjupyterheartmulaaudiocraft がオプションスキルになり、claude-marketplace ソースが削除された。ハブは themes / desktop-plugins / tui-widgets を吸収する形で再編成された(#68595・#70452〜#70456・#73903)→ スキルとツール

設定 API・config.yaml の差分(GUI 非表示)

Section titled “設定 API・config.yaml の差分(GUI 非表示)”

既定値が変わったキー:

キーv0.19v0.20備考
_config_version3334既定値定義の分離に伴う更新
agent.max_turns90500移行注記を参照
tools.tool_search.threshold_pct105移行注記を参照

削除されたキー:

  • checkpoints.delete_orphans(旧既定 True)─ 移行注記を参照
  • display.tool_progress_overrides(旧既定 {}。既に非推奨だった)─ 移行注記を参照

新設されたトップレベルセクション(既定値のみで GUI に入力欄はなく、config.yaml の直接編集で使う):

  • wake_word.*(既定オフ): ハンズフリーのウェイクワード。provideropenwakeword(無料・ローカル)/ sherpa(無料・任意フレーズ・訓練不要)/ porcupine(有料・要 API キー)から選ぶ。phrase の既定は hey hermessensitivity の既定は 0.6start_new_session は既定オン。profile_routing(sherpa 専用)で複数プロファイルのフレーズを同時に待ち受けられる
  • proxy.*(既定オフ): リモートターミナルサンドボックス(Docker、将来的に Modal / SSH)のアウトバウンド通信を iron-proxy 経由へ強制する egress 保護。auto_install は既定オン、tunnel_port の既定は 9090enforce_on_docker は既定オンで、proxy が有効かつ未起動なら直接通信を拒否する
  • monitoring.*(既定オフ): ゲートウェイのヘルスと診断を OTLP でエクスポートする。install_id は空文字で、初回利用時に UUID を新規発行する(アカウントの識別情報は含まない)
  • database.*: 全 DB 共通の SQLite プラグマ。journal_mode の既定は wal で、fsync が弱い共有ファイルシステム(virtiofs・NFS・SMB)では DELETE へ切り替える想定
  • telemetry.shared_metrics.enabled(既定オフ): プライバシーセーフな集計メトリクスをローカルに記録する。オプトインで、リモートの送信先は無い
  • doctor.live_probe_timeout(既定 10 秒): hermes doctor のライブプローブのタイムアウト
  • mcp_single_query_discovery_timeout(既定 15.0 秒): MCP サーバー単体のディスカバリタイムアウト。疎通の遅いサーバーの影響を個別に切り離せる → MCP

既存セクションへ追加された主なキー(GUI に項目を持たない。かっこ内は既定値):

  • 承認: approvals.smart_policy(空欄。承認ポリシーを自然文で書ける。例「/etc への操作は常にエスカレート」)/ approvals.denial_breaker_threshold3。連続拒否でエスカレートするサーキットブレーカー)
  • 圧縮: compression.min_tail_user_messages1。圧縮時に必ず残す直近ユーザーメッセージ数)/ compression.threshold_tokens(絶対トークン数でのしきい値)/ compression.model_thresholds{}。モデル別の上書き)/ compression.micro_compact(オフ。ターンごとの微小圧縮。プロンプトキャッシュの境界を温存する)/ compression.idle_compact_after_seconds0。アイドル圧縮)/ compression.proactive_prune_tokens0)/ compression.hygiene_timeout_seconds30)ほか
  • 音声: voice.barge_in(オン。ユーザーの発話で TTS とエージェントを割り込み停止する)/ voice.barge_in_grace_seconds0.5)/ voice.stop_phrases['stop'])/ voice.thinking_sound(オン)/ voice.beep_volume0.3
  • STT: stt.languageen。移行注記を参照)/ stt.cloud_trim_silence(オン。アップロード前にクライアント側で無音をトリムし、時間・課金・幻覚を減らす)/ stt.local.vad(オン)ほか faster-whisper の幻覚対策一式、プロバイダー別の言語上書き(stt.groq.language ほか)
  • セッション: sessions.cjk_fts(オン。CJK の全文検索インデックス)/ sessions.max_export_messagessessions.max_resume_messages(各 20000)/ sessions.min_vacuum_interval_days30
  • エージェント: agent.restart_after_turn_timeout21600 秒。膠着したエージェントを救済する再起動の安全弁)/ agent.session_stall_timeout300 秒。/new を促す通知専用)/ agent.agent_cache.*(ゲートウェイ内エージェントキャッシュの LRU 設定)
  • ターミナル: terminal.degraded_modewarn。サンドボックス劣化時の挙動)/ terminal.docker_shm_size1g)/ terminal.vercel_runtimenode24
  • cron: cron.modelcron.model_provider(空欄)/ cron.model_drift_guard(オン。グローバル既定の変更でジョブが黙って有料モデルへ追従しないためのガード)/ cron.preflight(オン)
  • セキュリティ: security.protected_instruction_files(オン。命令ファイルの変更を承認必須にする。自動承認下でも対象)
  • 表示: display.focus_view(オフ。/focus モード)/ display.spinner_token_flow(オン)/ display.turn_summary(オン)/ display.platforms.slack.streaming(オフ)
  • ゲートウェイ: gateway.loop_watchdog(オン。クラッシュループを検知して supervisor に再起動させる)
  • ツール上限: tool_loop_guardrails.loop_caps.max_web_searchestool_loop_guardrails.loop_caps.max_subagents(各 500 で無制限)
  • 補助タスク: auxiliary.free_only(オフ。補助タスクを OpenRouter の無料モデルに限定する)/ auxiliary.openrouter_model(空欄)
  • デスクトップ: desktop.auto_continue.*(オン・freshness_minutes15max_attempts2。中断したターンを復旧して自動継続する)
  • Computer Use: computer_use.capture_after_modesom)/ computer_use.max_image_dimension1456
  • MoA: moa.privacy_filter(空欄。アグリゲータープロンプトへ注入されるアドバイザーテキストの追加リダクション)
  • LSP: lsp.idle_timeout600.0 秒)
  • iron-proxy の資格情報インジェクション対策として、egress ファイアウォールを再導入(#70848)。
  • DNS ピン留めによる SSRF 安全 fetch と Slack CDN のアローリスト、圧縮境界での厳格な機密情報リダクション、config キーのリダクションパターンにあった ReDoS 脆弱性の解消、秘密キーワードを含む通常文が誤ってマスクされる誤検知の修正(#70193・#69294・#76083・#67776)。
  • Tier-3 資格情報の読み取りをスコープ限定(FAL / XAI / VERCEL / DAYTONA / GITHUB などは存在確認のみに限定)。CVE 対応の依存更新(cryptography・starlette・python-multipart)と、hindsight の env ファイルのパーミッションを 0600 に変更(#75888・#72362)。
  • Windows のハードニング: サブプロセスのテキストモードデコードのバグクラスをリポジトリ全体で解消し、デーモン・env プローブ・LSP・インストーラのコンソール表示を抑制(#70875・#70205・#70264・#71014)。
  • セッション整合性: セッション状態のバグ 4 件を修正し、FTS レイアウト v23 と hermes sessions optimize、CJK バイグラム FTS、読み取り専用コネクションでの読み取りパス分離を導入(#75883・#65798・#69423・#73344)。
  • OpenViking メモリプロバイダーのハードニング(ブロック済みエンドポイントへのフェイルクローズ、資格情報を送る前のサーバー検証)(#77747)。
  • Buzz(新規): Block 社の Nostr ベースメッセンジャーがバンドルゲートウェイとして追加された。ネイティブ WebSocket と NIP-42 認証に対応する(#73610・#73761)
  • Photon: ネイティブ投票、エフェクト、clarify の投票化、リッチリンクに対応した(#73614)
  • Slack: ネイティブ Block Kit の clarify ボタン、リアクショントリガー(オプトイン)、送信ペイロードのサニタイズ、スレッドコンテキストのライフサイクル修正が入った(#69318・#70195・#69317・#69320)。display.platforms.slack.streaming(既定オフ)でストリーミング表示を選べる
  • Discord: 自動スレッドセッションのキー方式が変わり、返信参照は ID 構築に変更されて fetch_message が不要になった。ツール進捗の表示先は親チャンネルから自動スレッドへ移った(#76513・#76875・#77830)。ボイスチャンネルの無活動タイムアウト(discord.voice_channel_inactivity_timeout_seconds、既定 300 秒)と TTS 再生タイムアウト(同 120 秒)を設定できる
  • WhatsApp: 受信の既読レシートを設定できるようになった(#73322)
  • Relay: supported_ops のディスカバリ・メディア・対話プロンプト・スレッドライフサイクルの 4 フェーズでパリティが改善し、egress のタイピングインジケータと HSP のスキル同期(個人・組織)が加わった(#71300〜#71624・#69721・#66730)
  • メッセージング全般の音声対応: WhatsApp・Feishu・DingTalk・LINE・QQ・Photon・Weixin でボイスノートの送受信と文字起こしに対応した
  • CLI: ! のシェルモード、/init/diff/context/focus、Ctrl+S のプロンプト保存、永続的な /goal インジケータ、複数選択できる clarify(チェックボックス)。コマンドでは hermes import-agent(Claude Code・Codex CLI の設定移行)、hermes approvals suggesthermes checkpoints prunehermes sessions optimize が加わった。
  • TUI: モデルピッカーへのアクセスが改善され(下書きを保持したまま切り替えられる)、スラッシュメニューは使用頻度の高いスキルを優先表示する。アラビア語ロケールと RTL に対応した(#74756・#75931・#75210・#70870)。
  • ダッシュボード: ルートの遅延ロード、セッション統計、セッションフィルタタブ(Chats / Automation / All)に加え、Cron Blueprints ページと Webhooks ページが新設された(#72294・#73362・#73865・#73505)。
  • かんばん: wake 時に作成者の DM・スレッドセッションを再開し、api_server セッションへも wake が届くようになった。タスクごとにモデルと思考の深さをボードから指定できる(#72191・#70171・#69876・#76417)。
  • MCP: fingerprint キー付きのディスクキャッシュにより、サーバーを遅延起動するようになった。セッション開始時に全 MCP サーバーが起動することはなくなった(#77511)。
  • ゲートウェイ: ヘルスと診断を OTLP でエクスポートできる(#64536)。

v0.18.0 → v0.19.0(The Quicksilver Release)

Section titled “v0.18.0 → v0.19.0(The Quicksilver Release)”

出典:

  • 初回応答が約 80% 高速化: コールドスタートの「Initializing agent…」が約 4.3 秒 → 約 0.9 秒に短縮された。CLI・ゲートウェイ・TUI・デスクトップ・cron のすべてに適用され、推論モデルの思考は既定でライブ表示される(display.show_reasoning 既定 ON。#59332・#59389)
  • スマート承認が既定に: フラグされたコマンドを毎回ユーザーに確認する代わりに、補助 LLM が個別に審査して低リスクなら自動承認する approvals.mode: smart が既定になった。判定はそのコマンド 1 回限りで、同じパターンに一致する後続コマンドも改めて審査される(#62661)→ 安全性
  • ユーザー定義の拒否ルール approvals.deny: fnmatch グロブに一致したターミナルコマンドを無条件でブロックする。yolo モード(承認オフ)でも適用される(#59164)
  • /deny <理由>: 保留中の危険コマンドを理由付きで拒否し、拒否した理由をエージェントに伝えて軌道修正させる(#54518)→ スラッシュコマンド一覧
  • プラグインによる承認ゲートの再導入: プラグインの pre_tool_call フックが approve アクションを返すと、そのツール呼び出しが危険コマンドと同じ人間の承認ゲートへエスカレーションされる。エージェント側から承認をスキップする手段はなく、承認の記憶粒度はプラグインが指定するルールキー単位。人が応答できない非対話コンテキストではフェイルクローズする → 安全性
  • スラッシュコマンドの追加・変更: /compress/compact 別名と --preview/sessions search <キーワード>/model --once(次の 1 ターンだけ上書き)、/fast/reasoning--global(付けない限りセッション限定)、/battery(CLI のみ・既定オフ)が加わった。導入済みスキルは /skill-a /skill-b やること のように先頭へ最大 5 個を並べるスタック起動に対応し(CLI・TUI。オートコンプリートとゴーストテキスト付き)、Telegram・Discord・Matrix では /reasoning/fast をネイティブのボタンで選べる → スラッシュコマンド一覧
  • 請求(Billing): デスクトップの設定に「請求」タブが追加された。CLI・TUI では /subscription で Nous プランの確認・変更(アップグレード費用のプレビュー付き)、/topup で残高確認と課金管理ができる。旧 /credits/billing/topup の Remote Spending 画面に統合された(#51639・#61054・#61067)→ 請求
  • パスワードマネージャー連携(SecretSource): プラガブルな SecretSource インターフェースが追加され、Bitwarden と 1Password(op:// 参照)からロード時にシークレットを取得できる。複数ボールトの同時有効化、決定的な優先順位、競合警告、変数ごとの由来表示に対応。API キーを平文 .env に置かずに済む(#59498)
  • reasoning effort に maxultra を追加、モデル別・タスク別・MoA スロット別の制御: 思考の深さの上位 2 段階が全サーフェスで選べるようになった(スケールが小さいプロバイダーへは自動クランプ)。config でのモデル別上書き、補助モデルのタスク別指定、MoA プリセットのスロット別指定、CLI のセッション限定 /reasoning、GLM-5.2 のネイティブ reasoning_effort 制御も加わった(#62650・#64458・#64597・#64631・#67946・#58884)→ モデル
  • MoA の強化: reference_max_tokens で参照モデルの出力を制限してレイテンシを削減できる。プリセット別の fanout 頻度(user_turn ならユーザーターンごとに 1 回だけ諮問)、不完全なプリセット保存の API 境界での拒否なども追加(#56756・#57591・#64756)
  • 新プロバイダー: Fireworks AI(コスト見積り付き。環境変数 FIREWORKS_API_KEY。#62593)、DeepInfra(#65214)、Upstage Solar(UPSTAGE_API_KEY。詳細欄に UPSTAGE_BASE_URL。#64541)。いずれもプロバイダー設定の「API キー」にカードが追加された。モデルピッカーの価格タグにも Fireworks が加わり、価格列は models.dev レジストリのキャッシュから導出される(#65476)→ プロバイダー
  • 新モデル対応: GPT-5.6(Sol / Terra / Luna と各 Pro 版。#61616)、grok-4.5(GA。#60887)、moonshotai/kimi-k3(#65913)、claude-fable-5 / claude-sonnet-5、tencent/hy3(GA。無料枠 tencent/hy3:free もある)、LM Studio の JIT モデルロード。AWS Bedrock はカタログが刷新され、実エンドポイントへのコンテキスト窓プロービングと、現行世代 Claude(Fable 5 / Sonnet 5 / Opus 4.8・4.7・4.6 / Sonnet 4.6)の 1M コンテキスト行が加わった → モデル
  • excluded_providers: 使わないプロバイダーを /model ピッカーと組み込みのモデル解決から除外できる(プロバイダー別の enabled: false も可。#67971)→ プロバイダー
  • サブエージェントのライブトランスクリプトと耐久委譲: delegate_task の起動直後から、子エージェントごとの人間可読ログを tail -f で追える。バックグラウンド委譲の完了結果は耐久化され、実行中にプロセスが再起動しても復元・配送される(#67479・#63494)
  • 配信義務レジャー: 生成済みの最終応答を state.db のレジャーに記録し、ゲートウェイがプラットフォーム送信の前後で落ちても次回起動時に再配信する。Telegram・Discord・Slack などでの応答の無言消失(P1)を塞いだ(#67181)
  • プロファイルルーティング: 1 つの bot トークンを共有する多重化ゲートウェイが、ギルド・チャンネル・スレッド単位で別プロファイル(設定・スキル・メモリ・シークレットを完全分離)へルーティングできる。多重化の強化第 2 弾で、1 プロファイルの設定ミスがゲートウェイ全体を落とさなくなった(#64835・#65700・#60589)
  • sessions export / prune / archive の拡張: hermes sessions export が Markdown・Quarto・HTML・プロンプトのみ・Hugging Face 向けトレースの各形式に対応した。--redact(シークレット除去)、期間・ワークスペース・プラットフォームのフィルター、prune のフィルター拡充と一括アーカイブも追加(#60186・#60492・#60507・#59327・#63091)
  • Vibe reactions: 好意的なメッセージにフローティングハートが舞う演出。CLI・TUI・デスクトップに対応し、検出は追加トークンを消費しない(#62016)
  • mem0 の強化: MEM0_HOST にセルフホストの Mem0 サーバー URL を設定すると、クラウド API の代わりにそのサーバーへ直接接続する。想起(recall)に対するリランキングの有効化など調整オプションが増え、hermes memory setup の mem0 セットアップが platform(クラウド)/ self-hosted / OSS のモード別ウィザードになった → メモリとコンテキスト
  • MCP カタログに Blender 連携を追加: ahujasid/blender-mcp 1.6.4 が Nous 承認カタログに加わった(uvx 起動、バージョン固定)。22 ツールのうち既定で有効になるのは get_scene_info / get_object_info / get_viewport_screenshot / execute_blender_code の中核 4 つで、残りは PolyHaven・Sketchfab などのアセットサービス連携用。利用には Blender 側アドオンのセットアップが別途必要。同梱スキル blender-mcp も、このカタログエントリと連携する構成に刷新された(v2.1.0)→ MCP
  • computer-use への再編: 「スキルとツール」の Apple カテゴリにあった macos-computer-use が廃止され、クロスプラットフォーム対応の computer-use(macOS・Windows・Linux、v2.0.0)として独立カテゴリに再編された。ツールセット名も「Computer Use (macOS)」から「Computer Use (macOS/Windows/Linux)」に変わった → スキルとツール
  • 新しい同梱スキル: unbroker(security・オプション。データブローカーサイトに載った自分の情報を自律的に削除)、unreal-mcp(creative・オプション。Unreal Engine 公式のエディタ組み込み MCP サーバーでシーン構築やエディタ自動化。カタログエントリは unreal-engine)、mcp-oauth-remote-gateway(mcp・オプション。ヘッドレスなゲートウェイ環境でリモート MCP サーバーの OAuth 認証を手動で通す)が加わり、humanizer は検出パターンが拡張された。オプション扱いのスキルは既定では導入されず、スキルハブ(Browse Hub タブ、または hermes skills browse --source official)から探して導入する(#57438・#57902・#64715・#65066)→ スキルとツール
  • skills install の同梱範囲拡大: URL・GitHub からのスキルインストールが SKILL.md 単体ではなく、references/templates/scripts/assets/examples/ に置かれた参照ファイルも併せて取り込むようになった(URL 指定では SKILL.md から明示的に参照されたファイルのみ取得)
  • スピード改善ウェーブ(約 20 本のパフォーマンス PR): ストリーミング Markdown の分割処理が 14 倍高速化(CPU 負荷が 14 分の 1)、巨大 diff はレビューペーンの仮想化でフリーズが解消、大きなトランスクリプトでのセッション切り替えも高速化された。ストリーミング中にサイドバーとツール行をトークンごとに再レンダリングする挙動も廃止(#67154・#67818・#65898・#66033・#66747・#67742 ほか)
  • 設定サイドバーが 15 画面 → 17 画面: 「請求」「キーボードショートカット」「Plugins」の 3 画面が新設され、「MCP」が設定タブから Capabilities ページ(/skills?tab=mcp)へ移動した結果、設定画面の構成が入れ替わった → 全設定項目索引
  • Capabilities ページ: スキル・ツールセット・MCP・Hub を 1 画面(日本語 UI では「スキルとツール」)に集約。MCP 管理は設定画面からこちらへ移動した。旧 URL /settings?tab=mcp のディープリンクは server= パラメータごと新しい場所へ自動リダイレクトされる(#57590・#57441・#67482)
  • キーボードショートカットの設定タブ: 設定にリバインド用の「キーボードショートカット」タブが追加され、ボタンにキーバインドヒントのツールチップが付いた。独立したショートカットパネルは廃止され、⌘/ はこのタブを開く(#65204)→ キーボードショートカット(設定タブ)
  • プラグインタブ: 設定にデスクトップ UI プラグインの管理タブが追加され、再起動なしで有効・無効を切り替えられる → プラグイン
  • Hermes Cloud・SSH 接続: バックエンドへの接続方法として、Hermes Cloud アカウントからのエージェント選択と、SSH トンネル経由のリモート接続が追加された(#61912・#61916)
  • 実行バックエンドピッカー: ターミナルの実行バックエンドを、ヘルスチェック付きの UI で切り替えられる(#67203)→ 詳細の実行バックエンド
  • モデル設定画面の刷新: フォールバックモデルがカンマ区切りのテキスト入力から行追加式の構造化エディタになった。MoA プリセットの編集は手動の保存ボタンが廃止されて自動保存になり(スロット変更は編集停止から 600 ミリ秒後、Set default / Add preset / Delete は即時)、プロバイダーだけ選んでモデルが未選択の「半入力」スロットがある間は保存が保留される。読み込み中はスケルトン UI が表示され、プロファイル切替のエポックガードで切替前の応答が誤って描画されなくなった → モデル
  • モデルピッカーの整理: プロバイダー名の行をクリックしてグループを折りたたみ・展開できる。同じベンダーの複数エンドポイント(Qwen・Kimi・MiniMax・xAI・OpenAI・OpenCode・GitHub Copilot など)は 1 つのグループ行にまとまる。表示のみの変更で、provider:model 形式での個別指定はそのまま使える → モデル
  • チャット表示のグループ化: テキストのないアシスタントメッセージをまたいで連続するツールコールが 1 グループにまとめて表示される。3 件以上連続する長い実行は固定高のウィンドウに折りたたまれ、最新の呼び出しを下端に固定して自動スクロールする → チャット
  • ステータスバーのワークスペース表示: アクティブなプロジェクト名(プロジェクト外では作業ディレクトリのフォルダ名)がワークスペースラベルとして表示され、ツールチップでフルパスを確認できる。パスのコピーや格納フォルダーを開く操作もここから行える
  • 外観に UI スケールとチャット背景を追加: UI スケールは 90 / 100 / 110 / 125 / 150 / 175% の 6 プリセットで、Cmd/Ctrl と + - 0、Ctrl/Cmd+マウスホイールでも変更できる。倍率はメインプロセスが管理する zoom-state.json(Electron の userData 配下)にデバイス単位で保存される。あわせてチャット背景(会話の背後に表示される淡い彫像画像。hermes.desktop.backdrop.v1、既定オン)の切替が加わった → 外観
  • Git リポジトリの自動検出: ローカルフォルダーを検索して Git リポジトリを見つけ、プロジェクトサイドバーに表示する(desktop.repo_scan_enabled 既定オン・desktop.repo_scan_rootsdesktop.repo_scan_exclude_paths を設定画面から指定できる)。検出ポリシーを変更すると再スキャンが自動で走る。リモートモードでは実行されない → ワークスペース
  • プロジェクトの色分け: プロジェクトに色を設定すると、そのプロジェクトに属するセッションがサイドバーのセッション行とペーンのタブで同じ色を継承する(セッション単位の上書きも可能)。色を設定していないプロジェクトではセッションに色は付かない → プロジェクト
  • バックグラウンド実行の可視化: バックグラウンドのターンが完了するとセッション行に緑のドット(完了・未読)、バックグラウンドのターミナルプロセスが実行中は灰色の点滅ドットが表示される
  • worktree 操作の強化: worktree の作成と既存ブランチの変換が 1 つの共有ダイアログに統一され、分岐元ブランチのピッカーが付いた。Cmd+Shift+B(Windows・Linux は Ctrl+Shift+B)で直接開ける
  • 「コンピューターをスリープさせない」トグル: 設定 → 詳細の最上部に追加された。OS のパワーセーブブロッカー(prevent-app-suspension)を保持してシステムのスリープだけを防ぎ、ディスプレイの暗転は妨げない。config.yaml ではなく端末ごとのデバイスローカル設定として保存される → 詳細
  • 承認モードのプロファイル単位化: デスクトップの承認モードがプロファイル単位で保持・同期され、ステータスバーの承認モードメニューで現在のプロファイル分だけを切り替えられる → 安全性
  • 外部メモリプロバイダーの設定パネル: Honcho / Hindsight を選んだときだけ、バックエンドが宣言した設定項目からスキーマ生成される設定パネルが現れる。各項目は入力確定のたびに 1 項目ずつ自動保存され(Hindsight の「Save」ボタンは廃止)、詳細項目を持つプロバイダーでは「Full config…」からフル設定モーダルを開ける → メモリとコンテキスト
  • 音声・モデル名の自由入力化: 音声設定の 17 欄が自由入力コンボボックスになり、候補にない ID(ElevenLabs のクローン音声、xAI のカスタム音声、Edge の 400 種超のカタログ音声など)も直接入力できる。OpenAI 音声の既定候補は 6 種から 13 種(gpt-4o-mini-tts 世代)に拡充された。config.yaml で定義したカスタム(コマンド型)TTS / STT プロバイダーも候補に出る → 音声
  • 音声の入力欄の拡充: xAI (Grok) に再生速度・自動音声タグ・ストリーミング遅延最適化・サンプルレート・ビットレートの 5 欄、DeepInfra に TTS モデル・音声の 2 欄(英語表示)、STT に Echo Transcripts(stt.echo_transcripts。ゲートウェイ経由の音声メッセージの生トランスクリプトをチャットへエコー投稿。既定オン)が加わった。従来「専用入力欄なし」だった MiniMax・KittenTTS(TTS)と Groq(STT)にも入力欄が付いた → 音声
  • アカウント画面の刷新: プロバイダー設定の「アカウント」が、初回オンボーディングと同型のピッカー(推奨カード+クイックキー行+「その他」の開示式)になった → プロバイダー
  • プロバイダーのカスタムエンドポイント: OpenAI 互換エンドポイント(vLLM・llama.cpp・Ollama・社内プロキシなど)を名前付きで複数保存し、テスト・有効化・削除で切り替える第 3 のサブビューが新設された(保存先は config.yamlproviders.<ID>。#67759)。サイドバーの「プロバイダー」にサブ項目 3 件が常設され、表示中のサブビューは URL パラメータ pview で保持される。API キーサブビューの先頭にも「ローカル / カスタムエンドポイント」の導線行が置かれた → プロバイダー
  • クレデンシャルカードの入力 UI 刷新: 保存済みのキーはマスク値の読み取り専用欄として表示され、クリック(フォーカス)でその場で編集に切り替わる。編集中は入力欄の右側に保存・削除ボタンが並ぶ → ツールとキー
  • MCP の有効/無効バッジが実際の停止状態と一致: 旧設定画面では UI の「無効」バッジが disabled: true を見ており、ランタイムの停止キー enabled: false と食い違うことがあった。新しい MCP 画面(「スキルとツール」の MCP タブ)はスイッチの表示もランタイムの停止判定も enabled に一本化され、この食い違いは解消された → MCP

破壊的変更・設定キーの変更(移行注記)

Section titled “破壊的変更・設定キーの変更(移行注記)”
  • approvals.mode の既定が manualsmart: 危険コマンドの承認を補助 LLM が肩代わりする。従来どおり全件を自分で確認するには approvals.mode: manual を明示する(2026-07-22 実機確認)→ 安全性
  • approvals.timeout の既定が 60 秒 → 300 秒: メッセージング経由の承認は通知に気付くまで時間がかかり、60 秒では失効しやすかったため(2026-07-22 実機確認)
  • display.show_reasoning の既定が ON: 推論モデルの思考がライブ表示される。以前の挙動に戻すには false を明示する(2026-07-22 実機確認)
  • updates.pre_update_backup の 3 値化: 真偽値から quick / full / off の 3 値になり、既定は quick(軽量スナップショット)。旧設定は truefullfalseoff として解釈される(2026-07-22 実機確認)
  • ゲートウェイのセッション自動リセットが既定オフ: 同梱テンプレートが自動リセットを有効にしなくなり、既定は none(圧縮以外でコンテキストを自動破棄しない)。必要なら session_reset セクションでオプトインする(#60194)
  • kimi-k2.x の整理: Nous Portal・OpenRouter のカタログが kimi-k2.x から moonshotai/kimi-k3 に置き換わった(Kimi Coding 直結エンドポイントでは k2 系モデルも引き続き選べる。2026-07-22 実機確認)
  • MoA の temperature 既定送信の廃止: reference_temperature / aggregator_temperature は未設定なら API に送らず、プロバイダー既定に任せる(2026-07-22 実機確認)
  • delegation.max_async_children の廃止: 委譲の同時実行上限は max_concurrent_children に統合され、旧キーの値は読み込み時に自動で引き継がれる
  • Iteration Budget Pressure の廃止: イテレーション残量が減った際にモデルへ自動警告する機能が削除された(#59389)
  • hermes serve の純ヘッドレス化: Web UI のビルド・配信を行わないバックエンド専用コマンドになった(#55923)
  • 推論レベルの表示ラベルの変更: v0.18 までは xhigh の日本語表示が「最大」だった。現在は xhigh が「特高」と表示され、「最大」は新設の max を指す。過去のメモや手順書に「最大」とある場合は、どちらのレベルを指しているか確認する(2026-07-22 実機確認)→ モデル
  • メモリプロバイダーの選択肢整理: ドロップダウンが「内蔵のみ」「Honcho」「Hindsight」の 3 択になり、従来あった「Builtin」の明示選択が無くなった(空欄=内蔵のみに統合)。保存済みの builtin は現在値としてのみリストに残る。内蔵メモリは memory.provider ではなく「永続メモリ」(memory.memory_enabled)で制御されるため、選び直す必要はない(2026-07-22 実機確認)→ メモリとコンテキスト
  • delegation.child_timeout_seconds の既定変更: v0.17.0 実機採取時の既定は 600 秒だったが、現行の既定は 0(タイムアウトなし)で、子エージェントは API エラー・ツールエラー・反復上限だけで停止する(変更されたバージョンは未特定。2026-07-22 実機確認)→ 詳細
  • MCP ツール名の命名規約の統一: MCP 由来のツール名が mcp__<サーバー名>__<ツール名> 形式に統一された(Claude Code・Codex と共通の規約。英数字とアンダースコア以外は _ に置換)。tools.include / tools.exclude には引き続きサーバー固有の素のツール名を書く → MCP

設定 API・config.yaml の差分(GUI 非表示)

Section titled “設定 API・config.yaml の差分(GUI 非表示)”

既定値が変わったキー:

キーv0.18v0.19備考
approvals.modemanualsmart移行注記を参照
approvals.timeout60300移行注記を参照
display.show_reasoningオフオン移行注記を参照
updates.pre_update_backupオフ(真偽値)quickquick / full / off の 3 値化。移行注記を参照
x_search.modelgrok-4.20-reasoninggrok-4.5X 検索で使う既定モデル

削除されたキー:

  • delegation.max_async_children(旧既定 3)─ delegation.max_concurrent_children に一本化
  • moa.presets.default.aggregator_temperature(旧既定 0.4)/ moa.presets.default.reference_temperature(旧既定 0.6)─ 未設定ならプロバイダー既定に任せる

挙動が判明している主な新規キー:

  • terminal.docker_network(既定 true): false にすると Docker バックエンドのコンテナが --network=none で起動し、コマンドがネットワークへ一切到達できないエアギャップ実行になる。詳細画面に入力欄はなく、config.yaml の直接編集か環境変数 TERMINAL_DOCKER_NETWORK で設定する → 詳細
  • platforms.<プラットフォーム名>.channel_overrides.<チャンネル ID>: チャンネルごとに model / provider / system_prompt を上書きできる(Fixes #1955)。チャット内 /model によるセッション別モデル上書きも、ゲートウェイ再起動をまたいで永続化される(保存されるのはモデル・プロバイダー・接続先のみ)→ ゲートウェイ
  • gateway.respawn_storm(既定 max_starts: 5 / window_seconds: 120): 再起動ストームを抑制する安全弁。gateway.write_sessions_json(既定 true)は state.db 移行後も ~/.hermes/sessions/sessions.json へレガシー互換のミラーを書き出す設定 → ゲートウェイ
  • mcp.auto_reload_on_config_change(既定 true): config.yamlmcp_servers セクションの変更をファイルウォッチャーで検知し、MCP 接続を自動で再読み込みする → MCP
  • stt.groq.model: 画面定義には追加されたが、製品既定設定に stt.groq ブロックが存在しないため、config.yaml に値を書いていない既定状態ではこの欄が表示されない → 音声

GUI に項目を持たないその他の新規キー(かっこ内は既定値):

  • 承認: approvals.deny(空配列。ユーザー定義の拒否ルール)
  • 表示: display.battery(オフ)/ display.show_commentary(オン)/ display.timestamp_format'%H:%M')/ display.status_phrases{})/ display.busy_steer_ack_enabled(オン)→ チャット
  • エージェント: agent.reasoning_overrides(空。モデル別に推論レベルを固定)/ agent.local_stream_stale_timeout900 秒)
  • シークレット: secrets.onepassword.* / secrets.bitwarden.*(いずれも enabled: false。パスワードマネージャーからのシークレット注入)
  • ダッシュボード: dashboard.turn_isolation(オフ)/ dashboard.compute_host_heartbeat_secs15)/ dashboard.compute_host_respawn_max3
  • ゲートウェイ: gateway.delivery_ledger(オン。応答の配信台帳)
  • 補助タスク: auxiliary.<タスク名>.reasoning_effort(空欄。ほぼ全補助タスク)/ auxiliary.title_generation.enabled(オン)/ auxiliary.goal_judge.* / auxiliary.memory_query_rewrite.* / auxiliary.transient_retries2
  • Discord: discord.missed_message_backfill.*enabled: false ほか)/ discord.approval_mentions(オフ)─ 挙動は後述の「プラットフォーム別の変更」を参照
  • ブラウザー: browser.headed(オフ)/ browser.restrict_evaluate(オフ)
  • 圧縮: compression.codex_app_server_autonative
  • 更新: updates.refresh_cua_driver(オン)
  • Vertex AI の資格情報・プロジェクト・リージョン解決をプロファイルのシークレットスコープ経由に隔離し、VERTEX_CREDENTIALS_PATH / GOOGLE_APPLICATION_CREDENTIALS をサブプロセス環境から除去(#56680・#56582)。
  • メディア・ビジョン・画像生成のローカルファイル読み取りを、共有の資格情報読み取りガード経由に統一(#58709)。
  • すべての aiohttp サーバーに webhook ボディサイズ上限を明示適用(#59180・#59215 ほか)。
  • Telegram の接続・送信エラーから bot トークンを墨消しし、Fireworks のトークン接頭辞をリダクターに追加。
  • ブラウザガード・MEDIA アンカリング・.env ロックダウンなど P1 強化 6 本を一括取り込み(#57660)。CI は未信頼 ref を run: 補間でなく環境変数経由で受け渡すよう強化(#57842)。
  • ファイル書き込みの安全層(HERMES_WRITE_SAFE_ROOT 外への書き込み拒否)を強化し、セッショントランスクリプトを保護対象に追加。書き込み拒否の理由を資格情報拒否と区別して報告する。
  • Slack: 応答生成中のステータス行が「考え中」の固定文ではなく、実行中のツールに合わせてライブ更新される。実行中のコマンドや読み取り中のファイル名が表示され、ツール実行の合間は従来の表示に戻る(#67080)
  • Discord ─ 取りこぼしメッセージの回復: 再接続やゲートウェイ再起動の間に届いていたメッセージを、復帰時にさかのぼって処理できる(#66149)。discord.missed_message_backfill.* で制御する(enabled 既定 false。有効時は既定で直近 6 時間・スキャン上限 100 件・再配信上限 10 件)。対象チャンネルは channels で指定し、空なら allowed_channels(許可チャンネル)と free_response_channels の和集合を走査する(config.yaml のコメントは「空なら free_response_channels」とあるが、実際の既定挙動は両者の和集合)
  • Discord ─ 自動作成スレッドのリネーム: メンションから自動作成されたスレッドの名前が、最初のターンの後に LLM が生成したセッションタイトルへ自動リネームされる(#60187)。作成直後はメッセージ冒頭から作った仮の名前が付く
  • Discord ─ インタラクティブビューのタイムアウト設定: 実行承認・確認・選択肢などのボタン付きビューの有効時間を approvals.discord_prompt_timeout で設定できる(#60230)。既定 300 秒で、30〜900 秒にクランプされる(Discord のインタラクショントークンが約 15 分で失効するため)
  • Discord ─ 実行承認プロンプトでのオーナーメンション: discord.approval_mentions(既定 false)を有効にすると、実行承認プロンプトで数値 ID の許可ユーザーをメンションする(#60493)。共有チャンネル・スレッドで承認依頼を見落としにくくなる
  • Discord ─ 承認ボタンの管理者限定ゲート: ゲートウェイ設定の Discord extra ブロックで require_admin_for_exec_approval: true(既定 false)にすると、危険コマンドの承認・拒否ボタンを押せるユーザーを allow_admin_from に列挙した管理者だけに制限できる(#51751)。既定では許可ユーザーの誰でも押せるため、複数人が参加する共有サーバーでは有効化が安全側の選択になる。管理者を 1 人も列挙せずに有効化した場合は誰も押せない側に倒れる(フェイルクローズ)
  • Google Chat: clarify(選択肢を尋ねるプロンプト)が Google Chat のカードとして表示される(#65546)
  • Telegram: フォーラムグループのトピック単位で自由応答(メンションなしで応答)を許可できる(#65543)。config.yamltelegram.free_response_topics<チャット ID>:<スレッド ID> 形式で列挙する(環境変数 TELEGRAM_FREE_RESPONSE_TOPICS でも指定可)。チャット全体を開放する free_response_chats と違い、特定のトピックだけを開放できる
  • WhatsApp ─ clarify がネイティブ投票に: 選択肢を尋ねる clarify プロンプトが WhatsApp ネイティブの投票(Baileys ポール)としてレンダリングされ、投票結果がそのまま回答として扱われる(#58865)
  • WhatsApp ─ 位置情報と受信メタデータ: ネイティブの位置ピンの送信に対応し、引用返信・添付の種別(音声・ステッカー・連絡先など)・リアクション・投票・位置情報といった受信メタデータの取り込みが強化された(#58865)
  • WhatsApp ─ ダッシュボードからのペアリング: Web ダッシュボードのチャネル画面に WhatsApp のペアリングフローが追加された(#60571)。QR コードの表示から、スマートフォンの WhatsApp「リンク済みデバイス」でのスキャン、ログイン状態の確認までをダッシュボード上で完結できる
  • かんばん: モーダルのタスク作成ダイアログとボードのプロジェクトディレクトリ編集、Done カードの結果表示の明確化、つかんでスクロールできるボード、SSRF ガード付き URL 取得を備えた添付ツールセット、ボード作成時のプロジェクトディレクトリ記録(#66333・#63638・#60226・#65698・#63249)。
  • cron: ジョブごとのモデル指定(Desktop の cron 編集画面のモデルピッカーを含む。#67472)と、耐久化された実行監査履歴・one-shot ジョブの競合修正(#61791・#62014)。
  • ダッシュボード: Hermes コンソール(ブラウザからの REPL)、Channels のセットアップ改善(WhatsApp ペアリングフロー・モバイル対応・Telegram 手動設定の明確化)、モバイル・ホステッド環境の OpenAI OAuth ログイン、セッションの安全なインポート、メモリプロバイダーの切り替え。
  • CLI: トラブルシューティング用の --safe-modehermes config get / unsethermes debug share --nous(Nous 内部ストレージへの非公開アップロード)、hermes gateway run --external-supervisorhermes uninstall --dry-run で、実際には何も変更せずに削除対象を確認できる。TLS 証明書の検証失敗時は同一リクエストを再試行しなくなり、フォールバックプロバイダー未設定なら即時にエラーとなって修正ヒント(SSL_CERT_FILE の指定や certifi の更新など)が表示される(フォールバック設定済みなら、別プロバイダーへの切り替えを試みてから中止)。pip や Homebrew でのインストールは非サポートとして警告が表示される。
  • Codex 連携: アプリサーバーランタイムのライブツールカード(TUI・デスクトップ双方に表示)、コメンタリーの中間メッセージ表示、/usage reset(#66514・#66115・#64280)。

v0.17.0 → v0.18.0(The Judgment Release)

Section titled “v0.17.0 → v0.18.0(The Judgment Release)”

出典:

なお、v0.17.0 リリース後の main を実機確認して先行反映していた機能(ペット、MoA プリセット、/learn/prompt/goal などのスラッシュコマンド群)は、v0.18.0 で正式リリースに含まれた。

  • MoA がファーストクラスの仮想モデルに: 名前を付けた MoA プリセットが、moa プロバイダー配下の選択可能なモデルとして CLI・TUI・デスクトップ・ゲートウェイの全モデルピッカーに現れる。参照モデルそれぞれの出力がラベル付きの独立ブロックとして表示され、集約モデルの最終回答はリアルタイムでストリーミングされる。moa.save_traces(既定 false)と moa.trace_dir でターン全体のトレースを JSONL に保存できる(オプトイン)→ モデル
  • MoA のルーティングと参照モデルの挙動: 参照モデル・集約モデルはそれぞれ実際のプロバイダー経由で呼ばれ、コンテキストウィンドウは既定の 256K ではなく集約モデルから解決される。補助タスクも集約モデルへ解決される。参照モデルはツールの状態全体を参照でき、ユーザー・ツールの各応答で発火する → モデル
  • 検証と完了契約(Completion Contracts): /goal の常設ゴールループが「完了と言える証拠」を基準に完了を判定するようになった(モデルの自己申告では完了扱いにしない)。/goal wait <pid> でバックグラウンドプロセスの完了待ちにでき、pre_verify フックで独自チェックを組み込める。verify-on-stop は既定オフ(v32 マイグレーションで移行)
  • /learn ─ スキルの蒸留: ディレクトリ・URL・直前の作業手順から再利用可能なスキルを 1 コマンドで生成する(v0.17 リリース後 main で先行提供、v0.18.0 で正式リリース入り)→ スラッシュコマンド一覧
  • /journey ─ 学習タイムライン: エージェントが蓄積したメモリとスキルを時系列で表示する。CLI・TUI ではタイムライン表示から直接編集・削除でき、デスクトップアプリでは放射状のメモリグラフを再生表示できる。エージェントの「知っていること」を可視化し、誤った記憶を剪定できる → メモリとコンテキスト
  • バックグラウンドのファンアウト委譲: delegate_task が複数のサブエージェントを同時にバックグラウンド起動できるようになった。メインの会話はブロックされず、全員の完了時に結果が 1 ターンへ統合されて返る。実行中のサブエージェントは CLI・TUI のステータスバーで追跡できる
  • デスクトップの「プロジェクト」(コーディングコックピット): プロファイルごとのプロジェクトサイドバー、コーディングレール、レビューペーン、git worktree 管理、複数ターミナルパネル、チャット内の PR 風ファイル diff 表示 → プロジェクト
  • Google Vertex AI プロバイダー: Gemini モデルを Vertex AI の OpenAI 互換エンドポイント経由で利用できる。サービスアカウント JSON または ADC から短命の OAuth2 トークンを自動発行・自動更新し、静的 API キーが不要。デスクトップのアカウント一覧にはカード表示されず、CLI・設定ファイルから使う → プロバイダー
  • 新モデル対応: Fable 5、Sonnet 5、Fugu などのフロンティアモデルが利用可能に。Fable 5 / Sonnet 5 については、価格・メタデータを含む全ルートの整備が v0.19.0 で完了した → モデル
  • プロバイダーの追加・変更: Krea がマネージドの Nous Subscription ゲートウェイ経由で利用可能になった(ローカルのプロバイダーカタログにはカードとして現れない)。Z.AI は Global / China / Coding Plan からエンドポイントを選べるようになった(デスクトップのカード構成は変わらない)→ プロバイダー
  • /prompt: 次のプロンプトを $EDITOR(Markdown)で作成。長文の仕様やまとめ貼り付けを 1 行入力と戦わずに書ける(v0.18.0 で正式リリース入り)
  • 会話タイムラインレール: 長いスレッドを俯瞰して移動できる
  • コンテキスト使用量の内訳ポップオーバー: 何がコンテキストを消費しているかを分類表示
  • フローティングコンポーザー: ドラッグできる独立入力ウィンドウ
  • 応答の自動読み上げ(auto-TTS)トグル
  • ウィンドウの記憶: サイズ・位置・最大化状態を再起動後も保持
  • サブエージェントの観戦ウィンドウ: 読み取り専用のスペクテータートランスクリプト
  • テーマ: Marketplace テーマのインストールがリアルタイム検索型 UI に刷新され、インストール済みはチェック表示される。検索・インストールは Cmd+K パレットの「テーマをインストール」からも呼び出せ、プレビューは現在のカラーモード(ライト / ダーク)に合わせて描画される → 外観
  • インライン埋め込みの同意設定: チャット内のリッチプレビュー(YouTube・X など第三者サイト読み込み)を「確認 / 常に / オフ」から選べる設定が外観に追加 → 外観
  • メモリプロバイダーの OAuth 接続: OAuth 対応の外部メモリプロバイダーへ、API キーを貼らずにブラウザーサインインで接続できる → メモリとコンテキスト
  • 「今すぐ更新」ボタン: 準備済み更新を情報画面からその場でインストールできる → 情報
  • Computer Use の権限パネル: スキル画面に、macOS の TCC 許可(アクセシビリティ・画面収録)などを確認・付与するパネルが追加(英語表示)
  • ペットの改善: 散歩(roam)の挙動が穏やかで現実的になり、Alt+ホイールでサイズ変更、ポップアウトオーバーレイの通知対応など。孵化(/hatch)の演出改善と、CPU 負荷を抑えたクロマ処理も加わった → 外観
  • バックアップ: Web UI からのバックアップ作成・インポート・ダウンロード。更新前スナップショットに projects.db とかんばんボードを含む

破壊的変更・設定キーの変更(移行注記)

Section titled “破壊的変更・設定キーの変更(移行注記)”
  • google-gemini-cli / google-antigravity OAuth プロバイダーの削除: Gemini の OAuth 経路が整理された。Gemini は Google AI Studio の API キー、または新設の Google Vertex AI プロバイダーを使う。デスクトップでは「アカウント」から Google Gemini (OAuth + Code Assist) カードが消えて接続候補が 10 件 → 9 件になり、「API キー」からも「Gemini」カード(主キー HERMES_GEMINI_CLIENT_SECRET、詳細項目 HERMES_GEMINI_CLIENT_ID / HERMES_GEMINI_PROJECT_ID)がカタログごと削除された(2026-07-02 実機画面で確認。候補数は v0.19.0 で Fireworks AI の固定行が加わる前の時点)→ プロバイダー
  • verify-on-stop の既定値調整: 一度だけ実行される v32 マイグレーションで既定値が調整される。実機の製品既定は agent.verify_on_stop: auto(サーフェスに応じた自動判定。2026-07-02 実機確認)。ドキュメントだけの編集ではスキップされ、メッセージングサーフェスでは無効
  • 圧縮の in-place 化が既定に: コンテキスト圧縮で新しいセッション ID を切らず、同一セッション ID のまま圧縮する in_place が既定 True になった
  • cron ジョブ保存のプロファイル単位への差し戻し: v0.17 で導入されたグローバル保存が取り消され、プロファイル単位に戻った
  • auth.json のクローン廃止: プロファイル複製時に OAuth グラントを複製すると相互失効を招くため、複製しない挙動へ変更
  • prompt_caching.enabled トグルの差し戻し: 再評価のため一旦取り下げ

設定 API・config.yaml の差分(GUI 非表示)

Section titled “設定 API・config.yaml の差分(GUI 非表示)”

新しい設定キー・環境変数: moa.save_tracesmoa.trace_dirpre_verify フック、display.reasoning_style(プラットフォーム別の推論表示)、NOUS_INFERENCE_BASE_URL、複数指定できる HERMES_WRITE_SAFE_ROOT など。

  • MCP 設定の永続化まわりの攻撃面をハードニングし、資格情報を持ち出す cron の base_url 上書きをブロック。
  • ファイル読み取りのシークレット接頭辞に再利用不可のセンチネルを導入。Slack の App-Level トークン(xapp-)をマスキング。
  • ブラウザーツールにクラウドメタデータへのアクセス遮断を全バックエンドで適用し、browser_back 後もプライベートネットワークガードを再チェック。
  • /resume/sessions を呼び出し元オリジンへスコープし、他者セッションの参照(IDOR)を防止。
  • aiohttp 3.14.1 への引き上げで CVE を解消。

ゲートウェイ・メッセージング

Section titled “ゲートウェイ・メッセージング”
  • スケールトゥゼロ: ホスト・リレー専用のゲートウェイがアイドル時に休眠し、再起動・移行・自動更新の前に安全に静止できる(drain 調整、実行中トランスクリプトの退避を含む)
  • 継続可能な cron: cron ジョブがスレッド優先(DM ミラーへのフォールバック付き)で会話を継続できる
  • プラットフォーム別の機能: Telegram のコマンドメニュー設定、Slack の Block Kit レンダリング(オプトイン)、Discord の推論サブテキスト表示(display.reasoning_style)、WhatsApp のネイティブメディア送信、Teams の動画・音声・文書送信、Signal の音声ノート改善など
  • Windows のハードニング: コンソールの点滅抑止、GUI 更新後のウィンドウレスなゲートウェイ再起動など
  • ダッシュボード: 未認証時のポータル SSO 自動リダイレクト、Keys ページでの任意の .env キー追加、バックアップのインポート・作成・ダウンロード、cron 実行フィールドの表示。
  • セットアップ: 最小構成から始める「Blank Slate」セットアップモード。
  • CLI: /reasoning full(思考の上限解放)、/timestamps、ワンショット LLM ヘルパー(llm.oneshot)など。

v0.16.0 → v0.17.0(The Reach Release)

Section titled “v0.16.0 → v0.17.0(The Reach Release)”

出典:

v0.17.0 リリース後の main で追加された機能

Section titled “v0.17.0 リリース後の main で追加された機能”
  • ペット(Petdex マスコット): 設定 → 外観にアニメーションマスコットを追加。CLI・TUI・デスクトップに表示され、ツール実行・成功・失敗など Hermes の状態に反応する。既定オフ、装飾のみでトークン・キャッシュ・挙動に影響しない。/pet/hatch コマンド、hermes pets CLI、Cmd+K パレット、Shift+クリックのポップアウトオーバーレイを備える → 外観
  • Mixture of Agents(MoA): 複数モデルの視点を集約する仮想モデルプロバイダー。設定 → モデルでプリセットを作成・編集し、モデルドロップダウンの MoA presets から選ぶ。/moa は既定プリセットでの単発実行 → モデル
  • 新しいスラッシュコマンド: /goal/subgoal(常設ゴール/Ralph ループ)、/steer(割り込みなしの誘導)、/queue/branch/background/learn/blueprint/curator/kanban/snapshot/debug など多数 → スラッシュコマンド一覧

破壊的変更・設定キーの変更(移行注記)

Section titled “破壊的変更・設定キーの変更(移行注記)”
  • write_mode(3値)→ write_approval(真偽値): ファイル書き込み承認の設定キーが、3値の write_mode から真偽値 write_approval に置き換わった。Desktop 側のファイル承認は設定画面の承認モード(安全性approvals.mode: manual / smart / off)で別管理されており、こちらは変更されていない。
  • エージェント用 send_message ツールの削除: エージェントが呼び出せる send_message ツールが廃止された。Desktop の通常チャットには影響しない。
  • tool_progress_grouping(新規・設定可能化): ツール進捗表示のグルーピングを設定できるようになった。
  • curator.consolidate(既定 off): メモリ curator のスキル統合はオプトイン(既定 off)。プルーニングは従来どおり既定 on。既定では追加トークンを消費しない(メモリとコンテキスト)。
  • プロバイダー環境変数の移動: CLAUDE_CODE_OAUTH_TOKEN が Anthropic カードの別名キーへ移り、HERMES_QWEN_BASE_URL は旧 DashScope カードの詳細欄から外れて非カード変数になった。ALIBABA_CODING_PLAN_* / KILOCODE_API_KEY / NOVITA_* はそれぞれ専用カードへ移った(プロバイダー)。

これらのうち Desktop の設定 UI 定義(constants.ts)に露出しないキーは、本ガイドの各設定ページには記載していない(ソース確認済み)。

  • 承認ボタンの認証を許可リストなしで fail-closed 化し、自ポリシーのゲートウェイアダプターも fail-closed に。
  • リクエストのデバッグダンプでシークレットをマスクし、公開ステータスからホストのメタデータを除外。
  • データ持ち出しが疑われる MCP stdio 設定を probe 前にブロック。
  • cua-driver(Computer Use)MCP の起動前にオペレーターの環境変数をサニタイズ。
  • 依存更新による CVE 解消(urllib3 / PyJWT)。
  • 通知(Notifications): OS 通知を種別ごとにトグル → 通知
  • キーボードショートカット: リバインド可能な専用パネル → キーボードショートカット
  • プロファイル管理: マシン全体でプロファイルを切り替え・編集 → プロファイル管理
  • スキルとツールの刷新: スキル / ツールセットの一覧・トグル → スキルとツール
  • メッセージング連携: 多数のチャネルを Desktop から接続(v0.17 で iMessage・Raft エージェントネットワークを追加)→ 連携の全体像
  • Watch-Windows: 委譲したサブエージェントの活動を専用ペーンに表示。
  • VS Code Marketplace テーマ: 任意のテーマをインストール → 外観
  • リサイズ可能なターミナルペーンコンポーザーのモデルセレクター / per-thread ドラフト
  • バックグラウンド サブエージェント: delegate_task(background=true) で背後実行。
  • 画像編集: image_generate が元画像の編集・変換に対応。
  • 音声(TTS)プロバイダーの拡張(Gemini・xAI・Piper の各種オプション。音声)、メモリプロバイダー Hindsight の retain スコープ設定可能化(メモリとコンテキスト)。
  • モデルの追加: xAI(Grok)サブスクリプションで Cursor の Composer モデル(grok-composer-2.5-fast)を選択可能に。
  • 統合プロバイダーカタログ: プロバイダー画面の「アカウント」が 7 → 10 候補、「API キー」が 22 → 29 カードに増えた。CLI の hermes model と同じ CANONICAL_PROVIDERS から両方を生成する hermes_cli/provider_catalog.py が新設され(v0.16 には不在)、これまで CLI 専用だった多くのプロバイダーが GUI のカードとして表示されるようになったため。新規カードは Anthropic / Alibaba Cloud (Coding Plan) / GitHub Copilot / Kilo Code / NovitaAI / OpenAI API / Tencent TokenHub の 7 件(うち Alibaba Cloud (Coding Plan) / Kilo Code / NovitaAI は v0.16 で「カードに表示されない変数」だったもの)、アカウント接続候補の追加は GitHub Copilot (ACP) / Google Gemini (OAuth + Code Assist) / OpenRouter 導線の 3 件 → プロバイダー
  • カードの改名と分離: DashScope (Qwen) → Qwen Cloud、GLM・Z.AI → Z.AI (GLM) に改名。v0.16 では 1 枚の「Gemini」カードに GOOGLE_API_KEYHERMES_GEMINI_* も同居していたが、本来の API キーである GOOGLE_API_KEY を主キーとする「Google AI Studio」と、HERMES_GEMINI_CLIENT_SECRET を主キーとする「Gemini」(Gemini CLI の OAuth クライアント上書き用)に分離された(後者は v0.18.0 で削除)→ プロバイダー
  • API キーカードの検索ボックス: カード一覧の上部に検索欄(プレースホルダー「プロバイダーを検索…」)が新設され、カード名・環境変数名・説明文で絞り込める → プロバイダー
  • ツールとキーの「設定」サブメニューの整理: HERMES_TOOL_PROGRESS / HERMES_TOOL_PROGRESS_MODE が削除され(ツール進捗は config.yamldisplay.tool_progress で管理)、HERMES_SIMPLEX_TEXT_BATCH_DELAY / RAFT_PROFILE が追加された → ツールとキー
  • 実行イメージ欄: 実行バックエンドの直下に、各バックエンドで使うコンテナ/環境イメージを指定する欄(terminal.docker_image / singularity_image / modal_image / daytona_image)が追加された。バックエンド選択に関係なく常に表示される → 詳細
  • アンインストール(Danger zone): 情報画面の下部に、削除範囲を 3 段階(GUI のみ / GUI+エージェント / 全データ)から選べるアンインストール節が追加された(英語表示)→ 情報
  • ブラウザのダッシュボード: プロファイルビルダー(ブラウザからモデル・スキル・MCP を選ぶ)、Skills Hub の刷新(接続ハブ・プレビュー・セキュリティスキャン)、セキュア認証(OAuth ゲート、トークン必須エンドポイントは 401)、マルチプロファイルのマシン全体ビュー。なお Desktop アプリ内のプロファイル / スキル管理は プロファイル管理スキルとツール を参照。
  • CLI: iMessage の Photon セットアップ(hermes photon setup。デバイスコード認証を含む)など。Desktop のメッセージング連携は iMessage を参照。
  • 自動化(Automation Blueprints): cron を書かずにスケジュール実行を設定できるブループリント(CLI / ブラウザのダッシュボード)。

→ 公式の入口は 公式リンク集 を参照。

© 2026 Hermes Desktop ガイド(非公式)。引用・部分転載は、出典として本ページへのリンクを添えていただければ歓迎します。記事全文の無断複製・転載はご遠慮ください。