Before calling any skill in this module: if you are about to call a skill with parameters guessed from its name or description, STOP — read this file (or fetch its schema via
GET /skills/recommend?includeSchema=true
) first. If you already have the parameter definitions from recommend/schema, you may proceed straight to dryRun.
Triggers
- Adding or removing UPM packages
- Checking installed versions
- Searching the registry
- Scripting package operations
- 添加或移除 UPM 包、检查已装版本、搜索 registry、脚本化包操作
Package Skills
Manage installed Unity packages and package-related helper flows such as Cinemachine and Splines setup.
Guardrails
Operating Mode (v1.9 three-tier):
- Approval (default): query skills (, , , , ,
package_get_cinemachine_status
) run directly. is the only FullAuto mutator — on , run the grant protocol for it. Every other mutator is auto-forbidden (next bullet) and grant does not unlock it.
- Auto / Bypass: SemiAuto and FullAuto run directly.
- Auto-forbidden in this module: , ,
package_install_cinemachine
, (all , ; also carries ). They return under both Approval and Auto, and are reachable only under Bypass mode or via a user-managed Allowlist entry; the grant flow returns too, so do not attempt it.
- Install/remove/refresh jobs return immediately with a ; the actual package import + Domain Reload happens asynchronously and may make the REST server transiently unavailable. Poll with / .
DO NOT (common hallucinations):
- / do not exist -> use
- does not exist -> use , , , or
- searches the installed package cache only; it does not query the Unity Registry
- Package query skills initialize their cache automatically after Domain Reload. During the short cold-start window they return
{ success: false, status: "refreshing", cacheReady: false, retryStrategy: "wait_and_retry", retryAfterSeconds: 2 }
; retry instead of treating this as .
- Package install/remove/refresh jobs can trigger package import and Domain Reload; expect transient server unavailability and use returned job IDs
Routing:
- For Cinemachine quick setup -> use
package_install_cinemachine
- For Splines quick setup -> use
- For project manifest inspection -> use
- For define symbol changes after package installation -> use
Skills
List all installed packages currently cached by UnitySkills.
Parameters: None.
Returns: { success, count, packages }
Check whether a package is installed.
| Parameter | Type | Required | Default | Description |
|---|
| string | Yes | - | Package ID such as |
Returns: { packageId, installed, version }
Install a package. Returns an async job when the request is accepted.
| Parameter | Type | Required | Default | Description |
|---|
| string | Yes | - | Package ID to install |
| string | No | null | Optional explicit version |
Returns: { success, status, jobId, message, serverAvailability }
Remove an installed package. Returns an async job when the request is accepted.
| Parameter | Type | Required | Default | Description |
|---|
| string | Yes | - | Installed package ID to remove |
Returns: { success, status, jobId, message, serverAvailability }
Refresh the installed package cache used by query skills.
Parameters: None.
Returns: { success, status, jobId, message }
package_install_cinemachine
Install Cinemachine using the supported package/version strategy.
| Parameter | Type | Required | Default | Description |
|---|
| int | No | 3 | for CM2, for CM3 |
Notes:
- CM3 auto-installs the Splines dependency.
- If the requested line is already installed, this skill can return immediate success instead of a job.
Returns: { success, status?, jobId?, message, serverAvailability? }
Install or upgrade Unity Splines using the recommended version for the current Unity editor line.
Parameters: None.
Returns: { success, status?, jobId?, message, serverAvailability? }
package_get_cinemachine_status
Get current Cinemachine and Splines installation status.
Parameters: None.
Search the installed package cache by package name or display name.
| Parameter | Type | Required | Default | Description |
|---|
| string | Yes | - | Search keyword |
Returns: { success, query, count, packages }
Get dependency information for one installed package.
| Parameter | Type | Required | Default | Description |
|---|
| string | Yes | - | Installed package ID |
Returns: { success, packageId, version, dependencyCount, dependencies }
Get available versions for one installed package.
| Parameter | Type | Required | Default | Description |
|---|
| string | Yes | - | Installed package ID |
Returns: { success, packageId, currentVersion, compatibleVersion, latestVersion, allVersions }
Exact Signatures
Exact names, parameters, defaults, and returns are defined by
or
unity_skills.get_skill_schema()
, not by this file.