Hud statusline
Skill XeldarAlz/everything-claude-unity/.claude/skills/core/hud-statusline
Configures Claude Code's statusline to display Unity workflow state — current phase, active agent, files modified, and session duration.From its SKILL.md
npx -y skills add XeldarAlz/everything-claude-unity --skill hud-statuslineAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 20 stars20 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
3.1 KB, as published. Nobody here has run it
HUD / Statusline Integration
Guidance for commands and agents to update Claude Code's statusline with real-time Unity workflow state.
Statusline Format
The recommended statusline format for Unity workflows:
[Phase: Execute] [Agent: unity-coder] [Modified: 5 files] [12m]
Fields:
- Phase — current workflow phase: Clarify, Plan, Execute, Verify, Done
- Agent — currently active sub-agent (or "main" if no agent is running)
- Modified — count of unique files edited this session (from session-edits.txt)
- Duration — elapsed session time in minutes
Reading Session State
Statusline data comes from the hook state directory at /tmp/unity-claude-hooks/:
| File | Content | Updated By |
|---|---|---|
session-edits.txt | One file path per line (may have duplicates) | track-edits.sh |
gateguard-reads.txt | One file path per line | track-reads.sh |
session-state.json | Branch, phase, workflow context | session-save.sh |
session-start-time | Unix timestamp | session-restore.sh |
session-cost.jsonl | One JSON object per tool call | cost-tracker.sh |
File Count
EDIT_COUNT=0
if [ -f "/tmp/unity-claude-hooks/session-edits.txt" ]; then
EDIT_COUNT=$(sort -u "/tmp/unity-claude-hooks/session-edits.txt" | wc -l | tr -d ' ')
fi
Session Duration
DURATION_MINS=0
if [ -f "/tmp/unity-claude-hooks/session-start-time" ]; then
START=$(cat "/tmp/unity-claude-hooks/session-start-time")
NOW=$(date +%s)
DURATION_MINS=$(( (NOW - START) / 60 ))
fi
Integration Points
Commands
Commands with phase gates (like /unity-workflow) should update the statusline at each transition:
Phase 1: Clarify → statusline: [Phase: Clarify]
Phase 2: Plan → statusline: [Phase: Plan]
Phase 3: Execute → statusline: [Phase: Execute] [Agent: unity-coder]
Phase 4: Verify → statusline: [Phase: Verify] [Agent: unity-verifier]
Done → statusline: [Phase: Done] [Modified: N files] [Xm]
Agents
When a command spawns a sub-agent, the statusline should reflect which agent is active. The agent field updates when:
- A new Agent tool call is made
- The agent completes and returns control to the command
Ralph Mode
During /unity-ralph, the statusline should show iteration progress:
[Ralph: 3/10] [Agent: unity-verifier] [Fixed: 5] [12m]
Team Mode
During /unity-team, the statusline should show parallel agent status:
[Team: build] [Agents: 3 running] [Modified: 8 files] [5m]
Cost Tracking Display
If the cost tracker is active (strict profile), the statusline can optionally show token usage:
[Phase: Execute] [Modified: 5 files] [12m] [Calls: 47]
Read from session-cost.jsonl:
CALL_COUNT=0
if [ -f "/tmp/unity-claude-hooks/session-cost.jsonl" ]; then
CALL_COUNT=$(wc -l < "/tmp/unity-claude-hooks/session-cost.jsonl" | tr -d ' ')
fi