Repository navigation
th code: distinct user-turn blocks + animated working avatar - #771
Merged
Merged
Conversation
🦋 Changeset detectedLatest commit: 8709a88 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
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 |
…h avatar The user could not tell their own turns from the agent's: the only difference was a 'You:' vs 'Smooth:' label. User turns are now a block (coral bar, ❯ glyph, bold text) that reads by shape under NO_COLOR, and tool-call lines are indented and dim so the answer stands out. While a turn runs, a 3-row animated Big Smooth from the splash art sits above the status bar with the activity and elapsed time. It only borrows preview rows, hides when idle, runs at 5 fps off the turn clock, and is off under NO_COLOR or TH_REDUCED_MOTION / SMOOTH_REDUCED_MOTION. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…asured 12ms) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
brentrager
force-pushed
the
th-code-user-blocks-avatar
branch
from
October 6, 2026 17:31
94406f4 to
8709a88
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
In
th codethe only difference between your turns and Big Smooth's was aYou:vsSmooth:label, and nothing on screen showed he was working while a turn ran.Solution
▌accent bar,❯prompt glyph on the first row (continuations aligned under it), bold default-foreground text. The shape carries the difference, so it survivesNO_COLOR, and the default foreground keeps it readable on light and dark terminals. A blank line still separates it from the reply.crates/smooth-code/src/avatar.rs): a 3-row mini of the splash avatar (th-a67752 legend) above the status bar, withthinking/running <tool>/writingand an elapsed timer. The glint sweeps across the shades, 4 frames at 5 fps, with the frame taken from the turn clock. It only takes rows from the spacer/preview (never the input box or checklist), and is dropped whole when there is no room. Hidden when idle. Off underNO_COLORandTH_REDUCED_MOTION=1/SMOOTH_REDUCED_MOTION=1.AppState::sync_turn_clockruns once per tick, so every place that flipsthinkingkeeps the clock right without being touched.Verification
cargo test -p smooai-smooth-code: 381 passed. New tests cover the user block's shape and styles, the dim and indented tool lines, avatar start/stop, the turn clock, NO_COLOR/reduced-motion gating, frame timing, activity, layout (the avatar never moves the input or status), and a full TestBackend render: the avatar is visible during a turn and gone after, with the composer on the same row.Pearls th-4a7236 (A), th-e93d9e (B).
🤖 Generated with Claude Code