Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/kitephp/CLIProxyAPI-Tray/llms.txt

Use this file to discover all available pages before exploring further.

CLIProxyAPI Tray can keep the CLIProxyAPI binary up to date. Updates are fetched from GitHub Releases. You can update manually at any time or enable Auto Update to check on every tray startup.

Manual update

Trigger a manual update at any time by clicking Update in the tray menu.
1

Fetch the latest release tag

The tray queries the GitHub API for the latest release from the router-for-me/CLIProxyAPI repository.
2

Compare with the installed version

  • If the installed version matches the latest tag and the executable exists on disk: shows an “Already latest: vX.Y.Z” balloon tip and stops.
  • If a newer version is available: continues to the next step.
3

Confirm with the user

A dialog box appears with the new version information:
New version found:
CLIProxyAPI: v1.2.3

Download and install?
If you click No, an “Update cancelled” balloon tip is shown and no changes are made.
4

Download the release package

The tray downloads the zip archive for your platform:
CLIProxyAPI_{version}_windows_{arch}.zip
The file is downloaded to a temporary directory. A progress window shows the download percentage and MB received/total (unless disabled — see Download progress below).
5

Extract and install

The zip is extracted, cli-proxy-api.exe is copied to versions/{tag}/cli-proxy-api.exe, and the state is saved to settings.json.
6

Start the new version

After a successful install, the tray automatically starts the newly installed version.

Auto update

Auto Update makes the tray check for a new CLIProxyAPI version every time the tray application starts, without any manual action. Default: OFF Enable it via Settings → Auto Update (checkable menu item). The setting is persisted in settings.json as autoUpdate. When Auto Update is ON and a newer version is found at startup:
  • The tray shows an “Auto update found: vX.Y.Z” balloon tip.
  • Downloads and installs the new version without a confirmation dialog.
  • Starts the new version automatically.
If the installed version is already the latest, the tray starts normally with no notification.
Auto Update does not run on a background timer. It only checks once, at tray startup. Use Update from the tray menu to check for updates at any other time.

Auto update failure recovery

If the download or extraction fails during an auto update:
  • The tray shows an “Auto update check failed” error balloon tip.
  • The version and arch fields in settings.json are rolled back to their values before the update attempt.
  • The tray continues running with the previously installed version.

Download progress

By default, a progress window appears while a release is being downloaded. It shows the download percentage and the amount of data received versus the total file size. To suppress the progress window, add or set the following in config.yaml:
show-update-progress: false
The default value is true. This setting is read from config.yaml each time an update starts.

Update failure recovery

Regardless of whether the update was triggered manually or automatically:
  • If the download or extraction fails, an error balloon tip is shown.
  • The temporary download directory is always cleaned up, even when the update fails.
  • Already-installed versions in the versions/ directory are never deleted.
  • If auto update fails, the state rolls back to the previously recorded version and arch values in settings.json.

Architecture detection

The tray detects your CPU architecture at runtime using RuntimeInformation.OSArchitecture and selects the matching release asset:
ArchitectureAsset suffix
x86-64 / AMD64windows_amd64
ARM64windows_arm64
The detected architecture is stored in settings.json as the arch field and is reused on subsequent update checks.

Build docs developers (and LLMs) love