kylesnowschwartz/simpleclaude/hud-first
Claude Code and agent skill by kylesnowschwartz/simpleclaude
- community
Checking that the SKILL.md file is still in the repository.
Use when designing AI features and the real opportunity may be perception support, not delegated conversational work.
Install
npx vskill@latest install kylesnowschwartz/simpleclaude/hud-firstSKILL.md
That row is the skill. One line, six fields, no prompt, no dialog. You see system state through it, not at it. Lineage: Weiser (calm tech), Engelbart (IA), Tufte (data-ink, sparklines, small multiples).
Copilot vs. HUD
| Copilot (anti-pattern) | HUD (target) | |
|---|---|---|
| You talk to it | You see through it | |
| Demands attention | Lives in periphery | |
| Delegates judgment | Extends perception | |
| Context-switch tax | Flow-state preserving | |
| "Do this for me" | "Now I notice more" |
Reframing protocol
- Name the copilot reflex. What chat would you open? What prompt would you type?
- Extract the information need. What does the assistant need to know to answer? That is what you need to perceive.
- Compose from the primitive palette:
- sparkline row —
▁▂▃▄▅▆▇█in ≤8 cells, encoding a series (≤4 Hz) - gutter cell — column-1 marker per line:
! * ● ◐ ·(event:save) - status-line field —
key valuepair, separated by│on a single row (≤1 Hz) - dim/bold/inverse run — weight = salience; inverse = current/selected (event:focus)
- badge glyph — single-cell state:
✓ ✗ · ⚠ ● ○ ◐ ↑ ↓(event:state) - color-band column — fixed-width column, hue encodes category (event:classify)
- box-drawing frame —
─ │ ┌ ┐ └ ┘ ├ ┤, only when a frame earns its cells (static) - prompt-line indicator — one trailing field appended to the shell prompt (≤30 Hz)
- small-multiples / row-repeat — meta-primitive: layout, not glyph; does not consume the ≤3 budget. Same instrument repeats across N rows with shared column alignment and shared scales, so cross-row scan is structurally licensed.
Budget: ≤3 primitives per row, ≤8 sparkline cells per primitive, one line per instrument. Beyond 3, the row is a dashboard, not a HUD.
When you catch yourself wanting a GUI affordance, reach for the terminal substitute:
- hover → inverse cursor row (
j/kmoves the highlight) - popover / tooltip → expand-on-key, or one appended status-line field
- gradient → dim/normal/bold triplet, or a 3-step 256-color ramp via color-band
- modal dialog → full-line takeover, single-key dismiss
- animation → ≤4 Hz refresh on a single sparkline cell
- drag →
j/kto move,enterto commit
- Pass both terminal tests:
- Spellcheck test — the marker appears in the line of work itself, not in a popup, dialog, side pane, or separate command. Pass:
!43 │ if user.role == "admin":. Fail: acx-reviewsubcommand that prints a report. - Sparkline test (Tufte) — the signal renders with
▁▂▃▄▅▆▇█(or a similar fixed-glyph row) in ≤8 cells inside an existing line; when sparklines stack, they share a labeled baseline. Pass:tests 412/413 ✗ ▁▂▃▇. Fail: a separate ASCII bar-chart screen, or four stacked sparklines each rescaling to their own min/max.
Worked example: test-runner HUD
↑ small-multiples in action: each row applies the same gutter-strip + shared-baseline sparkline + badge instrument to one PKG, so the eye scans vertically. The strip is strict 3-state (✓ ✗ · = pass / fail / skip); trend warnings ride in their own badge column, so 20/20 still means 20/20. The flaky test (✗ in the strip) and the slow-creep (sparkline standing visibly taller than its neighbors, ⚠ in TREND) are legible without prose annotations — the data already speaks.
Copilot reflex: "summarize the test run." HUD instruments: gutter-strip + sparkline + badge, row-repeated across packages.
Same protocol, four domains
| domain | copilot reflex | HUD instrument (terminal-native) | |
|---|---|---|---|
| code review | "review this PR for bugs" | !42 ● if x == True: ▆cx | |
| inbox | "summarize my email" | ▌ ●●● 02:14 CEO Re: Q3 review ▇▆▃▁ | |
| debugging | "find the bug" | i=37 arr[0..n) hits ▁▁▂▃▇▂▁ ✗ at i=23 | |
| writing | "rewrite this paragraph" | ~/essay $ █ passive ▃ │ readab ▇▆ │ "just"×4 │ 318w |
Inbox row leads with a ▌ color-band column (hue = folder); the writing row appends indicators to the shell prompt line. Each row picks ≤3 primitives and stays inside the existing line — the test-runner block above is the small-multiples form (one instrument, many parameters); this table is the protocol's transfer (one protocol, four instruments).
When copilot is fine
Routine, one-shot, you genuinely don't want to learn it (autopilot for straight-and-level). For expert work — judgment, debugging, prose — instrument, don't delegate.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingplugins/sc-skills/skills/hud-first/SKILL.md
Popularity
- Repository stars
- 103
- Repository forks
- 15
- 7-day trend score
- 23
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/kylesnowschwartz/simpleclaude/hud-first)