
Omc
- 236 installs
- 40 repo stars
- Updated August 4, 2026
- akillness/oh-my-skills
Bootstrap and operate the oh-my-skills agent skill stack: discover installed skills, wire defaults, and keep Claude Code workflows consistent across repos and sessions.
About
The omc skill is the core orchestrator for the akillness/oh-my-skills ecosystem, helping developers bootstrap, discover, and consistently apply Claude Code skills across projects so agent-assisted coding stays predictable and low-friction.
- Central oh-my-skills entrypoint for agent workflows
- Coordinates skill discovery and default activation
- Keeps multi-repo Claude Code setups aligned
- Reduces manual skill wiring and drift
- Pairs with other oh-my-skills meta skills
Omc by the numbers
- 236 all-time installs (skills.sh)
- Ranked #2,649 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/akillness/oh-my-skills --skill omcAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 236 |
|---|---|
| repo stars | ★ 40 |
| Last updated | August 4, 2026 |
| Repository | akillness/oh-my-skills ↗ |
What it does
Bootstrap and operate the oh-my-skills agent skill stack: discover installed skills, wire defaults, and keep Claude Code workflows consistent across repos and sessions.
Files
omc — Claude-first topology-aware router for oh-my-claudecode
When to use this skill
- The user wants Claude Code–native orchestration through OMC / oh-my-claudecode
- The user needs to choose between the marketplace plugin, the `omc` shell CLI, or a local checkout / `--plugin-dir` workflow
- The user asks about
/team,/autopilot,/ralph,/ultrawork,/ultraqa,omc team,omc ask,omc setup,omc update, hooks, HUD, or OMC state behavior - The user asks how Claude workflows such as
/team,/autopilot,/ultrawork, or/ultraqamap to Codex/OMX or Gemini/Antigravity/OMA - The user is hitting duplicate installs, plugin-dir confusion, worktree/state collisions, setup drift, or HUD / rate-limit / resume trouble
- The user really wants a Claude-first runtime owner, not
jeo,ralphmode,omx,ohmg, or browser-review skills
Instructions
Step 1: Identify the install topology before the packet
Before suggesting commands, identify which OMC topology the operator is actually using:
1. marketplace-plugin — Claude Code plugin / slash-skill surface installed from the marketplace 2. shell-cli — npm-installed omc command for shell-side setup, tmux workers, or provider asks 3. local-plugin-dir — local checkout / --plugin-dir / OMC_PLUGIN_ROOT workflow 4. mixed-or-unknown — overlapping plugin + CLI + local checkout, duplicate commands, or unclear setup state
If the topology is mixed-or-unknown, prefer recovery and topology clarification before recommending more commands.
Step 2: Pick one request packet
After topology is clear enough, classify the actual job into one packet:
1. install-topology — install, first-run setup, or local-checkout / plugin-dir decisions 2. in-session-runtime — choose the right slash skill inside Claude Code 3. terminal-runtime — choose the right omc ... shell command 4. recovery-and-update — fix duplicate installs, setup drift, worktree/state trouble, HUD/hooks, or resume issues 5. cross-runtime-parity — map Claude slash workflows to OMX or OMA without pretending the runtimes are identical 6. boundary-and-route-out — the request really belongs to jeo, ralphmode, plannotator, browser-review skills, or another runtime
Lead with the topology and packet mentally, then give only the commands that fit that combination.
Step 3: Tell the operator which surface they are on
OMC has two real runtime surfaces. Do not flatten them.
A. Claude Code plugin / in-session surface
Use this when the user is already inside Claude Code and wants slash skills, hooks, HUD, or native team behavior.
Examples:
/team 3:executor "fix all TypeScript errors"
/autopilot "build a REST API for tasks"
/ralph "keep going until verified done"
/ultrawork "parallelize this cleanup"
/deep-interview "help me clarify the feature"This surface owns:
- slash skills
- hooks and HUD behavior
- native team orchestration inside Claude Code
- in-session keywords like
autopilot:orralph:
B. Terminal CLI surface
Use this when the user wants shell-side setup, updates, provider consultation, tmux workers, or runtime management.
Examples:
omc setup
omc update
omc ask codex "review this patch"
omc team 2:codex "review auth flow"
omc team status review-auth-flowThis surface owns:
omc setup/omc updateomc askomc teamtmux workers- shell-side runtime management
Important truth:
/teamandomc teamare different runtimes/autopilot,/ralph, and/ultraworkare in-session skills, not normalomcCLI subcommands- the npm package name is `oh-my-claude-sisyphus`, not
oh-my-claudecode
Step 4: Use the right topology + packet pair
Packet: install-topology
Use when the user needs installation, setup, or topology cleanup.
marketplace-plugin
Inside Claude Code:
/plugin marketplace add https://github.com/Yeachan-Heo/oh-my-claudecode
/plugin install oh-my-claudecodeThen run one setup entrypoint inside Claude Code:
setup omcor:
/oh-my-claudecode:omc-setupshell-cli
If they also want omc shell commands:
npm i -g oh-my-claude-sisyphus@latestlocal-plugin-dir
Do not pretend the marketplace flow is enough. Point them to the plugin-dir / local-checkout path and the dedicated reference before improvising cleanup:
omc --plugin-dir <path> ...OMC_PLUGIN_ROOTomc setup --plugin-dir-mode- references/install-topology-and-recovery.md
mixed-or-unknown
Treat duplicate commands, duplicate slash skills, or unclear state as a recovery problem first. Do not stack more installs on top of an ambiguous topology.
Enable native teams in ~/.claude/settings.json when Claude-native teams are expected:
{
"env": {
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
}
}Packet: in-session-runtime
Use when the user wants the best Claude Code slash skill for the job.
| Need | Use | Why |
|---|---|---|
| Shared in-session multi-agent work | /team ... | Canonical Claude-native team workflow |
| End-to-end build from a fuzzy request | /autopilot ... or autopilot: ... | Single lead agent, idea → implementation |
| Must keep going until verified done | /ralph ... or ralph: ... | Persistent execute → verify → fix loop |
| Burst parallel work | /ultrawork ... or ulw ... | High parallelism without full team overhead |
| Parallel QA / review burst | /ultraqa ... when installed | QA fan-out; route to OMX $ultraqa or OMA /review when the target runtime is not Claude |
| Requirements clarification first | /deep-interview ... | Clarify before planning or execution |
| Cross-model synthesis | ccg: ... when upstream/runtime supports it | Advisory synthesis path |
Pick one truthful recommendation plus at most 1 nearby alternative.
Packet: terminal-runtime
Use when the user wants the shell CLI rather than the in-session plugin surface.
| Need | Use |
|---|---|
| Initial shell-side install/repair | omc setup |
| Refresh after updates | omc update |
| Provider consultation | omc ask <provider> "..." |
| tmux-based worker teams | omc team <N>:<provider> "<task>" |
| Team runtime status | omc team status <session> |
| Team runtime shutdown | omc team shutdown <session> |
If the user says “team mode” but is already inside Claude Code, prefer /team. If the user says “team mode” and clearly wants shell/tmux workers, prefer omc team.
Packet: cross-runtime-parity
Use when the user wants Claude OMC workflows to be usable from Codex or Antigravity too. Read references/cross-runtime-workflow-map.md, then map by intent:
| Claude / OMC | Codex / OMX | Gemini / Antigravity / OMA |
|---|---|---|
/team N:role "task" | $team N:role "task" or omx team N:role "task" | /orchestrate "task" or oma agent:parallel -i role:"task" |
/autopilot "task" or autopilot: task | $autopilot "task"; use $deep-interview first for vague requests or $plan → $ralph for stricter verification | /plan "task" → /work; use /orchestrate or oma agent:parallel only when explicit parallel lanes are needed |
/ultrawork "task" / ulw "task" | $ulw "task" or $ultrawork "task" | /ultrawork "task" or oma agent:parallel for independent lanes |
/ultraqa "target" | $ultraqa "target" | /review "target" or /ultrawork "QA target"; use oma agent:parallel for explicit QA lanes |
Rules:
- State the runtime boundary first: OMC uses
.omc/, OMX uses.omx/, OMA keeps.agents/canonical. - Treat
/autopilotas an intent contract, not a universal command name: Codex owns$autopilot; OMA usually composes/planand/work. - Do not claim Antigravity has Claude-style custom subagent spawning; use OMA CLI fallback when needed.
- When the target is Codex-native, route operator details to
omx. - When the target is Gemini/Antigravity portable harness work, route operator details to
ohmg.
Packet: recovery-and-update
Use when the real job is repairing OMC.
Top recovery patterns:
- Duplicate install / duplicate commands → inspect whether marketplace plugin, npm CLI, and local-checkout/plugin-dir installs are overlapping
- Setup drift after upgrade → rerun the truthful setup/update path for the current topology (
setup omc,/oh-my-claudecode:omc-setup,omc update,omc setup) - Local checkout not behaving like marketplace install → verify
--plugin-dir,OMC_PLUGIN_ROOT, and plugin-dir mode instead of reinstalling blindly - Team mode not working → verify
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 - Worktree/state weirdness → inspect
.omc/state/, worktree namespace behavior, and team/session names - HUD / rate-limit / ephemeral-environment trouble → treat it as environment/runtime recovery, not a mode-selection question
When the fix gets detailed, route to:
- references/install-topology-and-recovery.md
- references/intake-packets-and-route-outs.md
- references/cli-reference.md
- references/hooks-reference.md
Packet: boundary-and-route-out
Do not force OMC when another skill owns the job better.
Route out when:
- long-lived plan / execution ledger / resumable multi-skill loop →
jeo - spec-first persistence method beyond OMC runtime detail →
ralph - approval posture, trusted-folder / bypass policy, permission surface →
ralphmode - plan review / approval gate →
plannotator - fresh-session browser verification →
browser-harness - running authenticated browser reuse →
playwriter - exact rendered-UI critique / annotation handoff →
agentation - Codex-first runtime orchestration →
omx - Gemini / Antigravity portable harness adoption →
ohmg - Claude workflow parity across Codex or Antigravity → use the cross-runtime-parity packet, then route to
omxorohmgfor runtime-specific commands
Step 5: Keep the answer truthful about volatility
OMC is a fast-moving upstream project. Prefer:
- topology truth first
- current surface distinctions
- current install/setup commands
- current route-outs
- reference docs for deeper operator detail
Avoid:
- pretending all commands live on one surface
- treating
/teamandomc teamas interchangeable - promising that
/ultraqa,$ultraqa, and OMA/revieware the same implementation rather than mapped workflow intents - claiming there is a general
omc autopilotCLI - stacking installs when duplicate-path symptoms suggest recovery first
- absorbing browser review, approvals, or non-Claude runtime ownership into OMC
Examples
Example 1: Marketplace plugin install
User: "OMC 설치하고 Claude Code 안에서 바로 팀 모드까지 쓰고 싶어"
Response: Use the install-topology packet with marketplace-plugin topology. Give the plugin install path, then setup omc or /oh-my-claudecode:omc-setup, and mention CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 when native teams are expected.
Example 2: Local checkout / plugin-dir
User: "로컬 checkout으로 OMC 수정 중인데 Claude plugin cache 때문에 계속 예전 동작이 남아. plugin-dir 쪽으로 어떻게 잡아야 해?"
Response: Use the install-topology packet with local-plugin-dir topology. Point to --plugin-dir, OMC_PLUGIN_ROOT, and omc setup --plugin-dir-mode, then send the operator to the install-topology reference instead of treating this like a normal marketplace install.
Example 3: Shell-side worker team
User: "shell에서 codex 두 명 붙여서 auth 플로우 리뷰 돌리고 싶어"
Response: Use the terminal-runtime packet. Recommend omc team 2:codex "review auth flow", keep the answer on the CLI runtime, and mention status/shutdown commands only if helpful.
Example 4: Long-loop orchestration boundary
User: "기획부터 실행, 검증, 재개까지 하나의 장기 루프로 굴리고 싶어"
Response: Use the boundary-and-route-out packet. Route to jeo as the long-loop coordination layer, and mention OMC only as the Claude-first runtime that jeo may compose with.
Example 5: Mixed duplicate install symptoms
User: "업데이트 후 slash command가 중복으로 보이고 worktree마다 상태도 이상해"
Response: Use the recovery-and-update packet with mixed-or-unknown topology. Tell them to inspect overlapping plugin/CLI/plugin-dir installs, then rerun the truthful setup/update path and inspect worktree/state behavior before choosing another mode.
Best practices
1. Name the topology before the packet when install or recovery is involved. 2. Prefer one recommended mode plus one nearby alternative, not a giant command dump. 3. Treat /team and omc team as related but different runtimes. 4. Keep the npm/package-name mismatch explicit: oh-my-claude-sisyphus provides the omc CLI. 5. Do not improvise over --plugin-dir or duplicate-install symptoms; route to the topology reference. 6. Route long-loop orchestration, approval posture, browser review, and other runtime ownership outward. 7. For Codex or Antigravity parity work, map the workflow intent and then hand off to omx or ohmg; do not write their runtime state into .omc/. 8. Use references for volatile operator detail; keep the front door focused on truthful routing.
References
- references/install-topology-and-recovery.md
- references/intake-packets-and-route-outs.md
- references/modes-reference.md
- references/cross-runtime-workflow-map.md
- references/hooks-reference.md
- references/cli-reference.md
- references/agents-catalog.md
{
"skill_name": "omc",
"evals": [
{
"id": 1,
"prompt": "OMC 설치하고 Claude Code 안에서 바로 팀 모드까지 쓰고 싶어. 어떻게 시작해?",
"expected_output": "The skill uses the install-topology packet with marketplace-plugin topology, gives the plugin install path plus `setup omc` or `/oh-my-claudecode:omc-setup`, and mentions `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` for native teams.",
"assertions": [
"The response includes /plugin marketplace add https://github.com/Yeachan-Heo/oh-my-claudecode",
"The response includes setup omc or /oh-my-claudecode:omc-setup",
"The response mentions CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS or native teams setup"
]
},
{
"id": 2,
"prompt": "Claude Code 안에서 여러 에이전트가 동시에 작업하게 하고 싶어. /team이랑 omc team 중 뭐 써야 해?",
"expected_output": "The skill distinguishes the in-session-runtime and terminal-runtime surfaces, recommends `/team` for the in-session Claude Code case, and explains that `omc team` is the shell/tmux worker runtime.",
"assertions": [
"The response states that /team and omc team are different runtimes",
"The response recommends /team for the in-session Claude Code case",
"The response identifies omc team as the shell or tmux worker surface"
]
},
{
"id": 3,
"prompt": "로컬 checkout으로 OMC 수정 중인데 marketplace 쪽 캐시 때문에 예전 동작이 남아. plugin-dir 기준으로 어떻게 잡아야 해?",
"expected_output": "The skill uses the install-topology packet with local-plugin-dir topology, points to `--plugin-dir`, `OMC_PLUGIN_ROOT`, and `omc setup --plugin-dir-mode`, and does not treat the request like a normal marketplace reinstall.",
"assertions": [
"The response mentions local-plugin-dir, --plugin-dir, or OMC_PLUGIN_ROOT",
"The response mentions omc setup --plugin-dir-mode or a truthful plugin-dir setup path",
"The response does not present marketplace install as the primary fix"
]
},
{
"id": 4,
"prompt": "shell에서 codex 두 명 붙여서 auth 플로우 리뷰 돌리고 싶어",
"expected_output": "The skill uses the terminal-runtime packet, recommends `omc team 2:codex ...`, and keeps the answer on the CLI runtime instead of drifting into in-session slash skills.",
"assertions": [
"The response includes omc team 2:codex",
"The response does not frame /team as the primary answer",
"The response mentions shell, tmux, or CLI runtime context"
]
},
{
"id": 5,
"prompt": "작업이 진짜 끝날 때까지 계획-실행-검증 루프를 장기적으로 유지하고 싶어. OMC가 맞아?",
"expected_output": "The skill uses the boundary-and-route-out packet, routes the long-loop ledger job to `jeo`, and treats OMC as the Claude-first runtime layer rather than the main owner.",
"assertions": [
"The response routes the request to jeo",
"The response keeps OMC as a runtime layer or adjacent tool rather than the sole answer",
"The response distinguishes long-loop orchestration from OMC runtime guidance"
]
},
{
"id": 6,
"prompt": "업데이트 후 slash command가 중복으로 보이고 worktree마다 팀 상태도 이상해. 뭘 먼저 봐야 해?",
"expected_output": "The skill uses the recovery-and-update packet with mixed-or-unknown topology, treats duplicate installs as recovery work first, and mentions state/worktree/plugin-dir investigation plus a truthful setup/update path.",
"assertions": [
"The response treats this as recovery or update work rather than mode selection",
"The response mentions duplicate installs, plugin-dir, state, worktree, HUD, or setup/update investigation",
"The response references a recovery path such as setup omc, omc setup, omc update, doctor, or the install-topology reference"
]
},
{
"id": 7,
"prompt": "Claude의 /team /ultrawork /ultraqa를 Codex와 Antigravity에서도 쓰게 하고 싶어.",
"expected_output": "The skill uses the cross-runtime-parity packet, maps /team to OMX $team or OMA /orchestrate, /ultrawork to OMX $ulw or OMA /ultrawork, and /ultraqa to OMX $ultraqa or OMA /review while preserving runtime state boundaries.",
"assertions": [
"The response maps /team to $team, omx team, /orchestrate, or oma agent:parallel",
"The response maps /ultrawork to $ulw, $ultrawork, or OMA /ultrawork",
"The response maps /ultraqa to $ultraqa, /review, or QA-focused /ultrawork",
"The response distinguishes .omc, .omx, and .agents or OMA state boundaries"
]
},
{
"id": 8,
"prompt": "Claude autopilot을 Codex랑 Antigravity에서도 쓰게 하고 싶어.",
"expected_output": "The skill uses the cross-runtime-parity packet, maps Claude /autopilot or autopilot: to OMX $autopilot, maps the OMA/Antigravity shape to /plan then /work, and states runtime boundaries and Antigravity native-command limits.",
"assertions": [
"The response maps /autopilot or autopilot: to $autopilot",
"The response maps the OMA or Antigravity path to /plan followed by /work",
"The response mentions $deep-interview, $plan, $ralph, /orchestrate, or oma agent:parallel as conditional escalation",
"The response distinguishes .omc, .omx, and .agents or states that Antigravity may not expose a native /autopilot command"
]
}
]
}
OMC Agent Catalog
Source: https://github.com/Yeachan-Heo/oh-my-claudecode
---
Agent Tiers & Model Routing
| Tier | Model | Cost | Use When |
|---|---|---|---|
| LOW | Haiku | Cheapest | Quick lookups, simple exploration |
| MEDIUM | Sonnet | Balanced | Implementation, debugging, testing |
| HIGH | Opus | Most capable | Architecture, strategic analysis, review |
Smart routing saves 30–50% on token cost.
---
Build / Analysis Lane
| Agent | Model | Core Job |
|---|---|---|
explore | haiku | Codebase discovery — file/symbol mapping, quick scans |
analyst | opus | Requirements clarity, hidden constraints, pre-planning |
planner | opus | Task sequencing, execution plans, dependency ordering |
architect | opus | System design, component interfaces, tradeoff analysis |
debugger | sonnet | Root-cause analysis, stack traces, error resolution |
executor | sonnet | Code implementation, refactoring, feature work |
verifier | sonnet | Completion evidence, test adequacy, acceptance check |
tracer | sonnet | Evidence-driven causal analysis, competing hypotheses |
Review Lane
| Agent | Model | Core Job |
|---|---|---|
code-reviewer | opus | Comprehensive code review — logic, SOLID, performance |
security-reviewer | sonnet | Vulnerabilities, trust boundaries, OWASP Top 10 |
critic | opus | Gap analysis, multi-perspective evaluation |
code-simplifier | opus | Reduce complexity, improve clarity/maintainability |
Domain Specialists
| Agent | Model | Core Job |
|---|---|---|
test-engineer | sonnet | Integration/e2e tests, TDD workflows, flaky test hardening |
designer | sonnet | UI/UX architecture, component design |
writer | haiku | Technical documentation, README, API docs, comments |
qa-tester | sonnet | Runtime validation via tmux, interactive CLI testing |
scientist | sonnet | Data analysis, research execution |
git-master | sonnet | Atomic commits, rebasing, history management |
document-specialist | sonnet | External documentation lookup, SDK references |
---
Invocation
# Direct slash command
/oh-my-claudecode:executor
/oh-my-claudecode:code-reviewer
# Via Agent tool (in Claude Code)
Agent(subagent_type="oh-my-claudecode:executor", prompt="implement X")
# Team mode (multiple executors in parallel)
/oh-my-claudecode:team 3:executor "fix all TypeScript errors"---
Delegation Rules (from CLAUDE.md)
- Route complex code work →
executor(usemodel=opusfor hard tasks) - Uncertain SDK usage →
document-specialist(repo docs first) - Multi-file changes, refactors, debugging → delegate
- Trivial ops, small clarifications, single commands → work directly
- Never self-approve: use
code-reviewerorverifierfor approval pass - Keep authoring and review as separate passes
OMC CLI Reference
Full syntax for all omc CLI commands.
---
omc team — tmux Worker Sessions
omc team <N>:<provider> "<task>"Launch N workers of the given provider type in a tmux session:
omc team 2:codex "review auth module for security"
omc team 3:gemini "redesign UI components for consistency"
omc team 1:claude "implement payment processing flow"
omc team 2:claude,1:gemini "full-stack feature with design review"Session management:
omc team status <session-name> # Check running workers
omc team shutdown <session-name> # Stop all workers in session
omc team list # List all active sessionsRequires: tmux installed
---
omc ask — Provider Advisor
Query a specific AI provider for consultation:
omc ask claude "review this migration plan"
omc ask codex --prompt "identify architecture risks in auth.ts"
omc ask gemini --prompt "propose UI polish ideas for the dashboard"Flags:
--prompt <text>: Provide prompt text (alternative to positional arg)--context <file>: Include file as context--output <file>: Save response to file
---
omc wait — Rate Limit Auto-Resume
Automatically resume Claude Code sessions after rate limit resets:
omc wait # Check current rate limit status
omc wait --start # Enable background auto-resume daemon
omc wait --stop # Disable auto-resume daemon
omc wait --status # Check daemon statusRequires: tmux installed
---
omc config-stop-callback — Notifications
Configure notifications when Claude Code stops/completes:
# Telegram
omc config-stop-callback telegram \
--enable \
--token <bot_token> \
--chat <chat_id>
# Discord
omc config-stop-callback discord \
--enable \
--webhook <webhook_url> \
--tag-list "@here,<@USER_ID>"
# Slack
omc config-stop-callback slack \
--enable \
--webhook <webhook_url>
# Disable any provider
omc config-stop-callback telegram --disable---
Slash Commands (Inside Claude Code)
| Command | Action |
|---|---|
/oh-my-claudecode:omc-setup | Run initial setup wizard |
/oh-my-claudecode:omc-setup --local | Project-scoped setup |
/oh-my-claudecode:omc-doctor | Diagnose installation |
/oh-my-claudecode:team N:executor "task" | Start team pipeline |
/oh-my-claudecode:autopilot | Start autopilot skill |
/oh-my-claudecode:ralph | Start ralph persistence |
/oh-my-claudecode:ultrawork | Start ultrawork mode |
/oh-my-claudecode:ccg | Start CCG 3-model synthesis |
/oh-my-claudecode:ralplan | Consensus planning |
/oh-my-claudecode:deep-interview | Socratic requirements |
/oh-my-claudecode:hud setup | Configure status bar HUD |
/oh-my-claudecode:learner | Extract skills from sessions |
/oh-my-claudecode:cancel | Cancel active execution mode |
---
Settings Reference (~/.claude/settings.json)
{
"env": {
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
},
"omcHud": {
"preset": "focused"
},
"codeSimplifier": {
"enabled": false,
"extensions": [".ts", ".tsx", ".js", ".jsx", ".py"],
"maxFiles": 10
}
}HUD presets: focused | minimal | detailed | off
---
Installation
# Via Claude Code marketplace (recommended)
/plugin marketplace add https://github.com/Yeachan-Heo/oh-my-claudecode
/plugin install oh-my-claudecode
# Via npm (note: package name differs from repo)
npm install -g oh-my-claude-sisyphus
# Update
/plugin marketplace update omc
/oh-my-claudecode:omc-setupRequirements:
- Claude Code CLI
- Node.js 20.0.0+
- tmux (macOS:
brew install tmux| Ubuntu:apt install tmux) - Optional: Codex CLI, Gemini CLI
Cross-Runtime Workflow Map
Use this reference when an operator asks to take Claude Code OMC workflows and make them usable from Codex/OMX or Gemini/Antigravity/OMA.
Mapping
| Claude / OMC intent | Codex / OMX | Gemini / Antigravity / OMA | Notes |
|---|---|---|---|
/team N:role "task" | $team N:role "task" inside Codex or omx team N:role "task" in the shell | /orchestrate or oma agent:parallel -i role:"task" | Coordinated work with shared task context. Antigravity can consume the harness but may need OMA CLI fallback for explicit spawning. |
/autopilot "task" or autopilot: task | $autopilot "task"; prepend $deep-interview if the request is underspecified, or use $plan → $ralph for stricter completion loops | /plan "task" → /work; add /orchestrate or oma agent:parallel only for explicit parallel lanes | End-to-end idea → plan → implementation → verification. Antigravity can consume the generated harness, but native Claude-style /autopilot is not guaranteed. |
/ultrawork "task" or ulw "task" | $ulw "task" or $ultrawork "task" | /ultrawork "task" when exposed, otherwise oma agent:parallel with independent lanes | Burst parallelism for independent work streams. |
/ultraqa "target" | $ultraqa "target" | /review "target" or /ultrawork "QA target" with QA/security/performance/accessibility lanes | QA fan-out. Do not promise a native Antigravity /ultraqa command unless the local OMA projection exposes it. |
State Boundaries
| Runtime | State root | Planning/spec root |
|---|---|---|
| OMC | .omc/state/ | .omc/specs/, .omc/plans/ |
| OMX | .omx/state/ | .omx/plans/ |
| OMA | .agents/ source, generated views under .gemini/, .claude/, .codex/ | .agents/workflows/, .agents/skills/ |
Never write Codex runtime scratch into .omc/, and never treat generated OMA vendor views as the canonical source. For portable harness work, edit .agents/ and run oma link.
Routing Rule
- If the operator is inside Claude Code and wants Claude-native execution, stay on
omc. - If the operator wants Codex-native workflow skills, route to
omx. - If the operator wants Gemini or Antigravity compatibility, route to
ohmg/ OMA and state the Antigravity spawning boundary plainly.
OMC Hooks Reference
OMC uses Claude Code's hooks system to inject context and control execution flow.
---
Hook Events
| Event | When | OMC Usage |
|---|---|---|
UserPromptSubmit | Prompt submitted | Magic keyword detection, skill injection |
SessionStart | Session begins | Setup, memory load, state restore |
PreToolUse | Before tool use | Permission hints, parallel hints |
PostToolUse | After tool use | Result validation, memory update |
PostToolUseFailure | Tool failed | Error recovery, retry hints |
SubagentStart | Agent starts | Agent tracking |
SubagentStop | Agent stops | Output verification |
PreCompact | Before context compaction | Preserve critical info, save memory |
Stop | Claude stopping | Persistence enforcement, code simplification |
SessionEnd | Session ends | Cleanup, state flush |
---
Injection Patterns
Hooks inject <system-reminder> tags with context:
hook success: Success → proceed normally
[MAGIC KEYWORD: ...] → invoke the matched skill
The boulder never stops → ralph/ultrawork mode activeMemory Persistence
<remember>text</remember> → 7-day persistence
<remember priority>text</remember> → permanent persistenceKill Switches
DISABLE_OMC → disable all OMC hooks
OMC_SKIP_HOOKS=hook1,hook2 → skip specific hooks (comma-separated)---
Hook Registration
OMC registers hooks via hooks.json in the plugin directory. After installation:
# Verify hook registration
cat ~/.claude/settings.json | grep -A5 "hooks"
# Re-register via setup
/oh-my-claudecode:omc-setup---
Common Hook Behaviors
UserPromptSubmit (Magic Keyword Detection)
- Scans incoming prompt for keywords:
autopilot,ralph,ulw,ccg, etc. - Injects skill invocation context if keyword matched
- Prevents duplicate skill activation
Stop Hook (Persistence)
- Checks if ralph/ultrawork mode is active
- If active and task not verified complete: re-injects continuation signal
- "The boulder never stops" = ralph mode enforcement
PreCompact Hook
- Saves current
.omc/notepad.mdstate - Extracts critical plan/task info to project memory
- Ensures continuity after context compression
PostToolUse Hook
- Validates tool results against expected patterns
- Updates working memory with new findings
- Hints parallel execution opportunities
---
Cancellation
cancelomc # Magic keyword — cancel active execution mode
stopomc # Alias for cancelomc
/oh-my-claudecode:cancel # Slash command cancelState is preserved on cancel for potential resume.
OMC install topology and recovery
Use this reference when the front door has already identified that the real job is install topology, local checkout / plugin-dir behavior, or mixed-surface recovery.
1. Topology truth table
| Topology | What is actually installed | Use when | Preferred next step |
|---|---|---|---|
marketplace-plugin | Claude Code plugin / slash-skill surface | The operator wants /team, /autopilot, /ralph, hooks, HUD, or normal in-session setup | /plugin marketplace add ... → /plugin install oh-my-claudecode → setup omc or /oh-my-claudecode:omc-setup |
shell-cli | npm package oh-my-claude-sisyphus providing the omc command | The operator wants shell-side omc setup, omc update, omc ask, or omc team | npm i -g oh-my-claude-sisyphus@latest |
local-plugin-dir | Local checkout used through --plugin-dir / OMC_PLUGIN_ROOT | The operator is testing or developing a checkout and wants changes reflected without marketplace cache confusion | omc --plugin-dir <path> ... plus omc setup --plugin-dir-mode |
mixed-or-unknown | Overlapping plugin + CLI + local checkout or unclear state | Duplicate slash skills, duplicate commands, stale HUD/hooks, or unclear ownership | Stop adding installs; inspect the active surfaces first |
2. Marketplace plugin path
Inside Claude Code:
/plugin marketplace add https://github.com/Yeachan-Heo/oh-my-claudecode
/plugin install oh-my-claudecodeThen run one setup entrypoint:
setup omcor:
/oh-my-claudecode:omc-setupUse this path for ordinary Claude Code operators who mainly want in-session skills.
3. Shell CLI path
Install the shell runtime separately when the operator truly wants omc commands:
npm i -g oh-my-claude-sisyphus@latestRemember:
- the package name is
oh-my-claude-sisyphus - the runtime command is
omc /teamandomc teamare not the same thing
4. Local checkout / plugin-dir path
Use this when the operator is modifying OMC locally or needs to avoid marketplace cache lag.
Key truths:
--plugin-diralone is session-scoped unless the operator also wires the persistent root correctlyOMC_PLUGIN_ROOTmatters when the operator wants the shell runtime to resolve the local checkout consistentlyomc setup --plugin-dir-modeis the truthful setup path for this topology
Typical pattern:
omc --plugin-dir /path/to/oh-my-claudecode setup --plugin-dir-modeWhat this solves:
- local edits not showing up because the marketplace copy is still active
- duplicate or stale plugin cache behavior
- confusion between "I changed the checkout" and "Claude is still reading the old cached plugin"
5. Mixed-or-unknown recovery checklist
If commands or slash skills appear twice, or setup state is unclear:
1. Check whether the marketplace plugin, npm CLI, and local-checkout/plugin-dir flow were all used. 2. Decide which topology should be canonical for this machine / repo. 3. Re-run the truthful setup/update flow for that topology. 4. Only then continue with runtime-mode guidance.
Useful recovery questions:
- Are duplicate commands coming from plugin install +
omc setupoverlap? - Is the operator on a local checkout but still invoking a marketplace-cached copy?
- Is the shell
omccommand coming from the expected install location? - Is the worktree/state issue actually a topology mismatch rather than a mode-selection problem?
6. Team, HUD, and state prerequisites
Native Claude teams require:
{
"env": {
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
}
}Additional recovery reminders:
- worktree /
.omc/state/layout problems are runtime-state issues, not proof that/teamis the wrong mode - HUD or rate-limit failures are recovery/environment topics first
- prefer documented setup/update/doctor flows over ad hoc hook surgery
7. Route-outs
If the operator is no longer really asking about OMC topology or runtime ownership:
| Real need | Route to |
|---|---|
| Long-lived plan → execute → verify ledger | jeo |
| Spec-first persistence / keep-going method | ralph |
| Permission surface / bypass policy | ralphmode |
| Codex-first runtime | omx |
| Gemini / Antigravity portable harness | ohmg |
| Fresh-session browser verification | browser-harness |
| Running browser reuse | playwriter |
| Exact rendered-UI annotation | agentation |
OMC intake packets and route-outs
Use this reference after the front door has already identified the operator's install topology.
1. Packet selector
| Packet | Use when | Primary response shape | Deep reference |
|---|---|---|---|
install-topology | The user needs install/setup guidance, topology cleanup, or local-checkout / plugin-dir help | Name the topology first, then give only the matching setup flow | install-topology-and-recovery.md |
in-session-runtime | The user is already inside Claude Code and wants the best slash skill | Pick the smallest truthful slash skill and note nearby alternatives only if needed | modes-reference.md |
terminal-runtime | The user wants shell-side omc commands or tmux workers | Recommend the matching omc ... command family | cli-reference.md |
recovery-and-update | Something is broken, duplicated, stale, or resume/state behavior is wrong | Verify topology → verify surface → rerun truthful setup/update path → inspect env/state | install-topology-and-recovery.md, hooks-reference.md, cli-reference.md |
boundary-and-route-out | The user really needs an adjacent skill, not OMC depth | Route to the correct owner | skill listed below |
2. Surface truth table
| User phrasing | Prefer | Why |
|---|---|---|
| "I want multiple agents inside Claude Code" | /team | Native in-session team runtime |
| "I want tmux workers / shell-side team mode" | omc team | Terminal runtime |
| "I want OMC to set itself up / repair itself" | setup omc or /oh-my-claudecode:omc-setup if already in Claude Code; omc setup if explicitly on the shell CLI | Setup entrypoint depends on the surface |
| "I want Claude to keep going until it's actually done" | /ralph ... | In-session persistence skill |
| "I need Codex / Gemini on the shell as helpers" | omc ask <provider> ... or omc team <N>:<provider> ... | Shell-side provider access |
3. Recovery checklist
Duplicate install or command confusion
- Check whether the marketplace plugin, CLI, and local-checkout/plugin-dir surfaces were all installed.
- If plugin-dir or local checkout is involved, use the documented plugin-dir /
OMC_PLUGIN_ROOTpath instead of inventing cleanup steps. - Re-run the current setup/update flow from the truthful topology.
Team mode fails or silently downgrades
- Verify
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1. - Confirm whether the user really wanted
/teamoromc team. - Treat hook/HUD or environment breakage as recovery, not as proof that another mode is correct.
Resume / state / worktree weirdness
- Inspect
.omc/state/, team/session naming, and worktree layout. - Treat worktree/plugin-dir/state layout as the problem, not "OMC team mode" in the abstract.
HUD / rate-limit / ephemeral-environment trouble
- Prefer documented update/recovery/status paths over ad hoc hook surgery.
- Separate environment failures from mode-selection questions.
4. Route-outs
| If the real job is... | Route to |
|---|---|
| Long-lived plan → execute → verify ledger | jeo |
| Spec-first persistence beyond OMC runtime detail | ralph |
| Approval posture, trusted-folder / bypass policy, permission surface | ralphmode |
| Plan approval / review gate | plannotator |
| Fresh-session browser verification | browser-harness |
| Running authenticated browser reuse | playwriter |
| Exact rendered-UI critique / annotation handoff | agentation |
| Codex-first runtime orchestration | omx |
| Gemini / Antigravity portable harness | ohmg |
5. Stable phrasing to reuse
- "Start from the topology and surface you are actually using: marketplace plugin, shell-side
omcCLI, or local--plugin-dirworkflow." - "Use OMC for Claude-first runtime orchestration; route long-loop planning, approval posture, browser review, or other vendor runtimes outward."
- "Treat duplicate installs and plugin-dir drift as recovery problems before suggesting more commands."
OMC Orchestration Modes Reference
---
Team (Canonical Mode)
/oh-my-claudecode:team 3:executor "implement fullstack todo app"5-stage pipeline — agents share a task list:
team-plan → team-prd → team-exec → team-verify → team-fix (loop if failed)team-plan: Creates shared task listteam-prd: Architect designs solution and interfacesteam-exec: N parallel executors implement tasksteam-verify: Verifier checks acceptance criteriateam-fix: If failed, loops back to exec
When to use: Coordinated multi-agent work where agents should share context.
---
Autopilot
autopilot: build a REST API for managing tasksFull autonomous 5-stage pipeline from idea to working code: 1. Deep interview (clarify requirements) 2. Planning (task breakdown) 3. Architecture (system design) 4. Implementation (code generation) 5. Verification (testing & validation)
When to use: End-to-end feature work with minimal setup. Single lead agent.
---
Ralph (Persistence Loop)
ralph: refactor the authentication module
ralph: fix all failing testsExecutes, verifies, fixes — loops until done:
execute → verify → fix → repeat (until verified or max iterations)State saved to .omc/state/ralph.json. Survives context resets.
When to use: Tasks that must complete fully. No partial deliveries accepted.
ralph includes ultrawork — parallel execution is automatic.
---
Ultrawork
ultrawork: implement user authentication with OAuth
ulw fix all errorsMaximum parallelism — launch multiple agents simultaneously:
- Independent work streams with no synchronization overhead
- Results merged atomically
- Best for burst fixes/refactors across codebase
When to use: Many independent tasks that can run simultaneously.
---
CCG (3-Model Synthesis)
ccg: implement payment processing with UI dashboardSynthesizes three models:
- Codex: Execution focus, code generation
- Gemini: Analysis, large context (1M tokens), design review
- Claude: Orchestration, integration, final synthesis
When to use: Complex tasks spanning backend execution + UI design + large codebase analysis.
---
Pipeline
Sequential staged processing with strict ordering:
stage-1 → stage-2 → stage-3 → ...When to use: Multi-step transformations where each step depends on prior output.
---
Skill Layer Composition
Skills compose in three layers:
GUARANTEE LAYER ralph (loop until done)
↓
ENHANCEMENT LAYER ultrawork (parallelism) | git-master (commits)
↓
EXECUTION LAYER autopilot | planner | default buildExample combinations:
ultrawork: refactor API with proper commits= ultrawork + git-master + defaultralph: implement full feature= ralph + ultrawork + autopilot- Just
autopilot: build X= autopilot only (no guarantee layer)
---
Legacy Modes (Deprecated → Route to Team)
| Legacy | Routes to |
|---|---|
swarm N agents: task | Team mode |
ultrapilot: task | Team mode |
---
State Files
| Mode | State File |
|---|---|
| Team | .omc/state/team.json |
| Autopilot | .omc/state/autopilot.json |
| Ralph | .omc/state/ralph.json |
| Ultrawork | .omc/state/ultrawork.json |
Working memory: .omc/notepad.md (7-day auto-prune) Permanent context: .omc/project-memory.json
#!/usr/bin/env bash
# omc (oh-my-claudecode) install script
# Installs OMC plugin into Claude Code and verifies prerequisites
set -euo pipefail
OMC_REPO="https://github.com/Yeachan-Heo/oh-my-claudecode"
CLAUDE_SKILLS_DIR="${HOME}/.claude/skills"
SKILL_NAME="omc"
print_ok() { echo "✓ $*"; }
print_err() { echo "✗ $*" >&2; }
print_info(){ echo "→ $*"; }
# 1. Check Claude Code is available
if ! command -v claude &>/dev/null; then
print_err "Claude Code CLI not found. Install from https://docs.anthropic.com/claude-code"
exit 1
fi
print_ok "Claude Code CLI found: $(claude --version 2>/dev/null || echo 'unknown version')"
# 2. Note native teams requirement
print_info "Tip: Enable native teams in ~/.claude/settings.json:"
print_info ' { "env": { "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1" } }'
# 3. Ensure skills directory exists
mkdir -p "${CLAUDE_SKILLS_DIR}"
# 4. Install via Claude Code plugin marketplace
print_info "Installing oh-my-claudecode via plugin marketplace..."
if claude --print "/plugin marketplace add ${OMC_REPO}" 2>/dev/null; then
print_ok "Plugin added to marketplace"
if claude --print "/plugin install oh-my-claudecode" 2>/dev/null; then
print_ok "oh-my-claudecode plugin installed"
else
print_info "Run in Claude Code: /plugin install oh-my-claudecode"
fi
else
print_info "Marketplace add failed — run manually in Claude Code:"
print_info " /plugin marketplace add ${OMC_REPO}"
print_info " /plugin install oh-my-claudecode"
fi
# 5. npm fallback
print_info ""
print_info "Alternative: install via npm (package: oh-my-claude-sisyphus)"
print_info " npm install -g oh-my-claude-sisyphus"
echo ""
print_ok "After installation, run in Claude Code:"
echo " /oh-my-claudecode:omc-setup"
echo ""
echo "Then try:"
echo " autopilot: build a REST API for managing tasks"
echo " ralph: fix all failing tests"
echo " /oh-my-claudecode:team 3:executor \"implement feature X\""
#!/usr/bin/env bash
# validate-omc.sh — Validate OMC installation and configuration
set -euo pipefail
PASS=0
FAIL=0
check() {
local label="$1"
local cmd="$2"
if eval "$cmd" &>/dev/null; then
echo "✓ $label"
((PASS++)) || true
else
echo "✗ $label"
((FAIL++)) || true
fi
}
echo "=== OMC Installation Validator ==="
echo ""
# Core prerequisites
check "Claude Code CLI available" "command -v claude"
check "Node.js 20+ available" "node -e 'process.exit(parseInt(process.version.slice(1)) >= 20 ? 0 : 1)'"
check "tmux available (required for omc team/wait)" "command -v tmux"
# Plugin installation
check "oh-my-claudecode plugin directory exists" "[ -d '${HOME}/.claude/plugins/oh-my-claudecode' ] || [ -d '${HOME}/.config/claude/plugins/oh-my-claudecode' ]"
# CLAUDE.md presence
check "OMC CLAUDE.md configured" "grep -q 'oh-my-claudecode\|OMC' '${HOME}/.claude/CLAUDE.md' 2>/dev/null"
# Settings check
check "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS documented" \
"grep -q 'CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS' '${HOME}/.claude/settings.json' 2>/dev/null"
# Optional multi-model
echo ""
echo "--- Optional: Multi-AI Integration ---"
check "Gemini CLI available (omc team :gemini)" "command -v gemini"
check "Codex CLI available (omc team :codex)" "command -v codex"
# omc CLI
echo ""
echo "--- OMC CLI ---"
check "omc CLI available" "command -v omc"
echo ""
echo "=== Results ==="
echo " Passed: ${PASS}"
echo " Failed: ${FAIL}"
echo ""
if [ "$FAIL" -eq 0 ]; then
echo "✓ OMC installation looks healthy"
echo ""
echo "Try it:"
echo " autopilot: build something"
echo " ralph: fix all tests"
echo " /oh-my-claudecode:omc-doctor # OMC's own diagnostics"
else
echo "! Some checks failed. Run /oh-my-claudecode:omc-doctor inside Claude Code for details."
exit 1
fi
Skill Autoresearch Changelog — omc
Experiment 0 — baseline
Score: 5/5 (100%) Change: none — baseline measurement only Reasoning: Establish ground truth before any mutation Result: All 5 evals pass on direct content inspection of SKILL.md Remaining failures: none
Eval-by-eval detail
| # | Name | Pass | Evidence |
|---|---|---|---|
| 1 | Installation path complete | PASS | /plugin marketplace add URL (line 32), /oh-my-claudecode:omc-setup (line 37), CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS (line 52) |
| 2 | Team mode canonical + 5-stage pipeline | PASS | "Team (canonical)" label (line 62), plan→prd→exec→verify→fix listed (lines 119-128), /oh-my-claudecode:team command (line 116) |
| 3 | Ralph as persistent loop + ultrawork composition | PASS | "Persistent loop: execute → verify → fix" (line 65), "composes automatically with ultrawork" (line 237) |
| 4 | CCG = Codex + Gemini + Claude with roles | PASS | "3-model synthesis (Codex + Gemini + Claude)" (line 67), "backend execution (Codex) + large-context analysis (Gemini) + orchestration (Claude)" (line 238) |
| 5 | Full keyword list incl. cancelomc + extended set | PASS | All required keywords present: cancelomc (line 108), deepsearch (line 103), deepanalyze/deep-analyze (line 104), ultrathink (line 105), tdd (line 106), deslop/anti-slop (line 107), autopilot/ralph/ulw/ccg/ralplan (lines 97-101) |
---
Loop stopped: baseline at 100% — no mutations needed
The skill already satisfies all 5 binary evals. No experiments beyond baseline were run. Budget remaining: 4 experiments unused.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Skill Autoresearch — omc</title>
<style>
* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background: #0f1117; color: #e2e8f0; min-height: 100vh; padding: 2rem; }
h1 { font-size: 1.5rem; font-weight: 700; margin-bottom: 0.25rem; }
.subtitle { color: #94a3b8; font-size: 0.875rem; margin-bottom: 2rem; }
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1rem; margin-bottom: 2rem; }
.card { background: #1e2330; border-radius: 0.75rem; padding: 1.25rem; border: 1px solid #2d3448; }
.card-label { font-size: 0.75rem; color: #64748b; text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 0.5rem; }
.card-value { font-size: 2rem; font-weight: 700; }
.card-value.green { color: #4ade80; }
.card-value.blue { color: #60a5fa; }
.card-value.yellow { color: #facc15; }
.card-value.gray { color: #94a3b8; }
.section-title { font-size: 1rem; font-weight: 600; margin-bottom: 1rem; color: #cbd5e1; }
table { width: 100%; border-collapse: collapse; margin-bottom: 2rem; font-size: 0.875rem; }
th { text-align: left; padding: 0.625rem 0.75rem; background: #1e2330; color: #64748b; font-weight: 600; text-transform: uppercase; font-size: 0.75rem; letter-spacing: 0.05em; border-bottom: 1px solid #2d3448; }
td { padding: 0.625rem 0.75rem; border-bottom: 1px solid #1e2330; }
tr:hover td { background: #1a1f2e; }
.badge { display: inline-block; padding: 0.2rem 0.6rem; border-radius: 9999px; font-size: 0.75rem; font-weight: 600; }
.badge-green { background: #14532d; color: #4ade80; }
.badge-blue { background: #1e3a5f; color: #60a5fa; }
.badge-yellow { background: #422006; color: #facc15; }
.badge-red { background: #450a0a; color: #f87171; }
.progress-bar { height: 8px; background: #2d3448; border-radius: 4px; overflow: hidden; margin-top: 0.5rem; }
.progress-fill { height: 100%; background: linear-gradient(90deg, #4ade80, #22d3ee); border-radius: 4px; transition: width 0.5s ease; }
.eval-grid { display: grid; gap: 0.75rem; margin-bottom: 2rem; }
.eval-row { background: #1e2330; border-radius: 0.5rem; padding: 1rem; border: 1px solid #2d3448; display: flex; align-items: flex-start; gap: 1rem; }
.eval-icon { font-size: 1.25rem; flex-shrink: 0; margin-top: 0.1rem; }
.eval-name { font-weight: 600; font-size: 0.9rem; margin-bottom: 0.25rem; }
.eval-evidence { font-size: 0.8rem; color: #94a3b8; line-height: 1.4; }
.status-banner { background: #14532d; border: 1px solid #166534; border-radius: 0.75rem; padding: 1rem 1.25rem; margin-bottom: 2rem; display: flex; align-items: center; gap: 0.75rem; }
.status-banner-icon { font-size: 1.5rem; }
.status-banner-text { font-weight: 600; color: #4ade80; }
.status-banner-sub { font-size: 0.8rem; color: #86efac; margin-top: 0.1rem; }
.chart-area { background: #1e2330; border-radius: 0.75rem; padding: 1.25rem; border: 1px solid #2d3448; margin-bottom: 2rem; }
.chart-row { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.5rem; font-size: 0.85rem; }
.chart-label { width: 100px; color: #94a3b8; flex-shrink: 0; }
.chart-bar-wrap { flex: 1; height: 20px; background: #2d3448; border-radius: 4px; overflow: hidden; }
.chart-bar { height: 100%; background: linear-gradient(90deg, #4ade80, #22d3ee); border-radius: 4px; display: flex; align-items: center; padding-left: 8px; font-size: 0.75rem; font-weight: 600; color: #0f172a; }
footer { color: #475569; font-size: 0.75rem; border-top: 1px solid #2d3448; padding-top: 1rem; }
</style>
</head>
<body>
<h1>Skill Autoresearch — <code>omc</code></h1>
<p class="subtitle">Target: <code>.agent-skills/omc/SKILL.md</code> · Runs/experiment: 3 · Budget cap: 5</p>
<div class="status-banner">
<div class="status-banner-icon">✓</div>
<div>
<div class="status-banner-text">Complete — Baseline at 100%</div>
<div class="status-banner-sub">All 5 evals passed on first inspection. No mutations needed. Loop stopped early.</div>
</div>
</div>
<div class="grid">
<div class="card">
<div class="card-label">Baseline Score</div>
<div class="card-value green">5/5</div>
<div class="progress-bar"><div class="progress-fill" style="width:100%"></div></div>
</div>
<div class="card">
<div class="card-label">Final Score</div>
<div class="card-value green">5/5</div>
<div class="progress-bar"><div class="progress-fill" style="width:100%"></div></div>
</div>
<div class="card">
<div class="card-label">Pass Rate</div>
<div class="card-value green">100%</div>
</div>
<div class="card">
<div class="card-label">Experiments Run</div>
<div class="card-value blue">1</div>
</div>
<div class="card">
<div class="card-label">Mutations Kept</div>
<div class="card-value gray">0</div>
</div>
<div class="card">
<div class="card-label">Budget Used</div>
<div class="card-value yellow">1/5</div>
</div>
</div>
<div class="section-title">Experiment History</div>
<table>
<thead>
<tr>
<th>#</th>
<th>Score</th>
<th>Pass Rate</th>
<th>Status</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>0</td>
<td>5 / 5</td>
<td>100%</td>
<td><span class="badge badge-blue">baseline</span></td>
<td>Baseline — all 5 evals pass on content inspection</td>
</tr>
</tbody>
</table>
<div class="section-title">Score Progression</div>
<div class="chart-area">
<div class="chart-row">
<div class="chart-label">Exp 0 (base)</div>
<div class="chart-bar-wrap">
<div class="chart-bar" style="width:100%">5/5</div>
</div>
</div>
</div>
<div class="section-title">Eval Results (Experiment 0 — Baseline)</div>
<div class="eval-grid">
<div class="eval-row">
<div class="eval-icon">✓</div>
<div>
<div class="eval-name">EVAL 1: Installation path complete</div>
<div class="eval-evidence">
<code>/plugin marketplace add URL</code> at line 32 ·
<code>/oh-my-claudecode:omc-setup</code> at line 37 ·
<code>CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS</code> at line 52
</div>
</div>
</div>
<div class="eval-row">
<div class="eval-icon">✓</div>
<div>
<div class="eval-name">EVAL 2: Team mode identified as canonical with 5-stage pipeline</div>
<div class="eval-evidence">
"Team (canonical)" label at line 62 ·
<code>team-plan → team-prd → team-exec → team-verify → team-fix</code> at lines 119–128 ·
<code>/oh-my-claudecode:team</code> command at line 116
</div>
</div>
</div>
<div class="eval-row">
<div class="eval-icon">✓</div>
<div>
<div class="eval-name">EVAL 3: Ralph described as persistent loop with ultrawork composition</div>
<div class="eval-evidence">
"Persistent loop: execute → verify → fix" at line 65 ·
"composes automatically with ultrawork for parallel+persistent execution" at line 237
</div>
</div>
</div>
<div class="eval-row">
<div class="eval-icon">✓</div>
<div>
<div class="eval-name">EVAL 4: CCG expanded as Codex+Gemini+Claude with roles and use case</div>
<div class="eval-evidence">
"3-model synthesis (Codex + Gemini + Claude)" at line 67 ·
"backend execution (Codex) + large-context analysis (Gemini) + orchestration (Claude)" at line 238 ·
use case: "Mixed backend + UI work" at line 67
</div>
</div>
</div>
<div class="eval-row">
<div class="eval-icon">✓</div>
<div>
<div class="eval-name">EVAL 5: Full keyword list including cancelomc and ≥3 extended keywords</div>
<div class="eval-evidence">
Classic: <code>autopilot</code> (97), <code>ralph</code> (98), <code>ulw</code> (99), <code>ccg</code> (100), <code>ralplan</code> (101) ·
Extended: <code>deepsearch</code> (103), <code>deepanalyze</code>/<code>deep-analyze</code> (104), <code>ultrathink</code> (105), <code>tdd</code> (106), <code>deslop</code>/<code>anti-slop</code> (107) ·
Cancel: <code>cancelomc</code> (108)
</div>
</div>
</div>
</div>
<footer>
Generated by skill-autoresearch · omc v4.9.3 · 2026-03-30 · 1 experiment run · SKILL.md unchanged
</footer>
</body>
</html>
{
"skill": "omc",
"skill_path": "../SKILL.md",
"baseline_path": "SKILL.md.baseline",
"runs_per_experiment": 3,
"budget_cap": 5,
"final_status": "complete",
"experiments": [
{
"id": 0,
"score": 5,
"max_score": 5,
"pass_rate": 1.0,
"status": "baseline",
"description": "Baseline — all 5 evals pass on content inspection",
"evals": [
{
"id": 1,
"name": "Installation path complete",
"pass": true,
"evidence": "Line 32: /plugin marketplace add URL; Line 37: /oh-my-claudecode:omc-setup; Line 52: CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS"
},
{
"id": 2,
"name": "Team mode identified as canonical",
"pass": true,
"evidence": "Line 62: 'Team (canonical)' label; Lines 119-128: 5-stage pipeline; Line 116: /oh-my-claudecode:team command"
},
{
"id": 3,
"name": "Ralph described as persistent loop",
"pass": true,
"evidence": "Line 65: 'Persistent loop: execute -> verify -> fix'; Line 237: 'composes automatically with ultrawork'"
},
{
"id": 4,
"name": "CCG expanded as Codex+Gemini+Claude",
"pass": true,
"evidence": "Line 67: '3-model synthesis (Codex + Gemini + Claude)'; Line 238: backend/analysis/orchestration role split"
},
{
"id": 5,
"name": "Full keyword list with cancelomc and extended set",
"pass": true,
"evidence": "Lines 97-109: cancelomc, deepsearch, deepanalyze, ultrathink, tdd, deslop, autopilot, ralph, ulw, ccg, ralplan all present"
}
],
"mutation": null
}
],
"summary": {
"baseline_score": 5,
"baseline_pass_rate": 1.0,
"final_score": 5,
"final_pass_rate": 1.0,
"experiments_run": 1,
"kept": 0,
"discarded": 0,
"top_changes": [],
"remaining_failures": []
}
}
experiment score max_score pass_rate status description
0 5 5 1.00 baseline Baseline — all 5 evals pass on content inspection
---
name: omc
description: "Use when you need Teams-first multi-agent orchestration in Claude Code. Triggers on: omc, autopilot, ralph, ulw, ccg, team. 29+ specialized agents, smart model routing (Haiku→Opus), persistent execution loops, skill layers, real-time HUD."
allowed-tools: Read Write Bash Grep Glob Edit Agent
metadata:
tags: omc, oh-my-claudecode, claude-code, multi-agent, orchestration, team, autopilot, ralph, ultrawork, ccg, pipeline
platforms: Claude Code
keyword: omc
version: 4.9.3
source: Yeachan-Heo/oh-my-claudecode
---
# omc (oh-my-claudecode) — Claude Code Multi-Agent Orchestration
## When to use this skill
- You want Teams-first multi-agent orchestration inside Claude Code
- You need 29+ specialized agents with smart model routing (Haiku → Opus)
- Complex tasks that benefit from parallel agent execution with verify/fix loops
- Any Claude Code workflow that needs persistent, guaranteed-completion execution
- You want skill layers: Guarantee (ralph) → Enhancement (ultrawork) → Execution
- You need 3-model synthesis with Codex + Gemini + Claude (CCG mode)
---
## 1. Installation (3 Steps)
**Step 1: Install plugin**
```bash
/plugin marketplace add https://github.com/Yeachan-Heo/oh-my-claudecode
/plugin install oh-my-claudecode
```
**Step 2: Run setup**
```bash
/oh-my-claudecode:omc-setup
```
**Step 3: Build something**
```text
autopilot: build a REST API for managing tasks
```
> **npm alternative**: `npm install -g oh-my-claude-sisyphus`
**Enable native teams** (`~/.claude/settings.json`):
```json
{
"env": {
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
}
}
```
---
## 2. Orchestration Modes
| Mode | What it is | Use For |
|------|-----------|---------|
| **Team** (canonical) | 5-stage pipeline: `plan → prd → exec → verify → fix` | Coordinated agents on shared task list |
| **Autopilot** | Full autonomous 5-stage pipeline | End-to-end feature work (idea → code) |
| **Ultrawork** | Maximum parallelism burst | Fast fixes/refactors across codebase |
| **Ralph** | Persistent loop: execute → verify → fix | Tasks that must complete fully, no partials |
| **Pipeline** | Sequential staged processing | Strict ordering / multi-step transforms |
| **CCG** | 3-model synthesis (Codex + Gemini + Claude) | Mixed backend + UI work |
| **omc team (CLI)** | tmux workers with Codex/Gemini/Claude | Cross-model code review, security, design |
### Skill Layer Composition
```
┌──────────────────────────────────────────┐
│ GUARANTEE LAYER (optional) │
│ ralph — won't stop until verified done │
└──────────────────────────────────────────┘
│
▼
┌──────────────────────────────────────────┐
│ ENHANCEMENT LAYER (0–N skills) │
│ ultrawork (parallel) | git-master (VCS) │
└──────────────────────────────────────────┘
│
▼
┌──────────────────────────────────────────┐
│ EXECUTION LAYER (primary skill) │
│ default (build) | planner | orchestrate │
└──────────────────────────────────────────┘
```
---
## 3. Magic Keywords (Auto-Detection)
| Keyword | Effect |
|---------|--------|
| `autopilot`, `build me`, `I want a` | Full autonomous pipeline |
| `ralph`, `don't stop`, `must complete` | Persistent loop until verified |
| `ulw`, `ultrawork` | Maximum parallelism |
| `ccg`, `claude-codex-gemini` | 3-model synthesis |
| `ralplan` | Consensus-based iterative planning |
| `deep interview`, `ouroboros` | Socratic requirements clarification |
| `deepsearch` | Codebase-focused deep search |
| `deepanalyze`, `deep-analyze` | Deep analysis mode |
| `ultrathink` | Deep reasoning mode |
| `tdd`, `test first` | TDD workflow |
| `deslop`, `anti-slop` | Clean AI expression patterns |
| `cancelomc`, `stopomc` | Cancel active execution mode |
| `plan` | Planning interview |
---
## 4. Team Mode (Canonical)
```bash
/oh-my-claudecode:team 3:executor "fix all TypeScript errors"
```
5-stage pipeline:
```
team-plan → team-prd → team-exec → team-verify → team-fix (loop)
```
- **team-plan**: Planning agent creates task list
- **team-prd**: Architect designs solution
- **team-exec**: N parallel executor agents implement
- **team-verify**: Verifier confirms completion
- **team-fix**: If verification fails, fix loop repeats
---
## 5. Agent System (29+ Specialized Agents)
**Build / Analysis Lane:**
`explore` (haiku) · `analyst` (opus) · `planner` (opus) · `architect` (opus) · `debugger` (sonnet) · `executor` (sonnet) · `verifier` (sonnet) · `tracer` (sonnet)
**Review Lane:**
`code-reviewer` (opus) · `security-reviewer` (sonnet) · `critic` (opus) · `code-simplifier` (opus)
**Domain Specialists:**
`test-engineer` · `designer` · `writer` · `qa-tester` · `scientist` · `git-master` · `document-specialist`
Invoke via: `/oh-my-claudecode:<agent-name>` or delegated through Task tool.
See [references/agents-catalog.md](references/agents-catalog.md) for full profiles.
---
## 6. CLI Tools
### omc team (tmux Workers)
```bash
omc team 2:codex "review auth module for security"
omc team 2:gemini "redesign UI components"
omc team status <session>
omc team shutdown <session>
```
### omc ask (Provider Advisor)
```bash
omc ask claude "review this migration plan"
omc ask codex --prompt "identify architecture risks"
omc ask gemini --prompt "propose UI polish ideas"
```
### omc wait (Rate Limit Auto-Resume)
```bash
omc wait # Check status
omc wait --start # Enable auto-resume daemon
omc wait --stop # Disable daemon
```
### Notifications
```bash
omc config-stop-callback telegram --enable --token <bot> --chat <id>
omc config-stop-callback discord --enable --webhook <url>
omc config-stop-callback slack --enable --webhook <url>
```
---
## 7. Updating
```bash
# Sync latest version
/plugin marketplace update omc
# Re-run setup
/oh-my-claudecode:omc-setup
# If issues after update
/oh-my-claudecode:omc-doctor
```
---
## 8. Optional: Multi-AI Orchestration
| Provider | Install | What it enables |
|----------|---------|----------------|
| Gemini CLI | `npm install -g @google/gemini-cli` | Design review, UI consistency (1M token context) |
| Codex CLI | `npm install -g @openai/codex` | Architecture validation, code review cross-check |
---
## Instructions
1. **Detect intent** — match user request to the best orchestration mode (Team, Autopilot, Ralph, Ultrawork, CCG)
2. **Provide install path** — if OMC is not yet installed, give the 3-step install sequence
3. **Show the invocation** — give the exact command or magic keyword for the chosen mode
4. **Set expectations** — explain what the mode does (pipeline stages, loop behavior, parallelism)
5. **Surface relevant CLI** — mention `omc team`, `omc ask`, or `omc wait` if they apply
6. **Link to references** — point to the appropriate references/ file for deep-dive details
---
## Examples
### Example 1: Multi-agent team task
**User:** "여러 에이전트가 병렬로 TypeScript 에러 전부 고쳐줘"
**Response:** Use Team mode — `/oh-my-claudecode:team 3:executor "fix all TypeScript errors"`. Runs 3 parallel executors through plan→prd→exec→verify→fix pipeline.
### Example 2: Guaranteed completion
**User:** "테스트 전부 통과할 때까지 멈추지 마"
**Response:** Use Ralph mode — `ralph: fix all failing tests`. Persistent execute→verify→fix loop until all tests pass. Won't stop until verified.
### Example 3: New installation
**User:** "OMC 설치하고 싶어"
**Response:** 3-step install: `/plugin marketplace add https://github.com/Yeachan-Heo/oh-my-claudecode` → `/plugin install oh-my-claudecode` → `/oh-my-claudecode:omc-setup`. Enable native teams in `~/.claude/settings.json`.
---
## Best practices
- **Default to Team mode** for multi-agent work — swarm/ultrapilot are legacy and route to Team
- **Enable `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1`** in `~/.claude/settings.json` before using Team mode
- **Use ralph for critical tasks** — it composes automatically with ultrawork for parallel+persistent execution
- **Use CCG for mixed workloads** — backend execution (Codex) + large-context analysis (Gemini) + orchestration (Claude)
- **Re-run `/oh-my-claudecode:omc-setup`** after every plugin update to refresh hooks and CLAUDE.md
- **npm package name differs** — it's `oh-my-claude-sisyphus`, not `oh-my-claudecode`
- **Cancel safely** — use `cancelomc` keyword or `/oh-my-claudecode:cancel`; state is preserved for resume
---
## Quick Reference
| Action | Command |
|--------|---------|
| Install | `/plugin marketplace add https://github.com/Yeachan-Heo/oh-my-claudecode` |
| Setup | `/oh-my-claudecode:omc-setup` |
| Team mode | `/oh-my-claudecode:team N:executor "task"` |
| Autopilot | `autopilot: <task>` |
| Ralph loop | `ralph: <task>` |
| Ultrawork | `ulw <task>` |
| CCG synthesis | `ccg: <task>` |
| Deep interview | `deep interview: <topic>` |
| Cancel | `cancelomc` |
| Update | `/plugin marketplace update omc && /oh-my-claudecode:omc-setup` |
| Debug | `/oh-my-claudecode:omc-doctor` |
→ [Full documentation](https://yeachan-heo.github.io/oh-my-claudecode-website) · [GitHub](https://github.com/Yeachan-Heo/oh-my-claudecode)
---
## References
| File | Contents |
|------|---------|
| [references/agents-catalog.md](references/agents-catalog.md) | All 29+ agent profiles, tiers, delegation rules |
| [references/modes-reference.md](references/modes-reference.md) | Mode deep-dives, skill layer composition |
| [references/hooks-reference.md](references/hooks-reference.md) | Hook events, injection patterns, kill switches |
| [references/cli-reference.md](references/cli-reference.md) | Full CLI syntax: omc team/ask/wait/config |
N:omc
D:Route Claude Code–first orchestration to the truthful OMC install topology and runtime before giving commands. Distinguishes marketplace plugin slash skills from the `omc` shell CLI and local-checkout `--plugin-dir` usage, maps Claude `/team` `/autopilot` `/ultrawork` `/ultraqa` intents to OMX/OMA when requested, handles duplicate-install/recovery/state issues, and routes adjacent work outward.
G:omc oh-my-claudecode claude-code /team autopilot ralph ultrawork ultraqa ccg omc-team omc-ask omc-setup plugin-dir hud hooks omx oma antigravity
U[5]:
1:Claude Code plugin setup, shell CLI setup, and local plugin-dir topology routing for OMC / oh-my-claudecode
2:Truthful routing between in-session slash skills and shell-side `omc` CLI commands
3:Mode selection for `/team`, `/autopilot`, `/ralph`, `/ultrawork`, `/ultraqa`, and `omc team`
4:Recovery guidance for duplicate installs, plugin-dir confusion, worktree/state drift, and HUD/update issues
5:Explicit route-outs to jeo, ralphmode, omx, ohmg, plannotator, and browser-review skills
S[6]{n,action,details}:
1:topology,Identify the install topology,marketplace-plugin | shell-cli | local-plugin-dir | mixed-or-unknown
2:classify,Pick one packet,install-topology | in-session-runtime | terminal-runtime | recovery-and-update | cross-runtime-parity | boundary-and-route-out
3:surface,State the runtime surface,plugin slash skills vs shell-side `omc` CLI
4:recommend,Give the smallest truthful command,/team or /autopilot or /ralph or setup omc or omc setup or omc team or omc ask depending on topology + packet
5:recover,Call out real operator constraints,enable CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 and inspect plugin-dir/state/worktree behavior when relevant
6:route-out,Hand off non-OMC ownership,jeo / ralphmode / plannotator / browser-harness / playwriter / agentation / omx / ohmg
R[6]:
1:`/team` and `omc team` are both real but they are different runtimes
2:`/autopilot`, `/ralph`, and `/ultrawork` are in-session skills, not normal `omc` CLI subcommands
3:The npm package name is `oh-my-claude-sisyphus` while the runtime command is `omc`
4:Local checkouts should use `--plugin-dir` / `OMC_PLUGIN_ROOT` / `omc setup --plugin-dir-mode`, not marketplace advice
5:Native team mode depends on CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 in ~/.claude/settings.json
6:Map Claude /team /autopilot /ultrawork /ultraqa to OMX $team $autopilot $ulw $ultraqa or OMA /orchestrate /plan→/work /ultrawork /review by intent not implementation identity
E[4]{desc,in,out}:
1:{Marketplace plugin setup,OMC 설치하고 Claude Code 안에서 바로 팀 모드까지 쓰고 싶어,Use install-topology with marketplace-plugin and give plugin install plus setup omc}
2:{Local plugin-dir dev loop,로컬 checkout으로 OMC 수정 중인데 plugin-dir 쪽으로 어떻게 잡아야 해?,Use install-topology with local-plugin-dir and point to --plugin-dir / OMC_PLUGIN_ROOT / omc setup --plugin-dir-mode}
3:{Shell-side worker team,omc team 2:codex "review auth flow",Use terminal-runtime and explain tmux worker orchestration}
4:{Long-loop orchestration boundary,I want a resumable plan→execute→verify loop across multiple skills,Route to jeo and mention OMC only as the Claude-first runtime layer}