Skip to content

Pearl th-24cdf3: apply smooth-glow-up (Presence) to th code - #285

Merged
brentrager merged 1 commit into
mainfrom
th-glowup-apply-thcode
Jul 26, 2026
Merged

Pearl th-24cdf3: apply smooth-glow-up (Presence) to th code#285
brentrager merged 1 commit into
mainfrom
th-glowup-apply-thcode

Conversation

@brentrager

Copy link
Copy Markdown
Contributor

First application of the smooth-glow-up skill (#282) to a real surface — and it found three things, each traced to a rule in the language rather than to taste.

Before / after

 agent: fixer | smooth-coding | tokens: 0 | spend: $0 | ● | Ctrl+B chats | Ctrl+C quit
● fixer · smooth-coding · 0 tok · $0                          Ctrl+B chats · Ctrl+C quit

What changed

  1. The greeting printed twice on every cold start — the splash renders "Type a message to get started. /help for commands." and app.rs added an identical System: message immediately beneath it. Objective defect; duplicate removed.

  2. Status-bar hierarchy ("alignment beats ornament"). Identity, metrics, and keybindings were one uniform gray separated by |, with the health dot buried mid-row. Now presence leads — the health glyph opens the line, since it's Big Smooth's "I'm awake" signal — live state reads next, and the static keybindings are dimmed and right-aligned so alignment separates instead of a wall of pipes.

  3. Health state was color-only ("encode state in FORM, not just color"). Three identical differing only by hue communicated nothing under NO_COLOR, on a mono terminal, or to the ~8% of users who can't separate green from amber. The shape now carries it: awake, degraded, unknown.

Verification — rendered, not reasoned

Per the skill, captured under tmux at 110, 120 and 80 columns and with NO_COLOR=1; right-alignment holds at every width with no wrap.

health_glyph() and status_gap() were extracted so both properties are unit-tested: the three glyphs must differ in shape, and the padding saturates to 0 on a terminal narrower than its content instead of underflowing (the case that would otherwise panic). 252 tests green.

Deliberately not changed

The "AI Agent Orchestration Platform" tagline. Presence would argue for something warmer, but that's brand positioning — a product call, not design polish. Flagging rather than changing it unilaterally.

🤖 Generated with Claude Code

- Greeting printed twice on cold start (splash line + an identical System:
  ChatMessage from app.rs). Removed the duplicate.
- Status bar was flat pipe-soup with the health dot buried mid-row. Presence
  now leads (health glyph opens the line), live state next, static keybindings
  dimmed + right-aligned; middots replace pipes.
- Health state was color-only — three identical dots differing by hue alone,
  invisible under NO_COLOR/mono/colorblind. Shape now carries it: filled=awake,
  half=degraded, hollow=unknown.

health_glyph() and status_gap() extracted so both properties are unit-tested
(shapes must differ; padding saturates instead of underflowing on a tiny
terminal). Verified by rendering under tmux at 110/120/80 cols and NO_COLOR=1.
252 tests green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TwUg6nyMqXHzFDsibzTKmp
@changeset-bot

changeset-bot Bot commented Jul 26, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 4a79786

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@smooai/smooth Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@brentrager
brentrager enabled auto-merge (squash) July 26, 2026 21:44
@brentrager
brentrager merged commit ec502ee into main Jul 26, 2026
3 checks passed
@brentrager
brentrager deleted the th-glowup-apply-thcode branch July 27, 2026 14:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant