mcpField
H
hud

hud

github.com/yeachan-heoエージェントワークフロー40.4k1.2k 回インストール1 日前に更新
リポジトリ

hud について

Claude Code の OMC ステータスライン HUD を設定するスキルです。状態の確認やインストール、修復に加え、表示プリセットを切り替えられます。

主な機能

  1. 01HUD 状態の確認
  2. 02ステータスラインの導入・修復
  3. 03簡易・集中・全表示レイアウトの切り替え
  4. 04ステータスライン項目の設定
  5. 05エージェントとタスク情報の表示

活用シーン

  1. 01現在の HUD 設定の確認
  2. 02Claude Code のステータスライン設定
  3. 03表示する情報量の調整

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/yeachan-heo/oh-my-claudecode --skill hud

インストール後、Claude Code で/hudを入力して読み込まれたか確認します。

詳細

HUD スキル

ステータスラインの OMC HUD(ヘッドアップディスプレイ)を設定します。

注:このガイド内の ~/.claude/... パスは、環境変数 CLAUDE_CONFIG_DIR が設定されている場合、その値に従います。

クイックコマンド

コマンド説明
/oh-my-claudecode:hud現在の HUD の状態を表示します(必要に応じて自動セットアップ)
/oh-my-claudecode:hud setupHUD ステータスラインをインストール/修復します
/oh-my-claudecode:hud minimal最小表示に切り替えます
/oh-my-claudecode:hud focusedフォーカス表示に切り替えます(デフォルト)
/oh-my-claudecode:hud full全表示に切り替えます
/oh-my-claudecode:hud statusHUD の詳細な状態を表示します

自動セットアップ

/oh-my-claudecode:hud または /oh-my-claudecode:hud setup を実行すると、システムは自動的に次の処理を行います。

  1. ~/.claude/hud/omc-hud.mjs が存在するか確認します
  2. ~/.claude/settings.json に statusLine が設定されているか確認します
  3. 設定が不足している場合は、HUD ラッパースクリプトを作成し、設定を行います
  4. 状態を報告し、変更があった場合は Claude Code の再起動を促します

重要:引数が setup の場合、または HUD スクリプト ~/.claude/hud/omc-hud.mjs が存在しない場合は、以下の手順に従って HUD ファイルを直接作成する必要があります。

セットアップ手順(以下のコマンドを実行)

ステップ 1: セットアップが必要か確認します。

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')"

ステップ 2: プラグインがインストールされていることを確認します。

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')}"

ステップ 3: omc-hud.mjs が存在しない場合、または引数が setup の場合は、正規テンプレートから HUD ラッパーとその依存ファイルをインストールします。

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"

重要: 必ず scripts/lib/hud-wrapper-template.txt の正規テンプレートからコピーしてください。ラッパーの内容を直接記述してはいけません。テンプレートが唯一の信頼できる情報源であり、ドリフトテスト(src/__tests__/hud-wrapper-template-sync.test.ts、src/__tests__/paths-consistency.test.ts)によって整合性が確認されています。

ステップ 4: 実行可能にします(Unix のみ。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')}"

ステップ 5: HUD を使用するように settings.json を更新します。

${CLAUDE_CONFIG_DIR:-~/.claude}/settings.json を読み込み、statusLine フィールドを更新または追加します。

重要: コマンドで ~ を使用しないでください。Unix では、マシン間でパスの移植性を保つために $HOME を使用してください。Windows では、シェルコマンド内で ~ が展開されないため、絶対パスを使用してください。

Windows を使用している場合は、まず正しいパスを確認します。

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))"

重要: すべてのプラットフォームで、コマンドパスには必ずスラッシュを使用してください。Claude Code は bash 経由で statusLine コマンドを実行するため、バックスラッシュはエスケープ文字として解釈され、パスが壊れます。

次に、statusLine フィールドを設定します。Unix では、移植性を保つため次のようにします。

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

Windows では、パスにスラッシュを使用します(バックスラッシュではありません)。

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

他の設定を保持したままこのフィールドを追加または更新するには、Edit ツールを使用します。

ステップ 6: 古い HUD スクリプトがあれば削除します。

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{}"

ステップ 7: 変更を反映するには Claude Code の再起動が必要であることをユーザーに伝えます。

表示プリセット

最小

必要な情報のみを表示します。

[OMC] ralph | todos:2/5
フォーカス(デフォルト)

関連する要素をすべて表示します。

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

複数行のエージェント詳細を含むすべての情報を表示します。

[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

複数行のエージェント表示

エージェントの実行中、HUD は詳細情報を個別の行に表示します。

  • ツリー文字(├─、└─)は視覚的な階層を示します
  • エージェントコード(O、e、s)は、モデル階層の色とともにエージェントの種類を示します
  • 実行時間は各エージェントの実行時間を示します
  • 説明は各エージェントが実行している内容を示します(最大 45 文字)

表示要素

要素説明
[OMC]モード識別子
repo:nameGit リポジトリ名(シアン)
branch:nameGit ブランチ名(シアン)
ralph:3/10Ralph ループの反復回数/最大回数
US-002現在の PRD ストーリー ID
skill:name最後に有効化されたスキル(シアン)
effort:highClaude Code の作業レベル(低は暗色、中はシアン、高は黄色、xhigh はマゼンタ、max は太字のマゼンタ)
ctx:67%コンテキストウィンドウの使用率
agents:2実行中のサブエージェント数
bg:3/5バックグラウンドタスクのスロット数
todos:2/5Todo の完了状況

色分け

  • 緑:通常/正常
  • 黄:警告(コンテキスト >70%、ralph >7)
  • 赤:重大(コンテキスト >85%、ralph が最大値)

設定の場所

HUD の設定は、~/.claude/settings.json の omcHud キーの下に保存されます(または、CLAUDE_CONFIG_DIR が設定されている場合は、カスタム設定ディレクトリに保存されます)。

旧設定の場所(非推奨):~/.claude/.omc/hud-config.json

手動設定

設定ファイルは手動で編集できます。各オプションは個別に設定できます。未設定の値にはデフォルトが適用されます。

{
  "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

呼び出し回数バッジのアイコンスタイルを制御します。

  • "auto"(デフォルト):macOS/Linux では絵文字、Windows/WSL では ASCII
  • "emoji":🔧 🤖 ⚡ を強制
  • "ascii":T: A: S: を強制
safeMode

safeMode が true(デフォルト)の場合、HUD は ANSI コードを取り除き、ASCII のみの出力を使用して、同時更新中のターミナル表示の破損を防ぎます。これは特に Windows やターミナルマルチプレクサーを使用する場合に重要です。

agentsFormat のオプション
  • count:agents:2
  • codes:agents:Oes(モデルのティアに応じた大文字・小文字を使用したタイプ別コード)
  • codes-duration:agents:O(2m)es(所要時間付きコード)
  • detailed:agents:[architect(2m),explore,exec]
  • descriptions:O:analyzing code | e:searching(コードと実行中の内容)
  • tasks:[analyzing code, searching...](説明のみ)
  • multiline:エージェントの詳細をそれぞれ別の行に表示する複数行表示

トラブルシューティング

HUD が表示されない場合:

  1. /oh-my-claudecode:hud setup を実行して、自動インストールと設定を行います
  2. セットアップの完了後、Claude Code を再起動します
  3. それでも動作しない場合は、/oh-my-claudecode:omc-doctor を実行して、完全な診断を行います

旧形式の文字列からの移行: 古い OMC バージョンでは、statusLine が通常の文字列(例:"~/.claude/hud/omc-hud.mjs")として書き込まれていました。最新の Claude Code(v2.1+)では、オブジェクト形式が必要です。インストーラーまたは /oh-my-claudecode:hud setup を実行すると、旧形式の文字列が正しいオブジェクト形式に自動で移行されます。

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

Node 24+ との互換性: HUD ラッパースクリプトは、node:path ではなく node:os から homedir をインポートします。SyntaxError: The requested module 'path' does not provide an export named 'homedir' が発生した場合は、インストーラーを再実行して omc-hud.mjs を再生成してください。

手動での確認:

  • HUD スクリプト:~/.claude/hud/omc-hud.mjs
  • 設定:~/.claude/settings.json で、statusLine に type フィールドと command フィールドを持つオブジェクトが設定されていることを確認します

HUD はアクティブなセッション中、約300ミリ秒ごとに自動更新されます。

コメント