rlaope/oh-my-hermesPublic

⚚ The coding harness with Hermes Agent wired into IDE.

AI summary: An operating layer for Hermes Agent providing capabilities for planning, research, and project memory orchestration.

Stars
4.8K
+500 today
Forks
369
Watchers
15
Open issues
11
Open PRs
3
Contributors
~30
Commits
5.8K
Branches
1.2K
Views (30d)
2

PythonMITCreated Jun 3, 2026Last push todayLatest release v4.0.2+1.3K stars this week+1.8K this month

Quick answers

What is oh-my-hermes?
An operating layer for Hermes Agent providing capabilities for planning, research, and project memory orchestration.
What does oh-my-hermes do?
oh-my-hermes acts as a robust operating layer sitting directly above the NousResearch Hermes Agent. It enhances the standard agent workflow by adding explicit capabilities for task planning, deep research, coding handoffs, and persistent project memory management. The framework evaluates raw requests to automatically select the most appropriate workflow and evidence gates before executing native skills. By maintaining an honest record of actions taken, it strengthens existing operational processes without hiding or replacing the underlying Hermes execution engine.
Who is oh-my-hermes for?
AI researchers and developers working with the NousResearch Hermes agent who want a streamlined setup.
How do I get started with oh-my-hermes?
curl -fsSL https://raw.githubusercontent.com/rlaope/oh-my-hermes/main/install.sh | sh
How popular is oh-my-hermes on GitHub?
rlaope/oh-my-hermes has 4,752 stars and 369 forks on GitHub, and gained 1,278 stars in the last 7 days.
What license does oh-my-hermes use?
rlaope/oh-my-hermes is released under the MIT license.

Star history

since Sep 14, 2026
02K4KSep 2026Sep 2026Oct 2026Oct 2026
4.8K stars as of Oct 29, 2026. Measured daily since Sep 14, 2026; GitHub no longer exposes earlier star timestamps.

Update history

6 recorded
  • Oct 29, 2026Description changed from "The coding intelligence and skills for Hermes Agent ⚚ just install once. then type 'dag-ulw' to be graph engineering mas" to "⚚ The coding harness with Hermes Agent wired into IDE.".
  • Oct 26, 2026New release v4.0.2 (previously v3.0.2).
  • Oct 26, 2026Description changed from "The packages for Hermes Agent ⚚ skills, coding harness, long-term memory, model optimized subagent & bot team workflows" to "The coding intelligence and skills for Hermes Agent ⚚ just install once. then type 'dag-ulw' to be graph engineering mas".
  • Oct 23, 2026Description changed from "All in one plugin for Hermes Agent ⚚ the coding intelligence, a long-term memory system and model optimized workflow pac" to "The packages for Hermes Agent ⚚ skills, coding harness, long-term memory, model optimized subagent & bot team workflows".
  • Oct 18, 2026New release v3.0.2 (previously v3.0.1).
  • Oct 9, 2026New release v3.0.1 (previously v3.0.0).

Contribution activity

commits per day, last 52 weeks
NovDecJanFebMarAprMayJunJulAugSepOctMonWedFri2025-11-02: 0 commits2025-11-03: 0 commits2025-11-04: 0 commits2025-11-05: 0 commits2025-11-06: 0 commits2025-11-07: 0 commits2025-11-08: 0 commits2025-11-09: 0 commits2025-11-10: 0 commits2025-11-11: 0 commits2025-11-12: 0 commits2025-11-13: 0 commits2025-11-14: 0 commits2025-11-15: 0 commits2025-11-16: 0 commits2025-11-17: 0 commits2025-11-18: 0 commits2025-11-19: 0 commits2025-11-20: 0 commits2025-11-21: 0 commits2025-11-22: 0 commits2025-11-23: 0 commits2025-11-24: 0 commits2025-11-25: 0 commits2025-11-26: 0 commits2025-11-27: 0 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 0 commits2025-12-02: 0 commits2025-12-03: 0 commits2025-12-04: 0 commits2025-12-05: 0 commits2025-12-06: 0 commits2025-12-07: 0 commits2025-12-08: 0 commits2025-12-09: 0 commits2025-12-10: 0 commits2025-12-11: 0 commits2025-12-12: 0 commits2025-12-13: 0 commits2025-12-14: 0 commits2025-12-15: 0 commits2025-12-16: 0 commits2025-12-17: 0 commits2025-12-18: 0 commits2025-12-19: 0 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 0 commits2025-12-23: 0 commits2025-12-24: 0 commits2025-12-25: 0 commits2025-12-26: 0 commits2025-12-27: 0 commits2025-12-28: 0 commits2025-12-29: 0 commits2025-12-30: 0 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 0 commits2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 0 commits2026-01-06: 0 commits2026-01-07: 0 commits2026-01-08: 0 commits2026-01-09: 0 commits2026-01-10: 0 commits2026-01-11: 0 commits2026-01-12: 0 commits2026-01-13: 0 commits2026-01-14: 0 commits2026-01-15: 0 commits2026-01-16: 0 commits2026-01-17: 0 commits2026-01-18: 0 commits2026-01-19: 0 commits2026-01-20: 0 commits2026-01-21: 0 commits2026-01-22: 0 commits2026-01-23: 0 commits2026-01-24: 0 commits2026-01-25: 0 commits2026-01-26: 0 commits2026-01-27: 0 commits2026-01-28: 0 commits2026-01-29: 0 commits2026-01-30: 0 commits2026-01-31: 0 commits2026-02-01: 0 commits2026-02-02: 0 commits2026-02-03: 0 commits2026-02-04: 0 commits2026-02-05: 0 commits2026-02-06: 0 commits2026-02-07: 0 commits2026-02-08: 0 commits2026-02-09: 0 commits2026-02-10: 0 commits2026-02-11: 0 commits2026-02-12: 0 commits2026-02-13: 0 commits2026-02-14: 0 commits2026-02-15: 0 commits2026-02-16: 0 commits2026-02-17: 0 commits2026-02-18: 0 commits2026-02-19: 0 commits2026-02-20: 0 commits2026-02-21: 0 commits2026-02-22: 0 commits2026-02-23: 0 commits2026-02-24: 0 commits2026-02-25: 0 commits2026-02-26: 0 commits2026-02-27: 0 commits2026-02-28: 0 commits2026-03-01: 0 commits2026-03-02: 0 commits2026-03-03: 0 commits2026-03-04: 0 commits2026-03-05: 0 commits2026-03-06: 0 commits2026-03-07: 0 commits2026-03-08: 0 commits2026-03-09: 0 commits2026-03-10: 0 commits2026-03-11: 0 commits2026-03-12: 0 commits2026-03-13: 0 commits2026-03-14: 0 commits2026-03-15: 0 commits2026-03-16: 0 commits2026-03-17: 0 commits2026-03-18: 0 commits2026-03-19: 0 commits2026-03-20: 0 commits2026-03-21: 0 commits2026-03-22: 0 commits2026-03-23: 0 commits2026-03-24: 0 commits2026-03-25: 0 commits2026-03-26: 0 commits2026-03-27: 0 commits2026-03-28: 0 commits2026-03-29: 0 commits2026-03-30: 0 commits2026-03-31: 0 commits2026-04-01: 0 commits2026-04-02: 0 commits2026-04-03: 0 commits2026-04-04: 0 commits2026-04-05: 0 commits2026-04-06: 0 commits2026-04-07: 0 commits2026-04-08: 0 commits2026-04-09: 0 commits2026-04-10: 0 commits2026-04-11: 0 commits2026-04-12: 0 commits2026-04-13: 0 commits2026-04-14: 0 commits2026-04-15: 0 commits2026-04-16: 0 commits2026-04-17: 0 commits2026-04-18: 0 commits2026-04-19: 0 commits2026-04-20: 0 commits2026-04-21: 0 commits2026-04-22: 0 commits2026-04-23: 0 commits2026-04-24: 0 commits2026-04-25: 0 commits2026-04-26: 0 commits2026-04-27: 0 commits2026-04-28: 0 commits2026-04-29: 0 commits2026-04-30: 0 commits2026-05-01: 0 commits2026-05-02: 0 commits2026-05-03: 0 commits2026-05-04: 0 commits2026-05-05: 0 commits2026-05-06: 0 commits2026-05-07: 0 commits2026-05-08: 0 commits2026-05-09: 0 commits2026-05-10: 0 commits2026-05-11: 0 commits2026-05-12: 0 commits2026-05-13: 0 commits2026-05-14: 0 commits2026-05-15: 0 commits2026-05-16: 0 commits2026-05-17: 0 commits2026-05-18: 0 commits2026-05-19: 0 commits2026-05-20: 0 commits2026-05-21: 0 commits2026-05-22: 0 commits2026-05-23: 0 commits2026-05-24: 0 commits2026-05-25: 0 commits2026-05-26: 0 commits2026-05-27: 0 commits2026-05-28: 0 commits2026-05-29: 0 commits2026-05-30: 0 commits2026-05-31: 0 commits2026-06-01: 0 commits2026-06-02: 0 commits2026-06-03: 12 commits2026-06-04: 22 commits2026-06-05: 22 commits2026-06-06: 32 commits2026-06-07: 3 commits2026-06-08: 21 commits2026-06-09: 17 commits2026-06-10: 14 commits2026-06-11: 16 commits2026-06-12: 1 commit2026-06-13: 4 commits2026-06-14: 10 commits2026-06-15: 6 commits2026-06-16: 8 commits2026-06-17: 15 commits2026-06-18: 37 commits2026-06-19: 49 commits2026-06-20: 57 commits2026-06-21: 10 commits2026-06-22: 3 commits2026-06-23: 19 commits2026-06-24: 13 commits2026-06-25: 10 commits2026-06-26: 5 commits2026-06-27: 5 commits2026-06-28: 26 commits2026-06-29: 115 commits2026-06-30: 70 commits2026-07-01: 34 commits2026-07-02: 8 commits2026-07-03: 5 commits2026-07-04: 29 commits2026-07-05: 1 commit2026-07-06: 11 commits2026-07-07: 1 commit2026-07-08: 10 commits2026-07-09: 6 commits2026-07-10: 0 commits2026-07-11: 6 commits2026-07-12: 0 commits2026-07-13: 0 commits2026-07-14: 0 commits2026-07-15: 12 commits2026-07-16: 5 commits2026-07-17: 4 commits2026-07-18: 0 commits2026-07-19: 0 commits2026-07-20: 0 commits2026-07-21: 1 commit2026-07-22: 12 commits2026-07-23: 3 commits2026-07-24: 12 commits2026-07-25: 19 commits2026-07-26: 36 commits2026-07-27: 50 commits2026-07-28: 34 commits2026-07-29: 18 commits2026-07-30: 9 commits2026-07-31: 25 commits2026-08-01: 50 commits2026-08-02: 13 commits2026-08-03: 31 commits2026-08-04: 14 commits2026-08-05: 7 commits2026-08-06: 5 commits2026-08-07: 11 commits2026-08-08: 11 commits2026-08-09: 48 commits2026-08-10: 14 commits2026-08-11: 17 commits2026-08-12: 24 commits2026-08-13: 27 commits2026-08-14: 32 commits2026-08-15: 19 commits2026-08-16: 27 commits2026-08-17: 14 commits2026-08-18: 26 commits2026-08-19: 30 commits2026-08-20: 8 commits2026-08-21: 18 commits2026-08-22: 2 commits2026-08-23: 2 commits2026-08-24: 26 commits2026-08-25: 7 commits2026-08-26: 30 commits2026-08-27: 44 commits2026-08-28: 24 commits2026-08-29: 16 commits2026-08-30: 26 commits2026-08-31: 28 commits2026-09-01: 17 commits2026-09-02: 22 commits2026-09-03: 34 commits2026-09-04: 16 commits2026-09-05: 107 commits2026-09-06: 26 commits2026-09-07: 10 commits2026-09-08: 47 commits2026-09-09: 21 commits2026-09-10: 32 commits2026-09-11: 62 commits2026-09-12: 49 commits2026-09-13: 39 commits2026-09-14: 20 commits2026-09-15: 59 commits2026-09-16: 57 commits2026-09-17: 30 commits2026-09-18: 2 commits2026-09-19: 41 commits2026-09-20: 39 commits2026-09-21: 26 commits2026-09-22: 6 commits2026-09-23: 30 commits2026-09-24: 27 commits2026-09-25: 23 commits2026-09-26: 26 commits2026-09-27: 8 commits2026-09-28: 55 commits2026-09-29: 26 commits2026-09-30: 10 commits2026-10-01: 16 commits2026-10-02: 3 commits2026-10-03: 0 commits2026-10-04: 12 commits2026-10-05: 14 commits2026-10-06: 37 commits2026-10-07: 17 commits2026-10-08: 13 commits2026-10-09: 15 commits2026-10-10: 26 commits2026-10-11: 3 commits2026-10-12: 30 commits2026-10-13: 191 commits2026-10-14: 157 commits2026-10-15: 171 commits2026-10-16: 114 commits2026-10-17: 56 commits2026-10-18: 0 commits2026-10-19: 2 commits2026-10-20: 27 commits2026-10-21: 51 commits2026-10-22: 114 commits2026-10-23: 60 commits2026-10-24: 75 commits2026-10-25: 60 commits2026-10-26: 12 commits2026-10-27: 0 commits2026-10-28: 0 commits2026-10-29: 0 commits2026-10-30: 0 commits2026-10-31: 0 commits
3,867 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Rising fast

    +1,278 stars this week

  • Very active

    3,867 commits in 52 weeks

  • Well documented

    High community health score

  • Permissive license

    MIT

  • Continuous integration

    Automated checks passing

  • Repeat trending

    4 trending appearances

What oh-my-hermes does

oh-my-hermes acts as a robust operating layer sitting directly above the NousResearch Hermes Agent. It enhances the standard agent workflow by adding explicit capabilities for task planning, deep research, coding handoffs, and persistent project memory management. The framework evaluates raw requests to automatically select the most appropriate workflow and evidence gates before executing native skills. By maintaining an honest record of actions taken, it strengthens existing operational processes without hiding or replacing the underlying Hermes execution engine.

AI researchers and developers working with the NousResearch Hermes agent who want a streamlined setup.

  • Workflow orchestration: Automatically selects appropriate operational workflows based on the complexity of the agent request.
  • Persistent memory: Maintains project-level context and an explicit record of all actions taken by the agent.
  • Evidence gating: Establishes clear boundaries and verification steps before executing critical coding tasks.
  • Multilingual support: Provides comprehensive documentation and interfaces in English, Korean, Japanese, and Chinese.
  • Native skill execution: Runs Hermes skills directly without abstracting away the core execution layer.

Where teams use it

Task planning

Structure complex development requests into actionable steps using the agent's advanced planning capabilities.

Deep research

Enable the agent to autonomously gather information and compile detailed reports for software projects.

Standardized environments

Ensure all team members use the exact same configuration for their local Hermes agents.

Tooling integration

Connect Hermes agents to community-developed plugins easily and efficiently.

Getting started: curl -fsSL https://raw.githubusercontent.com/rlaope/oh-my-hermes/main/install.sh | sh

README

main branch

OH-MY-HERMES

oh-my-hermes logo: the oh-my-hermes character in bold black line art on a white rounded-square tile

All-in-one package for Hermes Agent. Install once, then just type dag-ulw.

GitHub Release npm downloads GitHub Contributors GitHub Stars License Docs

English | 简体中文 | 日本語 | Русский | 한국어 | Español | Français | Deutsch | Português (Brasil) | Italiano

oh-my-hermes is an operating layer for Hermes Agent.
You keep talking to Hermes. OMH picks the skill and a model for each lane, and runs the work in parallel.
It never patches or replaces Hermes, and it never reports planned work as done.

Install

curl -fsSL https://raw.githubusercontent.com/rlaope/oh-my-hermes/main/install.sh | sh
omh setup

Windows and other options →


What you get

  • The right model for every lane.
    Each lane is tagged with a work category: ultrabrain, deep, visual-engineering, quick and more.
    The category picks that lane's model chain and reasoning effort, and you can edit every chain.
    When a provider rejects a model, the chain moves to the next one instead of silently downgrading.
    omh model opens the picker; see which model runs each lane.

  • /dag-ulw graph runs.
    Your goal becomes a graph of small nodes, and the ready ones run in parallel.
    Each node runs on its category's model and effort; nodes running at once never share a write scope.
    A separate node checks the goal, and failed nodes are repaired before the report.

  • Expert skills on demand.
    A hundred-plus omh-* specialists: frontend, backend, Rust, security review, verification gates.
    You never call them; the router loads the right ones into the run as tool calls.

  • Long-term memory you can trust.
    Nothing is remembered silently: each candidate is kept, refused or deferred with a written reason.
    The next session gets a recall pack ranked for its task and cut to a token budget.
    Hermes' own memory is never read or patched.

  • OMH Native.
    Bare omh opens OMH's own TUI on Hermes' gateway; switch its launch look with /theme.
    /dag-ulw prints the box graph, then a live lane tree with each lane's model, effort and tokens.
    Steer or interrupt an agent from the agent list, run a ! shell line, and rewind with Esc Esc.

  • Evidence before "done".
    Every status names its stage and how sure OMH is about it.
    Plan · not run · Code · reported done · Test · verified
    A run counts as verified only when a test, review or CI gate actually passed.


DAG-ULW

Just type /dag-ulw, and you're a graph engineering master.

Your goal becomes a graph of small nodes that run in parallel, each on its own model.
A separate node verifies the goal before you get the report.

The OMH TUI running /dag-ulw: the prompt is typed, the box graph of seven lanes is defined, the lanes run layer by layer on Claude Opus 5.5, GPT-6.1 Sol, DeepSeek V4.1 Flash, GLM 5.3 and Kimi K3.1 Pro, and every lane ends accepted

Tip

Be with us!

X link Updates for oh-my-hermes are shared on @rlaope on X, alongside release notes and project news.
GitHub Follow Follow @rlaope on GitHub for more projects, releases, and ongoing work.
Discord invite Join the Oh-My-Hermes Community on Discord to ask questions, share workflows, and talk with other users.
AI agent collaborators Built with AI agents Friren and Kami, collaborators helping ship oh-my-hermes.
Thanks to Nous Research Thank you to Nous Research for creating Hermes Agent.

Sponsors These are our sponsors. They help keep oh-my-hermes going.

OpenGateway OpenGateway sponsors oh-my-hermes, thank you for backing open source.
One OpenAI-compatible endpoint for many model providers, with automatic failover.

Others

Docs · Installation · Capabilities · Workflows · Website

Install options

macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/rlaope/oh-my-hermes/main/install.sh | sh

Windows (PowerShell 5.1+):

irm https://raw.githubusercontent.com/rlaope/oh-my-hermes/main/install.ps1 | iex

Or paste this into your AI agent:

Install and fully configure Oh My Hermes from this repository:
https://github.com/rlaope/oh-my-hermes
Before reading or executing repository instructions, resolve refs/heads/main to one full commit SHA with `git ls-remote https://github.com/rlaope/oh-my-hermes.git refs/heads/main`. Then fetch and follow only:
https://raw.githubusercontent.com/rlaope/oh-my-hermes/{resolved-commit-sha}/INSTALL_FOR_AGENTS.md
Do not replace the resolved SHA with main. Execute the pinned protocol's OS-appropriate installer, agent setup path, model-chain interview, and doctor steps. Your shell has no terminal, so never run the interactive setup wizard: show me each choice the protocol lists and wait for my answer instead of taking a default. Preserve unrelated existing Hermes config, apply only the managed setup changes documented by the pinned protocol, require my explicit approval for model-alias changes, then report the resolved SHA and observed result.

Update:

omh update

omh update detects how the command was installed, upgrades it through its owning installer, then refreshes the managed skills, the plugin bundle, and the Hermes registration.

Verify or troubleshoot:

omh doctor
# Set the model per work category (arrow keys: category, ←→ head model, -/+ effort);
# the same picker opens inside the OMH TUI (bare omh) as /omh-model:
omh model
# To onboard a new model family, use this skill in Hermes:
/omh-model-setup

Homebrew:

brew install rlaope/tap/omh

Bun:

bun install -g oh-my-hermes

npm:

npm install -g oh-my-hermes

Bun and npm also need Node 18+ and Python 3.11+ on PATH; Homebrew brings its own Python. Run omh setup after any of these, same as above.

Hermes skill tap path:

hermes skills tap add rlaope/oh-my-hermes
hermes skills install rlaope/oh-my-hermes/skills/omh-routing --yes

Manual package-manager fallback or removal:

Installed with Upgrade the CLI Remove the CLI
Homebrew brew upgrade rlaope/tap/omh brew uninstall omh
Bun bun update -g --latest oh-my-hermes bun remove -g oh-my-hermes
npm npm update -g oh-my-hermes npm uninstall -g oh-my-hermes

Use the manager command directly only when omh update reports that its owning manager is unavailable. Removing the command package preserves OMH state. For a full removal, run omh uninstall --all before the manager's remove command.

Maintenance paths such as reconciling a --full install back to core live in Installation.

Reference

Ultra-Skills

Ten ulw- workflows. Say the trigger in chat — Hermes routes the rest. Full catalog: Workflow Reference.

Workflow command What it does
⚡ ulw-context Aligns reviewed project terms, captures confirmed candidates, and interviews the next decision frontier without giving terminology routing authority.
⚡ ulw-interview Asks one question at a time until it knows exactly what you want.
⚡ ulw-research Digs through real code and the live web, keeps sources, and verifies anything doubtful.
⚡ ulw-plan Builds a reviewed plan: options compared, risks named, done-criteria agreed.
⚡ ulw-work Runs an accepted plan in parallel lanes that never touch the same file.
⚡ dag-ulw Runs a big job as a graph of small parallel nodes, verifies the goal with a separate node, and repairs what failed.
⚡ ulw-maestro Runs a delegated task on Claude Code or Codex — prompt composed from the CLI's own installed skills, spawned live with a dock row and a steerable session.
⚡ ulw-loop Cycles plan → build → review until the goal actually passes.
⚡ ulw-qa Attacks the build with hostile scenarios and fixes what breaks.
⚡ ulw-perf Measures where it is actually slow or expensive, then fixes one hot path at a time.
Recommended set

Type these at the Hermes prompt. The ulw- prefix picks the workflow; the rest is your request in plain words.

1. Shape it. ulw-interview when the idea is still fuzzy, ulw-plan when the change is known but risky.

❯ ulw-interview: I want a CLI that tracks the ISS and warns me before it passes overhead
❯ ulw-plan: analyze this project's circular dependencies and plan the refactor

2. Build it. ulw-work runs the accepted plan in parallel lanes that never edit the same file.

❯ ulw-work: run the accepted plan

3. Finish it. ulw-loop keeps cycling until the gate you name passes.

❯ ulw-loop: keep going until npm test passes

How it works with Hermes

Hermes Agent already runs the loop. OMH decides what goes into it: which model and effort each lane gets, who owns the code change, which skills apply, and what counts as done. Two rules hold everywhere: model choice and coding ownership are separate decisions, and nothing prepared is ever reported as executed. The generated catalog, triggers, and evidence rules live in Workflow Reference.

The workflow

Understand → Research → Decide → Plan → Execute → Verify → Operate → Learn

Stage What happens
Understand Confirm the intent, constraints, project terms, and stop conditions.
Research Replace assumptions with source-backed product, code, or operational context.
Decide Make the options, tradeoffs, and decision owner explicit.
Plan Turn accepted scope, coding ownership, tests, and done criteria into an executable plan.
Execute Dispatch bounded work to the selected owner and track what actually runs; a prepared handoff is not execution evidence.
Verify Base the verdict on observed test results, review findings, CI status, and runtime evidence.
Operate Keep release health, incidents, rollback state, and follow-up work visible.
Learn Promote reviewed, scoped lessons into project memory or workflow improvements.

Highlights

Intelligence What OMH adds
🧭 Mixture-of-models routing Every delegated lane lands on a category (model + reasoning effort) at dispatch time. Chains fall through when a provider rejects a model, and a child that did no work shows failed, never a green row.
🎛️ Per-family calibration Prompting is tuned per model family and generation — GPT-6 Astra, GPT-5.6, Claude 5.5, GLM 5.3, Kimi, Gemini, Qwen, DeepSeek and more — and each tune is kept only while the benchmark pair says it helps.
🗂️ Categories you own Shipped model categories, with omh model-chains set to reorder, an entitlement interview that reorders chains per machine, and a live view of what a request would route to before it runs.
🖥️ Native TUI surface The OMH HUD (live rows with category, turns, cost, cache), the phase todo above the prompt, parallel shot ×N, full-row diff bands, and a theme of your own — in the OMH TUI bare omh opens, never patching Hermes.
⚡ Observed parallel work Independent work splits into fanout units with disjoint file ownership, admission control under provider pressure, typed result sidecars, and verification gates that read what came back.
💸 Priced cost telemetry Token counts and dollar figures on every HUD row and run summary, priced from a rate table that cites its source; an unpriceable run reads unknown, never $0.
🧠 Long-term project memory A file-backed memory provider Hermes loads, admission and retention policies, reviewer-gated writes, and recall packs with freshness and budget — Hermes' own memory stays untouched.
🔎 Structural code search A measured ast-grep playbook (28 languages, grep fallback) and omh codegraph uml for a repo-wide architecture picture, injected where executors read code; omh codegraph tests --changed names the tests a change reaches (codegraph commands).
🛡️ Guardrails you write Toolcall rules that block an off-script call with your own rule text, a completion-integrity gate that refuses stubs and skipped tests as evidence, and an approval tier for risky actions.
♾️ Ultra workflow engines Parallel delivery lanes, measured goal loops with ledgers and real completion gates, and decision-frontier interviews before any engine runs — listed in Ultra-Skills above.
📦 A deterministic catalog A hundred-plus installable skills generated from one source, routing precision corpora with negative controls, and drift gates that fail CI on a single divergent byte.

Evidence before claims

OMH never reports that work happened unless it watched it happen. Every status you see has two parts: the stage, and how sure OMH is about it.

You see It means
Plan · not run A prompt or plan is ready. Nothing has run yet.
Code · running An executor is running now, and OMH is watching it.
Code · reported done The executor said it finished. Nobody checked the result.
Test · verified A test, review, or CI gate actually passed.

An executor saying it is done is not the same as anything having been checked, and most tools spell both "complete". Capability impact is reported across separate dimensions rather than one marketing score; see Capability Impact. The product A/B lane that compares Hermes alone with Hermes through OMH has its corpus and offline pilot in place, and no measured run is published yet: benchmarks/product-ab/v1/README.md.

Documentation

Contributors

oh-my-hermes contributors

License

MIT, see LICENSE.
Built in the open with our contributors as part of Team Art & Engineering.

View on GitHub

Recent activity

commits and pull requests

Releases and announcements

21 total
  1. v4.0.2 · Kamiv4.0.2Oct 25, 2026462 downloads

    # Oh My Hermes 4.0.2 — Kami Kami makes dag-ulw the default for plain multi-part jobs, while it reads the remarks after a request more strictly. It also rebuilds the OMH TUI launch and transcript, keeps each conversation's delegation route its own, onboards Kimi K3.1 Pro into every Kimi K3 slot, and adds new science, job-search and show-reel skills. ## dag-ulw is the default for a job over many targets A plain request for a change over many targets now runs as a dag-ulw graph, with no `dag ulw` needed (`update every service to node 22`, `열린 PR들 전부 리베이스해줘`). The router starts one only on positive evidence: a change verb from a closed allow list, on an object that names independent units, or two named parts asked for in parallel. Work over many targets without that evidence (`review all open PRs`) is at most offered, as one question. A request that reads, reports, stops, holds, is conditional, is in the past, or is scoped to one PR does not start a run. Measured on the frozen acceptance sets; prompts outside them are not measured. (#2232) Hermes' route hint never starts a dag-ulw run on a split the router would only ask about, and a split that names its work (`결제, 주문, 배송 모듈을 병렬로 나눠

  2. v4.0.1 · graph masterv4.0.1Oct 22, 2026448 downloads

    # Oh My Hermes 4.0.1 — graph master graph master is the graph-engineering release. A big job can now run on its own as a graph of delegated nodes, the work Hermes hands out is drawn as a graph you can open and steer, and the routes that start paid runs got stricter about when they start one. ## dag-ulw: a big job runs as a graph Say `dag ulw <goal>` (also `ulw dag`, `/dag-ulw`, `dag ulw해줘`), or ask for a big job whose words say how it splits or how wide it reaches. Hermes plans it as a graph of small nodes, runs the ready ones in parallel on its own `delegate_task` children, settles each from its handoff file, verifies the goal with a separate node, repairs failed nodes (two cycles each), and adds the work the goal check finds missing to the same run (two rounds) before it reports. It asks only for scope, spend or an irreversible step. (#2185) dag-ulw also works on a Docker or SSH terminal whose user has a writable home: each node writes its handoff under the terminal user's own home, read once through Hermes' live environment, so a remote run no longer fails every node with `handoff_missing`. (#2205) Each delegated goal ends with its run marker, so a preview shows the task. (#

  3. v4.0.0 · Zeusv4.0.0Oct 19, 2026320 downloads

    # Oh My Hermes 4.0.0 — Zeus ⚡ Zeus brings three major changes to OMH: a dedicated terminal, long-term memory you can maintain through conversation, and specialist workflows connected to Hermes’ native capabilities. ## 🖥️ A dedicated OMH terminal Work with Hermes through OMH’s own terminal interface. Follow tool calls, inspect diffs, check subagents, and steer a running task without leaving the conversation. Session pickers, history search, rewind, and clearer approval and question controls make longer sessions easier to navigate. Run `omh` for the OMH terminal or `hermes` for the stock Hermes interface. OMH’s plugin capabilities remain available in Hermes. ## 🧠 Long-term memory, maintained through conversation Search, confirm, correct, and retire memories by talking to your agent. When Hermes’ built-in memory fills up, OMH can preserve approved copies in its long-term store before freeing native memory space. Retrieval prioritizes relevant context and current values. Memory support extends across TUI, Desktop, and supported messenger conversations, with user, channel, project, and profile boundaries governing what can be recalled. ## 🔗 Specialist workflows, connected to

  4. v3.0.2v3.0.2Oct 11, 2026656 downloads

    ## oh-my-hermes 3.0.2 · stable Everything merged since 3.0.1 (2026-10-07), **33 pull requests**. Per-entry detail is in the [3.0.2 section of CHANGELOG.md](https://github.com/rlaope/oh-my-hermes/blob/main/CHANGELOG.md). **Why this release** Two themes. Skills now hold a stricter line on how work is planned, debugged, tested and approved (SkillEx), and parallel coding agents can no longer run, reach the network, or leave settings behind outside their fence (FenceGuard). Memory capture also stops admitting instructions disguised as facts. **Highlights** - **SkillEx: skills that work more carefully.** (#2052–#2056, #2060–#2065, #2072) - A workflow name inside a block quote, a relayed line or a link no longer starts that workflow, and a delegated child is not told to start an orchestrating engine its brief names. - `plan` lists up to 5 inputs or failure modes no planned test covers; `ralplan` plans for the target state of whoever consumes the change and counts acceptance only from the user's answer. - `app-debugging` stops after three failed fixes on the same reproduction and re-examines the architecture. - `loop` reviews its design before launch: a finish line a program c

  5. v3.0.1v3.0.1Oct 7, 2026237 downloads

    ## oh-my-hermes 3.0.1 · stable Everything merged since 3.0.0 (2026-09-29), **56 pull requests**. Per-entry detail is in the [3.0.1 section of CHANGELOG.md](https://github.com/rlaope/oh-my-hermes/blob/main/CHANGELOG.md). **Why this release** Long-term memory was being written but never read back: the turn-start hook order left every prefetch empty. 3.0.1 fixes that and removes the human approval step from the memory loop, then takes the opportunity to give several things that were copied by hand a single owner — and fixes the two defects that work uncovered. **Highlights** - **Long-term memory that works without an operator.** - The memory provider renders its pack in the order Hermes calls its hooks, so recall reaches the model again. (#2001) - The model records memories itself through `omh_memory capture`; safe content is approved automatically, review-first stays available as a policy. (#2001, #2002) - Admission (capture, duplicate check, auto-safe approval, durability receipt) lives in the plugin bundle and the tool calls it in-process — no more locating an installed `omh` executable. (#2012) - `omh memory pack` scopes records the way recall does: explicit thread an

Code frequency

additions and deletions
+204.3K-204.3KWeek of 2026-05-31: +32,836 linesWeek of 2026-05-31: -9,482 linesWeek of 2026-06-07: +41,038 linesWeek of 2026-06-07: -7,543 linesWeek of 2026-06-14: +68,227 linesWeek of 2026-06-14: -8,345 linesWeek of 2026-06-21: +192,505 linesWeek of 2026-06-21: -165,979 linesWeek of 2026-06-28: +61,435 linesWeek of 2026-06-28: -7,065 linesWeek of 2026-07-05: +29,916 linesWeek of 2026-07-05: -10,733 linesWeek of 2026-07-12: +8,778 linesWeek of 2026-07-12: -273 linesWeek of 2026-07-19: +20,172 linesWeek of 2026-07-19: -7,609 linesWeek of 2026-07-26: +102,665 linesWeek of 2026-07-26: -36,756 linesWeek of 2026-08-02: +67,287 linesWeek of 2026-08-02: -5,401 linesWeek of 2026-08-09: +126,214 linesWeek of 2026-08-09: -6,485 linesWeek of 2026-08-16: +19,557 linesWeek of 2026-08-16: -3,034 linesWeek of 2026-08-23: +50,221 linesWeek of 2026-08-23: -9,312 linesWeek of 2026-08-30: +104,734 linesWeek of 2026-08-30: -8,142 linesWeek of 2026-09-06: +134,384 linesWeek of 2026-09-06: -8,326 linesWeek of 2026-09-13: +204,335 linesWeek of 2026-09-13: -84,414 linesWeek of 2026-09-20: +88,117 linesWeek of 2026-09-20: -22,405 linesWeek of 2026-09-27: +58,150 linesWeek of 2026-09-27: -13,572 linesWeek of 2026-10-04: +22,640 linesWeek of 2026-10-04: -7,752 linesMay 31, 2026Oct 4, 2026
+1.4M lines added, -422.6K removed over the last year.

Commits per week

last 52 weeks
7220Week of 2025-11-02: 0 commitsWeek of 2025-11-09: 0 commitsWeek of 2025-11-16: 0 commitsWeek of 2025-11-23: 0 commitsWeek of 2025-11-30: 0 commitsWeek of 2025-12-07: 0 commitsWeek of 2025-12-14: 0 commitsWeek of 2025-12-21: 0 commitsWeek of 2025-12-28: 0 commitsWeek of 2026-01-04: 0 commitsWeek of 2026-01-11: 0 commitsWeek of 2026-01-18: 0 commitsWeek of 2026-01-25: 0 commitsWeek of 2026-02-01: 0 commitsWeek of 2026-02-08: 0 commitsWeek of 2026-02-15: 0 commitsWeek of 2026-02-22: 0 commitsWeek of 2026-03-01: 0 commitsWeek of 2026-03-08: 0 commitsWeek of 2026-03-15: 0 commitsWeek of 2026-03-22: 0 commitsWeek of 2026-03-29: 0 commitsWeek of 2026-04-05: 0 commitsWeek of 2026-04-12: 0 commitsWeek of 2026-04-19: 0 commitsWeek of 2026-04-26: 0 commitsWeek of 2026-05-03: 0 commitsWeek of 2026-05-10: 0 commitsWeek of 2026-05-17: 0 commitsWeek of 2026-05-24: 0 commitsWeek of 2026-05-31: 88 commitsWeek of 2026-06-07: 76 commitsWeek of 2026-06-14: 182 commitsWeek of 2026-06-21: 65 commitsWeek of 2026-06-28: 287 commitsWeek of 2026-07-05: 35 commitsWeek of 2026-07-12: 21 commitsWeek of 2026-07-19: 47 commitsWeek of 2026-07-26: 222 commitsWeek of 2026-08-02: 92 commitsWeek of 2026-08-09: 181 commitsWeek of 2026-08-16: 125 commitsWeek of 2026-08-23: 149 commitsWeek of 2026-08-30: 250 commitsWeek of 2026-09-06: 247 commitsWeek of 2026-09-13: 248 commitsWeek of 2026-09-20: 177 commitsWeek of 2026-09-27: 118 commitsWeek of 2026-10-04: 134 commitsWeek of 2026-10-11: 722 commitsWeek of 2026-10-18: 329 commitsWeek of 2026-10-25: 72 commitsNov 2, 2025Oct 25, 2026
3.9K commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 21 commitsSun 1:00 — 9 commitsSun 2:00 — 17 commitsSun 3:00 — 6 commitsSun 4:00 — 0 commitsSun 5:00 — 0 commitsSun 6:00 — 0 commitsSun 7:00 — 3 commitsSun 8:00 — 2 commitsSun 9:00 — 6 commitsSun 10:00 — 22 commitsSun 11:00 — 29 commitsSun 12:00 — 26 commitsSun 13:00 — 44 commitsSun 14:00 — 58 commitsSun 15:00 — 29 commitsSun 16:00 — 25 commitsSun 17:00 — 18 commitsSun 18:00 — 16 commitsSun 19:00 — 9 commitsSun 20:00 — 9 commitsSun 21:00 — 17 commitsSun 22:00 — 8 commitsSun 23:00 — 15 commitsMon 0:00 — 19 commitsMon 1:00 — 23 commitsMon 2:00 — 21 commitsMon 3:00 — 9 commitsMon 4:00 — 4 commitsMon 5:00 — 9 commitsMon 6:00 — 4 commitsMon 7:00 — 4 commitsMon 8:00 — 6 commitsMon 9:00 — 21 commitsMon 10:00 — 37 commitsMon 11:00 — 26 commitsMon 12:00 — 20 commitsMon 13:00 — 48 commitsMon 14:00 — 22 commitsMon 15:00 — 28 commitsMon 16:00 — 38 commitsMon 17:00 — 28 commitsMon 18:00 — 34 commitsMon 19:00 — 17 commitsMon 20:00 — 26 commitsMon 21:00 — 22 commitsMon 22:00 — 10 commitsMon 23:00 — 12 commitsTue 0:00 — 9 commitsTue 1:00 — 2 commitsTue 2:00 — 2 commitsTue 3:00 — 0 commitsTue 4:00 — 1 commitsTue 5:00 — 0 commitsTue 6:00 — 2 commitsTue 7:00 — 2 commitsTue 8:00 — 2 commitsTue 9:00 — 19 commitsTue 10:00 — 31 commitsTue 11:00 — 41 commitsTue 12:00 — 50 commitsTue 13:00 — 44 commitsTue 14:00 — 48 commitsTue 15:00 — 34 commitsTue 16:00 — 46 commitsTue 17:00 — 60 commitsTue 18:00 — 50 commitsTue 19:00 — 34 commitsTue 20:00 — 30 commitsTue 21:00 — 33 commitsTue 22:00 — 48 commitsTue 23:00 — 36 commitsWed 0:00 — 9 commitsWed 1:00 — 10 commitsWed 2:00 — 11 commitsWed 3:00 — 24 commitsWed 4:00 — 14 commitsWed 5:00 — 6 commitsWed 6:00 — 3 commitsWed 7:00 — 5 commitsWed 8:00 — 3 commitsWed 9:00 — 24 commitsWed 10:00 — 19 commitsWed 11:00 — 15 commitsWed 12:00 — 28 commitsWed 13:00 — 59 commitsWed 14:00 — 41 commitsWed 15:00 — 44 commitsWed 16:00 — 43 commitsWed 17:00 — 33 commitsWed 18:00 — 39 commitsWed 19:00 — 47 commitsWed 20:00 — 46 commitsWed 21:00 — 13 commitsWed 22:00 — 11 commitsWed 23:00 — 49 commitsThu 0:00 — 31 commitsThu 1:00 — 36 commitsThu 2:00 — 16 commitsThu 3:00 — 20 commitsThu 4:00 — 14 commitsThu 5:00 — 15 commitsThu 6:00 — 20 commitsThu 7:00 — 18 commitsThu 8:00 — 8 commitsThu 9:00 — 19 commitsThu 10:00 — 36 commitsThu 11:00 — 48 commitsThu 12:00 — 37 commitsThu 13:00 — 53 commitsThu 14:00 — 33 commitsThu 15:00 — 37 commitsThu 16:00 — 26 commitsThu 17:00 — 35 commitsThu 18:00 — 26 commitsThu 19:00 — 41 commitsThu 20:00 — 30 commitsThu 21:00 — 14 commitsThu 22:00 — 19 commitsThu 23:00 — 6 commitsFri 0:00 — 13 commitsFri 1:00 — 15 commitsFri 2:00 — 7 commitsFri 3:00 — 6 commitsFri 4:00 — 2 commitsFri 5:00 — 8 commitsFri 6:00 — 2 commitsFri 7:00 — 3 commitsFri 8:00 — 10 commitsFri 9:00 — 19 commitsFri 10:00 — 17 commitsFri 11:00 — 10 commitsFri 12:00 — 16 commitsFri 13:00 — 84 commitsFri 14:00 — 48 commitsFri 15:00 — 21 commitsFri 16:00 — 29 commitsFri 17:00 — 25 commitsFri 18:00 — 45 commitsFri 19:00 — 43 commitsFri 20:00 — 30 commitsFri 21:00 — 18 commitsFri 22:00 — 14 commitsFri 23:00 — 18 commitsSat 0:00 — 16 commitsSat 1:00 — 24 commitsSat 2:00 — 30 commitsSat 3:00 — 15 commitsSat 4:00 — 28 commitsSat 5:00 — 6 commitsSat 6:00 — 4 commitsSat 7:00 — 4 commitsSat 8:00 — 8 commitsSat 9:00 — 6 commitsSat 10:00 — 14 commitsSat 11:00 — 33 commitsSat 12:00 — 24 commitsSat 13:00 — 58 commitsSat 14:00 — 69 commitsSat 15:00 — 79 commitsSat 16:00 — 35 commitsSat 17:00 — 25 commitsSat 18:00 — 24 commitsSat 19:00 — 29 commitsSat 20:00 — 21 commitsSat 21:00 — 32 commitsSat 22:00 — 19 commitsSat 23:00 — 27 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.

Who is committing

last 52 weeks
Maintainer commits3,695 (64%)
Community commits2,069 (36%)

5,764 commits in total over the last year.

DateListRankStars gained
Sep 17, 2026daily#12+74
Sep 16, 2026daily#12+74
Sep 15, 2026daily#7+52
Sep 14, 2026daily#7+52
  • public-apis/public-apis

    A collective list of free APIs

    493.2K stars · Python

  • morluto/rea

    Reverse engineer anything with agents, from app behavior down to native binaries.

    406.6K stars · TypeScript

  • openclaw/openclaw

    The AI that really does things. Any OS. Any Platform. The lobster way. 🦞

    393.4K stars · TypeScript

  • donnemartin/system-design-primer

    Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.

    376.1K stars · Python

  • obra/superpowers

    An agentic skills framework & software development methodology that works.

    308.2K stars · Shell

  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    292.5K stars · JavaScript