code-yeongyu/oh-my-openagentPublic

OmO: Just type "mass ulw" keyword with your prompt. Now you are the master of graph engineering.

AI summary: A powerful TUI harness and orchestrator for coding agents like Codex and OpenCode, optimized for complex codebases.

Stars
69.8K
+52 today
Forks
5.7K
Watchers
237
Open issues
612
Open PRs
452
Contributors
~353
Commits
17.8K
Branches
251

TypeScriptOtherCreated Dec 3, 2025Last push todayLatest release v5.0.0-beta.90+365 stars this week+1.1K this month

Quick answers

What is oh-my-openagent?
A powerful TUI harness and orchestrator for coding agents like Codex and OpenCode, optimized for complex codebases.
What does oh-my-openagent do?
oh-my-opencode (also known as LazyCodex) provides an advanced terminal user interface (TUI) and orchestration harness for AI coding agents. It is designed specifically to manage complex codebases by handling context effectively for models like Codex and OpenCode. The tool is currently undergoing a major refactor to support a multi-harness OS, allowing seamless switching between different agent backends. It emphasizes real-time, transparent building, with the maintainer actively streaming development using their own AI assistant. The project aims to provide the ultimate 'token-maximizing' environment for power users.
Who is oh-my-openagent for?
Terminal power users, AI researchers, and developers managing complex codebases who need a robust, terminal-native agent harness. It is ideal for 'token-maxxers' who want granular control over how their AI assistants consume and generate code.
How do I get started with oh-my-openagent?
npx lazycodex-ai install
How popular is oh-my-openagent on GitHub?
code-yeongyu/oh-my-openagent has 69,793 stars and 5,746 forks on GitHub, and gained 365 stars in the last 7 days.
What license does oh-my-openagent use?
code-yeongyu/oh-my-openagent is released under the Other license.

Star history

since Jul 29, 2026
020K40K60KJul 2026Aug 2026Sep 2026Oct 2026
69.8K stars as of Oct 4, 2026. Measured daily since Jul 29, 2026; GitHub no longer exposes earlier star timestamps.

Update history

1 recorded
  • Oct 4, 2026Previously tracked as code-yeongyu/oh-my-opencode; its 1 daily snapshot and 30 trending appearances were merged into this profile. Stars: 66,735 on 2026-07-29 under the old name, 69,741 on 2026-10-02 (+3,006).

Contribution activity

commits per day, last 52 weeks
SepOctNovDecJanFebMarAprMayJunJulAugSepMonWedFri2025-09-28: 0 commits2025-09-29: 0 commits2025-09-30: 0 commits2025-10-01: 0 commits2025-10-02: 0 commits2025-10-03: 0 commits2025-10-04: 0 commits2025-10-05: 0 commits2025-10-06: 0 commits2025-10-07: 0 commits2025-10-08: 0 commits2025-10-09: 0 commits2025-10-10: 0 commits2025-10-11: 0 commits2025-10-12: 0 commits2025-10-13: 0 commits2025-10-14: 0 commits2025-10-15: 0 commits2025-10-16: 0 commits2025-10-17: 0 commits2025-10-18: 0 commits2025-10-19: 0 commits2025-10-20: 0 commits2025-10-21: 0 commits2025-10-22: 0 commits2025-10-23: 0 commits2025-10-24: 0 commits2025-10-25: 0 commits2025-10-26: 0 commits2025-10-27: 0 commits2025-10-28: 0 commits2025-10-29: 0 commits2025-10-30: 0 commits2025-10-31: 0 commits2025-11-01: 0 commits2025-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: 12 commits2025-12-04: 10 commits2025-12-05: 85 commits2025-12-06: 3 commits2025-12-07: 0 commits2025-12-08: 22 commits2025-12-09: 42 commits2025-12-10: 12 commits2025-12-11: 28 commits2025-12-12: 28 commits2025-12-13: 62 commits2025-12-14: 49 commits2025-12-15: 35 commits2025-12-16: 32 commits2025-12-17: 25 commits2025-12-18: 4 commits2025-12-19: 34 commits2025-12-20: 20 commits2025-12-21: 11 commits2025-12-22: 16 commits2025-12-23: 14 commits2025-12-24: 18 commits2025-12-25: 53 commits2025-12-26: 13 commits2025-12-27: 14 commits2025-12-28: 38 commits2025-12-29: 8 commits2025-12-30: 42 commits2025-12-31: 19 commits2026-01-01: 25 commits2026-01-02: 38 commits2026-01-03: 38 commits2026-01-04: 20 commits2026-01-05: 42 commits2026-01-06: 17 commits2026-01-07: 30 commits2026-01-08: 7 commits2026-01-09: 21 commits2026-01-10: 14 commits2026-01-11: 35 commits2026-01-12: 21 commits2026-01-13: 37 commits2026-01-14: 65 commits2026-01-15: 29 commits2026-01-16: 65 commits2026-01-17: 37 commits2026-01-18: 11 commits2026-01-19: 33 commits2026-01-20: 32 commits2026-01-21: 14 commits2026-01-22: 67 commits2026-01-23: 59 commits2026-01-24: 35 commits2026-01-25: 27 commits2026-01-26: 37 commits2026-01-27: 33 commits2026-01-28: 40 commits2026-01-29: 23 commits2026-01-30: 63 commits2026-01-31: 25 commits2026-02-01: 55 commits2026-02-02: 39 commits2026-02-03: 47 commits2026-02-04: 67 commits2026-02-05: 37 commits2026-02-06: 49 commits2026-02-07: 104 commits2026-02-08: 116 commits2026-02-09: 39 commits2026-02-10: 50 commits2026-02-11: 43 commits2026-02-12: 35 commits2026-02-13: 47 commits2026-02-14: 61 commits2026-02-15: 40 commits2026-02-16: 97 commits2026-02-17: 135 commits2026-02-18: 80 commits2026-02-19: 86 commits2026-02-20: 59 commits2026-02-21: 137 commits2026-02-22: 61 commits2026-02-23: 84 commits2026-02-24: 57 commits2026-02-25: 32 commits2026-02-26: 98 commits2026-02-27: 66 commits2026-02-28: 25 commits2026-03-01: 11 commits2026-03-02: 40 commits2026-03-03: 27 commits2026-03-04: 42 commits2026-03-05: 27 commits2026-03-06: 123 commits2026-03-07: 41 commits2026-03-08: 98 commits2026-03-09: 45 commits2026-03-10: 22 commits2026-03-11: 154 commits2026-03-12: 149 commits2026-03-13: 24 commits2026-03-14: 36 commits2026-03-15: 25 commits2026-03-16: 37 commits2026-03-17: 45 commits2026-03-18: 43 commits2026-03-19: 16 commits2026-03-20: 13 commits2026-03-21: 5 commits2026-03-22: 0 commits2026-03-23: 32 commits2026-03-24: 59 commits2026-03-25: 84 commits2026-03-26: 78 commits2026-03-27: 58 commits2026-03-28: 28 commits2026-03-29: 28 commits2026-03-30: 4 commits2026-03-31: 54 commits2026-04-01: 34 commits2026-04-02: 41 commits2026-04-03: 146 commits2026-04-04: 182 commits2026-04-05: 74 commits2026-04-06: 43 commits2026-04-07: 59 commits2026-04-08: 135 commits2026-04-09: 35 commits2026-04-10: 107 commits2026-04-11: 100 commits2026-04-12: 29 commits2026-04-13: 50 commits2026-04-14: 15 commits2026-04-15: 18 commits2026-04-16: 23 commits2026-04-17: 21 commits2026-04-18: 121 commits2026-04-19: 2 commits2026-04-20: 34 commits2026-04-21: 16 commits2026-04-22: 22 commits2026-04-23: 19 commits2026-04-24: 27 commits2026-04-25: 9 commits2026-04-26: 6 commits2026-04-27: 109 commits2026-04-28: 205 commits2026-04-29: 20 commits2026-04-30: 19 commits2026-05-01: 40 commits2026-05-02: 12 commits2026-05-03: 5 commits2026-05-04: 44 commits2026-05-05: 21 commits2026-05-06: 70 commits2026-05-07: 33 commits2026-05-08: 81 commits2026-05-09: 33 commits2026-05-10: 53 commits2026-05-11: 139 commits2026-05-12: 77 commits2026-05-13: 41 commits2026-05-14: 40 commits2026-05-15: 140 commits2026-05-16: 117 commits2026-05-17: 89 commits2026-05-18: 280 commits2026-05-19: 60 commits2026-05-20: 140 commits2026-05-21: 139 commits2026-05-22: 67 commits2026-05-23: 20 commits2026-05-24: 115 commits2026-05-25: 54 commits2026-05-26: 35 commits2026-05-27: 20 commits2026-05-28: 19 commits2026-05-29: 10 commits2026-05-30: 151 commits2026-05-31: 63 commits2026-06-01: 70 commits2026-06-02: 96 commits2026-06-03: 49 commits2026-06-04: 132 commits2026-06-05: 377 commits2026-06-06: 344 commits2026-06-07: 99 commits2026-06-08: 51 commits2026-06-09: 69 commits2026-06-10: 143 commits2026-06-11: 115 commits2026-06-12: 134 commits2026-06-13: 73 commits2026-06-14: 116 commits2026-06-15: 231 commits2026-06-16: 51 commits2026-06-17: 48 commits2026-06-18: 52 commits2026-06-19: 82 commits2026-06-20: 52 commits2026-06-21: 75 commits2026-06-22: 107 commits2026-06-23: 61 commits2026-06-24: 51 commits2026-06-25: 13 commits2026-06-26: 70 commits2026-06-27: 22 commits2026-06-28: 26 commits2026-06-29: 86 commits2026-06-30: 63 commits2026-07-01: 34 commits2026-07-02: 17 commits2026-07-03: 38 commits2026-07-04: 32 commits2026-07-05: 5 commits2026-07-06: 219 commits2026-07-07: 125 commits2026-07-08: 34 commits2026-07-09: 30 commits2026-07-10: 93 commits2026-07-11: 107 commits2026-07-12: 101 commits2026-07-13: 40 commits2026-07-14: 96 commits2026-07-15: 16 commits2026-07-16: 81 commits2026-07-17: 95 commits2026-07-18: 30 commits2026-07-19: 19 commits2026-07-20: 21 commits2026-07-21: 104 commits2026-07-22: 61 commits2026-07-23: 35 commits2026-07-24: 10 commits2026-07-25: 9 commits2026-07-26: 83 commits2026-07-27: 125 commits2026-07-28: 113 commits2026-07-29: 93 commits2026-07-30: 59 commits2026-07-31: 105 commits2026-08-01: 20 commits2026-08-02: 15 commits2026-08-03: 49 commits2026-08-04: 82 commits2026-08-05: 36 commits2026-08-06: 14 commits2026-08-07: 27 commits2026-08-08: 16 commits2026-08-09: 46 commits2026-08-10: 259 commits2026-08-11: 108 commits2026-08-12: 101 commits2026-08-13: 129 commits2026-08-14: 110 commits2026-08-15: 0 commits2026-08-16: 177 commits2026-08-17: 119 commits2026-08-18: 207 commits2026-08-19: 99 commits2026-08-20: 92 commits2026-08-21: 135 commits2026-08-22: 43 commits2026-08-23: 25 commits2026-08-24: 49 commits2026-08-25: 169 commits2026-08-26: 87 commits2026-08-27: 133 commits2026-08-28: 78 commits2026-08-29: 56 commits2026-08-30: 47 commits2026-08-31: 148 commits2026-09-01: 162 commits2026-09-02: 150 commits2026-09-03: 210 commits2026-09-04: 209 commits2026-09-05: 186 commits2026-09-06: 116 commits2026-09-07: 129 commits2026-09-08: 206 commits2026-09-09: 184 commits2026-09-10: 257 commits2026-09-11: 57 commits2026-09-12: 109 commits2026-09-13: 86 commits2026-09-14: 97 commits2026-09-15: 93 commits2026-09-16: 159 commits2026-09-17: 69 commits2026-09-18: 81 commits2026-09-19: 47 commits2026-09-20: 90 commits2026-09-21: 126 commits2026-09-22: 131 commits2026-09-23: 159 commits2026-09-24: 153 commits2026-09-25: 73 commits2026-09-26: 0 commits
20,015 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Landmark project

    69,793 stars

  • Very active

    20,015 commits in 52 weeks

  • Community-driven

    ~353 contributors

  • Continuous integration

    Automated checks passing

  • Repeat trending

    30 trending appearances

What oh-my-openagent does

oh-my-opencode (also known as LazyCodex) provides an advanced terminal user interface (TUI) and orchestration harness for AI coding agents. It is designed specifically to manage complex codebases by handling context effectively for models like Codex and OpenCode. The tool is currently undergoing a major refactor to support a multi-harness OS, allowing seamless switching between different agent backends. It emphasizes real-time, transparent building, with the maintainer actively streaming development using their own AI assistant. The project aims to provide the ultimate 'token-maximizing' environment for power users.

Terminal power users, AI researchers, and developers managing complex codebases who need a robust, terminal-native agent harness. It is ideal for 'token-maxxers' who want granular control over how their AI assistants consume and generate code.

  • Advanced terminal interface: Offers a rich, interactive TUI for managing agent interactions directly from the command line.
  • Multi-harness architecture: Supports seamless switching between different AI backends like OpenCode, Codex, and Pi.
  • Complex codebase management: Specifically engineered to handle large repositories by optimizing context windows and token usage.
  • Real-time public development: Maintained publicly using an AI assistant, ensuring transparency and rapid iteration.
  • Easy installation: Provides a simple npx command for quick deployment without complex local configuration.
  • Extensible orchestration: Acts as a central operating system for managing various specialized coding agents and skills.

Where teams use it

Large repository navigation

Use the optimized context handling to ask questions and generate code within massive, intricate enterprise codebases.

Multi-model experimentation

Easily swap between Codex, OpenCode, and other agent harnesses to compare performance on specific coding tasks.

Terminal-based AI coding

Interact with powerful coding agents entirely within the terminal, maintaining workflow without switching to a graphical IDE.

Agent orchestration

Manage and coordinate multiple specialized AI assistants to tackle different aspects of a software project simultaneously.

Getting started: npx lazycodex-ai install

README

dev branch

Note

OmO Beta: OmO ❤️ Pi Try it with bun add -g omo-ai@beta. Memory system, CodeMode, Anthropic subscriptions, all covered. OmO Herdr DAG - live OmO workflow DAGs in a Herdr side pane Just type "mass ulw" with your prompt - now you are the master of graph engineering. Multi-model ultracode, together with a better memory system. (The right panel is omo-herdr-dag.)

Sponsors These are our sponsors. They help keep OmO going as a personal side project.

OpenGateway OpenGateway sponsors OmO. An OpenAI-compatible gateway that puts many model providers behind one API. Thank you for backing open source.

Note

Sisyphus Labs - Meet Dori. Not a demo. Subscribes to everything.

OmO is maintained by Jobdori, the AI assistant shown above. Meet your own Jobdori, Dori.
Join the waitlist here.

Tip

Be with us!

Discord link Join our Discord community to connect with contributors and fellow oh-my-openagent users.
X link Updates for oh-my-openagent used to be posted on my X account.
Since it was mistakenly suspended, @justsisyphus now posts updates on my behalf.
GitHub Follow Follow @code-yeongyu on GitHub for more projects.

OmO

Oh My OpenAgent

Preview

This is oh-my-openagent, running Team Mode. With Kimi K3 and GPT-5.6 Sol.

Anthropic blocked OpenCode because of us. Yes, this is true. They want you locked in. Claude Code is a nice prison, but it's still a prison.

You don't need to pay $200 for 2 hours of work. The future isn't picking one winner; it's orchestrating them all. Models get cheaper every month. Smarter every month. No single provider will dominate. We're building for that open market, not their walled gardens.

Reviews

"It made me cancel my Cursor subscription. Unbelievable things are happening in the open source community." - Arthur Guiot

"If Claude Code does in 7 days what a human does in 3 months, Sisyphus does it in 1 hour. It just works until the task is done. It is a discipline agent."
- B, Quant Researcher

"Knocked out 8000 eslint warnings with Oh My Opencode, just in a day"
- Jacob Ferrari

"I converted a 45k line tauri app into a SaaS web app overnight using Ohmyopencode and ralph loop. Started with interview me prompt, asked it for ratings and recommendations on the questions. It was amazing to watch it work and to wake up this morning to a mostly working website!" - James Hargis

"use oh-my-opencode, you will never go back"
- d0t3ch

"I haven't really been able to articulate exactly what makes it so great yet, but the development experience has reached a completely different dimension." - 苔硯:こけすずり

"Experimenting with open code, oh my opencode and supermemory this weekend to build some minecraft/souls-like abomination." "Asking it to add crouch animations while I go take my post-lunch walk. [Video]" - MagiMetal

"You guys should pull this into core and recruit him. Seriously. It's really, really, really good."
- Henning Kilset

"Hire @yeon_gyu_kim if you can convince him, this dude has revolutionized opencode."
- mysticaltech

"Oh My OpenCode Is Actually Insane" - YouTube - Darren Builds AI


Oh My OpenAgent

You're juggling Claude Code, Codex, and random OSS models. Configuring each one. Debugging agents.

We did the work. Tested everything. Kept what actually shipped.

Install oh-my-openagent. Type ultrawork. Done.

Installation

oh-my-openagent ships in three editions of the same product: two plugins that load into a host you already run, plus one standalone edition.

Ultimate Edition (omo for OpenCode) is the full omo. 11 agents, 54+ lifecycle hooks, 4 built-in MCPs (websearch, context7, grep_app, lsp), all slash commands, Team Mode, /goal, ultrawork. Hashline edits are opt-in (hashline_edit: true).

Light Edition (omo for Codex CLI) carries the portable components that fit Codex's plugin system: rules, comment-checker, git-bash, lsp, ultrawork, ulw-loop, ulw-execute-continuation, and telemetry at the core, plus teammode and supporting components (bootstrap, lcx, and more), plugin-scoped MCPs for grep_app, context7, git_bash, and lsp, and the shared ast-grep skill. It installs Codex agent TOMLs into ~/.codex/agents/. There are no OpenCode team_* tools; Codex CLI's own spawn/collaboration surface does that work.

OmO Native (standalone, beta) is the omo command with the OMO extension built in. It installs from omo-ai@beta and loads into neither OpenCode nor Codex. Already on the OpenCode edition? See Migrating from OpenCode.

Pick the edition(s) you want.

One-line install

You want Run What lands on disk
Ultimate (OpenCode) bunx oh-my-openagent install (TUI walks you through it) Plugin registered in opencode.json + agent/model config + provider auth prompts
Light (Codex CLI) npx lazycodex-ai install ~/.codex/plugins/cache/sisyphuslabs/omo/ + local Codex marketplace cache + ~/.codex/config.toml marketplace/plugin/agent blocks + optional autonomous permissions + component CLIs in ~/.local/bin
Both bunx oh-my-openagent install --platform=both Both of the above
OmO Native (beta) bun add -g omo-ai@beta, then omo The omo command: pinned senpi engine with the OMO extension built in. Beta channel only; a bare bun add -g omo-ai fails by design. See the install guide.

lazycodex-ai defaults to the Codex Light installer and runs through Node/npm. --platform on the shared omo-agent-toolkit CLI still defaults to opencode (Ultimate).

Which edition should I pick?

Already on OpenCode, or want the most-tested path? Ultimate. Already on Codex CLI? Light. Want one command without installing a host first? OmO Native, which ships a pinned senpi engine with OMO built in; bun is the recommended runtime for it, and the @beta tag is required. Do not install plain omo from npm; that is an unrelated package by a different author.

For Humans

Strongly recommended: let an LLM agent install this for you. The Ultimate edition setup involves subscription detection, model selection across 11 agents, and per-provider authentication, and humans fat-finger these. An LLM agent reads the full guide and walks every step correctly.

Paste this prompt into Claude Code, AmpCode, Cursor, or any agent:

Install and configure oh-my-openagent by following the instructions here:
https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/refs/heads/dev/docs/guide/installation.md

If you only want the Light edition (Codex CLI), the installer asks whether to configure Codex for autonomous full-permissions mode. You can run it yourself in one line:

npx lazycodex-ai install
# non-interactive recommended mode:
npx lazycodex-ai install --no-tui --codex-autonomous

For the Light edition, Bun is not required. Use npx lazycodex-ai install from a Node/npm environment. Global installation is not officially supported; the installer writes the Codex plugin into ~/.codex/.

For LLM Agents

Fetch the full guide and follow it step by step:

curl -fsSL https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/refs/heads/dev/docs/guide/installation.md

The guide covers: platform selection, the subscription interview, provider authentication (Anthropic / Google / Copilot / Z.ai / OpenCode Zen), the agent-to-model matching matrix, modes (ultrawork, team, hyperplan), slash commands, the Light edition's Codex components, Team Mode, and uninstall. Don't summarize it; read it end to end.

Note on package and command names

The published npm package and CLI binary are still named oh-my-opencode (dual-published as oh-my-openagent during the rename transition). Inside opencode.json, the compatibility layer prefers the plugin entry oh-my-openagent, while legacy oh-my-opencode entries still load with a warning. Runtime config is ~/.omo/omo.jsonc plus walked project .omo/omo.jsonc. Legacy oh-my-openagent.json[c] / oh-my-opencode.json[c] files are imported once by the migration engine and are not read afterward.

The recommended bunx/npx invocation is oh-my-openagent install (or the original oh-my-opencode install). Once installed, the short command is omo-agent-toolkit. The omo bin was removed from these packages in this major release; the name now belongs to OmO Native, installed with bun add -g omo-ai@beta (beta channel only; bun is the recommended runtime). Do not use bunx omo or npx omo: omo on npm is a different, unrelated package by a different author, and those commands resolve to it. OmO Native's package name is omo-ai. lazycodex-ai is a single-purpose Node/npm installer package: npx lazycodex-ai install routes directly to the Codex Light installer. It is not the Codex marketplace name (the marketplace repository is code-yeongyu/lazycodex). Codex sees marketplace sisyphuslabs and plugin omo, enabled as omo@sisyphuslabs.

Telemetry

Anonymous telemetry is enabled by default to track active installations (DAU/WAU/MAU). For both products, a single event is sent at most once per UTC day per machine using a SHA256-hashed installation identifier (never the raw hostname), and PostHog person profiles are not created. The main plugin emits omo_daily_active from plugin load (plugin_loaded) and CLI run (run_started) sources; the Codex CLI Light edition emits omo_codex_daily_active from two sources (install_completed and session_start).

Opt out per product. For the main plugin, set "telemetry": false in the oh-my-openagent config, or export OMO_DISABLE_POSTHOG=1 or OMO_SEND_ANONYMOUS_TELEMETRY=0. For the Codex CLI Light edition, export OMO_CODEX_DISABLE_POSTHOG=1 or OMO_CODEX_SEND_ANONYMOUS_TELEMETRY=0; the global flags also disable Codex.

See Privacy Policy and Terms of Service.


Skip This README

We're past the era of reading docs. Just paste this into your agent:

Read this and tell me why it's not just another boilerplate: https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/refs/heads/dev/README.md

ROADMAP

We are restructuring the codebase to support multiple agent harnesses (OpenCode, Codex, Pi, Claude Code, and others). The most urgent work is the package layering refactor: separating pure TypeScript core logic, MCP servers, skills, and adapter shims into distinct layers so the same logic can be reused across harnesses without duplication.

If you want to contribute, read the ROADMAP first. PRs related to this refactor should use the ROADMAP label so they are easy to track.

Highlights

🪄 ultrawork

You're actually reading this? Wild.

Install. Type ultrawork (or ulw). Done.

Everything below, every feature, every optimization: you don't need to know any of it. It just works.

Even with only a ChatGPT subscription ($20), a Kimi Code subscription ($19) or the GLM Coding Plan ($10), ultrawork works well (this project is not affiliated; these are personal recommendations). If you're eligible for pay-per-token, Kimi and GLM models won't cost much either.

Feature Edition What it does
🤖 Discipline Agents Ultimate The main agent orchestrates the architect consult, Librarian, Explore and category workers. A full AI dev team in parallel.
🧩 Codex CLI Light Edition Light Portable OMO components (rules, comment-checker, git-bash, LSP, ultrawork, ulw-loop, ulw-execute continuation, telemetry, teammode, and more) running inside OpenAI Codex CLI. Install via npx lazycodex-ai install.
👥 Team Mode (opt-in) Ultimate Lead agent + up to 8 parallel members, real-time tmux visualization, dedicated team_* tools. Powers hyperplan (5 hostile critics) and security-research (3 hunters + 2 PoC engineers). Docs →
⚡ ultrawork / ulw Both One word. Every agent activates. Doesn't stop until done.
🚪 IntentGate Ultimate Keyword detection for ultrawork/ulw, team, and hyperplan (does not semantically classify intent). (Light edition only recognises the ultrawork/ulw keyword.)
🔗 Hash-Anchored Edit Tool Ultimate Hashline (LINE#ID) edit/read tagging. Opt-in: set hashline_edit: true in ~/.omo/omo.jsonc. Zero stale-line errors. Inspired by oh-my-pi. The Harness Problem →
🛠️ LSP integration Both Diagnostics, navigation, symbols, workspace rename. IDE precision for agents. Same LSP MCP server in both editions.
🔎 AST-Grep Both Pattern-aware code search and rewriting across 25 languages. Both editions use the shared ast-grep skill with a provisioned sg.
🧠 Background Agents Ultimate Fire 5+ specialists in parallel. Context stays lean. Results when ready.
📚 Built-in MCPs (web/docs/code search) Ultimate websearch (Exa), context7 (docs), grep_app (GitHub search), lsp. Always on.
🔁 Goal / /goal Ultimate /goal sets a persistent thread objective. Idle continuation runs only when goal.enabled is true (default false).
✅ Todo Enforcer Ultimate Agent goes idle? System yanks it back. Your task gets done, period.
💬 Comment Checker Both No AI slop in comments. Code reads like a senior wrote it.
📐 Rules Injection (AGENTS.md / .omo/rules/**) Both Project rules and AGENTS.md auto-loaded into the agent's context at every prompt.
🎯 Ulw Loop Light Codex component + CLI for durable multi-goal orchestration with evidence audit. On OpenCode, use Goal / /goal instead.
🖥️ Tmux Integration Ultimate Full interactive terminal. REPLs, debuggers, TUIs. All live.
🔌 Claude Code Compatible Ultimate Your hooks, commands, skills, MCPs, and plugins? All work here.
🧬 Skill-Embedded MCPs Ultimate Skills carry their own MCP servers. No context bloat.
📋 Ultrawork Planner Ultimate Interview-mode strategic planning before execution starts.
🔍 /init-deep Ultimate Auto-generates hierarchical AGENTS.md files throughout your project. Great for both token efficiency and your agent's performance.

Edition legend. Ultimate = OpenCode-only (bunx oh-my-openagent install). Light = Codex CLI-only (npx lazycodex-ai install). Both = shipped in both editions, often with slightly different implementations.

Discipline Agents

The main agent runs on your session model and is your orchestrator. It plans, delegates to specialists, and drives tasks to completion with aggressive parallel execution. It doesn't stop halfway. Give it a goal, not a recipe: it explores the codebase, researches patterns, and executes end-to-end without hand-holding. The Legitimate Craftsman.

The Ultrawork Planner (/ulw-plan) is your strategic planner. Interview mode: it asks questions, identifies scope, and builds a detailed plan before a single line of code is touched. /ulw-execute then carries that plan out in the same session.

Every prompt preset is tuned to its model's specific strengths. No manual model juggling. Learn more →

Anthropic blocked OpenCode because of us. That's why we call the main agent "The Legitimate Craftsman." The irony is intentional.

We run best on Opus or Kimi K3, but Kimi K3 + GPT-5.6 Sol already beats vanilla Claude Code. Zero config needed.

Team Mode

One agent is fast. A coordinated team is devastating.

Team Mode turns oh-my-openagent from "one agent with subagents" into a real multi-agent system. A lead agent orchestrates a team of category-specialized members, all running in parallel and communicating through dedicated tools (team_create, team_send_message, team_task_create, team_status, ...). Watch every member work simultaneously in a tmux layout with focus + grid windows.

// ~/.omo/omo.jsonc  (or project .omo/omo.jsonc)
{
  "team_mode": {
    "enabled": true,
    "max_parallel_members": 4,
    "tmux_visualization": true
  }
}

Restart opencode and the team_* tool family appears. Two skills already ride on top of it. hyperplan sends 5 hostile agents at your plan from orthogonal angles before a single line of code is written. security-research runs 3 vulnerability hunters and 2 PoC engineers over your codebase in parallel, with severity calibrated by actual exploitability.

Off by default. Enable it when you want it. Full Team Mode guide →

Agent Orchestration

When the main agent delegates to a subagent, it doesn't pick a model. It picks a category. The category maps automatically to the right model:

Category What it's for
visual-engineering Visual design, UI/UX, frontend
deep Deep work across visual and technical domains
quick Single-file changes, typos
ultrabrain Hard logic, architecture decisions

The agent says what kind of work it needs; the harness picks the right model. ultrabrain routes to GPT-6 Astra max (falling back to GPT-5.6 Sol), deep-high to GPT-6 Astra xhigh, and deep-low to GPT-6 Sol Fast medium (then GPT-6 Sol where the Fast tier is not served). You touch nothing.

Claude Code Compatibility

You dialed in your Claude Code setup. Good.

Every hook, command, skill, MCP, plugin works here unchanged. Full compatibility, including plugins.

World-Class Tools for Your Agents

LSP, AST-Grep, Tmux, and MCP, actually integrated, not duct-taped together. LSP gives every agent lsp_rename, lsp_goto_definition, lsp_find_references and lsp_diagnostics, IDE precision included. AST-Grep does pattern-aware code search and rewriting across 25 languages. Tmux is a full interactive terminal, so REPLs, debuggers and TUI apps stay in session. MCP brings web search, official docs and GitHub code search, all baked in.

Skill-Embedded MCPs

MCP servers eat your context budget. We fixed that.

Skills bring their own MCP servers. They spin up on demand, scoped to the task, and go away when done. The context window stays small.

Codes Better. Hash-Anchored Edits

The harness problem is real. Most agent failures aren't the model's fault; it's the edit tool.

"None of these tools give the model a stable, verifiable identifier for the lines it wants to change... They all rely on the model reproducing content it already saw. When it can't - and it often can't - the user blames the model."


- Can Bölük, The Harness Problem

Inspired by oh-my-pi, we built Hashline. When hashline_edit is enabled, every line the agent reads comes back tagged with a content hash:

11#VK| function hello() {
22#XJ|   return "world";
33#MB| }

The agent edits by referencing those tags. If the file has changed since the last read, the hash won't match and the edit is rejected before it can corrupt the file. No whitespace reproduction. No stale-line errors.

Deep Initialization. /init-deep

Run /init-deep. It generates hierarchical AGENTS.md files:

project/
├── AGENTS.md              ← project-wide context
├── src/
│   ├── AGENTS.md          ← src-specific context
│   └── components/
│       └── AGENTS.md      ← component-specific context

Agents auto-read relevant context. Zero manual management.

Planning. The Ultrawork Planner

Complex task? Don't prompt and pray.

The Ultrawork Planner (/ulw-plan) interviews you like a real engineer, identifies scope and ambiguities, and writes a reviewed plan to .omo/plans/ before touching code. /ulw-execute then has the main agent execute that plan in the same session. The agent knows what it's building before it starts.

Skills

Skills aren't just prompts. Each brings domain-tuned system instructions, embedded MCP servers on demand, and scoped permissions so agents stay in bounds.

Built-ins include playwright (browser automation), git-master (atomic commits, rebase surgery) and frontend (design-first UI).

Add your own under .opencode/skills/*/SKILL.md or ~/.config/opencode/skills/*/SKILL.md.

Want the full feature breakdown? See the Features Documentation for agents, hooks, tools, MCPs, and everything else in detail.


New to oh-my-openagent? Read the Overview to understand what you have, or check the Orchestration Guide for how agents collaborate.

Uninstallation

Removing oh-my-openagent takes four steps.

Remove the plugin from your OpenCode config

Edit ~/.config/opencode/opencode.json (or opencode.jsonc) and remove either "oh-my-openagent" or the legacy "oh-my-opencode" entry from the plugin array:

# Using jq
jq '.plugin = [.plugin[] | select(. != "oh-my-openagent" and . != "oh-my-opencode")]' \
    ~/.config/opencode/opencode.json > /tmp/oc.json && \
    mv /tmp/oc.json ~/.config/opencode/opencode.json

Remove configuration files (optional)

# Remove the runtime config files
rm -f ~/.omo/omo.jsonc ~/.omo/omo.json

# Remove project config (if exists)
rm -f .omo/omo.jsonc .omo/omo.json

# Remove leftover legacy migration backups (if any)
rm -f ~/.config/opencode/oh-my-openagent.jsonc ~/.config/opencode/oh-my-openagent.json \
      ~/.config/opencode/oh-my-opencode.jsonc ~/.config/opencode/oh-my-opencode.json \
      .opencode/oh-my-openagent.jsonc .opencode/oh-my-openagent.json \
      .opencode/oh-my-opencode.jsonc .opencode/oh-my-opencode.json

Verify removal

opencode --version
# Plugin should no longer be loaded

Remove omo-codex (Codex CLI Light edition)

npx lazycodex-ai uninstall
# backward-compatible alias:
npx lazycodex-ai cleanup

omo-agent-toolkit uninstall --platform=codex
# backward-compatible alias:
omo-agent-toolkit cleanup --platform=codex

The uninstall command removes managed sisyphuslabs Codex cache/marketplace state, strips omo@sisyphuslabs plugin and hook-state blocks from ~/.codex/config.toml after writing a backup, and removes agent TOML links listed in the install manifest. If a specific project still has old project-local Codex plugin state, run the command from that project or pass --project <path>; it repairs known project-local .codex/config.toml conflicts and reports project-local .codex artifacts without deleting project-owned files.

Features

Features you'll think should've always existed. Once you use them, you can't go back.

See the full Features Documentation. The short version follows.

The main agent orchestrates; the Ultrawork Planner (/ulw-plan), the architect consult (architecture and debugging), Librarian (docs and code search), Explore (fast codebase grep) and the Multimodal Looker specialize, and background agents run several of them in parallel like a real dev team. LSP and AST tools cover refactoring, rename, diagnostics and AST-aware code search. The hash-anchored edit tool (opt-in via hashline_edit: true) validates LINE#ID references before applying every change, so edits are surgical and stale-line errors are gone.

AGENTS.md, README.md and conditional rules are injected into context automatically. Claude Code hooks, commands, skills, agents and MCPs run unchanged. The built-in MCPs (websearch via Exa, context7 for docs, grep_app for GitHub search, lsp) are injected at runtime by the plugin, which is why they do not show up in opencode mcp list (see the MCP docs). Session tools list, read, search and analyze session history.

Goal, the Todo Enforcer, the Comment Checker and Think Mode keep a run on track. bunx oh-my-opencode doctor checks plugin registration, config, models and environment. fallback_models can mix plain model strings with per-fallback object settings in the same array, agent prompts can load from files with file://, and sessions recover from session errors, context window limits and API failures on their own. Agent-model matching is part of the Installation Guide.

Configuration

Opinionated defaults, adjustable if you insist.

See the Configuration Documentation. The short version follows.

Config lives in the user file ~/.omo/omo.jsonc plus walked project .omo/omo.jsonc files up to $HOME; the closest one wins, and legacy oh-my-* files are migrated once into omo.jsonc. JSONC is accepted, comments and trailing commas included. You can override models, temperatures, prompts and permissions for any agent, set concurrency limits for background tasks per provider or model, and turn any of the 54+ lifecycle hooks (61 with Team Mode) off through disabled_hooks.

The main agent orchestrates with the Ultrawork Planner (/ulw-plan) and the Plan Consultant. Delegation goes through categories (visual-engineering, ultrabrain, deep, artistry, quick, unspecified-low, unspecified-high, writing, plus custom names). Built-in skills include playwright (browser automation) and git-master (atomic commits). The built-in MCPs (websearch via Exa, context7, grep_app, lsp) are runtime-injected and not shown in opencode mcp list; LSP support includes the refactoring tools. Experimental options cover aggressive truncation, preemptive compaction, and more.

Author's Note

Want the philosophy? Read the Ultrawork Manifesto.


I burned through $24K in LLM tokens on personal projects. Tried every tool. Configured everything to death. OpenCode won.

Every problem I hit, the fix is baked into this plugin. Install and go.

If OpenCode is Debian/Arch, oh-my-openagent is Ubuntu/Omarchy.

Heavily influenced by AmpCode and Claude Code. Features ported, often improved. Still building. It's OpenCode.

Other harnesses promise multi-model orchestration. We ship it. Stability too. And features that actually work.

I'm this project's most obsessive user. Which model has the sharpest logic? Who's the debugging god? Who writes the best prose? Who dominates frontend, who owns backend, what's fastest for daily driving, what are competitors shipping?

This plugin is the distillation. Take the best. Got improvements? PRs welcome.

Stop agonizing over harness choices. I'll research, steal the best, and ship it here.

Sounds arrogant? Have a better way? Contribute. You're welcome.

No affiliation with any project or model mentioned. Just personal experimentation.

The LazyCodex name is inspired by LazyVim. The Ultragoal and UltraQA ideas come from oh-my-codex, reimplemented from concept for OmO.

99% of this project was built with OpenCode. I don't really know TypeScript, but I personally reviewed and largely rewrote this doc.

Loved by professionals at

Indent, makers of Spray (influencer marketing solution), vovushop (cross-border commerce platform) and vreview (AI commerce review marketing solution). Google. Microsoft. Vercel. ELESTYLE, makers of elepay (multi-mobile payment gateway) and OneQR (mobile application SaaS for cashless solutions). Deepgram.

Special thanks to @junhoyeo for this amazing hero image.

View on GitHub

Recent activity

commits and pull requests

Releases and announcements

307 total
  1. v5.0.0-beta.90v5.0.0-beta.90Sep 24, 20263K downloads

    ### Changed **You can see the agent's plan and its progress without asking, and weaker models no longer stop halfway through it.** ([senpi#2121](https://github.com/code-yeongyu/senpi/issues/2121), [#8847](https://github.com/code-yeongyu/oh-my-openagent/issues/8847)) The OmO Native engine moves to senpi 2026.9.24-3. The first work request of a session now opens with a phased todo list, and every todo update names your original request, the task in progress, and the next one. When the plan is created, a phase closes, or the work finishes, the agent writes a short report of what you asked for, what you need to know now, what it is doing, and what comes next. The final message uses that report and says plainly what is done and what is not. If a turn ends with todo items still open and no question for you, the agent gets one reminder to finish them. Models that refuse a forced first tool call with thinking on now continue normally instead of failing the first turn. The first-turn plan and the turn-end reminder can be turned off with the `todo.firstTurnPlan` and `todo.turnEndBackstop` settings. **Moving from the OpenCode edition to OmO Native now carries your setup over in one run.** (

  2. v5.0.0-beta.89v5.0.0-beta.89Sep 24, 2026106 downloads

    ### Changed **`ulw-plan` now plans for the person the result touches, and the plan reviewer checks that it gets them there.** ([#8773](https://github.com/code-yeongyu/oh-my-openagent/issues/8773)) Before asking you anything, the planner names who the change affects - a customer, another programmer, a program or agent consuming the output - how they use it today, the state in which nothing snags, regresses or degrades for them, and every gap from today, each with its reason. Forks are resolved against that state first, so you are asked only the decisions that are genuinely yours; "MVP" or "phase 1" cuts are never invented, and when the ideal state is larger than what you literally asked for the brief says so in one line and plans it anyway. The plan file carries the user and the ideal-state rows under `## Scope`, a `## Success criteria` table that maps every row to the task that delivers it and the QA scenario that proves it (that section used to be empty), and a final `Ideal-state fidelity` gate whose shortfall becomes new tasks, never a note. The plan reviewer no longer approves at "80% clear": it checks who the end user is, what changes for them, which problem is solved, that ev

  3. v5.0.0-beta.88v5.0.0-beta.88Sep 23, 2026211 downloads

    ### Changed **The `frontend` skill's motion rules now say what makes a transition read as natural, not only how long it lasts.** ([#8755](https://github.com/code-yeongyu/oh-my-openagent/issues/8755)) The DESIGN.md contract every project inherits gains a feedback-threshold table (press feedback in the same frame, hover-revealed controls after intent, a spinner only past about one second with a placeholder immediately, progress at an even pace, failure reported next to the object), a radius scale with concentric nested corners, and a reduced-motion policy that reduces rather than removes: positional and depth motion becomes a cross-fade while fades, gesture-tracked motion, and progress indicators stay. The interaction reference adds a meaning-to-motion table (a still indicator reads as frozen; a permanent loop is not "new"), a transition-identity rule (a surface that resizes animates from its old geometry, panels leave the way they came, one element stays still as the anchor, nothing reflows while the user types or drags), a discrete-versus-continuous input rule (taps animate, drags track 1:1 and settle on release), and a one-event-one-feedback rule (no double spinners, success show

  4. v5.0.0-beta.87v5.0.0-beta.87Sep 23, 2026101 downloads

    ### Fixed **A global install no longer fails to find the comment checker.** ([#8247](https://github.com/code-yeongyu/oh-my-openagent/issues/8247)) The shipped extension asks for `@code-yeongyu/comment-checker` after a write-like tool result, but `omo-ai` never declared it, so an install that had no other copy of that package raised `Cannot find module '@code-yeongyu/comment-checker'`. The package now declares it as a pinned runtime dependency, and the manifest test pins the declaration so it cannot disappear again. ### Changed **Tool cards stop showing the model's bookkeeping, and runs of reads collapse into one "Explored" entry.** ([#8732](https://github.com/code-yeongyu/oh-my-openagent/issues/8732)) The OmO Native engine moves to senpi 2026.9.23-4. Hints meant for the model, such as `[143 more lines in file. Use offset=58 to continue.]`, "limit reached", `Full output: <path>`, grep statistics, and the project-rules or AGENTS.md text injected into a read, still reach the model unchanged but no longer appear in the terminal UI. Consecutive `read`, `grep`, `find` and `ls` calls now render the way Codex shows them: one `• Explored` entry listing `Read a.ts, b.ts`, `Search <patter

  5. v5.0.0-beta.86v5.0.0-beta.86Sep 23, 2026112 downloads

    ### Changed **`deep-high` runs GPT-6 Astra at `xhigh`, and `deep-low` leads with GPT-6 Sol Fast.** ([#8714](https://github.com/code-yeongyu/oh-my-openagent/issues/8714)) The escalation lane `deep-high` still has one rung, GPT-6 Astra, and now runs it at `xhigh` instead of `high`. The default deep lane `deep-low` starts on `gpt-6-sol-fast`, GPT-6 Sol's Fast (priority) tier, at `medium`, on the OpenAI and ChatGPT subscription providers that serve that tier. It then falls back to plain `gpt-6-sol` at `medium`, so GitHub Copilot and OpenCode Zen, which do not offer the Fast tier, keep the lane. GPT-5.6 Sol is no longer a `deep-low` model: a setup that serves only GPT-5.6 Sol now reports `deep-low` as unavailable instead of running it there ([#8718](https://github.com/code-yeongyu/oh-my-openagent/issues/8718)). `ultrabrain` stays on GPT-6 Astra at `max`, and `unspecified-high` stays on Claude Opus 5.5 at `max` first. The configuration reference's provider-chain table, which still listed GPT-6 Astra as the first `unspecified-high` rung, now matches the shipped chain. **`explore` and `librarian` run a six-rung chain, and every DeepSeek Flash rung is DeepSeek V4.1 Flash.** ([#8115](http

Commits per week

last 52 weeks
11310Week of 2025-09-28: 0 commitsWeek of 2025-10-05: 0 commitsWeek of 2025-10-12: 0 commitsWeek of 2025-10-19: 0 commitsWeek of 2025-10-26: 0 commitsWeek 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: 110 commitsWeek of 2025-12-07: 194 commitsWeek of 2025-12-14: 199 commitsWeek of 2025-12-21: 139 commitsWeek of 2025-12-28: 208 commitsWeek of 2026-01-04: 151 commitsWeek of 2026-01-11: 289 commitsWeek of 2026-01-18: 251 commitsWeek of 2026-01-25: 248 commitsWeek of 2026-02-01: 398 commitsWeek of 2026-02-08: 391 commitsWeek of 2026-02-15: 634 commitsWeek of 2026-02-22: 423 commitsWeek of 2026-03-01: 311 commitsWeek of 2026-03-08: 528 commitsWeek of 2026-03-15: 184 commitsWeek of 2026-03-22: 339 commitsWeek of 2026-03-29: 489 commitsWeek of 2026-04-05: 553 commitsWeek of 2026-04-12: 277 commitsWeek of 2026-04-19: 129 commitsWeek of 2026-04-26: 411 commitsWeek of 2026-05-03: 287 commitsWeek of 2026-05-10: 607 commitsWeek of 2026-05-17: 795 commitsWeek of 2026-05-24: 404 commitsWeek of 2026-05-31: 1131 commitsWeek of 2026-06-07: 684 commitsWeek of 2026-06-14: 632 commitsWeek of 2026-06-21: 399 commitsWeek of 2026-06-28: 296 commitsWeek of 2026-07-05: 613 commitsWeek of 2026-07-12: 459 commitsWeek of 2026-07-19: 259 commitsWeek of 2026-07-26: 598 commitsWeek of 2026-08-02: 239 commitsWeek of 2026-08-09: 753 commitsWeek of 2026-08-16: 872 commitsWeek of 2026-08-23: 597 commitsWeek of 2026-08-30: 1112 commitsWeek of 2026-09-06: 1058 commitsWeek of 2026-09-13: 632 commitsWeek of 2026-09-20: 732 commitsSep 28, 2025Sep 20, 2026
20K commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 70 commitsSun 1:00 — 62 commitsSun 2:00 — 90 commitsSun 3:00 — 38 commitsSun 4:00 — 25 commitsSun 5:00 — 29 commitsSun 6:00 — 14 commitsSun 7:00 — 5 commitsSun 8:00 — 12 commitsSun 9:00 — 17 commitsSun 10:00 — 30 commitsSun 11:00 — 27 commitsSun 12:00 — 34 commitsSun 13:00 — 64 commitsSun 14:00 — 101 commitsSun 15:00 — 140 commitsSun 16:00 — 125 commitsSun 17:00 — 179 commitsSun 18:00 — 150 commitsSun 19:00 — 117 commitsSun 20:00 — 68 commitsSun 21:00 — 55 commitsSun 22:00 — 57 commitsSun 23:00 — 55 commitsMon 0:00 — 72 commitsMon 1:00 — 64 commitsMon 2:00 — 80 commitsMon 3:00 — 34 commitsMon 4:00 — 20 commitsMon 5:00 — 15 commitsMon 6:00 — 13 commitsMon 7:00 — 13 commitsMon 8:00 — 23 commitsMon 9:00 — 25 commitsMon 10:00 — 75 commitsMon 11:00 — 93 commitsMon 12:00 — 138 commitsMon 13:00 — 209 commitsMon 14:00 — 174 commitsMon 15:00 — 200 commitsMon 16:00 — 186 commitsMon 17:00 — 112 commitsMon 18:00 — 193 commitsMon 19:00 — 146 commitsMon 20:00 — 151 commitsMon 21:00 — 125 commitsMon 22:00 — 84 commitsMon 23:00 — 82 commitsTue 0:00 — 57 commitsTue 1:00 — 61 commitsTue 2:00 — 56 commitsTue 3:00 — 46 commitsTue 4:00 — 33 commitsTue 5:00 — 24 commitsTue 6:00 — 16 commitsTue 7:00 — 19 commitsTue 8:00 — 32 commitsTue 9:00 — 23 commitsTue 10:00 — 182 commitsTue 11:00 — 118 commitsTue 12:00 — 116 commitsTue 13:00 — 128 commitsTue 14:00 — 151 commitsTue 15:00 — 218 commitsTue 16:00 — 215 commitsTue 17:00 — 148 commitsTue 18:00 — 146 commitsTue 19:00 — 136 commitsTue 20:00 — 100 commitsTue 21:00 — 109 commitsTue 22:00 — 114 commitsTue 23:00 — 78 commitsWed 0:00 — 75 commitsWed 1:00 — 68 commitsWed 2:00 — 72 commitsWed 3:00 — 34 commitsWed 4:00 — 40 commitsWed 5:00 — 22 commitsWed 6:00 — 6 commitsWed 7:00 — 16 commitsWed 8:00 — 13 commitsWed 9:00 — 25 commitsWed 10:00 — 61 commitsWed 11:00 — 120 commitsWed 12:00 — 119 commitsWed 13:00 — 171 commitsWed 14:00 — 144 commitsWed 15:00 — 124 commitsWed 16:00 — 100 commitsWed 17:00 — 164 commitsWed 18:00 — 90 commitsWed 19:00 — 77 commitsWed 20:00 — 71 commitsWed 21:00 — 63 commitsWed 22:00 — 50 commitsWed 23:00 — 58 commitsThu 0:00 — 48 commitsThu 1:00 — 61 commitsThu 2:00 — 26 commitsThu 3:00 — 31 commitsThu 4:00 — 20 commitsThu 5:00 — 11 commitsThu 6:00 — 20 commitsThu 7:00 — 15 commitsThu 8:00 — 10 commitsThu 9:00 — 21 commitsThu 10:00 — 73 commitsThu 11:00 — 130 commitsThu 12:00 — 108 commitsThu 13:00 — 86 commitsThu 14:00 — 125 commitsThu 15:00 — 105 commitsThu 16:00 — 147 commitsThu 17:00 — 179 commitsThu 18:00 — 137 commitsThu 19:00 — 96 commitsThu 20:00 — 75 commitsThu 21:00 — 99 commitsThu 22:00 — 102 commitsThu 23:00 — 62 commitsFri 0:00 — 67 commitsFri 1:00 — 54 commitsFri 2:00 — 80 commitsFri 3:00 — 43 commitsFri 4:00 — 30 commitsFri 5:00 — 23 commitsFri 6:00 — 12 commitsFri 7:00 — 20 commitsFri 8:00 — 18 commitsFri 9:00 — 41 commitsFri 10:00 — 82 commitsFri 11:00 — 156 commitsFri 12:00 — 128 commitsFri 13:00 — 139 commitsFri 14:00 — 157 commitsFri 15:00 — 156 commitsFri 16:00 — 184 commitsFri 17:00 — 226 commitsFri 18:00 — 145 commitsFri 19:00 — 116 commitsFri 20:00 — 103 commitsFri 21:00 — 80 commitsFri 22:00 — 60 commitsFri 23:00 — 49 commitsSat 0:00 — 68 commitsSat 1:00 — 100 commitsSat 2:00 — 80 commitsSat 3:00 — 58 commitsSat 4:00 — 60 commitsSat 5:00 — 47 commitsSat 6:00 — 28 commitsSat 7:00 — 24 commitsSat 8:00 — 22 commitsSat 9:00 — 24 commitsSat 10:00 — 27 commitsSat 11:00 — 29 commitsSat 12:00 — 80 commitsSat 13:00 — 119 commitsSat 14:00 — 162 commitsSat 15:00 — 135 commitsSat 16:00 — 96 commitsSat 17:00 — 104 commitsSat 18:00 — 89 commitsSat 19:00 — 222 commitsSat 20:00 — 46 commitsSat 21:00 — 57 commitsSat 22:00 — 61 commitsSat 23:00 — 57 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.

Who is committing

last 52 weeks
Maintainer commits13,988 (79%)
Community commits3,796 (21%)

17,784 commits in total over the last year.

DateListRankStars gained
Feb 8, 2026daily#23+130
Feb 7, 2026daily#24+141
Feb 6, 2026daily#25+151
Feb 5, 2026daily#21+109
Feb 4, 2026daily#23+90
Feb 3, 2026daily#19+131
Feb 2, 2026daily#25+117
Feb 1, 2026daily#20+132
Jan 31, 2026daily#25+126
Jan 30, 2026daily#22+129
Jan 28, 2026daily#19+138
Jan 27, 2026daily#20+149
Jan 26, 2026daily#11+222
Jan 25, 2026daily#14+240
Jan 24, 2026daily#14+179
  • freeCodeCamp/freeCodeCamp

    freeCodeCamp.org's open-source codebase and curriculum. Learn math, programming, and computer science for free.

    456.7K stars · TypeScript

  • openclaw/openclaw

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

    391.3K stars · TypeScript

  • obra/superpowers

    An agentic skills framework & software development methodology that works.

    295.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.

    272.8K stars · JavaScript

  • NousResearch/hermes-agent

    The agent that grows with you

    251.2K stars · Python

  • anomalyco/opencode

    The open source coding agent.

    211.7K stars · TypeScript