2026-06-23:Hermes を司令塔にした AI 開発オーケストレーション

07:04 司令塔的なエージェント

昨晩は Hermes とか司令塔?的なエージェントの使い方をあれこれ調べた

15:05 GPT‑5.5‑Cyber

Daybreak: Tools for securing every organization in the world | OpenAI
https://openai.com/index/daybreak-securing-the-world/

codex security pluginを走らせてみる

17:12 Hermes を司令塔にした AI 開発オーケストレーション環境を構築(AI生成メモ)

やったこと(概要)

Hermes Agent(Nous Research のオープンソース・セルフホスト型エージェント)を「司令塔」に据え、 その下で Codex CLI と Claude Code を「ワーカー」として動かす構成を Mac ローカルに一から構築した。

  • 司令塔(脳): Hermes Agent(Desktop app / CLI、v0.17.0)。モデルは MiniMax-M3。
  • 主力ワーカー: Codex CLI(gpt-5.5、ChatGPT サブスク課金)
  • 補助ワーカー: Claude Code(Pro 枠)。レビュー用、当面は明示依頼時のみ使用。
  • 実行環境: ローカルバックエンド(ローカル CMS に届かせるため)

構成の考え方

  • 脳は「指示の分解・委譲・検証・報告・ログ記録」に徹する軽い指揮役。だから安価な MiniMax-M3 で十分。
  • 重い実装・調査は Codex に寄せる(最近 Codex の使用量が多く、Claude は Pro に落としているため)。
  • Claude はレビュー・セカンドオピニオン・Codex が詰まったときの代替。今は自分が明示的に頼んだ時だけ。
  • 課金経路は脳(Nous Portal)/ Codex(ChatGPT サブ)/ Claude(Pro)で分かれる点を意識。
  • 1プロジェクト1司令塔。プロジェクト横断のコンテキスト混在を避ける。

セットアップ手順(実際の流れ)

  1. 旧 Hermes Desktop(0.15.1、更新失敗)をアンインストール。~/.hermes ごと削除してまっさらに。
  2. 公式(hermes-agent.nousresearch.com)の Mac インストーラで入れ直し(CLI + Desktop 同梱)。
  3. hermes setup で初回設定:
    • provider: Nous Portal(Plus プラン $20/mo・従量クレジット、OpenRouter/自前キーは未所持のため)
    • model: MiniMax-M3
    • tools: Web Search + Browser Automation を有効化(画像/動画/TTS は無効)
    • terminal backend: Local(ローカル CMS 用)
    • gateway: いったんスキップ(スマホ連携は後回し)
  4. ワーカー接続:
    • Claude Code … claude --version で確認(2.1.170、Pro でログイン)
    • Codex CLI … codex --version が ENOENT → Hermes 自身が再インストールして修復(0.142.0)
    • hermes auth add openai-codex で Codex 認証、claude-code / codex スキルを有効化
  5. 捨てリポジトリ(~/tmp/hermes-test)で「司令塔→ワーカー→検証→ログ→報告」の最小ループを検証。

SOUL.md に書いたルール(全プロジェクト共通)

  • ログ運用: タスク完了時に daily note(Google Drive の note プロジェクト配下 daily/YYYY-MM-DD.md)へ 実施内容・変更ファイル・未決事項を追記。各プロジェクトには activity-log.md も作成(note プロジェクトは例外)。 ログ記録は司令塔(Hermes)の責務とし、Claude Code の Stop hook には任せない。
  • 委譲ルール(厳守): ファイル編集・コード生成・調査・検証は規模を問わず必ず Codex に委譲。 「軽微」「1行」を理由に脳が自分で実行してはならない。変更を伴わない読み取りのみ脳が直接可。 Claude Code はユーザーが明示的にレビュー依頼したときだけ使用。 ワーカーは非対話モードで呼ぶ(Codex: codex exec --full-auto、Claude: claude -p、Claude は Stop hook 無効化)。

ハマったところ・学び

  • Codex CLI の ENOENT: npm 版が Apple Silicon バイナリ(vendor 配下)を取りこぼしていた。再インストールで解消。 Hermes 自身が原因切り分け→修復→codex スキルを自己改善(SKILL.md を patch)まで自律的にやった。
  • Claude Code の Stop hook: daily note(Google Drive 配下)への書き込みフックが非対話実行と干渉して詰まった。 → ログ記録を司令塔(Hermes)側に移し、Claude Code の Stop hook は無効化して呼ぶ方針に。
  • 委譲ルールの逃げ道: 「軽微なら自分でやってよい」と書くと、脳(MiniMax)が「1行だから」と自分で実行した。 → 例外条項を外して「規模を問わず必ず委譲」と言い切ったら、期待どおり Codex に委譲されるようになった。
  • SOUL.md の反映タイミング: 設定はセッション開始時に読まれる。更新後は新規セッションを開かないと反映されない。
  • Desktop app は CLI と同じ ~/.hermes を共有。設定・セッション・メモリがそのまま引き継がれる。 日本語入力は普通の入力欄なので、ターミナル TUI より快適(IME 問題を回避できる)。

達成できた状態(当初やりたかったこと)

  • 複数の依頼を司令塔に投げ、司令塔が適切なワーカーに振り、結果を検証して報告する
  • ワーカーを明示しなくても作業は自動で Codex に委譲される(規律が効いている)
  • 完了時に daily note と activity log へ自動記録、Obsidian にも反映
  • ローカル実行なのでローカル CMS にも届く

次にやること

  • 実プロジェクト(各々に AGENTS.md あり)で、まず読み取り=計画立案だけ投げて依存関係の捌きを確認
  • 実コード変更は最初の数回は git diff を目視確認してからコミット
  • 必要に応じて スマホ連携(LINE / iMessage)、リモートバックエンド(Modal/Daytona、CMS 非依存タスク用)を追加
  • 脳の規律が緩いと感じたら、モデルを qwen3.7-plus 等に切り替え検討

21:12 Keychron Orca echo

夢のタッグはまだ続く。Keychron×ギズモードの新作は「トラックボール付き分割キーボード」だ! | ギズモード・ジャパン
https://www.gizmodo.jp/article/orca-echo-press-release/

気になるなー。
とはいえ、1password の承認がしょっちゅう出ると TouchIDないときついしな、、


AA33AAE9-F2DB-4E24-B726-52B09B162D5B

満開