Multica / Reference
desktop application
What is Multica Desktop, how is it different from the Web, and when is it worth using?

Overview
Multica Desktop is a native desktop application - macOS / Windows / Linux three platforms. For its currently configured environment, it sees exactly the same data as the web version, along with a backend. Desktop uses Multica Cloud by default; self-deployed instances can be accessed through local runtime profiles. It also gives you several capabilities that the Web cannot: independent multi-tab workspaces, automatic startup of daemons, and one-click upgrades.
Which should I use, Desktop or Web?
Choose Web: for temporary use, on other people’s computers, and when you don’t want to install applications. Choose Desktop: Use Multica every day, operate multiple workspaces at the same time, and don’t want to manage the daemon process yourself.
| Web | Desktop | |
|---|---|---|
| Access method | Open URL in browser | Install a local application |
| Multiple tabs | Browser's own tabs (no distinction between workspaces) | A set of independent tabs for each workspace |
| Daemon process | You need to run multica daemon start by yourself |
Automatically pull up when starting |
| Upgrade | Refresh the page to get the latest | Apply automatic check + start installation next time |
| Data after login | Exactly the same | Exactly the same |
Multi-tab: How to switch between workspaces
Desktop maintains a separate set of tabs for each workspace you join. When switching workspaces, the tabs of the current workspace will be hidden as a whole, and the tabs of the last workspace will be restored as they are - like VSCode's multi-workspace behavior or Slack's workspace switching.
For example: You have 3 issue tabs open in workspace A, and when you switch to workspace B, the 3 tabs in A disappear, and the tabs you left in B last time are displayed in B; when you switch back to A, the 3 tabs return unchanged. Tabs in different workspaces will not cross each other.
Logging out will clear the tab status of all workspaces** to prevent data leakage when multiple users share the same machine.
How to automatically update Desktop
When Desktop starts, it will go to GitHub Releases to check for new versions. Check new version:
- Download new versions silently in the background
- Prompt you "Ready, install at next startup"
- When you click to exit (or restart next time), install the new version before closing the application.
- When you open it again, it will be a new version.
The entire process does not interrupt what you are doing.
ARM64 and x64 of Windows are independent update channels - if you install the wrong architecture, the update will not be recognized. During installation, download the
.execorresponding to your machine architecture (the one with thearm64suffix is the ARM version).
The macOS version has been signed + notarized, and there will be no "Unknown Developer" warning when opening it for the first time. The Linux version is .AppImage - the automatic update mechanism relies on electron-updater, which may be unstable in some distributions. If it does not work, manually download the new version to cover it.
Do I need to install CLI and daemon separately?
No need. The same multica CLI binary is built into the Desktop package - an independent profile of the daemon process will be automatically started when Desktop is started (without interfering with the daemon process that you run manually from the command line).
If you have installed the CLI and manually ran multica daemon start, Desktop will not preempt your daemon process - it starts its own, isolated by a different profile. Both sides register different runtimes, and you can see two independent runtimes in the UI.
If you want to run CLI commands in the terminal, Desktop does not provide a special method - use the usual system CLI (if you installed it separately), or use the version that comes with Desktop (in the application's resource directory, resources/bin/multica).
How to download and install
Go to the Doka download page and get the installation package for the corresponding platform:
| Platform | Documentation |
|---|---|
| macOS (Intel or Apple Silicon) | .dmg |
| Windows x64 | .exe (regular) |
| Windows ARM64 | .exe (with arm64 suffix) |
| Linux | .AppImage |
You need to log in when you open it for the first time after installation - the same email + verification code process as the web version. After successful login, Desktop automatically synchronizes the workspace list.
**Desktop connects to Multica Cloud by default, but can be pointed to a self-deployed instance via a local configuration file. ** There is still no "connect self-deployment" switch entry in the app. Desktop will read
~/.multica/desktop.jsonbefore the renderer is started; if this file does not exist, the Cloud default value will be used. Minimal self-deployment configuration:{ "schemaVersion": 1, "apiUrl": "https://api.your-domain" }
apiUrlis required,httporhttpsmust be used. Desktop will automatically derivewsUrl(original address of/ws,httpscorresponding towss,httpcorresponding tows) andappUrl(original address of the API) from it. If your deployment uses a different domain name, you can set it explicitly:{ "schemaVersion": 1, "apiUrl": "https://api.your-domain", "wsUrl": "wss://api.your-domain/ws", "appUrl": "https://your-domain" }If
desktop.jsonexists but the contents are invalid, Desktop will fail closed with a blocking configuration error instead of quietly falling back to Cloud. In development builds,electron-vite devstill gives priority toVITE_API_URL/VITE_WS_URL/VITE_APP_URL. Desktop runtime self-deployment configuration capability corresponds to issue #1371.
Next step
- Cloud Quickstart —— Desktop version of Cloud access process
- Self-Host Quickstart - self-deploy the backend and configure the connection via CLI or Desktop runtime
- Daemon and Runtimes - Daemon mechanism (Desktop starts it automatically, but the behavior is the same)