desktop-v1.25.1
superset-sh/supersetdesktop-v1.25.1Aug 31, 2026by github-actions[bot]
AI Summary
This release focuses on extensive internationalization (i18n) support, adding 16+ new languages, and enhancing the desktop app's terminal and file management features. It also includes marketing updates, localized URLs, and various bug fixes.
Key Highlights
- Massive i18n expansion: Ships 16+ new languages including French, German, Spanish, and Japanese.
- Terminal improvements: PDF viewer, copy-on-select setting, Nerd Font icon support, and remote workspace port forwarding.
- UI/UX: Redesigned settings sidebar, localized marketing URLs, and a Figma-style footer language picker.
- Mobile updates: Bottom session tabs, native '+' button placement, and improved project picker.
New Features
- PDF viewer for the file pane
- Lingui 6 foundation across desktop, web, and mobile
- Localized marketing URLs with SEO
- Workspace tags and tag-derived sidebar folders
- Remote workspace port forwarding to local machine
Full Release Notes
## What's Changed * chore(desktop): bump version to 1.25.0 by @Kitenite in https://github.com/superset-sh/superset/pull/6890 * feat(marketing): tier icons and factory backdrop for leaderboard pages by @harshithmullapudi in https://github.com/superset-sh/superset/pull/6889 * fix(panes): keep resize handles from painting above dialogs by @Kitenite in https://github.com/superset-sh/superset/pull/6891 * chore(deps): pull in Dependabot bumps with proper lockfile resolution by @AviPeltz in https://github.com/superset-sh/superset/pull/6898 * feat(cli): `superset scripts add` + rename terminal presets to terminal scripts by @Kitenite in https://github.com/superset-sh/superset/pull/6892 * fix(web): stop set-active hijacking the OAuth consent navigation by @Kitenite in https://github.com/superset-sh/superset/pull/6899 * style(desktop): align Settings sidebar with the main sidebar, fold Usage into Settings by @AviPeltz in https://github.com/superset-sh/superset/pull/6883 * fix(desktop): stop 'Host unreachable' lingering after host-service restart by @Kitenite in https://github.com/superset-sh/superset/pull/6900 * fix(desktop): park terminal transports on detach — close the socket, resume by seq by @Kitenite in https://github.com/superset-sh/superset/pull/6895 * fix(host-service): stop a busy pty-daemon from being orphaned by a fresh spawn by @Kitenite in https://github.com/superset-sh/superset/pull/6897 * docs+marketing: rename Remote Workspaces to Remote Access by @Kitenite in https://github.com/superset-sh/superset/pull/6896 * fix(desktop): make New Window reachable without the native menu bar by @tao101 in https://github.com/superset-sh/superset/pull/6894 * feat(desktop): add a PDF viewer to the file pane by @Kitenite in https://github.com/superset-sh/superset/pull/6909 * feat(marketing): surface SOC 2 Type II across the site by @Kitenite in https://github.com/superset-sh/superset/pull/6910 * fix(host-service): stop usage.history throwing on very large usage histories by @saddlepaddle in https://github.com/superset-sh/superset/pull/6912 * fix(desktop): don't throw persisting windows when quit precedes app-state init by @saddlepaddle in https://github.com/superset-sh/superset/pull/6913 * fix(host-service): say which GitHub credential was rejected on the PR list by @Kitenite in https://github.com/superset-sh/superset/pull/6911 * feat(i18n): Lingui 6 foundation across desktop, web, and mobile (Phase 0) by @Kitenite in https://github.com/superset-sh/superset/pull/6904 * fix(desktop): font preview card border and footer overflow by @Kitenite in https://github.com/superset-sh/superset/pull/6915 * feat(i18n): locale-aware formatting layer (Phase 1) by @Kitenite in https://github.com/superset-sh/superset/pull/6916 * feat(i18n): hardcoded-string ratchet, tests, and agent conventions (Phase 1) by @Kitenite in https://github.com/superset-sh/superset/pull/6906 * fix(desktop): keep font previews inside their grid track by @Kitenite in https://github.com/superset-sh/superset/pull/6919 * feat(i18n): tRPC error contract (Phase 1) by @Kitenite in https://github.com/superset-sh/superset/pull/6918 * feat(i18n): route toast error rendering through errorMessage() (Phase 1) by @Kitenite in https://github.com/superset-sh/superset/pull/6921 * fix(desktop): rank command palette by contiguous matches, not fuzzy subsequences by @saddlepaddle in https://github.com/superset-sh/superset/pull/6923 * feat(usage): analytics for every agent CLI that records usage (grok, cursor, opencode, copilot, pi, omp, fx) by @Kitenite in https://github.com/superset-sh/superset/pull/6922 * feat(i18n): server error keys for every literal user-facing TRPCError (Phase 1) by @Kitenite in https://github.com/superset-sh/superset/pull/6924 * feat(shared,host-service): pinned Claude model ids in the workspace-create picker, and reject an unsupported model by @Kitenite in https://github.com/superset-sh/superset/pull/6920 * fix(i18n): translated error strings are display-only — logs keep stable English by @Kitenite in https://github.com/superset-sh/superset/pull/6925 * feat(i18n): locale persistence — Postgres user.locale, desktop Language setting (Phase 1) by @Kitenite in https://github.com/superset-sh/superset/pull/6926 * refactor(desktop): split Typography settings into two always-visible surface sections by @Kitenite in https://github.com/superset-sh/superset/pull/6927 * fix(trpc): let the hourly MRR refresh collect the run it started by @saddlepaddle in https://github.com/superset-sh/superset/pull/6931 * feat(integrations): offer trigger-only integrations only where their triggers are by @saddlepaddle in https://github.com/superset-sh/superset/pull/6933 * fix(mobile): scope the project picker to the Home scope and say just "Cloud" under Cloud by @saddlepaddle in https://github.com/superset-sh/superset/pull/6934 * fix(mobile): move workspace search into a sheet with the native search bar by @saddlepaddle in https://github.com/superset-sh/superset/pull/6937 * feat(i18n): extract dashboard surfaces to Lingui (Phase 2, batch 1) by @Kitenite in https://github.com/superset-sh/superset/pull/6936 * feat(i18n): extract settings surfaces to Lingui (Phase 2, batch 2) by @Kitenite in https://github.com/superset-sh/superset/pull/6938 * refactor(ui,chat-ui,desktop): one clipboard-file reader for every paste handler by @Kitenite in https://github.com/superset-sh/superset/pull/6935 * fix(desktop,ui,mobile): three paste defects found auditing the paste surfaces by @Kitenite in https://github.com/superset-sh/superset/pull/6939 * feat(i18n): extract v2-workspace + remaining renderer surfaces to Lingui (Phase 2, batch 3) by @Kitenite in https://github.com/superset-sh/superset/pull/6940 * fix(ui): keep the maxFiles budget in step within a single tick by @Kitenite in https://github.com/superset-sh/superset/pull/6941 * feat(i18n): localize string props, toasts, and label maps (Phase 2, batch 4) by @Kitenite in https://github.com/superset-sh/superset/pull/6942 * fix(desktop): match settings top bar to sidebar by @Kitenite in https://github.com/superset-sh/superset/pull/6947 * feat(i18n): finish the sweep and ship Japanese and Simplified Chinese by @Kitenite in https://github.com/superset-sh/superset/pull/6943 * feat(desktop,host-service): forward remote workspace ports to the local machine by @Ymirke in https://github.com/superset-sh/superset/pull/6858 * fix(marketing): seed RSC i18n per route entry, not just the root layout by @saddlepaddle in https://github.com/superset-sh/superset/pull/6950 * feat(desktop): copy-on-select setting for v2 terminals by @Kitenite in https://github.com/superset-sh/superset/pull/6949 * fix(desktop): notify for OpenCode permission and question prompts by @Kitenite in https://github.com/superset-sh/superset/pull/6948 * fix(auth): remember the organization you switched to across sessions by @saddlepaddle in https://github.com/superset-sh/superset/pull/6957 * fix(terminal): stop the viewport freezing when Pi erases the scrollback by @Kitenite in https://github.com/superset-sh/superset/pull/6956 * fix(desktop): finish the Remote Access rename, and stop English edits stranding translations by @Kitenite in https://github.com/superset-sh/superset/pull/6959 * perf(i18n): load translation catalogs on demand by @Kitenite in https://github.com/superset-sh/superset/pull/6951 * fix(agent-setup): handle Codex interrupted turns by @Kitenite in https://github.com/superset-sh/superset/pull/6963 * ci: smoke test deployed previews and arm the RSC seeding guard for every Next app by @Kitenite in https://github.com/superset-sh/superset/pull/6960 * fix(desktop): preserve provider profile and sync sidebar state by @Kitenite in https://github.com/superset-sh/superset/pull/6961 * feat(i18n): ship French by @Kitenite in https://github.com/superset-sh/superset/pull/6964 * feat(i18n): ship Korean by @Kitenite in https://github.com/superset-sh/superset/pull/6965 * feat(pages): default to org visibility, cached thumbnails, owner + delete in the grid by @harshithmullapudi in https://github.com/superset-sh/superset/pull/6932 * feat(pages): watch published pages and route comments to the owning agent by @harshithmullapudi in https://github.com/superset-sh/superset/pull/6952 * feat(i18n): ship Traditional Chinese and fix Chinese locale resolution by @Kitenite in https://github.com/superset-sh/superset/pull/6969 * feat(i18n): ship Spanish by @Kitenite in https://github.com/superset-sh/superset/pull/6971 * feat(i18n): ship German by @Kitenite in https://github.com/superset-sh/superset/pull/6972 * feat(i18n): ship Brazilian Portuguese by @Kitenite in https://github.com/superset-sh/superset/pull/6973 * feat(i18n): ship Italian by @Kitenite in https://github.com/superset-sh/superset/pull/6974 * feat(i18n): ship Russian by @Kitenite in https://github.com/superset-sh/superset/pull/6976 * feat(i18n): ship Turkish by @Kitenite in https://github.com/superset-sh/superset/pull/6977 * feat(i18n): ship Polish by @Kitenite in https://github.com/superset-sh/superset/pull/6978 * feat(i18n): ship Dutch by @Kitenite in https://github.com/superset-sh/superset/pull/6979 * feat(i18n): ship Indonesian by @Kitenite in https://github.com/superset-sh/superset/pull/6981 * feat(i18n): ship Czech by @Kitenite in https://github.com/superset-sh/superset/pull/6982 * feat(i18n): ship Vietnamese by @Kitenite in https://github.com/superset-sh/superset/pull/6983 * feat(desktop): offer to restart running agents onto the new default account by @Kitenite in https://github.com/superset-sh/superset/pull/6970 * feat(i18n): translate new strings automatically on the PR by @Kitenite in https://github.com/superset-sh/superset/pull/6984 * fix(i18n): make built sentences whole messages instead of fragments by @Kitenite in https://github.com/superset-sh/superset/pull/6985 * fix(i18n): five findings from the visual locale review by @Kitenite in https://github.com/superset-sh/superset/pull/6989 * feat(usage): add Grok and Antigravity quotas by @Kitenite in https://github.com/superset-sh/superset/pull/6987 * fix(marketing): serve the request's language, and make regressing this a blocked deploy by @Kitenite in https://github.com/superset-sh/superset/pull/6991 * feat(i18n): language switcher on marketing and docs by @Kitenite in https://github.com/superset-sh/superset/pull/6992 * feat: workspace tags and tag-derived sidebar folders by @Kitenite in https://github.com/superset-sh/superset/pull/6990 * chore: lint fixes for tag-folders merge by @Kitenite in https://github.com/superset-sh/superset/pull/6995 * fix(i18n): language switcher names the language in effect, never "Auto" by @Kitenite in https://github.com/superset-sh/superset/pull/6996 * fix(shared): raise MIN_HOST_SERVICE_VERSION so pre-1.22 hosts hit the version gate instead of a blank terminal pane by @Kitenite in https://github.com/superset-sh/superset/pull/6998 * docs: translate the README into all sixteen shipped languages by @Kitenite in https://github.com/superset-sh/superset/pull/6997 * fix(docs): compact language switcher to an icon beside the GitHub mark by @Kitenite in https://github.com/superset-sh/superset/pull/7001 * Clarify workspace sidebar naming by @Kitenite in https://github.com/superset-sh/superset/pull/7000 * feat(marketing): localized URLs — every page per locale, with its own SEO by @Kitenite in https://github.com/superset-sh/superset/pull/7002 * docs: collapse the README language row into a disclosure by @Kitenite in https://github.com/superset-sh/superset/pull/7004 * fix(i18n): deterministic first render — no hydration mismatch for non-English users by @Kitenite in https://github.com/superset-sh/superset/pull/7005 * feat: host-side tag folder presentation and hide list by @Kitenite in https://github.com/superset-sh/superset/pull/6999 * feat(marketing): Figma-style footer language picker by @Kitenite in https://github.com/superset-sh/superset/pull/7006 * fix(desktop): render Nerd Font icons for any terminal font by @Kitenite in https://github.com/superset-sh/superset/pull/7008 * feat(agent-setup): report agent launch from the wrapper so terminals bind at boot by @Kitenite in https://github.com/superset-sh/superset/pull/7010 * feat: continue a terminal session with another agent, or fork it by @Kitenite in https://github.com/superset-sh/superset/pull/6962 * The Production Run: campaign page, graded cost axis, and the Output fix by @harshithmullapudi in https://github.com/superset-sh/superset/pull/6930 * docs: correct the port-forwarding host-service floor to 1.26 by @saddlepaddle in https://github.com/superset-sh/superset/pull/7013 * feat(desktop,host-service): render the Changes pane from patches by @Kitenite in https://github.com/superset-sh/superset/pull/6968 * test(usage): isolate native history collectors by @Kitenite in https://github.com/superset-sh/superset/pull/7014 * fix(mobile): keep a Bluetooth route change from crashing dictation by @saddlepaddle in https://github.com/superset-sh/superset/pull/7015 * feat(mobile): move "+" to the project header, drop new-agent from home by @saddlepaddle in https://github.com/superset-sh/superset/pull/7016 * fix(gmail): skip already-recorded messages so a history walk can finish by @saddlepaddle in https://github.com/superset-sh/superset/pull/7023 * test(agent-setup): stop rewriting the OpenCode plugin per test by @saddlepaddle in https://github.com/superset-sh/superset/pull/7025 * feat(mobile): move the session tabs to the bottom, natively by @saddlepaddle in https://github.com/superset-sh/superset/pull/7024 * feat(marketing): /security page for vulnerability and abuse reports by @saddlepaddle in https://github.com/superset-sh/superset/pull/7026 * docs(marketing): drop hostnames and the scope block from the security page by @saddlepaddle in https://github.com/superset-sh/superset/pull/7027 ## New Contributors * @tao101 made their first contribution in https://github.com/superset-sh/superset/pull/6894 * @Ymirke made their first contribution in https://github.com/superset-sh/superset/pull/6858 **Full Changelog**: https://github.com/superset-sh/superset/compare/desktop-v1.25.0...desktop-v1.25.1