hermes

Run every coding agent side by side.

Hermes is a desktop console for coding agents from any vendor. Each task gets its own agent, terminal and branch, and one inbox tells you which agent is waiting for you.

claude code · codex · antigravity · opencode · copilot · goose · aider · kiro · your own commandmacOS · Linux · Windows (best-effort) · free · BSL 1.1

  1. 1One row per agentEach task's agent, its status, model, approval mode and branch. Claude Code, Codex, Antigravity and OpenCode side by side.
  2. 2Blocked on youThe badge counts the agents waiting for an approval, an answer or your review. Click it for the inbox.
  3. 3The agent's own interfaceEvery agent runs in its own terminal, exactly as it would anywhere else. The line under the header says what it is doing and how Hermes knows.
  4. 4Every turn recordedEach turn's changes are saved, so you can diff or restore one without touching your branch.
22.0

From a terminal with a chat to a console for every agent.

Hermes 1 put one agent's chat at the center. Hermes 2.0 starts, tracks and lands the work of any agent the same way. It follows what each agent reports and never answers a prompt for you: approvals stay in the agent's own interface.

New in Hermes 2.0
featurewhat you get
Any agentClaude Code, Codex, Antigravity CLI, OpenCode, GitHub Copilot CLI, goose, Aider, Kiro CLI, Hermes Agent, or any command you add as a Custom agent.
Terminal firstEvery agent runs its own interface in its own terminal. The Agent view for Claude stays available as an option.
Task launcher⌘NDescribe the task, press Enter, and an agent starts on its own branch with your task as its first prompt.
AccountsWork and personal accounts side by side; pick the account, model, effort and approval mode per task.
StatusNeeds approval, asked you, done or failed, reported by the agent itself where it can, with nothing to set up.
Inbox⌘IEverything blocked on you in one list, oldest first; ⌘I jumps to the next agent.
Away messagesOne short message to ntfy, Telegram or your webhook when an agent waits and you are away.
Turn historyEvery turn saved in git, with Diff and Restore, without touching your branch or stash.
Review Desk⌘GReview by turn or by file and send line comments to the agent that wrote them.
LandCommit, open a pull request or squash-merge in one step, with undo.
ChecksYour commands decide when an agent is done: they run at the end of each turn and before landing.
Feature TracksGuided phases as short markdown files in your repository, approved from the inbox.
Worktree recipesSetup commands, .env copies and a default check for every new task.
Survives restartsAgents keep running while Hermes quits, updates or restarts.
SpendWhat each agent reports it spent, an estimate where it only logs tokens, n/a otherwise; an optional cap per session.
Disk guardNo new task below 10 GB free; leftover worktree folders go in one action.
3launcher

Describe the task, pick the agent, press Enter.

The agent starts in a terminal on a new branch of its own, with your task as its first prompt. Pick the account, model, effort and approval mode it runs with; Hermes shows the exact command before it starts.

where
A new worktree on its own branch, an existing branch, or the folder you are in.
approval
Each agent's own modes, from Ask to Skip all. Skip all is marked as risky.
checks
Commands such as npm test that run when a turn ends and before you land.
setup
A .hermes/worktree.toml in your repository can run setup commands and copy files like .env into every new task.
more at once
Launch & next keeps the launcher open; Also on starts the same task with a second agent.
4inbox

Know which agent needs you.

Every session shows one status: working, needs approval, asked you, done, error or idle, marked exact when the agent reports it itself. Everything blocked on you collects in one inbox, oldest first, and ⌘I jumps to the next agent.

Away from your desk

Hermes can send one short message to ntfy, Telegram or a webhook of yours when an agent waits for you and you are not at the keyboard. It carries the agent, where it works, the task name and its state, never your prompts or code.

Notifications on your computer arrive only when an agent is blocked on you or done, never for the session you are looking at.

5review

Review by turn. Comment by line. Land with undo.

Hermes saves every agent turn in git, without touching your branch, staged changes or stash. The Review Desk shows what changed by turn or by file, sends your line comments to the agent that wrote those lines, and lands the work in one step.

land
Commit on the branch, push and open a pull request, or squash-merge locally.
undo
Landed by mistake? Undo reverses it.
restore
Restore or revert a single turn, after a preview.
risk flags
Lockfiles, CI workflows, auth code, secrets and new binaries are flagged.
overlap
Sessions whose turns touched the same files get a badge before you merge.
6tracks

Bigger features go through phases you approve.

Tick Track as a feature and the agent works in phases: questions, research, design, structure, plan, implement. Each phase is a short markdown file in your repository. The agent stops after each one until you approve it, edit it or skip it.

files
.hermes/features/<name>/ in the task's branch, reviewed in your own editor.
approvals
A phase that waits for you shows in the inbox; approving it starts the next one.
any agent
Every agent drives a track from its own terminal. Quick tasks create no extra files.
7agents

Your agents, your accounts.

Hermes checks which agents are installed and signed in, and what each one offers at launch. Keep a work and a personal account side by side and choose per task. Hermes never changes the agents' own global settings.

Each session shows the spend its agent reports, an estimate marked as one when the agent only logs tokens, or n/a. A cap stops an agent once its reported spend reaches the limit, and tasks beyond the limit wait in a queue.

agents
Claude Code, Codex, Antigravity CLI, OpenCode, GitHub Copilot CLI, goose, Aider, Kiro CLI and Hermes Agent, or any command you add as a Custom agent.
resume
Quit and reopen Hermes: each agent continues its own conversation.
keeps running
Agents keep working while Hermes quits, updates or restarts.
rules
See which instruction files each agent loads, and link CLAUDE.md to AGENTS.md in one action.
8keys

Every common action has a shortcut.

Shown for macOS. On Windows and Linux most use Ctrl+Shift, so plain Ctrl+letter stays with your terminal.

15 of 15
commandkeys
New task⌘N
New session (advanced: SSH, tmux, existing branch)⌘⇧N
Switch to session⌘1–9
Jump to the next agent waiting for you⌘I
Attention inbox⌘⇧I
Review Desk⌘G
Command palette⌘K
Sidebar⌘B
New tab⌘T
Split right⌘D
Split down⌘⇧D
Close pane⌘W
Prompt composer⌘J
Keyboard shortcuts⌘/
Settings⌘,
9changelog

Recently shipped

Full changelog
  1. v2.1.2Open a session in any folder, git or not: a plain folder, a parent folder that holds several projects, or a mix. A folder that is not a git repository opens directly, with no worktree, and the agent is told it may create a worktree or branch itself if it needs to change code in a repository inside it.
  2. v2.1.1Agents start reliably in project folders that macOS protects (Documents, Desktop, iCloud Drive and similar). If a new terminal briefly cannot find its folder, Hermes moves into the project folder before starting the agent, so the agent no longer stops with a confusing "low max file descriptors" error. If the folder really cannot be read, the session says which folder it is and how to allow access in System Settings → Privacy & Security.
  3. v2.1.0Hermes 2.1 brings thousands of ready-made prompts into the app and keeps old task folders from quietly filling your disk.
  4. v2.0.0Hermes 2.0 is a vendor-neutral console for every coding agent, terminal first. Claude Code, Codex, Antigravity, GitHub Copilot, OpenCode, goose, Aider, Kiro, Hermes Agent or any command you add run in their own terminal interface, exactly as they run anywhere else, and Hermes supervises them all the same way: it starts them, tells you which one needs you, records what each turn changed and helps you review and land the result. Hermes follows what your agents report and never answers a prompt on their behalf. The Agent view for Claude stays available as an option. Hermes IDE is not affiliated with Nous Research or its Hermes Agent.
  5. v1.4.1Every agent now opens in its own terminal, updates wait until your agents are done, a crash stays inside its pane, and Hermes is private by default.

Download Hermes IDE.

Free. Runs on your machine, with the agents and accounts you already have. Source-available under BSL 1.1.

platforms
macOS · Linux · Windows (best-effort)
license
BSL 1.1, source-available
price
free
latest version
v2.1.2