Installs into .claude/skills of the current project.
Are you the author of Volume?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/gabrielmoreira-volume)
---
name: unity-volume
description: Work with the SRP Volume framework
---
> **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
- Setting up volumes
- Creating or loading a VolumeProfile
- Adding global/local volumes
- 搭建 Volume、创建或加载 VolumeProfile、向场景添加全局/局部 Volume
# Volume Skills
Shared SRP Volume framework skills for Unity 2022.3+ — works in URP and HDRP via SRP Core.
## Operating Mode
- Query skills (`volume_list_component_types`, `volume_get_component`) are `SkillMode.SemiAuto` — they run in all three modes without grant.
- Mutating skills (`volume_profile_create`, `volume_create`, `volume_set_profile`, `volume_add_component`, `volume_set_parameter`, `volume_set_parameter_batch`) are `SkillMode.FullAuto` — under **Approval** they need user grant (grant triggers one server-side execute returning the result); under **Auto** / **Bypass** they execute directly.
- `volume_remove_component` carries `SkillOperation.Delete` and is **auto-forbidden** in Approval / Auto modes (NeverInSemi). Only **Bypass** or the user-managed **Allowlist** can run it.
## SRP Package Stub
This module is compiled against `com.unity.render-pipelines.core` (`SRP_CORE`). When neither URP nor HDRP is installed (no SRP Core), **every** skill returns a stub `{ error: "Scriptable Render Pipeline Core package … is not installed." }` (`RenderPipelineSkillsCommon.NoSRP()`). The stub is a diagnostic payload, not a permission denial — it does **not** require grant and is **not** treated as NeverInSemi. Inspect `project_get_render_pipeline` first when you see this error.
## Guardrails
**Routing**:
- For Volume container/profile CRUD: use this module
- For high-level modern post-processing effects like Bloom/DOF/Tonemapping: prefer `postprocess`
**Runtime-first rules**:
- Always call `volume_list_component_types` before assuming a component type exists on the active pipeline
- Use `volume_get_component` after add/create to inspect the actual parameter names before writing values
- Prefer exact parameter names returned by the live component data instead of guessing from memory
- `volume_set_parameter_batch` expects `items` to be a JSON array string
## Skills
### `volume_profile_create`
Create a VolumeProfile asset.
### `volume_create`
Create a global or local Volume GameObject.
### `volume_set_profile`
Assign or replace the profile on an existing Volume.
### `volume_list_component_types`
List explicit supported VolumeComponent types for the active SRP pipeline.
### `volume_add_component`
Add a VolumeComponent override to a VolumeProfile.
### `volume_remove_component`
Remove a VolumeComponent override from a VolumeProfile.
### `volume_get_component`
Inspect a VolumeComponent override and its parameters.
### `volume_set_parameter`
Set one override parameter on a VolumeComponent.
### `volume_set_parameter_batch`
Set multiple override parameters on one VolumeComponent.
---
## Exact Signatures
Exact names, parameters, defaults, and returns are defined by `GET /skills/schema` or `unity_skills.get_skill_schema()`, not by this file.