CtrlK
BlogDocsLog inGet started
Tessl Logo

scene-set-active

Mark an opened scene as the Editor's active scene (the one new GameObjects are added to and that's used as the default for many operations). Use 'scene-list-opened' to enumerate opened scenes first.

56

Quality

70%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./Unity-MCP-Plugin/.claude/skills/scene-set-active/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

63%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body delivers a clear, actionable single-tool reference with executable CLI commands and real troubleshooting, but it is held back by redundant input documentation (three overlapping presentations with an inconsistent type), placeholder example values that don't match the schema, and a large inline schema payload that would fit better in a reference file. Tightening the input sections and giving one realistic AssetObjectRef example would lift both conciseness and actionability.

Suggestions

Consolidate the duplicated '## Inputs' bullet and '## Input' table into one section, and fix the type inconsistency ('AssetObjectRef pointing at a SceneAsset' vs type 'any' / 'Material, ScriptableObject, Prefab').

Replace placeholder inputs with a realistic example, e.g. an actual AssetObjectRef object ({"instanceID": 0, "assetPath": "Assets/Scenes/Main.unity"}) instead of '"sceneRef": "string_value"', and use the real param name in the stdin example.

Move the full input/output JSON schemas to a references/ file (e.g., references/schema.md) and keep only a one-line input summary and output description in SKILL.md; also fill or remove the empty '## Output' section header.

DimensionReasoningScore

Conciseness

The body is mostly efficient — no padding explaining known concepts, concrete behavior in a few sentences — but the `sceneRef` input is documented three times (the '## Inputs' bullet, the '## Input' table, and the full JSON schema), the '## Output' header is empty (behavior is described elsewhere), and the generic stdin heredoc ('{"param": "value"}') is boilerplate. This fits 'mostly efficient but includes some unnecessary explanation or could be tightened'; it is above the 2 anchor since there is no concept over-explanation, and below 4 because the duplication is a real tightening opportunity.

3 / 5

Actionability

Concrete, executable commands are given ('unity-mcp-cli run-tool scene-set-active --input ...'), plus real troubleshooting alternatives ('npm install -g unity-mcp-cli' / 'npx unity-mcp-cli') and an --input-file/stdin pattern. However the examples are placeholders — '"sceneRef": "string_value"' contradicts the schema (sceneRef is an AssetObjectRef object, not a string) and the stdin example uses '{"param": "value"}' rather than the actual parameter — so it sits at 'mostly executable guidance with minor gaps' rather than the fully copy-paste-ready 5, and clearly above the pseudocode-level 3.

4 / 5

Workflow Clarity

For a single-action tool the sequence is clear: use 'scene-list-opened' to enumerate opened scenes, call scene-set-active, and the tool 'Returns the post-call snapshot of opened scenes' as feedback. Minor validation gaps remain — no guidance on what to do if the scene is not opened or sceneRef fails to resolve (troubleshooting only covers a missing CLI). This matches 'clear sequence with most checkpoints present; minor validation gaps'; not a 5 for the missing error-recovery loop, not a 3 since the sequence is unambiguous and the no-op-if-active behavior is stated.

4 / 5

Progressive Disclosure

Section headers are present and labeled (Inputs, Behavior, How to Call, Troubleshooting, Input/Output JSON Schema), but roughly 110 of ~165 lines are inline JSON schema reference material, the input spec is duplicated across two sections with inconsistent types ('AssetObjectRef pointing at a SceneAsset' vs table type 'any' describing 'Material, ScriptableObject, Prefab'), and there are no bundle files to offload detail into. This fits 'some structure but could be better organized; content that should be separate is inline'; it is above the 2 anchor (headers exist and nothing is buried) but below 4 given the duplication and schema bulk in the main file.

3 / 5

Total

14

/

20

Passed

Description

61%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A specific, well-scoped description with a clear 'what' and natural Unity terminology, but it lacks any explicit 'when to use' trigger guidance, which caps completeness and limits its discovery value. Adding a 'Use when...' clause naming natural trigger phrases would move it into the top tier.

Suggestions

Add an explicit trigger clause, e.g. 'Use when the user asks to set/change the active scene, or before adding GameObjects to a specific scene.'

Include one or two user-natural synonyms or file hints (e.g., '.unity' scene assets) to broaden trigger coverage.

State the precondition inline ('the scene must already be opened') so the companion scene-list-opened step reads as a workflow rather than the only usage cue.

DimensionReasoningScore

Specificity

The description names the domain (Unity Editor scenes) and one concrete action — 'Mark an opened scene as the Editor's active scene' — with a useful parenthetical on consequences ('the one new GameObjects are added to and that's used as the default for many operations'), but lists only a single action, matching the '1-2 concrete actions, not comprehensive' anchor. Not a 4 because it does not enumerate several specific actions; not a 2 because the action and domain are concrete, not generic.

3 / 5

Completeness

The 'what' is clear ('Mark an opened scene as the Editor's active scene'), but there is no explicit 'Use when...' trigger clause; the second sentence ('Use scene-list-opened to enumerate opened scenes first') is a prerequisite workflow pointer, not usage guidance. Per the judging guidelines a missing 'Use when...' clause caps completeness at 3 ('clear what, when missing or only weakly implied'), and it is not a 2 since the 'what' is fully explicit.

3 / 5

Trigger Term Quality

Natural Unity vocabulary is present — 'scene', 'active scene', 'opened scene', 'GameObjects', 'Editor' — which a user asking to set the active scene would plausibly say. A few natural terms are missing (e.g., '.unity' scene files, 'load'/'switch' synonyms), so it fits 'good keyword coverage; a few natural terms missing' rather than the comprehensive synonym-level 5 anchor, and clearly above the 3 anchor's 'missing common variations' since multiple distinct natural phrasings are covered.

4 / 5

Distinctiveness Conflict Risk

'Mark an opened scene as the Editor's active scene' carves a clear niche distinct from sibling scene tools (listing, opening, closing), and 'scene-list-opened' is named for the companion step, so conflict risk is low. It is not a 5 because the description leans on related scene vocabulary that overlaps with other scene-management skills and provides no distinct trigger phrase to disambiguate; not a 3 since the core action is unmistakable.

4 / 5

Total

14

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
IvanMurzak/Unity-MCP
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.