explaingit

pawel-cell/hermes-ceo

23ShellAudience · developerComplexity · 3/5ActiveSetup · moderate

TLDR

Shell playbook and bootstrapper that pairs Hermes Agent as orchestrator with OpenAI Codex CLI as code executor. The two agents pass a handoff file and a report file through a hidden .agents folder.

Mindmap

mindmap
  root((Hermes-CEO))
    Inputs
      CTO_HANDOFF md
      CEO_GOAL md
      AGENTS md
    Outputs
      last_report md
      Git commits
    Use Cases
      Delegate coding tasks
      Parallel worktrees
      Cron scheduled runs
    Tech Stack
      Shell
      Codex CLI
      Hermes Agent
      Git

Things people build with this

USE CASE 1

Set up a CEO and CTO agent pair inside any git repo

USE CASE 2

Delegate scoped coding tasks to Codex through a handoff file

USE CASE 3

Run parallel codex worktrees with one auth consumer per machine

USE CASE 4

Schedule cron retries that respect ChatGPT rate-limit windows

Tech stack

ShellBashCodexGitNode

Getting it running

Difficulty · moderate Time to first run · 30min

Requires a real terminal, an active ChatGPT Plus or Pro subscription, and only one codex process per machine to avoid refresh-token lockout.

In plain English

Hermes-CEO is a playbook and a small set of shell scripts for running two AI agents together inside any git repository, where one acts like a boss and the other like an engineer. The boss role is played by Hermes Agent, which holds the long term goal, remembers context, schedules work, and reviews results. The engineer role is played by the OpenAI Codex CLI, which actually edits the code. The two agents do not talk to each other directly. They exchange two files inside a hidden .agents folder: CTO_HANDOFF.md is the task in, last_report.md is the result out. To set it up in a new repo you go inside that repo and run a one line bash installer that the README provides. After that you log in to Codex in a real terminal, edit two templates the installer dropped in, AGENTS.md for your tech stack and lint commands and CEO_GOAL.md for the current business goal, then write your first handoff and run codex exec to produce a report. The repo ships two Hermes skills to make this less manual: one for the first time bootstrap and one for day to day use, including parallel git worktrees and scheduled cron runs. Two optional skills cover OpenRouter image generation and a template for making N slide decks. The README is unusually honest about the failure modes the author hit while using this pattern. Codex uses single use refresh tokens, so two codex processes refreshing at the same time will lock the account out, which means you must kill any running codex before starting a new one, even when using parallel worktrees. ChatGPT Plus has a token budget per rolling window, so long handoffs that ask Codex to read every doc in the repo will rate limit you within hours; the README shows a lean handoff template under two kilobytes and a bloated one that breaks things. There is a silent hang mode where codex exec keeps a dead websocket open, with a one liner to detect it and a recommendation to kill and retry. The README also draws a line on when not to use this. Single one shot Codex runs do not need it. Tasks under four files or two hundred lines have more orchestration overhead than savings. If Codex fails twice on the same handoff, the author says to stop delegating and write the code yourself.

Copy-paste prompts

Prompt 1
Walk me through running install.sh from Hermes-CEO inside my repo and what files it creates
Prompt 2
Write a lean CTO_HANDOFF.md under 2KB for adding pagination to my API endpoint, following the Hermes-CEO template
Prompt 3
Show me the pre-flight pkill codex check from Hermes-CEO and explain why refresh_token_reused happens
Prompt 4
Convert a ChatGPT local-time rate-limit reset into a UTC cron entry the way Hermes-CEO recommends
Prompt 5
Detect a silent codex exec hang using the ps and ss one-liner from the Hermes-CEO README
Open on GitHub → Explain another repo

Generated 2026-05-22 · Model: sonnet-4-6 · Verify against the repo before relying on details.