文章目錄

Unity CLI 是 Unity 官方的指令工具,用 unity install 就能安裝 Unity 編輯器與模組,整個過程不需要打開 Unity Hub。裝好以後再執行 unity setup claude,Claude Code 也能用同一套指令替我們安裝編輯器、開啟專案。
Unity CLI 目前仍是 beta 版,以下指令以 1.0.0-beta.14 為準。Windows 與 WSL 的段落在 Windows 11 實測,Linux 段落則是在 WSL 的 Ubuntu 26.04 裡實測。之後版本的指令若有變動,以 Unity CLI 官方文件 與 unity <指令> --help 為準。
選擇使用環境
Unity CLI 在 Windows、WSL、Linux 的用法不同,差別在 CLI 裝在哪裡,以及它管理的是哪個系統上的編輯器。三種環境都需要一個 Unity 帳號。
| 環境 | 安裝方式 | 管理的編輯器 | 系統需求 |
|---|---|---|---|
| Windows | winget | Windows 的編輯器 | Windows 10 21H1 以上 |
| WSL | 呼叫 Windows 版,不另外安裝 | Windows 的編輯器 | 同 Windows |
| Linux | 安裝腳本 | Linux 的編輯器 | Ubuntu 22.04 以上或 RHEL 9,glibc 2.34 以上 |
安裝 Unity CLI
Windows
在 PowerShell 用 winget 安裝:
1winget install Unity.CLI
裝好後重新開啟 PowerShell,執行 unity doctor 確認 CLI 已經在 PATH 上,而且沒有重複安裝:
1cliVersion 1.0.0-beta.14
2check.binary-on-path pass
3check.path-duplicates pass
從舊版腳本升級
以前用官方舊版腳本(install.ps1)裝過的話,check.path-duplicates 會顯示 warn,因為舊版的 unity.exe 還留在 %LOCALAPPDATA%\Unity\bin。舊版留著會讓終端機執行到舊檔,要刪除舊檔並把它從使用者的 PATH 移除:
1$old = "$env:LOCALAPPDATA\Unity\bin"
2Remove-Item $old -Recurse -Force
3$path = [Environment]::GetEnvironmentVariable('Path', 'User') -split ';' | Where-Object { $_ -and $_ -ne $old }
4[Environment]::SetEnvironmentVariable('Path', ($path -join ';'), 'User')
只刪 bin 這個資料夾。同一層的 Editor、licenses、config 存放的是編輯器的 Log、授權與設定,刪掉會影響編輯器。重新開啟 PowerShell 後再執行一次 unity doctor,check.path-duplicates 變成 pass 就完成了。
WSL
WSL 不需要另外安裝。在 Windows 裝好 Unity CLI 後,WSL 裡把指令名稱從 unity 換成 unity.exe,執行的就是 Windows 版的 CLI:
1unity.exe --version
2unity.exe editors -i
列出的編輯器位置是 Windows 路徑,代表指令交給了 Windows 版處理,版本則依各自電腦上已安裝的編輯器而定:
11.0.0-beta.14
2version location
36000.3.20f1 C:\Program Files\Unity\Hub\Editor\6000.3.20f1\Editor\Unity.exe
42018.3.5f1 C:\Program Files\Unity\Hub\Editor\2018.3.5f1\Editor\Unity.exe
Linux
Linux 用官方的安裝腳本安裝,CLI 會放在 ~/.local/bin/unity:
1curl -fsSL https://unity.com/install.sh | bash
2source ~/.bashrc
3unity --version
目前 Unity CLI 還沒有正式版,安裝腳本會自動改裝最新的 beta 版:
1 info No stable release yet -- installing the latest beta instead.
2 ✔ Unity CLI 1.0.0-beta.14 installed!
Linux 版只管理 Linux 的編輯器。我在 WSL 裡裝好 Linux 版後執行 unity editors -i,結果是空的,Windows 上已經裝好的編輯器都看不到,要另外下載 Linux 編輯器(6000.3.27f1 的編輯器本體約 4.26 GB)。
共通流程
以下指令在三種環境都一樣,WSL 把 unity 換成 unity.exe 即可。
登入與啟用授權
先登入 Unity 帳號,再啟用免費的 Personal 授權:
1unity auth login
2unity license activate --personal --accept-eula
unity auth login 會開啟瀏覽器完成登入,之後的指令都會沿用這次的登入狀態,可以用 unity auth status 確認目前的帳號。--accept-eula 代表同意 Personal 授權條款,沒有加上就無法啟用。已經有付費授權時,把 --personal --accept-eula 改成 --serial 序號。
查詢版本與下載量
unity releases 會列出目前能安裝的版本,stream 欄位是 LTS 的就是長期支援版:
1version stream lts installed
26000.6.7f1 SUPPORTED false false
36000.7.0b6 BETA false false
46000.3.27f1 LTS true false
56000.0.85f1 LTS true false
決定版本後,先加上 --dry-run 看要下載多少,這個參數只會列出內容,不會真的安裝:
1unity install 6000.3.27f1 -m android --cm --dry-run
拿 Android 模組來看,加上 --cm 帶入的 OpenJDK、NDK 與 SDK 子模組後,總下載量是 6.68 GB:
1編輯器
2
3 6000.3.27f1 (x86_64) 3.94 GB
4
5模組
6
7ID 名稱 下載
8android Android Build Support 1.44 GB
9android-open-jdk-17.0.18+8 OpenJDK 112.64 MB
10android-ndk-r27c Android NDK 745.31 MB
11android-sdk-command-line-tools-16.0 Android SDK Command Line Tools 136.84 MB
12(其餘 SDK 子模組略)
13
14總下載量:6.68 GB
這份表格只會在互動式的終端機顯示。由 AI Agent 或腳本在背景執行時,一般輸出會是空的,要加上 --json 改看 totalDownloadSize 欄位(單位是 Byte)。
要裝 2021 等舊版本時,先到 Unity Download Archive 確認授權限制。標註「Enterprise and Industry only」的版本只開放企業授權,Personal 授權裝得起來卻無法啟動編輯器:

2021 版裡,Personal 授權能用的最新版本是沒有標註的 2021.3.45f2。
變更安裝位置
一個編輯器加上 Android 模組就要將近 7 GB,預設位置的磁碟空間不夠時,可以換到其他磁碟。編輯器預設裝在 Windows 的 C:\Program Files\Unity\Hub\Editor 或 Linux 的 ~/Unity/Hub/Editor,用 unity install-path -s 變更前要先建立目標資料夾,否則會出現「此目錄不存在」的錯誤:
1mkdir D:\Unity\Editor
2unity install-path -s D:\Unity\Editor
設定成功時會顯示新的位置:
1所有 Unity Editor 將安裝至 D:\Unity\Editor
這個設定和 Unity Hub 的安裝位置是同一個,改了以後 Unity Hub 也會裝到新位置,要改回預設值時再用 -s 指回原本的路徑。如果只想把某個版本裝到特定資料夾,可以在 unity install 加上 -d 資料夾,這樣不會改動安裝位置的設定,裝好的編輯器也不會登記到 Unity Hub。
安裝編輯器與模組
拿掉 --dry-run 就會開始安裝:
1unity install 6000.3.27f1 -m android --cm
-m 後面接模組 ID,可以一次列多個,例如 -m android webgl。--cm 會一併安裝子模組,Android 需要的 SDK、NDK 與 OpenJDK 都靠它帶入。不確定模組 ID 時,用 unity install 6000.3.27f1 --list-modules 查詢。編輯器已經裝好、之後才要追加模組時,改用 unity install-modules:
1unity install-modules -e 6000.3.27f1 -m webgl --cm
安裝完成後執行 unity editors -i,列表出現 6000.3.27f1,modules 欄位也有剛才選的模組,就代表安裝成功。
移除編輯器
先用 unity editors -i 確認完整的版本號,再移除:
1unity uninstall 6000.3.27f1
讓 Claude Code 使用 Unity CLI
Unity 為 AI Agent 提供了官方 Plugin,Unity CLI 把安裝步驟包成一行指令:
1unity setup claude
這個指令實際上會執行兩個 Claude Code 的指令,加上 --dry-run 可以先看內容:
1claude plugin marketplace add anthropics/claude-plugins-official --scope user
2claude plugin install unity@claude-plugins-official --scope user
它會從 Anthropic 官方的 Plugin Marketplace 安裝 Unity Plugin,範圍是使用者層級,所有專案都能使用。Plugin 裡的 unity-cli Skill 讓 Claude Code 知道怎麼用 Unity CLI 安裝編輯器、開啟專案與操作執行中的編輯器,new-unity-project Skill 則會一步步問清楚需求再建立新專案。執行 claude plugin list 看到 unity@claude-plugins-official 的狀態是 enabled 就完成了,不需要時用 claude plugin uninstall unity@claude-plugins-official 移除。
Claude Code 裝在 WSL 時,unity.exe setup claude 設定的是 Windows 上的 Claude Code,WSL 裡也沒有 unity 這個指令。這時直接在 WSL 執行上面那兩行 claude plugin 指令安裝 Plugin,再建立一個指向 unity.exe 的 unity 連結,讓 Skill 裡寫的 unity 指令也能執行:
1mkdir -p ~/.local/bin
2ln -s "$(command -v unity.exe)" ~/.local/bin/unity
Codex 使用者改執行 unity setup codex。其他支援的 Agent 可以用 unity skill install --list 查詢,只想設定 MCP Server 時則用 unity mcp configure。
其他常用指令
前面流程沒有提到、但平常會用到的指令:
| 指令 | 用途 |
|---|---|
winget upgrade Unity.CLI |
更新 Windows 版 CLI |
unity self-update |
更新以安裝腳本安裝的 CLI |
unity license |
查看本機已啟用的授權 |
unity open ./MyProject |
用專案指定的編輯器版本開啟專案 |
問題排除
| 症狀 | 處理方式 |
|---|---|
終端機找不到 unity |
重新開啟終端機,再執行 unity doctor 確認 PATH |
unity install-modules 找不到編輯器 |
手動複製進來的編輯器不能追加模組,改用 unity install 重新安裝該版本 |
舊腳本的 -a、-y 或 --timeout 行為不同 |
1.0.0-beta.14 起 -a 是 --architecture,-y 是 --yes,--timeout 只接受整數秒 |
總結
Windows 與 WSL 共用 Windows 上的 Unity CLI 與編輯器,WSL 只要改呼叫 unity.exe。Linux 版只管理 Linux 的編輯器,要另外下載一套。安裝前加上 --dry-run 可以看到下載量,空間不夠時用 unity install-path 換到其他磁碟。