Repository navigation
Server server2-20261104-01
Official server release from quicktui-mono@429560b1c7705eba55035fc63c21393ec7caa748.
Server
Desktop window
quicktui-server guiopens a desktop window on Windows and macOS. It shows the server status, starts or restarts the server, renames and unpairs devices, pairs a phone, runs diagnostics with repairs you confirm, and has Settings and About pages. Messages that confirm a finished action (Paired: <name>,Unpaired <name>,Repairs finished,Result copied.,Log copied.) show at the top of the window and leave after 5 seconds; failures and messages about the current state stay on the page. If you change the service outside the window, the window can take up to a minute to show it.- On Windows, opening
quicktui-server.exefrom the desktop (double-click in File Explorer, the Start menu or the Run dialog) now opens the window, asquicktui-server guidoes. Before, it printed the usage and closed at once. Run without arguments in cmd, PowerShell or Windows Terminal, it still prints the usage. On Windows 11 24H2 and later, opening it from the desktop shows no console window. - Pair page,
Scan QR Code: clickRefresh Pairing Codeto show a QR code; the page does not make one by itself. While the code is being made or shown, the switch toPair through QuickTUI Cloudis locked; it unlocks when the phone pairs, the code expires or cannot be made, or you clickCancel Pairing.Change Addresslists the addresses with check boxes, with the addresses the QR code on screen holds already checked. The QR code holds the checked addresses, with the first in the server URL and the others as alternatives; it holds at most 5, so with 5 checked the other boxes are disabled.Copy Pairing Textcopies the code as text. After pairing, a dialog lets you name the device, then the window returns to Status with the device in the list. - Pair page,
Pair through QuickTUI Cloud: pick a region, enter the shown code in the app, compare the verification code and approve it in the window;Rejectends the pairing. The region is saved ascloud_pairing_region(globalorcn) inconfig.toml, so later the tab makes a code as soon as you open it; you can change the region on the tab. After a code shows, the window waits 3 minutes before it makes another, with a countdown; then clickGenerate Pairing Code. While a Cloud pairing runs, the switch toScan QR Codeis locked, andCancel Pairingends the pairing.quicktui-server pairing relayandpairing welcomekeep their limit of 3 codes per run. - The Pair page stays as you left it when you open another page: the tab, the region, the address, and a running pairing with its code. A dot on
Pairshows that pairing waits for the app or that a verification code needs you, andDevice Pairedopens over any page. - The Settings page lists the
config.tomlsettings you can change, with their current values. On / Off settings have a switch that saves at once; turning on Claude Desktop Code first asks you to confirm its risk. Language, Default Backend and Log Level offer radio buttons, and Default Backend lists only the enabled backends. Enabled Backends offers check boxes for the backends found on this computer and the enabled ones it cannot find; you must keep at least one, and when you turn off the default backend, the first one left becomes the default. Other settings have a dialog that checks the new value before it saves. Saved settings that apply after a restart showAfter restartwhile they differ from the value the running server uses, and oneRestartapplies all of them. When no session backend is found, the session and program settings are disabled until one is installed.Open Config Fileopens the file;agent_bins,tmux_env_*anddebug_categoriesstay in the file. - The Language setting offers Follow System, English and 简体中文. The window changes at once, without a restart, and the choice is saved as
cli_lang, whichquicktui-servercommands use too. When no language is set, a window on a Chinese system shows Simplified Chinese; other systems show English.--ui-langandQUICKTUI_CLI_LANGstill win for that run, and the Language row is then disabled. - The About page shows the version, update channel, platform and install source, and links to the website, user guide, support, privacy policy and GitHub in your browser. The links follow the window language; when the browser cannot open, the address goes to the clipboard. The version shows on a row of its own without the
server2-prefix; hold the pointer over it to see the full version. - The Diagnostics page runs
quicktui-server doctor.Repair N itemsruns every automatic repair, and each item that has an automatic repair also has its ownRepair Thisbutton, which asks you to confirm that one repair, runs only it and checks again. Items that only list steps for you to run have no button. The itemThe enabled session backend herdr is not installed or not foundhas aGo to Settingsbutton that opens theHerdr Pathrow in Settings. - The window tells you when this computer has no session backend, and can install Herdr for you on macOS and Windows. Status shows a notice that opens the install page, and the
Install Herdrbutton on theHerdr Pathrow in Settings opens it too. The page says where Herdr goes and what changes before anything runs, adds Herdr to PATH, explains how to use it and starts it in a new terminal. On macOS the folder goes in the config file of your account shell; if that write fails, the page shows the line to add. On Windows the official install script sets your user PATH. A list insession_backendsgetsherdradded, and a running server uses Herdr after a restart. The page shows the install log as it runs (the download address, the SHA-256 check on macOS, the command it runs on Windows, where Herdr goes and the version it finds; on Windows each line of the official install script as it prints it). The log stays after the install ends,Copy Logcopies it andRetrystarts a new log. The Microsoft Store version does not install Herdr: the notice points toherdr.dev/docs/install/. - The server now runs
quicktui-server doctoronce in the background, 30 seconds after it starts, and every doctor run keeps a short summary indoctor/last.jsonin the state directory. When the last run found checks that need attention (WARN or FAIL), the notification area icon and the menu bar icon show an exclamation mark, their tooltip and menu say how many, and the Status page of the window shows a banner withOpen Diagnostics. The mark goes away after a diagnostics run that finds nothing.
Notification area and menu bar
- On macOS, QuickTUI Server now shows a menu bar icon with the same menu as the Windows notification area icon. Turn it off with
quicktui-server config set --tray false. - The icon menus now have
Open Dashboard, which opens the window. On Windows, left-clicking the icon opens it too, and right-clicking shows the menu.Pair New Device…opens the Pair page of the window,Paired Devices…opens its Status page andRun Diagnostics…opens its Diagnostics page, instead of a console;quicktui-server gui --pageacceptspair,statusanddiagnostics. The tooltip, menu and quit confirmation follow the window language. - On Windows displays scaled to 125% or more, the menu of the notification area icon and the confirmation of
Quit Serverare no longer blurry.quicktui-server.exenow tells Windows that it handles display scaling, so Windows draws them at the full resolution of the display, and the confirmation uses the current Windows style. The notification area icon is also sharper on these displays. - The desktop icon is now the green peek monster of the QuickTUI app. It appears as the macOS app icon, the Windows program icon, the About page icon, the notification area icon and the menu bar icon. At 32 pixels and smaller, the icon is pixel art with sharp edges. The menu bar icon is the head of the monster with its two eyes, and it adds an exclamation mark when checks need attention.
macOS
- QuickTUI Server now comes as a macOS app. Open the disk image, drag the app to Applications, and open it: the first open creates the config, registers the service and adds the
quicktui-servercommand to~/.local/bin, with no terminal orq.sh. The app needs macOS 13 or later and runs on Apple silicon and Intel. - When the macOS app opens and the running server is another version, the window shows a dialog with both versions. If the server runs from a
q.shinstall,Use This App for the Servermoves the service to the app andKeep Current Serverleaves it; the app asks again each time it opens. If the server already runs from the app,Restart Serverstarts the new version. The menu bar icon comes from the running server, so it changes only after the service moves to the app or restarts. - When
quicktui-server doctorruns from the macOS app and~/.local/bin/quicktui-serverdoes not point at the app, the warning has an automatic repair (Repair Thison the Diagnostics page). The repair makes the command a link to the app. If a program file is there instead of a link, for example from aq.shinstall, the repair deletes it, but only while the service does not run that file; otherwise doctor asks you to move the service to the app first. - The macOS app has the
Server Follows Appsetting, on by default for a new app install. While it is on, the server starts with the window and stops when you close the window, and it does not start at sign-in. Paired devices disconnect when the window closes. Turn it off to keep the current behavior: the server starts at sign-in and keeps running without the window. The setting isserver_follows_appinconfig.toml. - The macOS app updates as a whole app, so its signature stays valid after an update. The update stops and keeps the installed app if the download, its signature or the app's code signature does not verify.
- On macOS, installing QuickTUI Server with
q.shnow addsQuickTUI Server.appto~/Applications, which opens the window from Finder or Spotlight. Uninstalling removes it. quicktui-server service restart,quicktui-server doctor --fixand the Restart button of the window now start a macOS service that has left launchd, for example afterQuit Server. Before, they failed until the next sign-in.quicktui-server config set, relay config changes andquicktui-server upgrade installleave such a service stopped instead of failing; it reads the change at its next start.
Windows
quicktui-server.execan now install itself. Download the file and open it: when the server is not installed yet, the window offersInstall, which copies the file to%LOCALAPPDATA%\QuickTUI, creates the config, starts the server at sign-in and addsQuickTUI Serverto the Start menu, as the install script does. When a server is already installed there, the window offersReplaceand asks first; close the open QuickTUI Server window before you replace it. After the install, the window switches to the installed server: the installed copy opens its own window on the Status page with the same language, and the downloaded file closes. When the installed server does not start at sign-in, theStart at sign-inrow on its Status page shows it. Windows may warn about an unrecognized app when you open a downloaded file; chooseMore info, thenRun anyway.- Installing QuickTUI Server now adds a
QuickTUI ServerStart menu shortcut that opensquicktui-server gui, andquicktui-server.exehas an icon. Uninstalling removes the shortcut. - The Microsoft Store version now opens the QuickTUI Server window from the Start menu, starts the server, and goes to pairing when no device is paired. Running
quicktui-serverwithout arguments still runs the console setup. A newServer Follows Appsetting, off by default, makes the server start when the window opens and stop when the window closes, instead of starting when you sign in. - The server no longer checks or changes the permissions of agent config files and of its own files. Installing hooks no longer removes access that another account has to a file, such as a Claude
settings.jsonshared with the Codex sandbox. quicktui-server doctorno longer warnsCannot read PATH from your login shell (login_shell_unavailable). Windows has no login shell, so the server never read PATH from one there and finds programs as before. The server log at start no longer has this warning either.
Session backends and agents
- Added
hc(herdr-core) as an optional session backend. Its terminals show as workspaces, and you can create and rename workspaces and create, rename and close their windows from the app. To use it, addhctosession_backendsinconfig.toml, or checkhcunder Enabled Backends on the Settings page of the window. The server never selects hc by itself, and QuickTUI does not install it. hc 0.1.17 or later is required. When the hc core is not running, the server starts it; on Linux, hc may turn on linger for your account when it first starts the core. The settings arehc_bin,hc_session,hc_socketandhc_client_retention(default5m); the Settings page showshc_binasHerdr Core Pathandhc_client_retentionasHerdr Core Client Retention.quicktui-server doctorchecks the hc binary and core when hc is enabled. Opening hc workspaces needs QuickTUI iOS 1.9.6 (409) or Android 1.9.5 (363) or later; older apps, including the iOS version in the App Store when this server was released, list hc workspaces but cannot open them. For the other limits (a whole workspace cannot be closed, the first screen has no scrollback, and terminals that QuickTUI did not create go to a read-onlyOther Terminalsworkspace), seeserver/docs/hc-contract.md. - The chat view can now switch model and effort on supported agents: Claude and Codex (model and effort), Grok and Cursor (model), and Pi (effort).
- dsh plan reviews now reach the app as plan approvals, so you can read a plan of up to 64 KiB in full and approve it or send it back with feedback from your phone. A longer plan stays read-only on the phone and is approved in dsh.
doctor and CLI
quicktui-server doctornow lists every installed agent's hook state, config file, and last delivery. When a hook has a problem, it names the file and the cause, and the repair steps follow that cause. It also warns when an installed agent has no QuickTUI hook, which it did not report before.quicktui-server doctornow warns when an agent is installed more than once, for example Codex in both~/.local/binand/opt/homebrew/bin. The warning lists each copy with its path and version and names the copy the running server uses; an upgrade from the terminal, such ascodex update, updates only the first copy in the terminal's PATH, which may not be that one. The guidance tells you to delete the copies you do not need or to set the copy to use under[agent_bins]inconfig.toml. With an[agent_bins]entry there is no warning, and the other copies are only listed. The Codex version check now also names the Codex path it checked.quicktui-server doctornow tells you to upgrade an old Codex withcodex update, and addscodex app-server daemon updatewhen the old version is the managed Codex daemon. Before, it always showed an npm command, which did not fit other install methods and did not update the daemon.quicktui-server doctorno longer warnsNo device is paired yet. A server with no paired device is not a problem; the pairing check is now OK and showspaired devices: 0.quicktui-server doctorno longer warnsopencode: running sessions use the old hook until restartedwhen no OpenCode program runs for your account. After an update rewrites the OpenCode plugin, the warning now shows only while an OpenCode program (the TUI,opencode serve, the desktop app, or OpenCode run through node or bun) still runs; an OpenCode started later loads the new plugin. When the server cannot list the running programs, the warning stays until OpenCode delivers a hook from the new plugin, as before.- On a host without OpenCode,
quicktui-server doctorno longer warnsopencode: running sessions use the old hook until restarted. An older QuickTUI could leave~/.config/opencodebehind with only its own plugin and anopencode.jsonit emptied; the server now removes that folder when it starts and reports OpenCode as not installed. A folder that holds any other file or setting is kept, and OpenCode counts as installed. quicktui-server doctor --jsonprints the result as one JSON object.quicktui-server doctor --fix --only KEY[,KEY]runs only the repairs you list.quicktui-server pairing devices rename DEVICE_ID LABELrenames a paired device on this server. The name stays on the server; the app does not show it.
QuickTUI Cloud relay
- When QuickTUI Cloud says this host is not bound to an account (
host_not_bound), the server now stops asking for a relay lease instead of retrying forever. It still retries for 10 minutes after relay is turned on, while the app finishes the binding. To try again, turn on the relay again from the app, pair through QuickTUI Cloud again, or restart the server. Pairing through QuickTUI Cloud on a server that already has relay settings for the same region now restarts the relay connection when it is not connected, so the pairing no longer fails while waiting for the relay. A server build without a QuickTUI Cloud address for its relay site (cloud_unconfigured) also stops retrying. Other refusals, such as a used-up quota or an inactive account, are still retried with backoff.
Install with:
curl -fsSL https://quicktui.ai/q.sh | sh -s -- install --channel server2
This command resolves the server from the live server2 channel in server-manifest.json; it is not a tag-pinned historical install.
Assets use these names:
quicktui-server-<platform>-<arch>
quicktui-server-windows-<arch>.exe
quicktui-server-<platform>-<arch>.sha256
quicktui-server-<platform>-<arch>.gz
quicktui-server-<platform>-<arch>.gz.sha256
Installer assets are not included in this server release. q.sh and installer assets are published independently from server2 releases.