Desktop Material

Browser-style settings tabs

Global Settings, Repository Settings, and Stash Manager use the same horizontal browser-style tab surface. Each page has a stable identity, a visible active state, a close action, and a new-page action that reopens pages without discarding the page currently being edited.

Behavior

Configuration and persistence

The shared model in app/src/ui/settings-tabs/settings-tab-model.ts scopes open pages and pins by preferences, repository-settings, and stash-manager. The browser strip accepts a complete page catalogue when a caller displays a filtered view. This prevents temporary search results from being mistaken for the user's saved tab session.

The stash surface supplies localized action names for English, playful Hong Kong-style Cantonese, and bilingual rendering. The tab names themselves remain factual; funny-level styling changes surrounding copy, not page identity.

Failure modes and recovery

Security and privacy

Open-page and pin state is local UI preference data. It contains only stable page IDs, never repository credentials, remote URLs, stash contents, or provider-authored text. Values read from storage are bounded and validated before they are used as DOM identities or rendered labels. Picker searches run locally and do not transmit the query or sample text.

Verification

Runtime evidence

The real production Electron artifact was launched on the named hidden desktop dm-tabs-d9ad5763 with the disposable fixture repository. The exact window handle was resolved from that desktop at capture time, and CDP captured the three 1440×960 frames after the tab lanes and active panels were inspected. The run manifest is .codex/verification/settings-browser-tabs-headless-run-manifest.json.

Surface Evidence SHA-256
Global Settings browser-style Settings frame 43ff361771efeeeb01eb8b40b778b9a4e5b3a311457fc632271d9ad4aa513fc
Repository Settings browser-style Repository Settings frame 4850a060ed8ffb9c8fd06bf013e6b503b4928c58bf0449c45e56887be09ad962
Stash Manager browser-style Stash Manager frame 52254a7b62ba0a9ce3d84c19fe3cd5e4e30a37ede79d3122afa57665b9759ca3

The frames are current-source UI evidence, not installer or release evidence. The headless MCP endpoint was already saturated by an unrelated capture job, so the sanctioned installed Cheap Version CLI was used against the same cheap headless route; the hidden desktop and visible user's desktop remained untouched.

Suggested articles