HUD Skill
Konfiguriere das OMC HUD (Heads-Up Display) für die Statusleiste.
Hinweis: Alle Pfade mit ~/.claude/... in dieser Anleitung berücksichtigen CLAUDE_CONFIG_DIR, sofern diese Umgebungsvariable gesetzt ist.
Schnellbefehle
| Befehl | Beschreibung |
|---|---|
/oh-my-claudecode:hud | Aktuellen HUD-Status anzeigen (automatische Einrichtung falls nötig) |
/oh-my-claudecode:hud setup | HUD-Statusleiste installieren/reparieren |
/oh-my-claudecode:hud minimal | Auf minimale Anzeige umschalten |
/oh-my-claudecode:hud focused | Auf fokussierte Anzeige umschalten (Standard) |
/oh-my-claudecode:hud full | Auf vollständige Anzeige umschalten |
/oh-my-claudecode:hud status | Detaillierten HUD-Status anzeigen |
Automatische Einrichtung
Wenn du /oh-my-claudecode:hud oder /oh-my-claudecode:hud setup ausführst, wird das System automatisch:
- Prüfen, ob
~/.claude/hud/omc-hud.mjsexistiert - Prüfen, ob
statusLinein~/.claude/settings.jsonkonfiguriert ist - Falls fehlend, das HUD-Wrapper-Skript erstellen und die Einstellungen konfigurieren
- Status melden und zum Neustart von Claude Code auffordern, falls Änderungen vorgenommen wurden
WICHTIG: Wenn das Argument setup ist ODER das HUD-Skript nicht unter ~/.claude/hud/omc-hud.mjs existiert, MUSST du die HUD-Dateien direkt mit den folgenden Anweisungen erstellen.
Einrichtungsanweisungen (Führe diese Befehle aus)
Schritt 1: Prüfen, ob die Einrichtung benötigt wird:
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')"
Schritt 2: Überprüfen, ob das Plugin installiert ist:
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 nicht installiert - ausführen: /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)?'BEREIT':'NICHT_GEFUNDEN - versuche Neuinstallation: /plugin install oh-my-claudecode')}catch{console.log('Plugin nicht installiert - ausführen: /plugin install oh-my-claudecode')}"
Schritt 3: Falls omc-hud.mjs FEHLT oder das Argument setup ist, installiere den HUD-Wrapper und seine Abhängigkeit aus der kanonischen Vorlage:
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"
WICHTIG: Kopiere immer aus der kanonischen Vorlage unter scripts/lib/hud-wrapper-template.txt. Schreibe den Wrapper-Inhalt NICHT inline – die Vorlage ist die alleinige Quelle der Wahrheit und wird durch Drift-Tests geschützt (src/__tests__/hud-wrapper-template-sync.test.ts, src/__tests__/paths-consistency.test.ts).
Schritt 4: Als ausführbar markieren (nur Unix, unter Windows überspringen):
node -e "if(process.platform==='win32'){console.log('Übersprungen (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('Erledigt')}"
Schritt 5: settings.json aktualisieren, um das HUD zu verwenden:
Lese ${CLAUDE_CONFIG_DIR:-~/.claude}/settings.json und aktualisiere/ergänze das Feld statusLine.
WICHTIG: Verwende kein ~ im Befehl. Unter Unix verwende $HOME, um den Pfad maschinenunabhängig zu halten. Unter Windows verwende einen absoluten Pfad, da Windows ~ in Shell-Befehlen nicht expandiert.
Wenn du auf Windows bist, ermittle zuerst den korrekten Pfad:
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))"
WICHTIG: Der Befehlspfad MUSS auf allen Plattformen Vorwärtsschrägstriche verwenden. Claude Code führt statusLine-Befehle über bash aus, das Rückwärtsschrägstriche als Escape-Zeichen interpretiert und den Pfad beschädigt.
Setze dann das Feld statusLine. Auf Unix sollte es portabel bleiben und so aussehen:
{
"statusLine": {
"type": "command",
"command": "node ${CLAUDE_CONFIG_DIR:-$HOME/.claude}/hud/omc-hud.mjs"
}
}
Auf Windows verwendet der Pfad Vorwärtsschrägstriche (keine Rückwärtsschrägstriche):
{
"statusLine": {
"type": "command",
"command": "node C:/Users/username/.claude/hud/omc-hud.mjs"
}
}
Verwende das Bearbeitungswerkzeug, um dieses Feld hinzuzufügen/zu aktualisieren, während andere Einstellungen erhalten bleiben.
Schritt 6: Alte HUD-Skripte bereinigen (falls vorhanden):
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('Altes omc-hud.js entfernt')}else{console.log('Kein altes Skript gefunden')}}catch{}"
Schritt 7: Teile dem Benutzer mit, dass er Claude Code neu starten muss, damit die Änderungen wirksam werden.
Anzeige-Presets
Minimal
Zeigt nur das Wesentliche:
[OMC] ralph | todos:2/5
Fokussiert (Standard)
Zeigt alle relevanten Elemente:
[OMC] branch:main | ralph:3/10 | US-002 | skill:planner | ctx:67% | agents:2 | bg:3/5 | todos:2/5
Voll
Zeigt alles, einschließlich mehrzeiliger Agentendetails:
[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 Analysiere Architekturmuster...
├─ e explore 45s Suche nach Testdateien
└─ s executor 1m Implementiere Validierungslogik
Mehrzeilige Agentenanzeige
Wenn Agenten ausgeführt werden, zeigt das HUD detaillierte Informationen in separaten Zeilen:
- Baumzeichen (
├─,└─) zeigen die visuelle Hierarchie - Agentencode (O, e, s) gibt den Agententyp mit Modellstufenfarbe an
- Dauer zeigt an, wie lange jeder Agent bereits läuft
- Beschreibung zeigt, was jeder Agent tut (max. 45 Zeichen)
Anzeigeelemente
| Element | Beschreibung |
|---|---|
[OMC] | Moduskennung |
repo:name | Git-Repository-Name (cyan) |
branch:name | Git-Branch-Name (cyan) |
ralph:3/10 | Ralph-Schleifeniteration/-maximum |
US-002 | Aktuelle PRD-Story-ID |
skill:name | Zuletzt aktivierter Skill (cyan) |
ctx:67% | Kontextfensternutzung |
agents:2 | Anzahl laufender Unteragenten |
bg:3/5 | Hintergrundaufgaben-Slots |
todos:2/5 | Todo-Erfüllung |
Farbcodierung
- Grün: Normal/Gesund
- Gelb: Warnung (Kontext >70 %, ralph >7)
- Rot: Kritisch (Kontext >85 %, ralph am Maximum)
Konfigurationsort
Die HUD-Konfiguration wird in ~/.claude/settings.json unter dem Schlüssel omcHud gespeichert (oder in deinem benutzerdefinierten Konfigurationsverzeichnis, falls CLAUDE_CONFIG_DIR gesetzt ist).
Legacy-Konfigurationsort (veraltet): ~/.claude/.omc/hud-config.json
Manuelle Konfiguration
Du kannst die Konfigurationsdatei manuell bearbeiten. Jede Option kann einzeln gesetzt werden – nicht gesetzte Werte verwenden Standardwerte.
{
"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",
"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
Steuert den Stil des Aufrufzählungs-Badge-Symbols:
"auto"(Standard): Emoji auf macOS/Linux, ASCII auf Windows/WSL"emoji": erzwinge🔧 🤖 ⚡"ascii": erzwingeT: A: S:
safeMode
Wenn safeMode auf true gesetzt ist (Standard), entfernt das HUD ANSI-Codes und verwendet reine ASCII-Ausgabe, um eine Beschädigung der Terminaldarstellung bei gleichzeitigen Aktualisierungen zu verhindern. Dies ist besonders wichtig unter Windows und bei Verwendung von Terminal-Multiplexern.
agentsFormat-Optionen
count: agents:2codes: agents:Oes (typkodiert mit Groß-/Kleinschreibung der Modellstufe)codes-duration: agents:O(2m)es (Codes mit Dauer)detailed: agents:[architect(2m),explore,exec]descriptions: O:Analysiere Code | e:Durchsuche (Codes + was sie tun)tasks: [Analysiere Code, Durchsuche...] (nur Beschreibungen)multiline: Mehrzeilige Anzeige mit vollständigen Agentendetails in separaten Zeilen
Fehlerbehebung
Wenn das HUD nicht angezeigt wird:
- Führe
/oh-my-claudecode:hud setupaus, um automatisch zu installieren und zu konfigurieren - Starte Claude Code nach Abschluss der Einrichtung neu
- Falls es immer noch nicht funktioniert, führe
/oh-my-claudecode:omc-doctorfür eine vollständige Diagnose aus
Migration des Legacy-String-Formats: Ältere OMC-Versionen haben statusLine als einfachen String geschrieben (z. B. "~/.claude/hud/omc-hud.mjs"). Modernes Claude Code (v2.1+) erfordert ein Objektformat. Durch Ausführen des Installers oder /oh-my-claudecode:hud setup werden Legacy-Strings automatisch in das korrekte Objektformat migriert:
{
"statusLine": {
"type": "command",
"command": "node ${CLAUDE_CONFIG_DIR:-$HOME/.claude}/hud/omc-hud.mjs"
}
}
Node 24+ Kompatibilität: Das HUD-Wrapper-Skript importiert homedir aus node:os (nicht node:path). Falls du einen SyntaxError: The requested module 'path' does not provide an export named 'homedir' erhältst, führe den Installer erneut aus, um omc-hud.mjs neu zu generieren.
Manuelle Überprüfung:
- HUD-Skript:
~/.claude/hud/omc-hud.mjs - Einstellungen:
~/.claude/settings.jsonsolltestatusLineals Objekt mit den Felderntypeundcommandkonfiguriert haben
Das HUD aktualisiert sich während aktiver Sitzungen automatisch alle ~300ms.