Catalog
yeachan-heo/omc-setup

yeachan-heo

omc-setup

Install or refresh oh-my-claudecode for plugin, npm, and local-dev setups from the canonical setup flow

v1.0LATEST
NewUpdated Sep 9, 2026

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:

  1. 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
  2. Run full setup again - Go through the complete setup wizard
  3. 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 defaultExecutionMode key
  • 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:

  1. Resume from step $LAST_STEP - Continue where you left off
  2. 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:

  1. Phase 1 - Install CLAUDE.md: Read ${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/skills/omc-setup/phases/01-install-claude-md.md and follow its instructions.

  2. Phase 2 - Environment Configuration: Read ${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/skills/omc-setup/phases/02-configure.md and follow its instructions. Phase 2 must delegate HUD/statusLine setup to the hud skill; do not generate or patch statusLine paths inline here.

  3. Phase 3 - Integration Setup: Read ${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/skills/omc-setup/phases/03-integrations.md and follow its instructions.

  4. Phase 4 - Completion: Read ${OMC_SETUP_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT}}/skills/omc-setup/phases/04-welcome.md and 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 --local to update project config only
  • /oh-my-claudecode:omc-setup --global to update global config only
  • /oh-my-claudecode:omc-setup --force to 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.

Files5
5 files · 34.4 KB

Select a file to preview

Overall Score

76/100

Grade

B

Good

Grades are signals, not a certification. Always review a skill yourself before use.

Safety

74

Quality

82

Clarity

78

Completeness

71

Summary

OMC Setup is a Claude Code plugin initialization and configuration skill that guides users through a multi-phase setup wizard to install oh-my-claudecode. It manages environment configuration, HUD statusline setup, integration configuration (MCP, agent teams), and completion reporting. The skill orchestrates external coordinator scripts and delegates sub-tasks (like HUD setup) to specialized skills.

Static Analysis Findings

2 findings

Patterns detected by deterministic static analysis before AI scoring. Hover over any finding code for detailed information and remediation guidance.

Credential Exposure
SEC-020Direct .env File Access4x in 2 files

Direct .env file access

phases/02-configure.md.env
phases/03-integrations.md.env3x
Destructive Operation
SEC-002Privilege Escalation3x in 1 file

Privilege escalation (sudo)

phases/02-configure.mdsudo asudo n3x

Detected Capabilities

file readfile writeshell executionjq command (JSON parsing)environment variable accessgit operationsnpm command executionexternal command invocation (ruby, omc, bd, br, gh)HTTP API calls (GitHub, npm registry)

Trigger Keywords

Phrases that agents use to match this skill to user intent.

install oh-my-claudecodeomc setup wizardrefresh plugin configconfigure claude codeagent teams enableupdate OMC after upgrade

Risk Signals

WARNING

Privilege escalation (sudo) in Phase 2 Step 2.5 for OMC CLI installation

phases/02-configure.md | Step 2.5
WARNING

Direct .env file access referenced in credential flow (Phase 2, 3)

phases/02-configure.md, phases/03-integrations.md
INFO

.omc-config.json file writes with jq, storing task tool preferences and team configuration

phases/02-configure.md (Steps 2.6), phases/03-integrations.md (Steps 3.3.2, 3.3.3)
INFO

settings.json mutation via jq for team enablement and teammate display mode

phases/03-integrations.md | Step 3.3.1, 3.3.2
INFO

GitHub API calls via gh CLI to check/set repository star status

phases/04-welcome.md | Ask About Starring
WARNING

npm registry queries and global npm package installation

phases/02-configure.md | Step 2.3, 2.5
INFO

CLAUDE_CONFIG_DIR environment variable usage with tilde expansion logic for path resolution

Multiple phases

Referenced Domains

External domains referenced in skill content, detected by static analysis.

antigravity.googlecode.claude.comgithub.com

Use Cases

  • Install oh-my-claudecode for the first time
  • Update OMC configuration after plugin upgrades
  • Configure local project-specific OMC settings
  • Configure global OMC settings for all Claude Code sessions
  • Enable and customize experimental agent teams feature
  • Repair stale plugin cache references
  • Resume interrupted setup from last completed phase

Quality Notes

  • Clear multi-phase orchestration with explicit phase delegation to external coordinator scripts — avoids duplicating mutation logic
  • Strong error handling for JSON parsing (jq availability checks, validation of coordinator responses) and graceful fallbacks when tools are missing
  • Well-documented resume/interrupt capability with state persistence via setup-progress.sh script
  • Excellent scope boundaries: coordinator script is sole arbiter of CLAUDE.md changes; skill delegates HUD setup to hud skill rather than implementing inline
  • Pre-setup check prevents unnecessary re-runs for already-configured users, improving UX efficiency
  • Phase files are clearly structured with numbered steps and explicit skip conditions for resume scenarios
  • Path handling for CLAUDE_CONFIG_DIR respects environment override and includes tilde expansion on Windows and Unix
  • Flag parsing (--help, --local, --global, --force) is explicit and well-prioritized
  • Config file mutations use jq with trap-based cleanup for atomicity and error recovery
  • Comprehensive user prompts via AskUserQuestion with sensible defaults and fallback values
  • Good separation of concerns: plugin version detection, update checking, and coordinator invocation are distinct and independent
  • Documentation of retired commands (5.0.0 breaking changes) and migration path aids user awareness
  • Team configuration is modular with clear defaults and optional prompts
  • Preserve mode for global setup respects existing base CLAUDE.md by installing to companion CLAUDE-omc.md
Model: claude-haiku-4-5-20251001Analyzed: Sep 9, 2026

Reviews

Add this skill to your library to leave a review.

No reviews yet

Be the first to share your experience.

Use yeachan-heo/omc-setup in your dev environment

Command Palette

Search for a command to run...