Installable skillMIT

Project Skills

Project information — read metadata (Unity version, render pipeline), list shaders/UPM packages, read layers/tags, add a tag, read build and player settings. Exact signatures via GET /skills/schema.

BY Besty0728UPDATED Oct 27, 2026
INTENDED FOR✳Claude Code>_Codex◈OpenClaw↗CursorInstall in a listed agent.

instructions.md

---
name: unity-project
description: Read Unity project metadata and package lists
---

> **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
- Checking Unity version
- Detecting render pipeline
- Listing installed shaders/packages
- 查看 Unity 版本、判断渲染管线、列出已装 shader/包

# Project Skills

Project information and configuration.

## Operating Mode

`build_player` 为 `RiskLevel=high` 的实际出包操作,仅 Bypass 或 Allowlist 放行后可执行;`project_add_tag` 默认 FullAuto。其余 8 个查询 skill 均为 SemiAuto 只读操作。

> Player Settings、Build Settings、Layer 通过本模块只读获取;如需编辑,请使用 `editor_execute_menu` 打开 `Edit/Project Settings...` 或 `File/Build Settings...`。**注意 `editor_execute_menu` 自身是 auto-forbidden**(editor 模块,标 `MayTriggerReload = true`):Approval 和 Auto 下都返 `MODE_FORBIDDEN` 且 grant 不解锁,仅 Bypass 或 Allowlist 命中可调。其他模式下只能改为指导用户手动打开这些窗口。

**DO NOT** (common hallucinations):
- `project_save` does not exist → use `scene_save` (scene module) or `editor_execute_menu` menuPath="File/Save" —— 两者都是 auto-forbidden(`RiskLevel="high"` / `MayTriggerReload`),仅 Bypass 或 Allowlist 可调
- `project_settings` does not exist → use specific skills: `project_get_render_pipeline`, `project_get_build_settings`, etc.
- `project_set_resolution` / `project_set_player_settings` do not exist → Player Settings are read-only via `project_get_player_settings`; to edit, open Project Settings via `editor_execute_menu` with `Edit/Project Settings...`(该 skill auto-forbidden,仅 Bypass 或 Allowlist 可调,否则请指导用户手动打开)
- `project_create` does not exist → projects are created via Unity Hub, not REST API

**Routing**:
- For graphics / quality / SRP configuration → use the `graphics` module
- For Layer/Tag management → `project_add_tag` (this module); Layers are read-only via `project_get_layers`(编辑需 `editor_execute_menu` → `Edit/Project Settings...`,而该 skill auto-forbidden,仅 Bypass 或 Allowlist 可调)
- For inspecting build settings → `project_get_build_settings`; for producing a player → `build_player`

## Skills

### `project_get_info`
Get project information including render pipeline, Unity version, and settings.
**Parameters:** None.

### `project_get_render_pipeline`
Get current render pipeline type and recommended shaders.
**Parameters:** None.

### `project_list_shaders`
List all available shaders in the project.
**Parameters:**
- `filter` (string, optional): Filter by name.
- `limit` (int, optional): Max results (default 50).

### `project_get_build_settings`
Get build settings (platform, scenes).

**Parameters:** None.

**Returns:** `{ success, activeBuildTarget, buildTargetGroup, sceneCount, scenes }`

### `build_player`
Build a player through `BuildPipeline.BuildPlayer` and return immediately with an asynchronous Job.

**Parameters:** `outputPath?`, `target?`, `scenes?`, `development=false`, `overwrite=false`. Output must remain inside the project and outside Unity-managed folders.

**Returns:** `{success, status:"accepted", jobId, kind, platform, outputPath, scenes}`. Poll `/jobs/{id}`; the final result contains the BuildReport summary.

### `project_get_packages`
List installed UPM packages.

**Parameters:** None.

**Returns:** `{ success, manifest }`

### `project_get_layers`
Get all Layer definitions.

**Parameters:** None.

**Returns:** `{ success, count, layers }`

### `project_get_tags`
Get all Tag definitions.

**Parameters:** None.

**Returns:** `{ success, count, tags }`

### `project_add_tag`
Add a custom Tag.

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| tagName | string | Yes | - | The tag name to add |

**Returns:** `{ success, tag }`

### `project_get_player_settings`
Get Player Settings.

**Parameters:** None.

**Returns:** `{ success, productName, companyName, bundleVersion, defaultScreenWidth, defaultScreenHeight, fullscreen, apiCompatibility, scriptingBackend }`

---
## Exact Signatures

Exact names, parameters, defaults, and returns are defined by `GET /skills/schema` or `unity_skills.get_skill_schema()`, not by this file.
COMPATIBILITY & REFERENCES

Platform guidance

Imported from the listed AgentSkill.sh category. Complete supplied package files and notices are retained. Required external tools and credentials are not installed. No bundled code was executed during import. Individual agent task behavior has not been tested.