
omc-setup
Install or refresh oh-my-claudecode for plugin, npm, and local-dev setups from the canonical setup flow
- Installs
- 999
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/yeachan-heo/oh-my-claudecode --skill omc-setup- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads omc-setup automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
OMC Setup
This is the only command you need to learn. After running this, everything else is automatic.
When this skill is invoked, immediately execute the workflow below. Do not only restate or summarize these instructions back to the user.
Note: All ~/.claude/... paths in this guide respect CLAUDE_CONFIG_DIR when that environment variable is set.
Best-Fit Use
Choose this setup flow when the user wants to install, refresh, or repair OMC itself.
- Marketplace/plugin install users should land here after
/plugin install oh-my-claudecode - npm users should land here after
npm i -g oh-my-claude-sisyphus@latest - local-dev and worktree users should land here after updating the checked-out repo and rerunning setup
Flag Parsing
Check for flags in the user's invocation:
--help→ Show Help Text (below) and stop--local→ Phase 1 only (target=local), then stop--global→ Phase 1 only (target=global), then stop--force→ Skip Pre-Setup Check, run full setup (Phase 1 → 2 → 3 → 4)- No flags → Run Pre-Setup Check, then full setup if needed
Help Text
When user runs with --help, display this and stop:
OMC Setup - Configure oh-my-claudecode
USAGE:
/oh-my-claudecode:omc-setup Run initial setup wizard (or update if already configured)
/oh-my-claudecode:omc-setup --local Configure local project (.claude/CLAUDE.md)
/oh-my-claudecode:omc-setup --global Configure global settings (~/.claude/CLAUDE.md)
/oh-my-claudecode:omc-setup --force Force full setup wizard even if already configured
/oh-my-claudecode:omc-setup --help Show this help
MODES:
Initial Setup (no flags)
- Interactive wizard for first-time setup
- Configures CLAUDE.md (local or global)
- Sets up HUD statusline
- Checks for updates
- Clears retired setup values (5.0.0 removed defaultExecutionMode) and points MCP registration at Claude Code's native config
- Configures team mode defaults (agent count, type, model)
- If already configured, offers quick update option
Local Configuration (--local)
- Invokes the plugin-local coordinator through `scripts/setup-claude-md.sh`; the shell validates the coordinator response and its exit status before any post-install work
- Reports coordinator-created byte-identical backups only for files that required mutation
- Project-specific settings
- Use this to update project config after OMC upgrades
Global Configuration (--global)
- Invokes the plugin-local coordinator through `scripts/setup-claude-md.sh`; the shell validates the coordinator response and its exit status before any post-install work
- Reports coordinator-created byte-identical backups only for changed global files
- Default: explicitly overwrites ~/.claude/CLAUDE.md so plain `claude` also uses OMC
- Optional preserve mode keeps the user's base `CLAUDE.md` and installs OMC into `CLAUDE-omc.md` for `omc` launches
- Applies to all Claude Code sessions
- Preserves same-named legacy hook files unless their exact historical contents are independently verified
- Use this to update global config after OMC upgrades
Force Full Setup (--force)
- Bypasses the "already configured" check
- Runs the complete setup wizard from scratch
- Use when you want to reconfigure preferences
EXAMPLES:
/oh-my-claudecode:omc-setup # First time setup (or update CLAUDE.md if configured)
/oh-my-claudecode:omc-setup --local # Update this project
/oh-my-claudecode:omc-setup --global # Update all projects
/oh-my-claudecode:omc-setup --force # Re-run full setup wizard
For more info: https://github.com/Yeachan-Heo/oh-my-claudecode
Setup Invocation
Do not independently scan plugin cache directories or select a plugin root in this skill. Invoke the setup script from the plugin root supplied by the running plugin environment:
bash "${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/scripts/setup-claude-md.sh" <local|global> [overwrite|preserve]
The script is the sole cache resolver. It accepts only complete plugin roots (canonical docs/CLAUDE.md, coordinator artifact, and wiki skill), chooses a strict full-SemVer cache version, verifies the compiled-source handshake, and fails closed on coordinator protocol or status disagreement. Do not download configuration or mutate CLAUDE.md outside that coordinator.
Pre-Setup Check: Already Configured?
CRITICAL: Before doing anything else, check if setup has already been completed. This prevents users from having to re-run the full setup wizard after every update.
# Check if setup was already completed
CONFIG_DIR="${CLAUDE_CONFIG_DIR:-$HOME/.claude}"
case "$CONFIG_DIR" in
"~") CONFIG_DIR="$HOME" ;;
"~/"*) CONFIG_DIR="$HOME/${CONFIG_DIR#\~/}" ;;
"~\\"*) CONFIG_DIR="$HOME/${CONFIG_DIR#\~\\}" ;;
esac
CONFIG_FILE="$CONFIG_DIR/.omc-config.json"
if [ -f "$CONFIG_FILE" ]; then
if ! command -v jq >/dev/null 2>&1; then
echo "ERROR: jq is required to inspect existing OMC setup state. Existing config was not modified."
exit 1
fi
if ! SETUP_COMPLETED=$(jq -r '.setupCompleted // empty' "$CONFIG_FILE" 2>/dev/null) \
|| ! SETUP_VERSION=$(jq -r '.setupVersion // empty' "$CONFIG_FILE" 2>/dev/null); then
echo "ERROR: Existing OMC config is invalid JSON. Existing config was not modified."
exit 1
fi
if [ -n "$SETUP_COMPLETED" ] && [ "$SETUP_COMPLETED" != "null" ]; then
echo "OMC setup was already completed on: $SETUP_COMPLETED"
[ -n "$SETUP_VERSION" ] && echo "Setup version: $SETUP_VERSION"
ALREADY_CONFIGURED="true"
fi
fi
If Already Configured (and no --force flag)
If ALREADY_CONFIGURED is true AND the user did NOT pass --force, --local, or --global flags:
Use AskUserQuestion to prompt:
Question: "OMC is already configured. What would you like to do?"
Options:
- Update CLAUDE.md and clear retired setup values - Install the active plugin's canonical CLAUDE.md and run Phase 2 Step 2.4 without re-running the full setup
- Run full setup again - Go through the complete setup wizard
- Cancel - Exit without changes
If user chooses "Update CLAUDE.md and clear retired setup values":
- Detect if local (.claude/CLAUDE.md) or global (~/.claude/CLAUDE.md) config exists
- If local exists, run:
bash "${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/scripts/setup-claude-md.sh" local - If only global exists, run:
bash "${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/scripts/setup-claude-md.sh" global - Run Phase 2 Step 2.4 to clear the retired
defaultExecutionModekey - Skip all other steps after the cleanup
- Report success and exit
If user chooses "Run full setup again":
- Continue with Resume Detection below
If user chooses "Cancel":
- Exit without any changes
Force Flag Override
If user passes --force flag, skip this check and proceed directly to setup.
Resume Detection
Before starting any phase, check for existing state:
bash "${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/scripts/setup-progress.sh" resume
If state exists (output is not "fresh"), use AskUserQuestion to prompt:
Question: "Found a previous setup session. Would you like to resume or start fresh?"
Options:
- Resume from step $LAST_STEP - Continue where you left off
- Start fresh - Begin from the beginning (clears saved state)
If user chooses "Start fresh":
bash "${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/scripts/setup-progress.sh" clear
Phase Execution
For --local or --global flags:
Read the file at ${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/skills/omc-setup/phases/01-install-claude-md.md and follow its instructions.
(The phase file handles early exit for flag mode.)
For full setup (default or --force):
Execute phases sequentially. For each phase, read the corresponding file and follow its instructions:
-
Phase 1 - Install CLAUDE.md: Read
${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/skills/omc-setup/phases/01-install-claude-md.mdand follow its instructions. -
Phase 2 - Environment Configuration: Read
${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/skills/omc-setup/phases/02-configure.mdand follow its instructions. Phase 2 must delegate HUD/statusLine setup to thehudskill; do not generate or patchstatusLinepaths inline here. -
Phase 3 - Integration Setup: Read
${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/skills/omc-setup/phases/03-integrations.mdand follow its instructions. -
Phase 4 - Completion: Read
${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/skills/omc-setup/phases/04-welcome.mdand follow its instructions.
Graceful Interrupt Handling
IMPORTANT: This setup process saves progress after each phase via ${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/scripts/setup-progress.sh. If interrupted (Ctrl+C or connection loss), the setup can resume from where it left off.
Keeping Up to Date
After installing oh-my-claudecode updates (via npm or plugin update):
Automatic: Just run /oh-my-claudecode:omc-setup - it will detect you've already configured and offer a quick "Update CLAUDE.md and clear retired setup values" option that skips the rest of the wizard.
The quick update path must still perform Phase 2 Step 2.4 so upgrades remove the retired defaultExecutionMode value; it must not write any replacement execution-mode setting.
Manual options:
/oh-my-claudecode:omc-setup --localto update project config only/oh-my-claudecode:omc-setup --globalto update global config only/oh-my-claudecode:omc-setup --forceto re-run the full wizard (reconfigure preferences)
This ensures you have the newest features and agent configurations without the token cost of repeating the full setup.
FAQ
What does the omc-setup skill do?
Install or refresh oh-my-claudecode for plugin, npm, and local-dev setups from the canonical setup flow
How do I install omc-setup?
Run npx skills add https://github.com/yeachan-heo/oh-my-claudecode --skill omc-setup in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/omc-setup/ (personal) or .claude/skills/omc-setup/ (project).
Which AI agents can use omc-setup?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is omc-setup safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains omc-setup?
It is published by yeachan-heo in yeachan-heo/oh-my-claudecode. It has 999 recorded installs.
More from yeachan-heo/oh-my-claudecode
ai-slop-cleaner
yeachan-heo/oh-my-claudecode
Clean AI-generated code slop with a regression-safe, deletion-first workflow and optional reviewer-only mode
ralplan
yeachan-heo/oh-my-claudecode
Consensus planning entrypoint that auto-gates vague ralph/autopilot/team requests before execution
hud
yeachan-heo/oh-my-claudecode
Configure HUD display options (layout, presets, display elements)
deepinit
yeachan-heo/oh-my-claudecode
Deep codebase initialization with hierarchical AGENTS.md documentation
deep-interview
yeachan-heo/oh-my-claudecode
Socratic deep interview with mathematical ambiguity gating before explicit execution approval
Popular other skills
hyperframes-cli
heygen-com/hyperframes
The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.
triage
mattpocock/skills
Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.
ask-matt
mattpocock/skills
Ask which skill or flow fits your situation. A router over the skills in this repo.
to-questionnaire
mattpocock/skills
Turn a decision you can't fully answer into a questionnaire for someone else to fill in.
loop-me
mattpocock/skills
Grill me about specs for the workflows I want to build, within this workspace.