Unity CLI 1.0.0-beta.3
49 documented changes.
- Version
- 1.0.0-beta.3
- Released
- Jul 23, 2026
- Product
- Unity CLI
Unity CLI 1.0.0-beta.3
Interactive shell
- Feature
Added persistent command history to `unity shell` . Press the Up and Down arrow keys to recall previous commands. History is capped at 1,000 entries, and secret-bearing flag values are masked before they're written to disk.
- Feature
Added tab completion to `unity shell` for command names, subcommands, option flags, and option values.
- Feature
Added session context and defaults to `unity shell` : `use project ` and `use org ` set an active project or organization for later commands, and `set format` , `set verbose` , and `set banner` set default global options for the session. `unset ` clears one setting and `context` displays the current state.
- Feature
Added `unity shell --protocol ndjson` , a machine mode that runs a framed NDJSON request/response protocol over `stdio` so automated callers and agents can run many commands in one warm process and read one parseable result per command.
- Improvement
Updated piped and scripted `unity shell` sessions to exit with the code of the first failed command instead of always exiting `0` .
Editor and project management
- Feature
Added `unity editors running` to list running Unity Editor instances with the open project, Editor version, and process ID.
- Feature
Added `unity projects size [project]` to report a project's on-disk size broken down by top-level folder. Use `--all` to summarize every registered project, sorted largest first.
- Feature
Added `unity projects close [project]` to close the running Editor that has a project open. Use `--timeout ` to bound the graceful wait and `--force` to terminate the process when it can't exit.
- Feature
Added `unity editor module remove` to remove installed modules from an Editor by module ID.
- Feature
Added `unity install --list-components` as an alias for `unity modules list ` .
- Feature
Added `unity run --command ` to run a registered `[CliCommand]` Editor command headlessly in a single invocation. The CLI starts the Editor in batch mode, runs the command, prints the return value, and shuts the Editor down. Requires the Unity pipeline package.
Automation and CI
- Feature
Added `--json` as a global shorthand for `--format json` on every command.
- Feature
Added support for the `UNITY_PROJECT_PATH` and `UNITY_CLOUD_ORG` environment variables.
- Change
Unified flag names across commands: `--project-path` is the canonical flag for a Unity project path and `--cloud-org` for a Unity Cloud organization. The previous `--project` and `--org` spellings keep working as hidden aliases.
- Feature
Added non-interactive support to `unity bug` through the `--title` , `--description` , `--steps` , `--reproducibility` , and `--email` options, so you can submit bug reports from scripts and CI.
- Feature
Added the `UNITY_NO_CONSENT_PROMPT` environment variable to suppress the one-time first-run consent prompt without recording a choice.
- Feature
Added terminal-integrated progress reporting through the `OSC 9;4` escape sequence. On Windows Terminal, the taskbar icon fills with download and install progress while `unity install` runs.
- Windows
- Improvement
Updated the CLI to terminate on `SIGTERM` with the conventional exit code `143` instead of ignoring the signal.
Installation and updates
- Improvement
Updated `install.sh` on Linux to install the binary to `~/.local/bin/unity` , which is on `PATH` by default on most distributions. Re-running the installer migrates an existing `~/.unity` install.
- Linux
- Feature
Added publication of the `.deb` and `.rpm` packages to Unity's apt and rpm repositories on every beta and general availability (GA) release, so package-managed installs update through the system package manager.
- Feature
Added in-place AppImage updates to `unity upgrade` , including checksum verification and `--rollback` support.
- Improvement
Updated the background update notice to suggest the owning package manager's exact upgrade command on package-managed installs.
- Fix
Fixed the MSIX package never receiving updates because every release rendered the same package version.
- Fix
Fixed the Windows install one-liner failing for every user with "The assignment expression is not valid".
- Windows
Diagnostics and crash reporting
- Feature
Added anonymous crash and error reporting through Sentry. Reports contain no IP address or hostname, and home-directory paths and token-like values are scrubbed before sending. Set `UNITY_NO_CRASH_REPORT` to disable reporting entirely.
- Change
Expanded the opt-in usage analytics to record which commands run (registered command names only, never arguments, paths, or project names) and the outcomes of key workflows. Nothing is sent when you're opted out, which is the default.
- Improvement
Updated the "Recent log" section of `unity doctor` to render readable log rows instead of raw NDJSON logger lines.
Localization
- Improvement
Updated `unity language` to share the Unity Hub's language catalog, with display names derived from CLDR data.
- Improvement
Updated `unity lang --set` to accept common spellings of a language code: BCP-47 ( `ja-JP` ), locale ( `ja_JP` ), bare language ( `ja` ), or bare region ( `jp` ).
- Fix
Fixed non-English locales missing translations for newer commands, so CLI output renders localized instead of falling back to English.
Security
- Security
Hardened usage errors, the `unity bug` log-archive warning, and `unity projects add` and `unity projects remove` machine output against terminal escape-sequence injection.
- Security
Added GPG signing to the `.rpm` packages with the published Unity Technologies ApS key.
Issues fixed
- Fix
Fixed `unity upgrade` on Windows flashing a console window about a second after the command exits.
- Windows
- Fix
Fixed an invalid `--proxy ` value being silently ignored. It now fails with a usage error (exit code `2` ).
- Fix
Fixed editor and module downloads failing with a DNS error when the operating system proxy settings point at an unreachable proxy auto-config (PAC) URL.
- Fix
Fixed `unity auth login` on Linux without `xdg-open` surfacing a confusing error. The command now prints the sign-in URL so you can open it manually. Under Windows Subsystem for Linux (WSL), the CLI now opens URLs through Windows interop.
- Windows
- Linux
- Fix
Fixed `unity open --editor-version ` failing with "Not a Unity project" when the project has no `ProjectSettings/ProjectVersion.txt` file.
- Fix
Fixed `unity open` with `--editor-version` starting a multi-gigabyte Editor download without asking. A terminal session now confirms before installing, and a non-interactive session fails fast instead.
- Fix
Fixed `unity status` and `unity pipeline list` not detecting a running Editor whose project path contains a space on macOS and Linux.
- macOS
- Linux
- Fix
Fixed `unity command eval` and `unity command eval_file` exiting `0` when the Editor reported a compilation error. They now exit `6` and print the compiler diagnostics.
- Fix
Fixed `unity mcp` reporting failed `eval` tool calls as successful, and fixed `unity mcp` breaking permanently after an Editor script recompile.
- Fix
Fixed `unity editors --installed` stalling for minutes on Windows when antivirus real-time scanning intercepts a freshly installed Editor.
- Windows
- Fix
Fixed an intermittent crash at exit on Windows right after a command completed successfully.
- Windows
- Fix
Fixed `unity upgrade` failing with a cross-device link error when the system temporary directory is on a different filesystem than the install directory.
- Fix
Fixed `unity projects create` handing a corrupt template archive to the Editor. Template downloads are now verified against their published checksum.
- Fix
Fixed `unity run --command` launching a second Editor on Windows when the project path differed only by letter case.
- Windows
- Fix
Fixed the `.deb` package failing to install on minimal Debian and Ubuntu systems by declaring a dependency on `ca-certificates` , and fixed the Unity licensing client never installing on Linux systems without the `unzip` utility.
- Linux
- Fix
Fixed opted-out runs sending a single anonymous analytics request in some commands. Consent off now means zero analytics requests.
- Fix
Fixed `unity analytics opt-in` and `unity analytics opt-out` not permanently answering the first-run consent prompt when run from a script.