Create and update Unity scripts with Unity MCP while handling Unity Editor actions in the same workflow, always grounded in Project_W SSOT documents under Assets/Specification. Use when requests involve script generation, editor manipulation, or implementation updates that must be traceable to specification and must always include paired Unity Test Framework tests.
Resources
1Install
npx skillscat add baeknothing/projectw/project-w-unity-mcp-ssot-automation Install via the SkillsCat registry.
Project_W Unity MCP SSOT Automation
Use this skill to execute Unity MCP implementation work with strict SSOT traceability and mandatory test pairing.
Enforce SSOT First
Before any script or editor change:
- Read relevant docs under
Assets/Specification. - Resolve authority in this order:
Assets/Specification/SystemAssets/Specification/IngameAssets/Specification/OutgameAssets/Specification/MetadataAssets/Specification/Operation
- Extract a concise
Spec Reflist (file path and section title) to drive implementation.
If specification is missing or ambiguous, stop implementation and request clarification.
Execute Script + Editor Operations Together
When the request needs both code and editor state updates, perform both in the same run:
- Use Unity MCP script tools for script creation and edits.
- Use Unity MCP editor/gameobject/component tools for scene and editor handling.
- Prefer batched Unity MCP operations when multiple actions are needed.
Keep script intent and editor state aligned to the same Spec Ref.
Enforce Mandatory Paired Tests
Every newly created runtime script must include a paired Unity test script in the same task.
Pairing rules:
- Runtime script path:
Assets/Scripts/.../<Name>.cs - Test script path:
Assets/Tests/EditMode/<Name>Tests.cs(default) - Test framework: Unity Test Framework with NUnit (
[Test], optional[UnityTest]when frame-based behavior is needed) - Minimum test coverage:
- One behavior test for expected result
- One edge or failure-mode test derived from spec constraints
Do not finish the task with runtime code only.
Keep Tests Runnable
Ensure tests are runnable in Unity Test Framework:
- Ensure EditMode test assembly setup is valid.
- Avoid dependencies on scene-only runtime state unless explicitly required.
- Run tests through Unity MCP test tools when available.
- Report pass/fail and failing test names in the final result.
If tests cannot run, explain the exact blocker and required fix.
Apply Changes Immediately
Apply approved code and editor updates directly without draft-only mode.
After applying changes:
- Summarize updated files.
- Show how each change maps to
Spec Ref. - Include test file mapping for each runtime script.
Enforce Version Control Discipline
Treat version control as strict and explicit:
- Keep changes traceable by including
Spec Refin summaries. - Recommend commit message format with spec linkage.
- Keep implementation and paired tests in the same logical change set.
Commit message pattern:
[Impl] <Feature or Rule> (Spec: <Doc or Section>)- Optional follow-up:
[Test] <Coverage Scope> (Spec: <Doc or Section>)
Run git preflight before any git write command:
- Check lock file:
.git/index.lock - If lock exists, check active git processes first.
- Remove
.git/index.lockonly when no git process is running. - Continue with git commands only after lock is cleared.
After task completion, finish version-control flow unless the user explicitly says not to:
git addimplementation and paired test filesgit commitwithSpec Refin messagegit pushcurrent branch (ai-integrationby default unless explicitly overridden)
If push fails, report the exact error and required user action.
Standard Output Format
Return results in this order:
Spec RefImplementation ChangesEditor ActionsTest PairingTest Execution ResultCommit Message DraftsOpen Issues(if any)
Stop Conditions
Stop and request reconfirmation when:
- Spec and requested behavior conflict
- User asks to skip paired tests
- User asks to implement without SSOT evidence
- Required Unity MCP capability is unavailable