feat(web): remote environments show which OS they run on - #5778
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
61c2c87 to
282ea7e
Compare
ApprovabilityVerdict: Approved b6061db Purely presentational changes that add OS icons (macOS/Windows/Linux) to remote environment lists. No runtime behavior changes beyond displaying icons based on existing platform data. Includes comprehensive test coverage. You can customize Macroscope's approvability policy. Learn more. |
|
can the glyphs be monochrome? Think it'll look better. |
Adds an OS glyph beside each remote environment's name in Settings → Connections, using svgl logos. The platform is already carried on the environment descriptor, so no server or relay change is needed. Saved rows read the cached server config (so a disconnected environment keeps its glyph); T3 Connect rows fall back to the relay discovery descriptor. An environment that has never connected and is currently unreachable has no descriptor in either source and renders no glyph.
Pass each saved environment's cached server config into OS resolution before falling back to relay discovery. Add a component regression test for an offline saved environment with a cached Windows config.
The colour marks pulled focus in a list that is mostly muted text, and svgl's Tux shipped 21 gradient and filter definitions for a glyph that renders at 14px. Every mark now draws in currentColor so it inherits the row's text colour. Apple keeps a faint rim to separate its silhouette from the surface; Windows takes none, because a stroke closes up the gutters between its four panes at this size. Tux swaps to Simple Icons' single path, with the face drawn in a contrasting tone per theme — svgl's artwork defines the eyes and beak through colour alone and flattens into an unreadable blob.
8e1aab3 to
ad47084
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit ad47084. Configure here.
The face was painted with `background`, which only matches when the row sits on the page canvas. These rows also render on the popover of the T3 Connect onboarding dialog, where that paints a mismatched dark patch over the body rather than reading as a cutout. Draw the face in a fixed dark tone instead. It only has to stay darker than the muted body, which holds on every surface and in both themes.
Dismissing prior approval to re-evaluate b6061db



What Changed
Remote environments in Settings → Connections now show an OS glyph beside each environment name, making Mac, Linux, and Windows machines easy to distinguish.
The platform is resolved from the cached server config first so disconnected environments keep their glyph, then from the relay discovery descriptor for T3 Connect rows. Environments with no known platform render without a placeholder.
Why
Remote environments previously looked identical in the connections list, making it difficult to identify the right machine when several were paired.
This is a web-only presentation change. The server, relay, and mobile environment list are unchanged.
Screenshots
Before:

After:
Checklist
Note
Low Risk
Web-only presentation with no API, auth, or data-model changes; behavior is covered by new unit tests.
Overview
Remote environments in Settings → Connections and the T3 Connect list now show a small macOS, Windows, or Linux glyph next to each name so paired machines are easier to tell apart.
Platform comes from new
resolveEnvironmentOs: cachedserverConfigwins so offline saved environments keep their icon; relay discovery fills in for environments this client never connected to. Unknown or missing platform renders no placeholder.New
EnvironmentOsIconplus theme-aware SVG marks inOsIcons.tsxdrive the UI. Connect rows take optionalserverConfigon saved connections; unit tests cover resolution and offline relay behavior.Reviewed by Cursor Bugbot for commit b6061db. Bugbot is set up for automated code reviews on this repo. Configure here.
Note
Show OS icon on remote environment rows in the connection list and settings
EnvironmentOsIconin EnvironmentOsIcon.tsx that renders an Apple, Linux, or Windows SVG glyph based on the environment's reported OS, and renders nothing fornullor'unknown'.resolveEnvironmentOsin ConnectionsSettings.logic.ts to pick the OS by preferring the cachedserverConfigover the relay discovery descriptor.Macroscope summarized b6061db.