본문으로 건너뛰기
cccskills
무료GitHub에 공개

hud

Set up or repair the OMC status display in Claude Code, then choose how much information it shows. Configure presets and individual elements to monitor task progress, context usage, and running agents during a session.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

원문원문 설명 보기

Configure HUD display options (layout, presets, display elements)

설치 방법 보기

이럴 때 유용합니다

  • Setting up or repairing the status display
  • Switching to a minimal status line
  • Viewing running agents and their tasks
  • Adjusting context usage warning thresholds

포함된 파일(1)

  • SKILL.md10.1 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

HUD Skill

Configure the OMC HUD (Heads-Up Display) for the statusline.

Note: All ~/.claude/... paths in this guide respect CLAUDE_CONFIG_DIR when that environment variable is set.

Quick Commands

CommandDescription
/oh-my-claudecode:hudShow current HUD status (auto-setup if needed)
/oh-my-claudecode:hud setupInstall/repair HUD statusline
/oh-my-claudecode:hud minimalSwitch to minimal display
/oh-my-claudecode:hud focusedSwitch to focused display (default)
/oh-my-claudecode:hud fullSwitch to full display
/oh-my-claudecode:hud statusShow detailed HUD status

Auto-Setup

When you run /oh-my-claudecode:hud or /oh-my-claudecode:hud setup, the system will automatically:

  1. Check if ~/.claude/hud/omc-hud.mjs exists
  2. Check if statusLine is configured in ~/.claude/settings.json
  3. If missing, create the HUD wrapper script and configure settings
  4. Report status and prompt to restart Claude Code if changes were made

IMPORTANT: If the argument is setup OR if the HUD script doesn't exist at ~/.claude/hud/omc-hud.mjs, you MUST create the HUD files directly using the instructions below.

Setup Instructions (Run These Commands)

Step 1: Check if setup is needed:

node -e "const p=require('path'),f=require('fs'),d=process.env.CLAUDE_CONFIG_DIR||p.join(require('os').homedir(),'.claude');console.log(f.existsSync(p.join(d,'hud','omc-hud.mjs'))?'EXISTS':'MISSING')"

Step 2: Verify the plugin is installed:

node -e "const p=require('path'),f=require('fs'),d=process.env.CLAUDE_CONFIG_DIR||p.join(require('os').homedir(),'.claude'),b=p.join(d,'plugins','cache','omc','oh-my-claudecode');try{const v=f.readdirSync(b).filter(x=>/^\d/.test(x)).sort((a,c)=>a.localeCompare(c,void 0,{numeric:true}));if(v.length===0){console.log('Plugin not installed - run: /plugin install oh-my-claudecode');process.exit()}const l=v[v.length-1],h=p.join(b,l,'dist','hud','index.js');console.log('Version:',l);console.log(f.existsSync(h)?'READY':'NOT_FOUND - try reinstalling: /plugin install oh-my-claudecode')}catch{console.log('Plugin not installed - run: /plugin install oh-my-claudecode')}"

Step 3: If omc-hud.mjs is MISSING or argument is setup, install the HUD wrapper and its dependency from the canonical template:

HUD_DIR="${CLAUDE_CONFIG_DIR:-$HOME/.claude}/hud"
mkdir -p "$HUD_DIR/lib"
cp "${CLAUDE_PLUGIN_ROOT}/scripts/lib/hud-wrapper-template.txt" "$HUD_DIR/omc-hud.mjs"
cp "${CLAUDE_PLUGIN_ROOT}/scripts/lib/config-dir.mjs" "$HUD_DIR/lib/config-dir.mjs"

IMPORTANT: Always copy from the canonical template at scripts/lib/hud-wrapper-template.txt. Do NOT write the wrapper content inline — the template is the single source of truth and is guarded by drift tests (src/__tests__/hud-wrapper-template-sync.test.ts, src/__tests__/paths-consistency.test.ts).

Step 4: Make it executable (Unix only, skip on Windows):

node -e "if(process.platform==='win32'){console.log('Skipped (Windows)')}else{require('fs').chmodSync(require('path').join(process.env.CLAUDE_CONFIG_DIR||require('path').join(require('os').homedir(),'.claude'),'hud','omc-hud.mjs'),0o755);console.log('Done')}"

Step 5: Update settings.json to use the HUD:

Read ${CLAUDE_CONFIG_DIR:-~/.claude}/settings.json, then update/add the statusLine field.

IMPORTANT: Do not use ~ in the command. On Unix, use $HOME to keep the path portable across machines. On Windows, use an absolute path because Windows does not expand ~ in shell commands.

If you are on Windows, first determine the correct path:

node -e "const p=require('path').join(require('os').homedir(),'.claude','hud','omc-hud.mjs').split(require('path').sep).join('/');console.log(JSON.stringify(p))"

IMPORTANT: The command path MUST use forward slashes on all platforms. Claude Code executes statusLine commands via bash, which interprets backslashes as escape characters and breaks the path.

Then set the statusLine field. On Unix it should stay portable and look like:

{
  "statusLine": {
    "type": "command",
    "command": "node ${CLAUDE_CONFIG_DIR:-$HOME/.claude}/hud/omc-hud.mjs"
  }
}

On Windows the path uses forward slashes (not backslashes):

{
  "statusLine": {
    "type": "command",
    "command": "node C:/Users/username/.claude/hud/omc-hud.mjs"
  }
}

Use the Edit tool to add/update this field while preserving other settings.

Step 6: Clean up old HUD scripts (if any):

node -e "const p=require('path'),f=require('fs'),d=process.env.CLAUDE_CONFIG_DIR||p.join(require('os').homedir(),'.claude'),t=p.join(d,'hud','omc-hud.js');try{if(f.existsSync(t)){f.unlinkSync(t);console.log('Removed legacy omc-hud.js')}else{console.log('No legacy script found')}}catch{}"

Step 7: Tell the user to restart Claude Code for changes to take effect.

Display Presets

Minimal

Shows only the essentials:

[OMC] ralph | todos:2/5

Focused (Default)

Shows all relevant elements:

[OMC] branch:main | ralph:3/10 | US-002 | skill:planner | ctx:67% | agents:2 | bg:3/5 | todos:2/5

Full

Shows everything including multi-line agent details:

[OMC] repo:oh-my-claudecode branch:main | ralph:3/10 | US-002 (2/5) | ctx:[████░░]67% | agents:3 | bg:3/5 | todos:2/5
├─ O architect    2m   analyzing architecture patterns...
├─ e explore     45s   searching for test files
└─ s executor     1m   implementing validation logic

Multi-Line Agent Display

When agents are running, the HUD shows detailed information on separate lines:

  • Tree characters (├─, └─) show visual hierarchy
  • Agent code (O, e, s) indicates agent type with model tier color
  • Duration shows how long each agent has been running
  • Description shows what each agent is doing (up to 45 chars)

Display Elements

ElementDescription
[OMC]Mode identifier
repo:nameGit repository name (cyan)
branch:nameGit branch name (cyan)
ralph:3/10Ralph loop iteration/max
US-002Current PRD story ID
skill:nameLast activated skill (cyan)
effort:highEffort level from Claude Code (dim low, cyan medium, yellow high, magenta xhigh, bold magenta max)
ctx:67%Context window usage
agents:2Running subagent count
bg:3/5Background task slots
todos:2/5Todo completion

Color Coding

  • Green: Normal/healthy
  • Yellow: Warning (context >70%, ralph >7)
  • Red: Critical (context >85%, ralph at max)

Configuration Location

HUD config is stored in ~/.claude/settings.json under the omcHud key (or your custom config directory if CLAUDE_CONFIG_DIR is set).

Legacy config location (deprecated): ~/.claude/.omc/hud-config.json

Manual Configuration

You can manually edit the config file. Each option can be set individually - any unset values will use defaults.

{
  "preset": "focused",
  "elements": {
    "omcLabel": true,
    "updateNotification": true,
    "ralph": true,
    "autopilot": true,
    "prdStory": true,
    "activeSkills": true,
    "lastSkill": true,
    "contextBar": true,
    "agents": true,
    "agentsFormat": "multiline",
    "backgroundTasks": true,
    "todos": true,
    "thinking": true,
    "thinkingFormat": "text",
    "effort": true,
    "permissionStatus": false,
    "apiKeySource": false,
    "profile": true,
    "promptTime": true,
    "sessionHealth": true,
    "useBars": true,
    "showCallCounts": true,
    "callCountsFormat": "auto",
    "safeMode": true,
    "maxOutputLines": 4
  },
  "thresholds": {
    "contextWarning": 70,
    "contextCompactSuggestion": 80,
    "contextCritical": 85,
    "ralphWarning": 7
  },
  "staleTaskThresholdMinutes": 30,
  "contextLimitWarning": {
    "threshold": 80,
    "autoCompact": false
  }
}

callCountsFormat

Controls the call-count badge icon style:

  • "auto" (default): emoji on macOS/Linux, ASCII on Windows/WSL
  • "emoji": force 🔧 🤖 ⚡
  • "ascii": force T: A: S:

safeMode

When safeMode is true (default), the HUD strips ANSI codes and uses ASCII-only output to prevent terminal rendering corruption during concurrent updates. This is especially important on Windows and when using terminal multiplexers.

agentsFormat Options

  • count: agents:2
  • codes: agents:Oes (type-coded with model tier casing)
  • codes-duration: agents:O(2m)es (codes with duration)
  • detailed: agents:[architect(2m),explore,exec]
  • descriptions: O:analyzing code | e:searching (codes + what they're doing)
  • tasks: [analyzing code, searching...] (just descriptions)
  • multiline: Multi-line display with full agent details on separate lines

Troubleshooting

If the HUD is not showing:

  1. Run /oh-my-claudecode:hud setup to auto-install and configure
  2. Restart Claude Code after setup completes
  3. If still not working, run /oh-my-claudecode:omc-doctor for full diagnostics

Legacy string format migration: Older OMC versions wrote statusLine as a plain string (e.g., "~/.claude/hud/omc-hud.mjs"). Modern Claude Code (v2.1+) requires an object format. Running the installer or /oh-my-claudecode:hud setup will auto-migrate legacy strings to the correct object format:

{
  "statusLine": {
    "type": "command",
    "command": "node ${CLAUDE_CONFIG_DIR:-$HOME/.claude}/hud/omc-hud.mjs"
  }
}

Node 24+ compatibility: The HUD wrapper script imports homedir from node:os (not node:path). If you encounter SyntaxError: The requested module 'path' does not provide an export named 'homedir', re-run the installer to regenerate omc-hud.mjs.

Manual verification:

  • HUD script: ~/.claude/hud/omc-hud.mjs
  • Settings: ~/.claude/settings.json should have statusLine configured as an object with type and command fields

The HUD updates automatically every ~300ms during active sessions.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Write or revise instructions, specifications, tickets, and skill files so an agent can act without prior chat history. Make rules checkable, explain their reasons, define completion criteria, and keep authoritative information in one place.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Clarifying instructions in CLAUDE.md
  • Making specifications and tickets actionable
  • Adding completion criteria to skill procedures
Yeachan-Heo/oh-my-claudecode4만2026년 10월 22일 업데이트

Simplify bloated AI-generated code by removing dead code, duplicated logic, and unnecessary layers while checking that existing behavior stays intact. Use a limited cleanup scope, verify changes with relevant checks, or request a review without edits.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Removing duplicate logic and unused code
  • Simplifying unnecessary wrappers without changing behavior
  • Cleaning up only a specified set of changed files
Yeachan-Heo/oh-my-claudecode4만2026년 10월 22일 업데이트

Review module relationships and change history to identify structural improvements in a codebase. Receive ranked candidates with file references, suggested changes, and risks, plus a recommendation for where to start, without modifying code.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Reviewing architecture after a batch of changes
  • Investigating changes that touch too many files
  • Prioritizing structural improvements
Yeachan-Heo/oh-my-claudecode4만2026년 10월 22일 업데이트

ask

무료

Send questions, review requests, or implementation tasks to a supported local AI command-line tool through one shared command. The wrapper handles provider-specific options and saves the result as a Markdown file for later reference.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Requesting a security review of a patch
  • Seeking UX suggestions for a user flow
  • Drafting an implementation plan for an issue
Yeachan-Heo/oh-my-claudecode4만2026년 10월 22일 업데이트

Turn an unclear idea into linked decision tickets on a repository’s issue tracker. Work through one decision per session, record outcomes and dependencies, and prepare a brief defining the objective, scope, and exclusions for delivery.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Clarifying the destination of an early idea
  • Mapping decisions and their dependencies
  • Resuming unresolved decisions across sessions
Yeachan-Heo/oh-my-claudecode4만2026년 10월 22일 업데이트

autopilot

무료

Turn a short product idea into working code through requirements analysis, technical planning, implementation, testing, and review. It coordinates agents across these stages, fixes detected problems, and reports assumptions that still need a human decision.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Building a product from a short idea
  • Creating a bookstore inventory API
  • Developing a habit-tracking command-line tool
Yeachan-Heo/oh-my-claudecode4만2026년 10월 22일 업데이트

Yeachan-Heo의 스킬 모두 보기

이 스킬의 문제 신고