Skip to content

Tunnel Agent 0.7.0

Choose a tag to compare

@github-actions github-actions released this 18 Jun 12:01
· 84 commits to main since this release

Installation

Platform Installer Portable
Windows x64 Setup.exe .zip
Windows arm64 Setup.exe .zip
Linux x64 .AppImage
Linux arm64 .AppImage
macOS x64 (Intel) .pkg .zip
macOS arm64 (Apple Silicon) .pkg .zip

Existing installations update automatically via Velopack.


Added

  • Additional UI languages (Resources/Strings.it-IT.resx, Strings.uk-UA.resx, Strings.ru-RU.resx, Strings.hi-IN.resx, Strings.ko-KR.resx, Strings.tr-TR.resx, Services/LocalizationService.cs): added Italian, Ukrainian, Russian, Hindi, Korean, and Turkish translations to the Language combo, bringing the localized UI to 14 languages.

  • Runtime localization and language selector (Resources/Strings*.resx, Services/LocalizationService.cs, Services/LocExtension.cs, Views/*.axaml): added runtime localization across the Avalonia UI for English, Spanish, Portuguese (Portugal), French, German, Simplified Chinese, Japanese, and Arabic, including the new Language combo under Configuration → General → Theme, persisted language preference, localized formatted strings, provider/agent descriptions, tray popup, overlays, dialogs, and quota/provider views.

Changed

  • Localization infrastructure (Resources/Strings*.resx, Services/LocExtension.cs): replaced hardcoded UI text with {l:Loc ...} / {l:LocFormat ...} bindings backed by resx resources, with live refresh when the selected language changes.

  • Localized configuration combo boxes (MainWindowViewModel, ConfigurationView.axaml): theme mode and routing strategy combo boxes now display localized labels while preserving their stored internal values.

  • Listen port editing (MainWindowViewModel, ConfigurationView.axaml): the listen port is now edited as a draft and applied with an explicit Apply button (enabled only for a valid, changed port) instead of saving on every keystroke; the row is laid out as port, Apply, then Reset.

  • Engine update toast layout (Views/MainWindow.axaml): the toast title can wrap to two lines so longer localized titles (for example Spanish) are not clipped.

Fixed

  • Configuration update badge (MainWindowViewModel): the orange update indicator now stays visible when any managed engine has an available update, instead of disappearing when switching focus to another engine tab.

  • Sliding tab localization refresh (Controls/SlidingTabBar.cs): tab titles and tooltips now stay bound to their localized headers, so configuration tabs such as General update when the language changes.

  • Runtime localization gaps (LogsViewModel, QuotaFetchService, ProviderViewModel): provider filters, quota reset countdowns, model selection labels, Chinese agent labels, and generated provider/agent texts now refresh correctly when the language changes.

  • Duplicate engine port (MainWindowViewModel, ConfigurationView.axaml): applying a listen port already used by the other engine is now blocked and surfaces an error toast instead of silently allowing a conflict.