From a8fa5e5e013b2022b158a8cbdeb090d04e6b81ce Mon Sep 17 00:00:00 2001 From: hatayama Date: Sun, 17 May 2026 11:47:07 +0900 Subject: [PATCH 1/8] Shorten uloop skill descriptions Keep trigger-focused keywords while trimming verbose usage lists from managed skill frontmatter. Regenerate project .agents and .claude skill copies so installed metadata stays in sync with the source definitions. --- .agents/skills/uloop-clear-console/SKILL.md | 2 +- .agents/skills/uloop-compile/SKILL.md | 2 +- .agents/skills/uloop-control-play-mode/SKILL.md | 2 +- .agents/skills/uloop-execute-dynamic-code/SKILL.md | 2 +- .agents/skills/uloop-find-game-objects/SKILL.md | 2 +- .agents/skills/uloop-focus-window/SKILL.md | 2 +- .agents/skills/uloop-get-hierarchy/SKILL.md | 2 +- .agents/skills/uloop-get-logs/SKILL.md | 2 +- .agents/skills/uloop-hello-world/SKILL.md | 2 +- .agents/skills/uloop-launch/SKILL.md | 2 +- .agents/skills/uloop-record-input/SKILL.md | 2 +- .agents/skills/uloop-replay-input/SKILL.md | 2 +- .agents/skills/uloop-run-tests/SKILL.md | 2 +- .agents/skills/uloop-screenshot/SKILL.md | 2 +- .agents/skills/uloop-simulate-keyboard/SKILL.md | 2 +- .agents/skills/uloop-simulate-mouse-input/SKILL.md | 2 +- .agents/skills/uloop-simulate-mouse-ui/SKILL.md | 2 +- .claude/skills/uloop-clear-console/SKILL.md | 2 +- .claude/skills/uloop-compile/SKILL.md | 2 +- .claude/skills/uloop-control-play-mode/SKILL.md | 2 +- .claude/skills/uloop-execute-dynamic-code/SKILL.md | 2 +- .claude/skills/uloop-find-game-objects/SKILL.md | 2 +- .claude/skills/uloop-focus-window/SKILL.md | 2 +- .claude/skills/uloop-get-hierarchy/SKILL.md | 2 +- .claude/skills/uloop-get-logs/SKILL.md | 2 +- .claude/skills/uloop-hello-world/SKILL.md | 2 +- .claude/skills/uloop-launch/SKILL.md | 2 +- .claude/skills/uloop-record-input/SKILL.md | 2 +- .claude/skills/uloop-replay-input/SKILL.md | 2 +- .claude/skills/uloop-run-tests/SKILL.md | 2 +- .claude/skills/uloop-screenshot/SKILL.md | 2 +- .claude/skills/uloop-simulate-keyboard/SKILL.md | 2 +- .claude/skills/uloop-simulate-mouse-input/SKILL.md | 2 +- .claude/skills/uloop-simulate-mouse-ui/SKILL.md | 2 +- Assets/Editor/CustomCommandSamples/HelloWorld/Skill/SKILL.md | 2 +- .../cli-only/uloop-focus-window/Skill/SKILL.md | 2 +- .../skill-definitions/cli-only/uloop-launch/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/ClearConsole/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/Compile/Skill/SKILL.md | 2 +- .../src/Editor/FirstPartyTools/ControlPlayMode/Skill/SKILL.md | 2 +- .../Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md | 2 +- .../src/Editor/FirstPartyTools/FindGameObjects/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/GetHierarchy/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/GetLogs/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/Screenshot/Skill/SKILL.md | 2 +- .../src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md | 2 +- .../Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md | 2 +- .../src/Editor/FirstPartyTools/SimulateMouseUi/Skill/SKILL.md | 2 +- 51 files changed, 51 insertions(+), 51 deletions(-) diff --git a/.agents/skills/uloop-clear-console/SKILL.md b/.agents/skills/uloop-clear-console/SKILL.md index a86149ab8..2202a7be2 100644 --- a/.agents/skills/uloop-clear-console/SKILL.md +++ b/.agents/skills/uloop-clear-console/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-clear-console toolName: clear-console -description: "Clear all Unity Console log entries. Use when you need to: (1) Clear console before running tests or compilation, (2) Start a fresh debugging session, (3) Remove noisy logs to isolate specific output." +description: "Clear Unity Console entries. Use before compile, tests, or debugging when stale logs would hide the current result." --- # uloop clear-console diff --git a/.agents/skills/uloop-compile/SKILL.md b/.agents/skills/uloop-compile/SKILL.md index 532e640e8..2f815a82f 100644 --- a/.agents/skills/uloop-compile/SKILL.md +++ b/.agents/skills/uloop-compile/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-compile toolName: compile -description: "Compile Unity project and report errors/warnings. Use when you need to: (1) Verify code compiles after C# file edits, (2) Check for compile errors before testing, (3) Force full recompilation with Domain Reload. Returns error and warning counts." +description: "Compile the Unity project and report errors/warnings. Use after C# edits, before tests, or when a full Domain Reload compile is needed." --- # uloop compile diff --git a/.agents/skills/uloop-control-play-mode/SKILL.md b/.agents/skills/uloop-control-play-mode/SKILL.md index 3eead2c5e..828ef4d74 100644 --- a/.agents/skills/uloop-control-play-mode/SKILL.md +++ b/.agents/skills/uloop-control-play-mode/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-control-play-mode toolName: control-play-mode -description: "Control Unity Editor play mode (play/stop/pause). Use when you need to: (1) Start play mode to test game behavior, (2) Stop play mode to return to edit mode, (3) Pause play mode for frame-by-frame inspection." +description: "Control Unity Editor Play Mode. Use to start, stop, or pause Play Mode for runtime behavior checks and frame inspection." --- # uloop control-play-mode diff --git a/.agents/skills/uloop-execute-dynamic-code/SKILL.md b/.agents/skills/uloop-execute-dynamic-code/SKILL.md index 8161911c3..d43283a0f 100644 --- a/.agents/skills/uloop-execute-dynamic-code/SKILL.md +++ b/.agents/skills/uloop-execute-dynamic-code/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-execute-dynamic-code toolName: execute-dynamic-code -description: "Execute C# code dynamically in Unity Editor. Use find-game-objects first for basic selected GameObject discovery or property inspection. Use when you need to: (1) Wire prefab/material references and AddComponent operations, (2) Edit SerializedObject properties and reference wiring, (3) Perform scene/hierarchy edits and batch operations, (4) Execute Unity Editor menu commands through EditorApplication.ExecuteMenuItem, (5) PlayMode automation (click buttons, invoke methods, tweak runtime state), (6) PlayMode UI controls (InputField, Slider, Toggle, Dropdown), (7) PlayMode inspection that requires custom Unity API code beyond existing tools. NOT for file I/O or script authoring." +description: "Execute C# with Unity APIs when existing uloop tools cannot inspect or edit enough. Use for scene, prefab, SerializedObject, menu, or PlayMode automation; not for file I/O or script authoring." context: fork --- diff --git a/.agents/skills/uloop-find-game-objects/SKILL.md b/.agents/skills/uloop-find-game-objects/SKILL.md index a6e7f6c7f..8bf4c7102 100644 --- a/.agents/skills/uloop-find-game-objects/SKILL.md +++ b/.agents/skills/uloop-find-game-objects/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-find-game-objects toolName: find-game-objects -description: "Use first when the user asks about the currently selected GameObject in the Unity Hierarchy. Inspect selected object details with `--search-mode Selected` before using `execute-dynamic-code`. Use when you need to: (1) Get details and component properties for selected GameObject(s), (2) Search for objects by name, regex, or path, (3) Find objects with specific components, tags, or layers. Use get-hierarchy when the child tree under the selection is needed. Returns hierarchy paths, active state, tags, layers, and components (or writes to a file when multiple GameObjects are selected)." +description: "Find or inspect Unity GameObjects, especially the current Hierarchy selection. Use for object details, components, tags, layers, or name/path searches; use get-hierarchy for child trees." --- # uloop find-game-objects diff --git a/.agents/skills/uloop-focus-window/SKILL.md b/.agents/skills/uloop-focus-window/SKILL.md index 87dbc3587..203c8338f 100644 --- a/.agents/skills/uloop-focus-window/SKILL.md +++ b/.agents/skills/uloop-focus-window/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-focus-window -description: "Bring Unity Editor window to front via uloop CLI. Use when you need to: (1) Focus Unity Editor before capturing screenshots, (2) Ensure Unity window is visible for visual checks, (3) Bring Unity to foreground for user interaction." +description: "Bring the Unity Editor window to front. Use before screenshots, visual checks, or user-facing Unity interaction." --- # uloop focus-window diff --git a/.agents/skills/uloop-get-hierarchy/SKILL.md b/.agents/skills/uloop-get-hierarchy/SKILL.md index 9323b9414..1e79da9a0 100644 --- a/.agents/skills/uloop-get-hierarchy/SKILL.md +++ b/.agents/skills/uloop-get-hierarchy/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-get-hierarchy toolName: get-hierarchy -description: "Get Unity scene hierarchy as a structured tree from all roots, a root path, or the current Hierarchy selection. Use this when you need the child tree, parent-child structure, or descendants under selected GameObject(s) with `--use-selection`. Use find-game-objects for selected object details and component properties. Hierarchy data is written to a JSON file on disk and the response returns the file path (not the tree inline) — open the file to read the structure." +description: "Get the Unity scene hierarchy as a structured tree. Use for parent-child structure, descendants, roots, or selected-object subtrees; use find-game-objects for component details." --- # uloop get-hierarchy diff --git a/.agents/skills/uloop-get-logs/SKILL.md b/.agents/skills/uloop-get-logs/SKILL.md index 49c7d281d..456925fbc 100644 --- a/.agents/skills/uloop-get-logs/SKILL.md +++ b/.agents/skills/uloop-get-logs/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-get-logs toolName: get-logs -description: "Retrieve current Unity Console entries via uloop CLI. Use when you need to: (1) inspect errors, warnings, or logs after compile, tests, PlayMode, or dynamic code execution, (2) search current Console messages or stack traces, (3) confirm whether a recent Unity operation emitted logs. Prefer this over reading Editor.log or Unity log files for normal Console contents; use log files only for startup, crash, freeze, or uloop connection failures." +description: "Read current Unity Console entries. Use after compile, tests, PlayMode, or dynamic code to inspect logs, warnings, errors, and stack traces; use log files for startup/crash/freeze issues." --- # uloop get-logs diff --git a/.agents/skills/uloop-hello-world/SKILL.md b/.agents/skills/uloop-hello-world/SKILL.md index 776e34624..475cfbb4d 100644 --- a/.agents/skills/uloop-hello-world/SKILL.md +++ b/.agents/skills/uloop-hello-world/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-hello-world -description: "Sample hello world tool via uloop CLI. Use when you need to test the Unity CLI Loop tool system or see an example of custom tool implementation." +description: "Sample uloop hello-world tool. Use to verify custom tool wiring or inspect a minimal tool implementation example." --- # uloop hello-world diff --git a/.agents/skills/uloop-launch/SKILL.md b/.agents/skills/uloop-launch/SKILL.md index 613547391..228b0e224 100644 --- a/.agents/skills/uloop-launch/SKILL.md +++ b/.agents/skills/uloop-launch/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-launch -description: "Launch Unity project with matching Editor version via uloop CLI. Use when you need to: (1) Open a Unity project with the correct Editor version, (2) Restart Unity to apply changes, (3) Switch build target when launching." +description: "Launch or restart a Unity project with the matching Editor version. Use to open Unity, apply restart-required changes, or set a build target." --- # uloop launch diff --git a/.agents/skills/uloop-record-input/SKILL.md b/.agents/skills/uloop-record-input/SKILL.md index ba2a974a8..802e1b8c1 100644 --- a/.agents/skills/uloop-record-input/SKILL.md +++ b/.agents/skills/uloop-record-input/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-record-input toolName: record-input -description: "Record keyboard and mouse input during PlayMode into a JSON file. Use when you need to: (1) Capture human gameplay input for later replay, (2) Record input sequences for E2E testing, (3) Save input for bug reproduction. Captures Input System device-state diffs frame-by-frame in PlayMode and serializes them to JSON when stopped. Requires PlayMode and the New Input System." +description: "Record keyboard and mouse input during PlayMode to JSON. Use to capture gameplay, bug repro, or E2E input sequences for replay. Requires PlayMode and the New Input System." --- # uloop record-input diff --git a/.agents/skills/uloop-replay-input/SKILL.md b/.agents/skills/uloop-replay-input/SKILL.md index 803b05454..00adc2fd0 100644 --- a/.agents/skills/uloop-replay-input/SKILL.md +++ b/.agents/skills/uloop-replay-input/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-replay-input toolName: replay-input -description: "Replay recorded input during PlayMode with frame-precise injection. Use when you need to: (1) Reproduce recorded gameplay exactly, (2) Run E2E tests from recorded input, (3) Generate demo videos with consistent input. Deserializes the JSON recording and pushes captured device states back into Mouse.current / Keyboard.current frame-by-frame in PlayMode. Requires PlayMode and the New Input System." +description: "Replay recorded keyboard and mouse input during PlayMode. Use for exact gameplay reproduction, E2E runs, or consistent demos from JSON recordings. Requires PlayMode and the New Input System." --- # uloop replay-input diff --git a/.agents/skills/uloop-run-tests/SKILL.md b/.agents/skills/uloop-run-tests/SKILL.md index f614a6329..b4e41e960 100644 --- a/.agents/skills/uloop-run-tests/SKILL.md +++ b/.agents/skills/uloop-run-tests/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-run-tests toolName: run-tests -description: "Execute Unity Test Runner and get detailed results. Use when you need to: (1) Run EditMode or PlayMode unit tests, (2) Verify code changes pass all tests, (3) Diagnose test failures with error messages and stack traces. Single-flight only — never run multiple `uloop run-tests` in parallel." +description: "Run Unity Test Runner and report detailed results. Use for EditMode/PlayMode tests, change verification, or failure diagnosis. Single-flight only." --- # uloop run-tests diff --git a/.agents/skills/uloop-screenshot/SKILL.md b/.agents/skills/uloop-screenshot/SKILL.md index f9da5b7cd..6aaea3988 100644 --- a/.agents/skills/uloop-screenshot/SKILL.md +++ b/.agents/skills/uloop-screenshot/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-screenshot toolName: screenshot -description: "Capture screenshots of Unity Editor windows as PNG files. Use when you need to: (1) Screenshot Game View, Scene View, Console, Inspector, or other windows, (2) Capture current visual state for debugging or documentation, (3) Save editor window appearance as PNG files with optional UI element annotations. Writes PNG files via uloop CLI." +description: "Capture Unity Editor windows or Game View rendering as PNG. Use for visual checks, debugging, documentation, or annotated UI element coordinates." --- # uloop screenshot diff --git a/.agents/skills/uloop-simulate-keyboard/SKILL.md b/.agents/skills/uloop-simulate-keyboard/SKILL.md index 358e6b2a5..0e1f72d31 100644 --- a/.agents/skills/uloop-simulate-keyboard/SKILL.md +++ b/.agents/skills/uloop-simulate-keyboard/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-keyboard toolName: simulate-keyboard -description: "Simulate keyboard key input in PlayMode via Input System. Use when you need to: (1) Press game control keys like WASD, Space, or Shift during PlayMode, (2) Hold keys down for continuous movement or actions, (3) Combine multiple held keys for complex input like Shift+W for sprint. Injects into Unity Input System (`Keyboard.current`); requires PlayMode and the New Input System." +description: "Simulate keyboard input in PlayMode through Unity Input System. Use for key presses, holds, releases, and game controls such as WASD or Space. Requires PlayMode and the New Input System." context: fork --- diff --git a/.agents/skills/uloop-simulate-mouse-input/SKILL.md b/.agents/skills/uloop-simulate-mouse-input/SKILL.md index 05d196683..fcaa52699 100644 --- a/.agents/skills/uloop-simulate-mouse-input/SKILL.md +++ b/.agents/skills/uloop-simulate-mouse-input/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-mouse-input toolName: simulate-mouse-input -description: "Simulate mouse input in PlayMode for gameplay code that reads Unity Input System Mouse.current. Use when you need to: (1) Click or right-click in games that read Mouse.current button state, (2) Inject mouse delta for FPS camera control, (3) Inject scroll wheel for hotbar switching or zoom. Requires PlayMode and the New Input System; for EventSystem UI elements, use simulate-mouse-ui instead." +description: "Simulate Mouse.current input in PlayMode through Unity Input System. Use for gameplay clicks, mouse delta, or scroll; use simulate-mouse-ui for EventSystem UI elements." context: fork --- diff --git a/.agents/skills/uloop-simulate-mouse-ui/SKILL.md b/.agents/skills/uloop-simulate-mouse-ui/SKILL.md index 7e9a4efc8..3dd867d68 100644 --- a/.agents/skills/uloop-simulate-mouse-ui/SKILL.md +++ b/.agents/skills/uloop-simulate-mouse-ui/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-mouse-ui toolName: simulate-mouse-ui -description: "Simulate mouse click, long-press, and drag on PlayMode UI elements via EventSystem screen coordinates from annotated screenshots. Use when you need to: (1) Click buttons or interactive UI elements during PlayMode testing, (2) Drag UI elements between annotated screen positions, (3) Long-press or hold a drag for sustained pointer interactions. First get target coordinates with `uloop screenshot --capture-mode rendering --annotate-elements --elements-only` and use `AnnotatedElements[].SimX` / `SimY`; for gameplay code that reads Mouse.current, use simulate-mouse-input instead." +description: "Simulate PlayMode EventSystem UI mouse actions using screen coordinates. Use for UI clicks, long-presses, or drags from annotated screenshots; use simulate-mouse-input for Mouse.current gameplay." context: fork --- diff --git a/.claude/skills/uloop-clear-console/SKILL.md b/.claude/skills/uloop-clear-console/SKILL.md index a86149ab8..2202a7be2 100644 --- a/.claude/skills/uloop-clear-console/SKILL.md +++ b/.claude/skills/uloop-clear-console/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-clear-console toolName: clear-console -description: "Clear all Unity Console log entries. Use when you need to: (1) Clear console before running tests or compilation, (2) Start a fresh debugging session, (3) Remove noisy logs to isolate specific output." +description: "Clear Unity Console entries. Use before compile, tests, or debugging when stale logs would hide the current result." --- # uloop clear-console diff --git a/.claude/skills/uloop-compile/SKILL.md b/.claude/skills/uloop-compile/SKILL.md index 532e640e8..2f815a82f 100644 --- a/.claude/skills/uloop-compile/SKILL.md +++ b/.claude/skills/uloop-compile/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-compile toolName: compile -description: "Compile Unity project and report errors/warnings. Use when you need to: (1) Verify code compiles after C# file edits, (2) Check for compile errors before testing, (3) Force full recompilation with Domain Reload. Returns error and warning counts." +description: "Compile the Unity project and report errors/warnings. Use after C# edits, before tests, or when a full Domain Reload compile is needed." --- # uloop compile diff --git a/.claude/skills/uloop-control-play-mode/SKILL.md b/.claude/skills/uloop-control-play-mode/SKILL.md index 3eead2c5e..828ef4d74 100644 --- a/.claude/skills/uloop-control-play-mode/SKILL.md +++ b/.claude/skills/uloop-control-play-mode/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-control-play-mode toolName: control-play-mode -description: "Control Unity Editor play mode (play/stop/pause). Use when you need to: (1) Start play mode to test game behavior, (2) Stop play mode to return to edit mode, (3) Pause play mode for frame-by-frame inspection." +description: "Control Unity Editor Play Mode. Use to start, stop, or pause Play Mode for runtime behavior checks and frame inspection." --- # uloop control-play-mode diff --git a/.claude/skills/uloop-execute-dynamic-code/SKILL.md b/.claude/skills/uloop-execute-dynamic-code/SKILL.md index 8161911c3..d43283a0f 100644 --- a/.claude/skills/uloop-execute-dynamic-code/SKILL.md +++ b/.claude/skills/uloop-execute-dynamic-code/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-execute-dynamic-code toolName: execute-dynamic-code -description: "Execute C# code dynamically in Unity Editor. Use find-game-objects first for basic selected GameObject discovery or property inspection. Use when you need to: (1) Wire prefab/material references and AddComponent operations, (2) Edit SerializedObject properties and reference wiring, (3) Perform scene/hierarchy edits and batch operations, (4) Execute Unity Editor menu commands through EditorApplication.ExecuteMenuItem, (5) PlayMode automation (click buttons, invoke methods, tweak runtime state), (6) PlayMode UI controls (InputField, Slider, Toggle, Dropdown), (7) PlayMode inspection that requires custom Unity API code beyond existing tools. NOT for file I/O or script authoring." +description: "Execute C# with Unity APIs when existing uloop tools cannot inspect or edit enough. Use for scene, prefab, SerializedObject, menu, or PlayMode automation; not for file I/O or script authoring." context: fork --- diff --git a/.claude/skills/uloop-find-game-objects/SKILL.md b/.claude/skills/uloop-find-game-objects/SKILL.md index a6e7f6c7f..8bf4c7102 100644 --- a/.claude/skills/uloop-find-game-objects/SKILL.md +++ b/.claude/skills/uloop-find-game-objects/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-find-game-objects toolName: find-game-objects -description: "Use first when the user asks about the currently selected GameObject in the Unity Hierarchy. Inspect selected object details with `--search-mode Selected` before using `execute-dynamic-code`. Use when you need to: (1) Get details and component properties for selected GameObject(s), (2) Search for objects by name, regex, or path, (3) Find objects with specific components, tags, or layers. Use get-hierarchy when the child tree under the selection is needed. Returns hierarchy paths, active state, tags, layers, and components (or writes to a file when multiple GameObjects are selected)." +description: "Find or inspect Unity GameObjects, especially the current Hierarchy selection. Use for object details, components, tags, layers, or name/path searches; use get-hierarchy for child trees." --- # uloop find-game-objects diff --git a/.claude/skills/uloop-focus-window/SKILL.md b/.claude/skills/uloop-focus-window/SKILL.md index 87dbc3587..203c8338f 100644 --- a/.claude/skills/uloop-focus-window/SKILL.md +++ b/.claude/skills/uloop-focus-window/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-focus-window -description: "Bring Unity Editor window to front via uloop CLI. Use when you need to: (1) Focus Unity Editor before capturing screenshots, (2) Ensure Unity window is visible for visual checks, (3) Bring Unity to foreground for user interaction." +description: "Bring the Unity Editor window to front. Use before screenshots, visual checks, or user-facing Unity interaction." --- # uloop focus-window diff --git a/.claude/skills/uloop-get-hierarchy/SKILL.md b/.claude/skills/uloop-get-hierarchy/SKILL.md index 9323b9414..1e79da9a0 100644 --- a/.claude/skills/uloop-get-hierarchy/SKILL.md +++ b/.claude/skills/uloop-get-hierarchy/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-get-hierarchy toolName: get-hierarchy -description: "Get Unity scene hierarchy as a structured tree from all roots, a root path, or the current Hierarchy selection. Use this when you need the child tree, parent-child structure, or descendants under selected GameObject(s) with `--use-selection`. Use find-game-objects for selected object details and component properties. Hierarchy data is written to a JSON file on disk and the response returns the file path (not the tree inline) — open the file to read the structure." +description: "Get the Unity scene hierarchy as a structured tree. Use for parent-child structure, descendants, roots, or selected-object subtrees; use find-game-objects for component details." --- # uloop get-hierarchy diff --git a/.claude/skills/uloop-get-logs/SKILL.md b/.claude/skills/uloop-get-logs/SKILL.md index 49c7d281d..456925fbc 100644 --- a/.claude/skills/uloop-get-logs/SKILL.md +++ b/.claude/skills/uloop-get-logs/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-get-logs toolName: get-logs -description: "Retrieve current Unity Console entries via uloop CLI. Use when you need to: (1) inspect errors, warnings, or logs after compile, tests, PlayMode, or dynamic code execution, (2) search current Console messages or stack traces, (3) confirm whether a recent Unity operation emitted logs. Prefer this over reading Editor.log or Unity log files for normal Console contents; use log files only for startup, crash, freeze, or uloop connection failures." +description: "Read current Unity Console entries. Use after compile, tests, PlayMode, or dynamic code to inspect logs, warnings, errors, and stack traces; use log files for startup/crash/freeze issues." --- # uloop get-logs diff --git a/.claude/skills/uloop-hello-world/SKILL.md b/.claude/skills/uloop-hello-world/SKILL.md index 776e34624..475cfbb4d 100644 --- a/.claude/skills/uloop-hello-world/SKILL.md +++ b/.claude/skills/uloop-hello-world/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-hello-world -description: "Sample hello world tool via uloop CLI. Use when you need to test the Unity CLI Loop tool system or see an example of custom tool implementation." +description: "Sample uloop hello-world tool. Use to verify custom tool wiring or inspect a minimal tool implementation example." --- # uloop hello-world diff --git a/.claude/skills/uloop-launch/SKILL.md b/.claude/skills/uloop-launch/SKILL.md index 613547391..228b0e224 100644 --- a/.claude/skills/uloop-launch/SKILL.md +++ b/.claude/skills/uloop-launch/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-launch -description: "Launch Unity project with matching Editor version via uloop CLI. Use when you need to: (1) Open a Unity project with the correct Editor version, (2) Restart Unity to apply changes, (3) Switch build target when launching." +description: "Launch or restart a Unity project with the matching Editor version. Use to open Unity, apply restart-required changes, or set a build target." --- # uloop launch diff --git a/.claude/skills/uloop-record-input/SKILL.md b/.claude/skills/uloop-record-input/SKILL.md index ba2a974a8..802e1b8c1 100644 --- a/.claude/skills/uloop-record-input/SKILL.md +++ b/.claude/skills/uloop-record-input/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-record-input toolName: record-input -description: "Record keyboard and mouse input during PlayMode into a JSON file. Use when you need to: (1) Capture human gameplay input for later replay, (2) Record input sequences for E2E testing, (3) Save input for bug reproduction. Captures Input System device-state diffs frame-by-frame in PlayMode and serializes them to JSON when stopped. Requires PlayMode and the New Input System." +description: "Record keyboard and mouse input during PlayMode to JSON. Use to capture gameplay, bug repro, or E2E input sequences for replay. Requires PlayMode and the New Input System." --- # uloop record-input diff --git a/.claude/skills/uloop-replay-input/SKILL.md b/.claude/skills/uloop-replay-input/SKILL.md index 803b05454..00adc2fd0 100644 --- a/.claude/skills/uloop-replay-input/SKILL.md +++ b/.claude/skills/uloop-replay-input/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-replay-input toolName: replay-input -description: "Replay recorded input during PlayMode with frame-precise injection. Use when you need to: (1) Reproduce recorded gameplay exactly, (2) Run E2E tests from recorded input, (3) Generate demo videos with consistent input. Deserializes the JSON recording and pushes captured device states back into Mouse.current / Keyboard.current frame-by-frame in PlayMode. Requires PlayMode and the New Input System." +description: "Replay recorded keyboard and mouse input during PlayMode. Use for exact gameplay reproduction, E2E runs, or consistent demos from JSON recordings. Requires PlayMode and the New Input System." --- # uloop replay-input diff --git a/.claude/skills/uloop-run-tests/SKILL.md b/.claude/skills/uloop-run-tests/SKILL.md index f614a6329..b4e41e960 100644 --- a/.claude/skills/uloop-run-tests/SKILL.md +++ b/.claude/skills/uloop-run-tests/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-run-tests toolName: run-tests -description: "Execute Unity Test Runner and get detailed results. Use when you need to: (1) Run EditMode or PlayMode unit tests, (2) Verify code changes pass all tests, (3) Diagnose test failures with error messages and stack traces. Single-flight only — never run multiple `uloop run-tests` in parallel." +description: "Run Unity Test Runner and report detailed results. Use for EditMode/PlayMode tests, change verification, or failure diagnosis. Single-flight only." --- # uloop run-tests diff --git a/.claude/skills/uloop-screenshot/SKILL.md b/.claude/skills/uloop-screenshot/SKILL.md index f9da5b7cd..6aaea3988 100644 --- a/.claude/skills/uloop-screenshot/SKILL.md +++ b/.claude/skills/uloop-screenshot/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-screenshot toolName: screenshot -description: "Capture screenshots of Unity Editor windows as PNG files. Use when you need to: (1) Screenshot Game View, Scene View, Console, Inspector, or other windows, (2) Capture current visual state for debugging or documentation, (3) Save editor window appearance as PNG files with optional UI element annotations. Writes PNG files via uloop CLI." +description: "Capture Unity Editor windows or Game View rendering as PNG. Use for visual checks, debugging, documentation, or annotated UI element coordinates." --- # uloop screenshot diff --git a/.claude/skills/uloop-simulate-keyboard/SKILL.md b/.claude/skills/uloop-simulate-keyboard/SKILL.md index 358e6b2a5..0e1f72d31 100644 --- a/.claude/skills/uloop-simulate-keyboard/SKILL.md +++ b/.claude/skills/uloop-simulate-keyboard/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-keyboard toolName: simulate-keyboard -description: "Simulate keyboard key input in PlayMode via Input System. Use when you need to: (1) Press game control keys like WASD, Space, or Shift during PlayMode, (2) Hold keys down for continuous movement or actions, (3) Combine multiple held keys for complex input like Shift+W for sprint. Injects into Unity Input System (`Keyboard.current`); requires PlayMode and the New Input System." +description: "Simulate keyboard input in PlayMode through Unity Input System. Use for key presses, holds, releases, and game controls such as WASD or Space. Requires PlayMode and the New Input System." context: fork --- diff --git a/.claude/skills/uloop-simulate-mouse-input/SKILL.md b/.claude/skills/uloop-simulate-mouse-input/SKILL.md index 05d196683..fcaa52699 100644 --- a/.claude/skills/uloop-simulate-mouse-input/SKILL.md +++ b/.claude/skills/uloop-simulate-mouse-input/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-mouse-input toolName: simulate-mouse-input -description: "Simulate mouse input in PlayMode for gameplay code that reads Unity Input System Mouse.current. Use when you need to: (1) Click or right-click in games that read Mouse.current button state, (2) Inject mouse delta for FPS camera control, (3) Inject scroll wheel for hotbar switching or zoom. Requires PlayMode and the New Input System; for EventSystem UI elements, use simulate-mouse-ui instead." +description: "Simulate Mouse.current input in PlayMode through Unity Input System. Use for gameplay clicks, mouse delta, or scroll; use simulate-mouse-ui for EventSystem UI elements." context: fork --- diff --git a/.claude/skills/uloop-simulate-mouse-ui/SKILL.md b/.claude/skills/uloop-simulate-mouse-ui/SKILL.md index 7e9a4efc8..3dd867d68 100644 --- a/.claude/skills/uloop-simulate-mouse-ui/SKILL.md +++ b/.claude/skills/uloop-simulate-mouse-ui/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-mouse-ui toolName: simulate-mouse-ui -description: "Simulate mouse click, long-press, and drag on PlayMode UI elements via EventSystem screen coordinates from annotated screenshots. Use when you need to: (1) Click buttons or interactive UI elements during PlayMode testing, (2) Drag UI elements between annotated screen positions, (3) Long-press or hold a drag for sustained pointer interactions. First get target coordinates with `uloop screenshot --capture-mode rendering --annotate-elements --elements-only` and use `AnnotatedElements[].SimX` / `SimY`; for gameplay code that reads Mouse.current, use simulate-mouse-input instead." +description: "Simulate PlayMode EventSystem UI mouse actions using screen coordinates. Use for UI clicks, long-presses, or drags from annotated screenshots; use simulate-mouse-input for Mouse.current gameplay." context: fork --- diff --git a/Assets/Editor/CustomCommandSamples/HelloWorld/Skill/SKILL.md b/Assets/Editor/CustomCommandSamples/HelloWorld/Skill/SKILL.md index 776e34624..475cfbb4d 100644 --- a/Assets/Editor/CustomCommandSamples/HelloWorld/Skill/SKILL.md +++ b/Assets/Editor/CustomCommandSamples/HelloWorld/Skill/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-hello-world -description: "Sample hello world tool via uloop CLI. Use when you need to test the Unity CLI Loop tool system or see an example of custom tool implementation." +description: "Sample uloop hello-world tool. Use to verify custom tool wiring or inspect a minimal tool implementation example." --- # uloop hello-world diff --git a/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-focus-window/Skill/SKILL.md b/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-focus-window/Skill/SKILL.md index 87dbc3587..203c8338f 100644 --- a/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-focus-window/Skill/SKILL.md +++ b/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-focus-window/Skill/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-focus-window -description: "Bring Unity Editor window to front via uloop CLI. Use when you need to: (1) Focus Unity Editor before capturing screenshots, (2) Ensure Unity window is visible for visual checks, (3) Bring Unity to foreground for user interaction." +description: "Bring the Unity Editor window to front. Use before screenshots, visual checks, or user-facing Unity interaction." --- # uloop focus-window diff --git a/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-launch/Skill/SKILL.md b/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-launch/Skill/SKILL.md index 613547391..228b0e224 100644 --- a/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-launch/Skill/SKILL.md +++ b/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-launch/Skill/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-launch -description: "Launch Unity project with matching Editor version via uloop CLI. Use when you need to: (1) Open a Unity project with the correct Editor version, (2) Restart Unity to apply changes, (3) Switch build target when launching." +description: "Launch or restart a Unity project with the matching Editor version. Use to open Unity, apply restart-required changes, or set a build target." --- # uloop launch diff --git a/Packages/src/Editor/FirstPartyTools/ClearConsole/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/ClearConsole/Skill/SKILL.md index a86149ab8..2202a7be2 100644 --- a/Packages/src/Editor/FirstPartyTools/ClearConsole/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/ClearConsole/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-clear-console toolName: clear-console -description: "Clear all Unity Console log entries. Use when you need to: (1) Clear console before running tests or compilation, (2) Start a fresh debugging session, (3) Remove noisy logs to isolate specific output." +description: "Clear Unity Console entries. Use before compile, tests, or debugging when stale logs would hide the current result." --- # uloop clear-console diff --git a/Packages/src/Editor/FirstPartyTools/Compile/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/Compile/Skill/SKILL.md index 532e640e8..2f815a82f 100644 --- a/Packages/src/Editor/FirstPartyTools/Compile/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/Compile/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-compile toolName: compile -description: "Compile Unity project and report errors/warnings. Use when you need to: (1) Verify code compiles after C# file edits, (2) Check for compile errors before testing, (3) Force full recompilation with Domain Reload. Returns error and warning counts." +description: "Compile the Unity project and report errors/warnings. Use after C# edits, before tests, or when a full Domain Reload compile is needed." --- # uloop compile diff --git a/Packages/src/Editor/FirstPartyTools/ControlPlayMode/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/ControlPlayMode/Skill/SKILL.md index 3eead2c5e..828ef4d74 100644 --- a/Packages/src/Editor/FirstPartyTools/ControlPlayMode/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/ControlPlayMode/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-control-play-mode toolName: control-play-mode -description: "Control Unity Editor play mode (play/stop/pause). Use when you need to: (1) Start play mode to test game behavior, (2) Stop play mode to return to edit mode, (3) Pause play mode for frame-by-frame inspection." +description: "Control Unity Editor Play Mode. Use to start, stop, or pause Play Mode for runtime behavior checks and frame inspection." --- # uloop control-play-mode diff --git a/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md index 8161911c3..d43283a0f 100644 --- a/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-execute-dynamic-code toolName: execute-dynamic-code -description: "Execute C# code dynamically in Unity Editor. Use find-game-objects first for basic selected GameObject discovery or property inspection. Use when you need to: (1) Wire prefab/material references and AddComponent operations, (2) Edit SerializedObject properties and reference wiring, (3) Perform scene/hierarchy edits and batch operations, (4) Execute Unity Editor menu commands through EditorApplication.ExecuteMenuItem, (5) PlayMode automation (click buttons, invoke methods, tweak runtime state), (6) PlayMode UI controls (InputField, Slider, Toggle, Dropdown), (7) PlayMode inspection that requires custom Unity API code beyond existing tools. NOT for file I/O or script authoring." +description: "Execute C# with Unity APIs when existing uloop tools cannot inspect or edit enough. Use for scene, prefab, SerializedObject, menu, or PlayMode automation; not for file I/O or script authoring." context: fork --- diff --git a/Packages/src/Editor/FirstPartyTools/FindGameObjects/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/FindGameObjects/Skill/SKILL.md index a6e7f6c7f..8bf4c7102 100644 --- a/Packages/src/Editor/FirstPartyTools/FindGameObjects/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/FindGameObjects/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-find-game-objects toolName: find-game-objects -description: "Use first when the user asks about the currently selected GameObject in the Unity Hierarchy. Inspect selected object details with `--search-mode Selected` before using `execute-dynamic-code`. Use when you need to: (1) Get details and component properties for selected GameObject(s), (2) Search for objects by name, regex, or path, (3) Find objects with specific components, tags, or layers. Use get-hierarchy when the child tree under the selection is needed. Returns hierarchy paths, active state, tags, layers, and components (or writes to a file when multiple GameObjects are selected)." +description: "Find or inspect Unity GameObjects, especially the current Hierarchy selection. Use for object details, components, tags, layers, or name/path searches; use get-hierarchy for child trees." --- # uloop find-game-objects diff --git a/Packages/src/Editor/FirstPartyTools/GetHierarchy/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/GetHierarchy/Skill/SKILL.md index 9323b9414..1e79da9a0 100644 --- a/Packages/src/Editor/FirstPartyTools/GetHierarchy/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/GetHierarchy/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-get-hierarchy toolName: get-hierarchy -description: "Get Unity scene hierarchy as a structured tree from all roots, a root path, or the current Hierarchy selection. Use this when you need the child tree, parent-child structure, or descendants under selected GameObject(s) with `--use-selection`. Use find-game-objects for selected object details and component properties. Hierarchy data is written to a JSON file on disk and the response returns the file path (not the tree inline) — open the file to read the structure." +description: "Get the Unity scene hierarchy as a structured tree. Use for parent-child structure, descendants, roots, or selected-object subtrees; use find-game-objects for component details." --- # uloop get-hierarchy diff --git a/Packages/src/Editor/FirstPartyTools/GetLogs/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/GetLogs/Skill/SKILL.md index 49c7d281d..456925fbc 100644 --- a/Packages/src/Editor/FirstPartyTools/GetLogs/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/GetLogs/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-get-logs toolName: get-logs -description: "Retrieve current Unity Console entries via uloop CLI. Use when you need to: (1) inspect errors, warnings, or logs after compile, tests, PlayMode, or dynamic code execution, (2) search current Console messages or stack traces, (3) confirm whether a recent Unity operation emitted logs. Prefer this over reading Editor.log or Unity log files for normal Console contents; use log files only for startup, crash, freeze, or uloop connection failures." +description: "Read current Unity Console entries. Use after compile, tests, PlayMode, or dynamic code to inspect logs, warnings, errors, and stack traces; use log files for startup/crash/freeze issues." --- # uloop get-logs diff --git a/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md index ba2a974a8..802e1b8c1 100644 --- a/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-record-input toolName: record-input -description: "Record keyboard and mouse input during PlayMode into a JSON file. Use when you need to: (1) Capture human gameplay input for later replay, (2) Record input sequences for E2E testing, (3) Save input for bug reproduction. Captures Input System device-state diffs frame-by-frame in PlayMode and serializes them to JSON when stopped. Requires PlayMode and the New Input System." +description: "Record keyboard and mouse input during PlayMode to JSON. Use to capture gameplay, bug repro, or E2E input sequences for replay. Requires PlayMode and the New Input System." --- # uloop record-input diff --git a/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md index 803b05454..00adc2fd0 100644 --- a/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-replay-input toolName: replay-input -description: "Replay recorded input during PlayMode with frame-precise injection. Use when you need to: (1) Reproduce recorded gameplay exactly, (2) Run E2E tests from recorded input, (3) Generate demo videos with consistent input. Deserializes the JSON recording and pushes captured device states back into Mouse.current / Keyboard.current frame-by-frame in PlayMode. Requires PlayMode and the New Input System." +description: "Replay recorded keyboard and mouse input during PlayMode. Use for exact gameplay reproduction, E2E runs, or consistent demos from JSON recordings. Requires PlayMode and the New Input System." --- # uloop replay-input diff --git a/Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md index f614a6329..b4e41e960 100644 --- a/Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-run-tests toolName: run-tests -description: "Execute Unity Test Runner and get detailed results. Use when you need to: (1) Run EditMode or PlayMode unit tests, (2) Verify code changes pass all tests, (3) Diagnose test failures with error messages and stack traces. Single-flight only — never run multiple `uloop run-tests` in parallel." +description: "Run Unity Test Runner and report detailed results. Use for EditMode/PlayMode tests, change verification, or failure diagnosis. Single-flight only." --- # uloop run-tests diff --git a/Packages/src/Editor/FirstPartyTools/Screenshot/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/Screenshot/Skill/SKILL.md index f9da5b7cd..6aaea3988 100644 --- a/Packages/src/Editor/FirstPartyTools/Screenshot/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/Screenshot/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-screenshot toolName: screenshot -description: "Capture screenshots of Unity Editor windows as PNG files. Use when you need to: (1) Screenshot Game View, Scene View, Console, Inspector, or other windows, (2) Capture current visual state for debugging or documentation, (3) Save editor window appearance as PNG files with optional UI element annotations. Writes PNG files via uloop CLI." +description: "Capture Unity Editor windows or Game View rendering as PNG. Use for visual checks, debugging, documentation, or annotated UI element coordinates." --- # uloop screenshot diff --git a/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md index 358e6b2a5..0e1f72d31 100644 --- a/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-keyboard toolName: simulate-keyboard -description: "Simulate keyboard key input in PlayMode via Input System. Use when you need to: (1) Press game control keys like WASD, Space, or Shift during PlayMode, (2) Hold keys down for continuous movement or actions, (3) Combine multiple held keys for complex input like Shift+W for sprint. Injects into Unity Input System (`Keyboard.current`); requires PlayMode and the New Input System." +description: "Simulate keyboard input in PlayMode through Unity Input System. Use for key presses, holds, releases, and game controls such as WASD or Space. Requires PlayMode and the New Input System." context: fork --- diff --git a/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md index 05d196683..fcaa52699 100644 --- a/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-mouse-input toolName: simulate-mouse-input -description: "Simulate mouse input in PlayMode for gameplay code that reads Unity Input System Mouse.current. Use when you need to: (1) Click or right-click in games that read Mouse.current button state, (2) Inject mouse delta for FPS camera control, (3) Inject scroll wheel for hotbar switching or zoom. Requires PlayMode and the New Input System; for EventSystem UI elements, use simulate-mouse-ui instead." +description: "Simulate Mouse.current input in PlayMode through Unity Input System. Use for gameplay clicks, mouse delta, or scroll; use simulate-mouse-ui for EventSystem UI elements." context: fork --- diff --git a/Packages/src/Editor/FirstPartyTools/SimulateMouseUi/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/SimulateMouseUi/Skill/SKILL.md index 7e9a4efc8..3dd867d68 100644 --- a/Packages/src/Editor/FirstPartyTools/SimulateMouseUi/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/SimulateMouseUi/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-mouse-ui toolName: simulate-mouse-ui -description: "Simulate mouse click, long-press, and drag on PlayMode UI elements via EventSystem screen coordinates from annotated screenshots. Use when you need to: (1) Click buttons or interactive UI elements during PlayMode testing, (2) Drag UI elements between annotated screen positions, (3) Long-press or hold a drag for sustained pointer interactions. First get target coordinates with `uloop screenshot --capture-mode rendering --annotate-elements --elements-only` and use `AnnotatedElements[].SimX` / `SimY`; for gameplay code that reads Mouse.current, use simulate-mouse-input instead." +description: "Simulate PlayMode EventSystem UI mouse actions using screen coordinates. Use for UI clicks, long-presses, or drags from annotated screenshots; use simulate-mouse-input for Mouse.current gameplay." context: fork --- From 80caf89713d252a49c45cbf91a0650a8ade56d64 Mon Sep 17 00:00:00 2001 From: hatayama Date: Sun, 17 May 2026 11:57:45 +0900 Subject: [PATCH 2/8] Refine source skill descriptions Apply review feedback to keep source skill triggers concise without generated-copy drift. Restore checked-in .agents and .claude skill copies to their previous Git state so only packaged source definitions carry the revised wording. --- .agents/skills/uloop-clear-console/SKILL.md | 2 +- .agents/skills/uloop-compile/SKILL.md | 2 +- .agents/skills/uloop-control-play-mode/SKILL.md | 2 +- .agents/skills/uloop-execute-dynamic-code/SKILL.md | 2 +- .agents/skills/uloop-find-game-objects/SKILL.md | 2 +- .agents/skills/uloop-focus-window/SKILL.md | 2 +- .agents/skills/uloop-get-hierarchy/SKILL.md | 2 +- .agents/skills/uloop-get-logs/SKILL.md | 2 +- .agents/skills/uloop-hello-world/SKILL.md | 2 +- .agents/skills/uloop-launch/SKILL.md | 2 +- .agents/skills/uloop-record-input/SKILL.md | 2 +- .agents/skills/uloop-replay-input/SKILL.md | 2 +- .agents/skills/uloop-run-tests/SKILL.md | 2 +- .agents/skills/uloop-screenshot/SKILL.md | 2 +- .agents/skills/uloop-simulate-keyboard/SKILL.md | 2 +- .agents/skills/uloop-simulate-mouse-input/SKILL.md | 2 +- .agents/skills/uloop-simulate-mouse-ui/SKILL.md | 2 +- .claude/skills/uloop-clear-console/SKILL.md | 2 +- .claude/skills/uloop-compile/SKILL.md | 2 +- .claude/skills/uloop-control-play-mode/SKILL.md | 2 +- .claude/skills/uloop-execute-dynamic-code/SKILL.md | 2 +- .claude/skills/uloop-find-game-objects/SKILL.md | 2 +- .claude/skills/uloop-focus-window/SKILL.md | 2 +- .claude/skills/uloop-get-hierarchy/SKILL.md | 2 +- .claude/skills/uloop-get-logs/SKILL.md | 2 +- .claude/skills/uloop-hello-world/SKILL.md | 2 +- .claude/skills/uloop-launch/SKILL.md | 2 +- .claude/skills/uloop-record-input/SKILL.md | 2 +- .claude/skills/uloop-replay-input/SKILL.md | 2 +- .claude/skills/uloop-run-tests/SKILL.md | 2 +- .claude/skills/uloop-screenshot/SKILL.md | 2 +- .claude/skills/uloop-simulate-keyboard/SKILL.md | 2 +- .claude/skills/uloop-simulate-mouse-input/SKILL.md | 2 +- .claude/skills/uloop-simulate-mouse-ui/SKILL.md | 2 +- .../cli-only/uloop-focus-window/Skill/SKILL.md | 2 +- .../skill-definitions/cli-only/uloop-launch/Skill/SKILL.md | 2 +- .../Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md | 2 +- .../src/Editor/FirstPartyTools/FindGameObjects/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/GetHierarchy/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/GetLogs/Skill/SKILL.md | 2 +- 40 files changed, 40 insertions(+), 40 deletions(-) diff --git a/.agents/skills/uloop-clear-console/SKILL.md b/.agents/skills/uloop-clear-console/SKILL.md index 2202a7be2..a86149ab8 100644 --- a/.agents/skills/uloop-clear-console/SKILL.md +++ b/.agents/skills/uloop-clear-console/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-clear-console toolName: clear-console -description: "Clear Unity Console entries. Use before compile, tests, or debugging when stale logs would hide the current result." +description: "Clear all Unity Console log entries. Use when you need to: (1) Clear console before running tests or compilation, (2) Start a fresh debugging session, (3) Remove noisy logs to isolate specific output." --- # uloop clear-console diff --git a/.agents/skills/uloop-compile/SKILL.md b/.agents/skills/uloop-compile/SKILL.md index 2f815a82f..532e640e8 100644 --- a/.agents/skills/uloop-compile/SKILL.md +++ b/.agents/skills/uloop-compile/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-compile toolName: compile -description: "Compile the Unity project and report errors/warnings. Use after C# edits, before tests, or when a full Domain Reload compile is needed." +description: "Compile Unity project and report errors/warnings. Use when you need to: (1) Verify code compiles after C# file edits, (2) Check for compile errors before testing, (3) Force full recompilation with Domain Reload. Returns error and warning counts." --- # uloop compile diff --git a/.agents/skills/uloop-control-play-mode/SKILL.md b/.agents/skills/uloop-control-play-mode/SKILL.md index 828ef4d74..3eead2c5e 100644 --- a/.agents/skills/uloop-control-play-mode/SKILL.md +++ b/.agents/skills/uloop-control-play-mode/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-control-play-mode toolName: control-play-mode -description: "Control Unity Editor Play Mode. Use to start, stop, or pause Play Mode for runtime behavior checks and frame inspection." +description: "Control Unity Editor play mode (play/stop/pause). Use when you need to: (1) Start play mode to test game behavior, (2) Stop play mode to return to edit mode, (3) Pause play mode for frame-by-frame inspection." --- # uloop control-play-mode diff --git a/.agents/skills/uloop-execute-dynamic-code/SKILL.md b/.agents/skills/uloop-execute-dynamic-code/SKILL.md index d43283a0f..8161911c3 100644 --- a/.agents/skills/uloop-execute-dynamic-code/SKILL.md +++ b/.agents/skills/uloop-execute-dynamic-code/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-execute-dynamic-code toolName: execute-dynamic-code -description: "Execute C# with Unity APIs when existing uloop tools cannot inspect or edit enough. Use for scene, prefab, SerializedObject, menu, or PlayMode automation; not for file I/O or script authoring." +description: "Execute C# code dynamically in Unity Editor. Use find-game-objects first for basic selected GameObject discovery or property inspection. Use when you need to: (1) Wire prefab/material references and AddComponent operations, (2) Edit SerializedObject properties and reference wiring, (3) Perform scene/hierarchy edits and batch operations, (4) Execute Unity Editor menu commands through EditorApplication.ExecuteMenuItem, (5) PlayMode automation (click buttons, invoke methods, tweak runtime state), (6) PlayMode UI controls (InputField, Slider, Toggle, Dropdown), (7) PlayMode inspection that requires custom Unity API code beyond existing tools. NOT for file I/O or script authoring." context: fork --- diff --git a/.agents/skills/uloop-find-game-objects/SKILL.md b/.agents/skills/uloop-find-game-objects/SKILL.md index 8bf4c7102..a6e7f6c7f 100644 --- a/.agents/skills/uloop-find-game-objects/SKILL.md +++ b/.agents/skills/uloop-find-game-objects/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-find-game-objects toolName: find-game-objects -description: "Find or inspect Unity GameObjects, especially the current Hierarchy selection. Use for object details, components, tags, layers, or name/path searches; use get-hierarchy for child trees." +description: "Use first when the user asks about the currently selected GameObject in the Unity Hierarchy. Inspect selected object details with `--search-mode Selected` before using `execute-dynamic-code`. Use when you need to: (1) Get details and component properties for selected GameObject(s), (2) Search for objects by name, regex, or path, (3) Find objects with specific components, tags, or layers. Use get-hierarchy when the child tree under the selection is needed. Returns hierarchy paths, active state, tags, layers, and components (or writes to a file when multiple GameObjects are selected)." --- # uloop find-game-objects diff --git a/.agents/skills/uloop-focus-window/SKILL.md b/.agents/skills/uloop-focus-window/SKILL.md index 203c8338f..87dbc3587 100644 --- a/.agents/skills/uloop-focus-window/SKILL.md +++ b/.agents/skills/uloop-focus-window/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-focus-window -description: "Bring the Unity Editor window to front. Use before screenshots, visual checks, or user-facing Unity interaction." +description: "Bring Unity Editor window to front via uloop CLI. Use when you need to: (1) Focus Unity Editor before capturing screenshots, (2) Ensure Unity window is visible for visual checks, (3) Bring Unity to foreground for user interaction." --- # uloop focus-window diff --git a/.agents/skills/uloop-get-hierarchy/SKILL.md b/.agents/skills/uloop-get-hierarchy/SKILL.md index 1e79da9a0..9323b9414 100644 --- a/.agents/skills/uloop-get-hierarchy/SKILL.md +++ b/.agents/skills/uloop-get-hierarchy/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-get-hierarchy toolName: get-hierarchy -description: "Get the Unity scene hierarchy as a structured tree. Use for parent-child structure, descendants, roots, or selected-object subtrees; use find-game-objects for component details." +description: "Get Unity scene hierarchy as a structured tree from all roots, a root path, or the current Hierarchy selection. Use this when you need the child tree, parent-child structure, or descendants under selected GameObject(s) with `--use-selection`. Use find-game-objects for selected object details and component properties. Hierarchy data is written to a JSON file on disk and the response returns the file path (not the tree inline) — open the file to read the structure." --- # uloop get-hierarchy diff --git a/.agents/skills/uloop-get-logs/SKILL.md b/.agents/skills/uloop-get-logs/SKILL.md index 456925fbc..49c7d281d 100644 --- a/.agents/skills/uloop-get-logs/SKILL.md +++ b/.agents/skills/uloop-get-logs/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-get-logs toolName: get-logs -description: "Read current Unity Console entries. Use after compile, tests, PlayMode, or dynamic code to inspect logs, warnings, errors, and stack traces; use log files for startup/crash/freeze issues." +description: "Retrieve current Unity Console entries via uloop CLI. Use when you need to: (1) inspect errors, warnings, or logs after compile, tests, PlayMode, or dynamic code execution, (2) search current Console messages or stack traces, (3) confirm whether a recent Unity operation emitted logs. Prefer this over reading Editor.log or Unity log files for normal Console contents; use log files only for startup, crash, freeze, or uloop connection failures." --- # uloop get-logs diff --git a/.agents/skills/uloop-hello-world/SKILL.md b/.agents/skills/uloop-hello-world/SKILL.md index 475cfbb4d..776e34624 100644 --- a/.agents/skills/uloop-hello-world/SKILL.md +++ b/.agents/skills/uloop-hello-world/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-hello-world -description: "Sample uloop hello-world tool. Use to verify custom tool wiring or inspect a minimal tool implementation example." +description: "Sample hello world tool via uloop CLI. Use when you need to test the Unity CLI Loop tool system or see an example of custom tool implementation." --- # uloop hello-world diff --git a/.agents/skills/uloop-launch/SKILL.md b/.agents/skills/uloop-launch/SKILL.md index 228b0e224..613547391 100644 --- a/.agents/skills/uloop-launch/SKILL.md +++ b/.agents/skills/uloop-launch/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-launch -description: "Launch or restart a Unity project with the matching Editor version. Use to open Unity, apply restart-required changes, or set a build target." +description: "Launch Unity project with matching Editor version via uloop CLI. Use when you need to: (1) Open a Unity project with the correct Editor version, (2) Restart Unity to apply changes, (3) Switch build target when launching." --- # uloop launch diff --git a/.agents/skills/uloop-record-input/SKILL.md b/.agents/skills/uloop-record-input/SKILL.md index 802e1b8c1..ba2a974a8 100644 --- a/.agents/skills/uloop-record-input/SKILL.md +++ b/.agents/skills/uloop-record-input/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-record-input toolName: record-input -description: "Record keyboard and mouse input during PlayMode to JSON. Use to capture gameplay, bug repro, or E2E input sequences for replay. Requires PlayMode and the New Input System." +description: "Record keyboard and mouse input during PlayMode into a JSON file. Use when you need to: (1) Capture human gameplay input for later replay, (2) Record input sequences for E2E testing, (3) Save input for bug reproduction. Captures Input System device-state diffs frame-by-frame in PlayMode and serializes them to JSON when stopped. Requires PlayMode and the New Input System." --- # uloop record-input diff --git a/.agents/skills/uloop-replay-input/SKILL.md b/.agents/skills/uloop-replay-input/SKILL.md index 00adc2fd0..803b05454 100644 --- a/.agents/skills/uloop-replay-input/SKILL.md +++ b/.agents/skills/uloop-replay-input/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-replay-input toolName: replay-input -description: "Replay recorded keyboard and mouse input during PlayMode. Use for exact gameplay reproduction, E2E runs, or consistent demos from JSON recordings. Requires PlayMode and the New Input System." +description: "Replay recorded input during PlayMode with frame-precise injection. Use when you need to: (1) Reproduce recorded gameplay exactly, (2) Run E2E tests from recorded input, (3) Generate demo videos with consistent input. Deserializes the JSON recording and pushes captured device states back into Mouse.current / Keyboard.current frame-by-frame in PlayMode. Requires PlayMode and the New Input System." --- # uloop replay-input diff --git a/.agents/skills/uloop-run-tests/SKILL.md b/.agents/skills/uloop-run-tests/SKILL.md index b4e41e960..f614a6329 100644 --- a/.agents/skills/uloop-run-tests/SKILL.md +++ b/.agents/skills/uloop-run-tests/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-run-tests toolName: run-tests -description: "Run Unity Test Runner and report detailed results. Use for EditMode/PlayMode tests, change verification, or failure diagnosis. Single-flight only." +description: "Execute Unity Test Runner and get detailed results. Use when you need to: (1) Run EditMode or PlayMode unit tests, (2) Verify code changes pass all tests, (3) Diagnose test failures with error messages and stack traces. Single-flight only — never run multiple `uloop run-tests` in parallel." --- # uloop run-tests diff --git a/.agents/skills/uloop-screenshot/SKILL.md b/.agents/skills/uloop-screenshot/SKILL.md index 6aaea3988..f9da5b7cd 100644 --- a/.agents/skills/uloop-screenshot/SKILL.md +++ b/.agents/skills/uloop-screenshot/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-screenshot toolName: screenshot -description: "Capture Unity Editor windows or Game View rendering as PNG. Use for visual checks, debugging, documentation, or annotated UI element coordinates." +description: "Capture screenshots of Unity Editor windows as PNG files. Use when you need to: (1) Screenshot Game View, Scene View, Console, Inspector, or other windows, (2) Capture current visual state for debugging or documentation, (3) Save editor window appearance as PNG files with optional UI element annotations. Writes PNG files via uloop CLI." --- # uloop screenshot diff --git a/.agents/skills/uloop-simulate-keyboard/SKILL.md b/.agents/skills/uloop-simulate-keyboard/SKILL.md index 0e1f72d31..358e6b2a5 100644 --- a/.agents/skills/uloop-simulate-keyboard/SKILL.md +++ b/.agents/skills/uloop-simulate-keyboard/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-keyboard toolName: simulate-keyboard -description: "Simulate keyboard input in PlayMode through Unity Input System. Use for key presses, holds, releases, and game controls such as WASD or Space. Requires PlayMode and the New Input System." +description: "Simulate keyboard key input in PlayMode via Input System. Use when you need to: (1) Press game control keys like WASD, Space, or Shift during PlayMode, (2) Hold keys down for continuous movement or actions, (3) Combine multiple held keys for complex input like Shift+W for sprint. Injects into Unity Input System (`Keyboard.current`); requires PlayMode and the New Input System." context: fork --- diff --git a/.agents/skills/uloop-simulate-mouse-input/SKILL.md b/.agents/skills/uloop-simulate-mouse-input/SKILL.md index fcaa52699..05d196683 100644 --- a/.agents/skills/uloop-simulate-mouse-input/SKILL.md +++ b/.agents/skills/uloop-simulate-mouse-input/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-mouse-input toolName: simulate-mouse-input -description: "Simulate Mouse.current input in PlayMode through Unity Input System. Use for gameplay clicks, mouse delta, or scroll; use simulate-mouse-ui for EventSystem UI elements." +description: "Simulate mouse input in PlayMode for gameplay code that reads Unity Input System Mouse.current. Use when you need to: (1) Click or right-click in games that read Mouse.current button state, (2) Inject mouse delta for FPS camera control, (3) Inject scroll wheel for hotbar switching or zoom. Requires PlayMode and the New Input System; for EventSystem UI elements, use simulate-mouse-ui instead." context: fork --- diff --git a/.agents/skills/uloop-simulate-mouse-ui/SKILL.md b/.agents/skills/uloop-simulate-mouse-ui/SKILL.md index 3dd867d68..7e9a4efc8 100644 --- a/.agents/skills/uloop-simulate-mouse-ui/SKILL.md +++ b/.agents/skills/uloop-simulate-mouse-ui/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-mouse-ui toolName: simulate-mouse-ui -description: "Simulate PlayMode EventSystem UI mouse actions using screen coordinates. Use for UI clicks, long-presses, or drags from annotated screenshots; use simulate-mouse-input for Mouse.current gameplay." +description: "Simulate mouse click, long-press, and drag on PlayMode UI elements via EventSystem screen coordinates from annotated screenshots. Use when you need to: (1) Click buttons or interactive UI elements during PlayMode testing, (2) Drag UI elements between annotated screen positions, (3) Long-press or hold a drag for sustained pointer interactions. First get target coordinates with `uloop screenshot --capture-mode rendering --annotate-elements --elements-only` and use `AnnotatedElements[].SimX` / `SimY`; for gameplay code that reads Mouse.current, use simulate-mouse-input instead." context: fork --- diff --git a/.claude/skills/uloop-clear-console/SKILL.md b/.claude/skills/uloop-clear-console/SKILL.md index 2202a7be2..a86149ab8 100644 --- a/.claude/skills/uloop-clear-console/SKILL.md +++ b/.claude/skills/uloop-clear-console/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-clear-console toolName: clear-console -description: "Clear Unity Console entries. Use before compile, tests, or debugging when stale logs would hide the current result." +description: "Clear all Unity Console log entries. Use when you need to: (1) Clear console before running tests or compilation, (2) Start a fresh debugging session, (3) Remove noisy logs to isolate specific output." --- # uloop clear-console diff --git a/.claude/skills/uloop-compile/SKILL.md b/.claude/skills/uloop-compile/SKILL.md index 2f815a82f..532e640e8 100644 --- a/.claude/skills/uloop-compile/SKILL.md +++ b/.claude/skills/uloop-compile/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-compile toolName: compile -description: "Compile the Unity project and report errors/warnings. Use after C# edits, before tests, or when a full Domain Reload compile is needed." +description: "Compile Unity project and report errors/warnings. Use when you need to: (1) Verify code compiles after C# file edits, (2) Check for compile errors before testing, (3) Force full recompilation with Domain Reload. Returns error and warning counts." --- # uloop compile diff --git a/.claude/skills/uloop-control-play-mode/SKILL.md b/.claude/skills/uloop-control-play-mode/SKILL.md index 828ef4d74..3eead2c5e 100644 --- a/.claude/skills/uloop-control-play-mode/SKILL.md +++ b/.claude/skills/uloop-control-play-mode/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-control-play-mode toolName: control-play-mode -description: "Control Unity Editor Play Mode. Use to start, stop, or pause Play Mode for runtime behavior checks and frame inspection." +description: "Control Unity Editor play mode (play/stop/pause). Use when you need to: (1) Start play mode to test game behavior, (2) Stop play mode to return to edit mode, (3) Pause play mode for frame-by-frame inspection." --- # uloop control-play-mode diff --git a/.claude/skills/uloop-execute-dynamic-code/SKILL.md b/.claude/skills/uloop-execute-dynamic-code/SKILL.md index d43283a0f..8161911c3 100644 --- a/.claude/skills/uloop-execute-dynamic-code/SKILL.md +++ b/.claude/skills/uloop-execute-dynamic-code/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-execute-dynamic-code toolName: execute-dynamic-code -description: "Execute C# with Unity APIs when existing uloop tools cannot inspect or edit enough. Use for scene, prefab, SerializedObject, menu, or PlayMode automation; not for file I/O or script authoring." +description: "Execute C# code dynamically in Unity Editor. Use find-game-objects first for basic selected GameObject discovery or property inspection. Use when you need to: (1) Wire prefab/material references and AddComponent operations, (2) Edit SerializedObject properties and reference wiring, (3) Perform scene/hierarchy edits and batch operations, (4) Execute Unity Editor menu commands through EditorApplication.ExecuteMenuItem, (5) PlayMode automation (click buttons, invoke methods, tweak runtime state), (6) PlayMode UI controls (InputField, Slider, Toggle, Dropdown), (7) PlayMode inspection that requires custom Unity API code beyond existing tools. NOT for file I/O or script authoring." context: fork --- diff --git a/.claude/skills/uloop-find-game-objects/SKILL.md b/.claude/skills/uloop-find-game-objects/SKILL.md index 8bf4c7102..a6e7f6c7f 100644 --- a/.claude/skills/uloop-find-game-objects/SKILL.md +++ b/.claude/skills/uloop-find-game-objects/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-find-game-objects toolName: find-game-objects -description: "Find or inspect Unity GameObjects, especially the current Hierarchy selection. Use for object details, components, tags, layers, or name/path searches; use get-hierarchy for child trees." +description: "Use first when the user asks about the currently selected GameObject in the Unity Hierarchy. Inspect selected object details with `--search-mode Selected` before using `execute-dynamic-code`. Use when you need to: (1) Get details and component properties for selected GameObject(s), (2) Search for objects by name, regex, or path, (3) Find objects with specific components, tags, or layers. Use get-hierarchy when the child tree under the selection is needed. Returns hierarchy paths, active state, tags, layers, and components (or writes to a file when multiple GameObjects are selected)." --- # uloop find-game-objects diff --git a/.claude/skills/uloop-focus-window/SKILL.md b/.claude/skills/uloop-focus-window/SKILL.md index 203c8338f..87dbc3587 100644 --- a/.claude/skills/uloop-focus-window/SKILL.md +++ b/.claude/skills/uloop-focus-window/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-focus-window -description: "Bring the Unity Editor window to front. Use before screenshots, visual checks, or user-facing Unity interaction." +description: "Bring Unity Editor window to front via uloop CLI. Use when you need to: (1) Focus Unity Editor before capturing screenshots, (2) Ensure Unity window is visible for visual checks, (3) Bring Unity to foreground for user interaction." --- # uloop focus-window diff --git a/.claude/skills/uloop-get-hierarchy/SKILL.md b/.claude/skills/uloop-get-hierarchy/SKILL.md index 1e79da9a0..9323b9414 100644 --- a/.claude/skills/uloop-get-hierarchy/SKILL.md +++ b/.claude/skills/uloop-get-hierarchy/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-get-hierarchy toolName: get-hierarchy -description: "Get the Unity scene hierarchy as a structured tree. Use for parent-child structure, descendants, roots, or selected-object subtrees; use find-game-objects for component details." +description: "Get Unity scene hierarchy as a structured tree from all roots, a root path, or the current Hierarchy selection. Use this when you need the child tree, parent-child structure, or descendants under selected GameObject(s) with `--use-selection`. Use find-game-objects for selected object details and component properties. Hierarchy data is written to a JSON file on disk and the response returns the file path (not the tree inline) — open the file to read the structure." --- # uloop get-hierarchy diff --git a/.claude/skills/uloop-get-logs/SKILL.md b/.claude/skills/uloop-get-logs/SKILL.md index 456925fbc..49c7d281d 100644 --- a/.claude/skills/uloop-get-logs/SKILL.md +++ b/.claude/skills/uloop-get-logs/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-get-logs toolName: get-logs -description: "Read current Unity Console entries. Use after compile, tests, PlayMode, or dynamic code to inspect logs, warnings, errors, and stack traces; use log files for startup/crash/freeze issues." +description: "Retrieve current Unity Console entries via uloop CLI. Use when you need to: (1) inspect errors, warnings, or logs after compile, tests, PlayMode, or dynamic code execution, (2) search current Console messages or stack traces, (3) confirm whether a recent Unity operation emitted logs. Prefer this over reading Editor.log or Unity log files for normal Console contents; use log files only for startup, crash, freeze, or uloop connection failures." --- # uloop get-logs diff --git a/.claude/skills/uloop-hello-world/SKILL.md b/.claude/skills/uloop-hello-world/SKILL.md index 475cfbb4d..776e34624 100644 --- a/.claude/skills/uloop-hello-world/SKILL.md +++ b/.claude/skills/uloop-hello-world/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-hello-world -description: "Sample uloop hello-world tool. Use to verify custom tool wiring or inspect a minimal tool implementation example." +description: "Sample hello world tool via uloop CLI. Use when you need to test the Unity CLI Loop tool system or see an example of custom tool implementation." --- # uloop hello-world diff --git a/.claude/skills/uloop-launch/SKILL.md b/.claude/skills/uloop-launch/SKILL.md index 228b0e224..613547391 100644 --- a/.claude/skills/uloop-launch/SKILL.md +++ b/.claude/skills/uloop-launch/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-launch -description: "Launch or restart a Unity project with the matching Editor version. Use to open Unity, apply restart-required changes, or set a build target." +description: "Launch Unity project with matching Editor version via uloop CLI. Use when you need to: (1) Open a Unity project with the correct Editor version, (2) Restart Unity to apply changes, (3) Switch build target when launching." --- # uloop launch diff --git a/.claude/skills/uloop-record-input/SKILL.md b/.claude/skills/uloop-record-input/SKILL.md index 802e1b8c1..ba2a974a8 100644 --- a/.claude/skills/uloop-record-input/SKILL.md +++ b/.claude/skills/uloop-record-input/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-record-input toolName: record-input -description: "Record keyboard and mouse input during PlayMode to JSON. Use to capture gameplay, bug repro, or E2E input sequences for replay. Requires PlayMode and the New Input System." +description: "Record keyboard and mouse input during PlayMode into a JSON file. Use when you need to: (1) Capture human gameplay input for later replay, (2) Record input sequences for E2E testing, (3) Save input for bug reproduction. Captures Input System device-state diffs frame-by-frame in PlayMode and serializes them to JSON when stopped. Requires PlayMode and the New Input System." --- # uloop record-input diff --git a/.claude/skills/uloop-replay-input/SKILL.md b/.claude/skills/uloop-replay-input/SKILL.md index 00adc2fd0..803b05454 100644 --- a/.claude/skills/uloop-replay-input/SKILL.md +++ b/.claude/skills/uloop-replay-input/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-replay-input toolName: replay-input -description: "Replay recorded keyboard and mouse input during PlayMode. Use for exact gameplay reproduction, E2E runs, or consistent demos from JSON recordings. Requires PlayMode and the New Input System." +description: "Replay recorded input during PlayMode with frame-precise injection. Use when you need to: (1) Reproduce recorded gameplay exactly, (2) Run E2E tests from recorded input, (3) Generate demo videos with consistent input. Deserializes the JSON recording and pushes captured device states back into Mouse.current / Keyboard.current frame-by-frame in PlayMode. Requires PlayMode and the New Input System." --- # uloop replay-input diff --git a/.claude/skills/uloop-run-tests/SKILL.md b/.claude/skills/uloop-run-tests/SKILL.md index b4e41e960..f614a6329 100644 --- a/.claude/skills/uloop-run-tests/SKILL.md +++ b/.claude/skills/uloop-run-tests/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-run-tests toolName: run-tests -description: "Run Unity Test Runner and report detailed results. Use for EditMode/PlayMode tests, change verification, or failure diagnosis. Single-flight only." +description: "Execute Unity Test Runner and get detailed results. Use when you need to: (1) Run EditMode or PlayMode unit tests, (2) Verify code changes pass all tests, (3) Diagnose test failures with error messages and stack traces. Single-flight only — never run multiple `uloop run-tests` in parallel." --- # uloop run-tests diff --git a/.claude/skills/uloop-screenshot/SKILL.md b/.claude/skills/uloop-screenshot/SKILL.md index 6aaea3988..f9da5b7cd 100644 --- a/.claude/skills/uloop-screenshot/SKILL.md +++ b/.claude/skills/uloop-screenshot/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-screenshot toolName: screenshot -description: "Capture Unity Editor windows or Game View rendering as PNG. Use for visual checks, debugging, documentation, or annotated UI element coordinates." +description: "Capture screenshots of Unity Editor windows as PNG files. Use when you need to: (1) Screenshot Game View, Scene View, Console, Inspector, or other windows, (2) Capture current visual state for debugging or documentation, (3) Save editor window appearance as PNG files with optional UI element annotations. Writes PNG files via uloop CLI." --- # uloop screenshot diff --git a/.claude/skills/uloop-simulate-keyboard/SKILL.md b/.claude/skills/uloop-simulate-keyboard/SKILL.md index 0e1f72d31..358e6b2a5 100644 --- a/.claude/skills/uloop-simulate-keyboard/SKILL.md +++ b/.claude/skills/uloop-simulate-keyboard/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-keyboard toolName: simulate-keyboard -description: "Simulate keyboard input in PlayMode through Unity Input System. Use for key presses, holds, releases, and game controls such as WASD or Space. Requires PlayMode and the New Input System." +description: "Simulate keyboard key input in PlayMode via Input System. Use when you need to: (1) Press game control keys like WASD, Space, or Shift during PlayMode, (2) Hold keys down for continuous movement or actions, (3) Combine multiple held keys for complex input like Shift+W for sprint. Injects into Unity Input System (`Keyboard.current`); requires PlayMode and the New Input System." context: fork --- diff --git a/.claude/skills/uloop-simulate-mouse-input/SKILL.md b/.claude/skills/uloop-simulate-mouse-input/SKILL.md index fcaa52699..05d196683 100644 --- a/.claude/skills/uloop-simulate-mouse-input/SKILL.md +++ b/.claude/skills/uloop-simulate-mouse-input/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-mouse-input toolName: simulate-mouse-input -description: "Simulate Mouse.current input in PlayMode through Unity Input System. Use for gameplay clicks, mouse delta, or scroll; use simulate-mouse-ui for EventSystem UI elements." +description: "Simulate mouse input in PlayMode for gameplay code that reads Unity Input System Mouse.current. Use when you need to: (1) Click or right-click in games that read Mouse.current button state, (2) Inject mouse delta for FPS camera control, (3) Inject scroll wheel for hotbar switching or zoom. Requires PlayMode and the New Input System; for EventSystem UI elements, use simulate-mouse-ui instead." context: fork --- diff --git a/.claude/skills/uloop-simulate-mouse-ui/SKILL.md b/.claude/skills/uloop-simulate-mouse-ui/SKILL.md index 3dd867d68..7e9a4efc8 100644 --- a/.claude/skills/uloop-simulate-mouse-ui/SKILL.md +++ b/.claude/skills/uloop-simulate-mouse-ui/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-mouse-ui toolName: simulate-mouse-ui -description: "Simulate PlayMode EventSystem UI mouse actions using screen coordinates. Use for UI clicks, long-presses, or drags from annotated screenshots; use simulate-mouse-input for Mouse.current gameplay." +description: "Simulate mouse click, long-press, and drag on PlayMode UI elements via EventSystem screen coordinates from annotated screenshots. Use when you need to: (1) Click buttons or interactive UI elements during PlayMode testing, (2) Drag UI elements between annotated screen positions, (3) Long-press or hold a drag for sustained pointer interactions. First get target coordinates with `uloop screenshot --capture-mode rendering --annotate-elements --elements-only` and use `AnnotatedElements[].SimX` / `SimY`; for gameplay code that reads Mouse.current, use simulate-mouse-input instead." context: fork --- diff --git a/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-focus-window/Skill/SKILL.md b/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-focus-window/Skill/SKILL.md index 203c8338f..9379ef080 100644 --- a/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-focus-window/Skill/SKILL.md +++ b/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-focus-window/Skill/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-focus-window -description: "Bring the Unity Editor window to front. Use before screenshots, visual checks, or user-facing Unity interaction." +description: "Bring the Unity Editor window to front. Use when Unity must be visible for visual checks or user-facing interaction." --- # uloop focus-window diff --git a/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-launch/Skill/SKILL.md b/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-launch/Skill/SKILL.md index 228b0e224..7ad9f11ff 100644 --- a/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-launch/Skill/SKILL.md +++ b/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-launch/Skill/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-launch -description: "Launch or restart a Unity project with the matching Editor version. Use to open Unity, apply restart-required changes, or set a build target." +description: "Launch or restart a Unity project with the matching Editor version. Use to open Unity or apply restart-required changes." --- # uloop launch diff --git a/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md index d43283a0f..b7c4d6698 100644 --- a/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-execute-dynamic-code toolName: execute-dynamic-code -description: "Execute C# with Unity APIs when existing uloop tools cannot inspect or edit enough. Use for scene, prefab, SerializedObject, menu, or PlayMode automation; not for file I/O or script authoring." +description: "Execute C# with Unity APIs when existing uloop tools cannot inspect or edit enough. Use for scene, prefab, SerializedObject, menu, or PlayMode automation." context: fork --- diff --git a/Packages/src/Editor/FirstPartyTools/FindGameObjects/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/FindGameObjects/Skill/SKILL.md index 8bf4c7102..1d9bc71d9 100644 --- a/Packages/src/Editor/FirstPartyTools/FindGameObjects/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/FindGameObjects/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-find-game-objects toolName: find-game-objects -description: "Find or inspect Unity GameObjects, especially the current Hierarchy selection. Use for object details, components, tags, layers, or name/path searches; use get-hierarchy for child trees." +description: "Find or inspect Unity GameObjects, especially objects the user currently selected in the Hierarchy. Use for details, components, tags, layers, or name/path searches." --- # uloop find-game-objects diff --git a/Packages/src/Editor/FirstPartyTools/GetHierarchy/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/GetHierarchy/Skill/SKILL.md index 1e79da9a0..fc7724208 100644 --- a/Packages/src/Editor/FirstPartyTools/GetHierarchy/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/GetHierarchy/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-get-hierarchy toolName: get-hierarchy -description: "Get the Unity scene hierarchy as a structured tree. Use for parent-child structure, descendants, roots, or selected-object subtrees; use find-game-objects for component details." +description: "Get the Unity scene hierarchy as a structured tree. Use for parent-child structure, descendants, roots, or subtrees under objects the user currently selected." --- # uloop get-hierarchy diff --git a/Packages/src/Editor/FirstPartyTools/GetLogs/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/GetLogs/Skill/SKILL.md index 456925fbc..68cb95938 100644 --- a/Packages/src/Editor/FirstPartyTools/GetLogs/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/GetLogs/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-get-logs toolName: get-logs -description: "Read current Unity Console entries. Use after compile, tests, PlayMode, or dynamic code to inspect logs, warnings, errors, and stack traces; use log files for startup/crash/freeze issues." +description: "Read current Unity Console entries from a running Editor. Use during bug investigation after compile, tests, PlayMode, or dynamic code to inspect logs, warnings, errors, and stack traces." --- # uloop get-logs From a65c9a54701c4843cc73b69b261f23908fdc5bbe Mon Sep 17 00:00:00 2001 From: hatayama Date: Sun, 17 May 2026 16:39:47 +0900 Subject: [PATCH 3/8] Refine skill description triggers Keep the bundled skill descriptions focused on trigger-worthy actions while moving detailed prerequisites out of the frontmatter. Add AssetDatabase refresh and .meta generation as explicit dynamic-code triggers. --- .../skill-definitions/cli-only/uloop-launch/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/Compile/Skill/SKILL.md | 2 +- .../Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md | 2 +- .../src/Editor/FirstPartyTools/SimulateMouseUi/Skill/SKILL.md | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-launch/Skill/SKILL.md b/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-launch/Skill/SKILL.md index 7ad9f11ff..6e5a63218 100644 --- a/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-launch/Skill/SKILL.md +++ b/Packages/src/Cli~/internal/skills/skill-definitions/cli-only/uloop-launch/Skill/SKILL.md @@ -1,6 +1,6 @@ --- name: uloop-launch -description: "Launch or restart a Unity project with the matching Editor version. Use to open Unity or apply restart-required changes." +description: "Launch or restart Unity Editor. Use when Unity needs to be opened or restarted." --- # uloop launch diff --git a/Packages/src/Editor/FirstPartyTools/Compile/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/Compile/Skill/SKILL.md index 2f815a82f..e9bd21c6b 100644 --- a/Packages/src/Editor/FirstPartyTools/Compile/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/Compile/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-compile toolName: compile -description: "Compile the Unity project and report errors/warnings. Use after C# edits, before tests, or when a full Domain Reload compile is needed." +description: "Compile the Unity project and report errors/warnings. Use after C# edits or when a full Domain Reload compile is needed." --- # uloop compile diff --git a/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md index b7c4d6698..d29fcdc9c 100644 --- a/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-execute-dynamic-code toolName: execute-dynamic-code -description: "Execute C# with Unity APIs when existing uloop tools cannot inspect or edit enough. Use for scene, prefab, SerializedObject, menu, or PlayMode automation." +description: "Execute C# with Unity APIs when existing uloop tools cannot inspect or edit enough. Use for scene, prefab, SerializedObject, AssetDatabase refresh/.meta generation, menu, or PlayMode automation." context: fork --- diff --git a/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md index 802e1b8c1..ce05fd835 100644 --- a/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-record-input toolName: record-input -description: "Record keyboard and mouse input during PlayMode to JSON. Use to capture gameplay, bug repro, or E2E input sequences for replay. Requires PlayMode and the New Input System." +description: "Record PlayMode keyboard and mouse input to JSON. Use to capture gameplay, bug repro, or E2E input sequences for replay." --- # uloop record-input diff --git a/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md index 00adc2fd0..7046e3001 100644 --- a/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-replay-input toolName: replay-input -description: "Replay recorded keyboard and mouse input during PlayMode. Use for exact gameplay reproduction, E2E runs, or consistent demos from JSON recordings. Requires PlayMode and the New Input System." +description: "Replay recorded PlayMode keyboard and mouse input. Use for exact gameplay reproduction, E2E runs, or consistent demos from JSON recordings." --- # uloop replay-input diff --git a/Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md index b4e41e960..284d52bcf 100644 --- a/Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-run-tests toolName: run-tests -description: "Run Unity Test Runner and report detailed results. Use for EditMode/PlayMode tests, change verification, or failure diagnosis. Single-flight only." +description: "Run Unity Test Runner and report detailed results. Use for EditMode/PlayMode tests, change verification, or failure diagnosis." --- # uloop run-tests diff --git a/Packages/src/Editor/FirstPartyTools/SimulateMouseUi/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/SimulateMouseUi/Skill/SKILL.md index 3dd867d68..ed7afba04 100644 --- a/Packages/src/Editor/FirstPartyTools/SimulateMouseUi/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/SimulateMouseUi/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-mouse-ui toolName: simulate-mouse-ui -description: "Simulate PlayMode EventSystem UI mouse actions using screen coordinates. Use for UI clicks, long-presses, or drags from annotated screenshots; use simulate-mouse-input for Mouse.current gameplay." +description: "Simulate PlayMode EventSystem UI mouse actions using screen coordinates. Use for UI clicks, long-presses, or drags from annotated screenshots." context: fork --- From bae0930ed77111cdb852ed7122f3662c68022360 Mon Sep 17 00:00:00 2001 From: hatayama Date: Sun, 17 May 2026 16:46:53 +0900 Subject: [PATCH 4/8] Shorten simulate keyboard skill trigger Remove detailed PlayMode and Input System prerequisite wording from the bundled skill description so the frontmatter stays focused on routing triggers. --- .../src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md index 0e1f72d31..53581953b 100644 --- a/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md @@ -1,7 +1,7 @@ --- name: uloop-simulate-keyboard toolName: simulate-keyboard -description: "Simulate keyboard input in PlayMode through Unity Input System. Use for key presses, holds, releases, and game controls such as WASD or Space. Requires PlayMode and the New Input System." +description: "Simulate keyboard input in PlayMode through Unity Input System. Use for key presses, holds, releases, and game controls such as WASD or Space." context: fork --- From 4e8cdee9e91911180ca5ba7f26d33e06b6d7a455 Mon Sep 17 00:00:00 2001 From: hatayama Date: Sun, 17 May 2026 16:50:41 +0900 Subject: [PATCH 5/8] Document trimmed skill details in body Move prerequisite and operational details out of skill descriptions and into the relevant body sections so the frontmatter stays concise without losing guidance. --- .../ExecuteDynamicCode/Skill/references/asset-operations.md | 2 ++ .../src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md | 6 ++++++ Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md | 2 ++ 3 files changed, 10 insertions(+) diff --git a/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/references/asset-operations.md b/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/references/asset-operations.md index de0ed73fc..31ddf7adc 100644 --- a/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/references/asset-operations.md +++ b/Packages/src/Editor/FirstPartyTools/ExecuteDynamicCode/Skill/references/asset-operations.md @@ -184,6 +184,8 @@ return $"Asset has {dependencies.Length} dependencies"; ## Refresh AssetDatabase +Use this after terminal-based asset file changes when Unity needs to import them and generate `.meta` files. + ```csharp using UnityEditor; diff --git a/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md index 7046e3001..407007ea1 100644 --- a/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md @@ -40,6 +40,12 @@ uloop replay-input --action Stop Replay injects the exact same input frame-by-frame, but the game must also be deterministic to produce identical results. If replay output must be compared across runs, read [references/deterministic-replay.md](references/deterministic-replay.md) before interpreting failures. +## Prerequisites + +- Unity must be in **PlayMode** +- **Input System package** must be installed (`com.unity.inputsystem`) +- Active Input Handling must be set to `Input System Package (New)` or `Both` in Player Settings + ## Output Returns JSON with: diff --git a/Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md index 284d52bcf..89406b1b6 100644 --- a/Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/RunTests/Skill/SKILL.md @@ -8,6 +8,8 @@ description: "Run Unity Test Runner and report detailed results. Use for EditMod Execute Unity Test Runner. When tests fail, NUnit XML results with error messages and stack traces are automatically saved. Read the XML file at `XmlPath` for detailed failure diagnosis. +`uloop run-tests` is single-flight. Do not run multiple `uloop run-tests` commands in parallel against the same Unity Editor. + Before executing tests, `uloop run-tests` checks for unsaved loaded Scene changes and unsaved current Prefab Stage changes. If any are found, it returns `Success: false`, keeps `TestCount` at `0`, lists the unsaved items in `Message`, and does not start the Unity Test Runner. Save or discard those editor changes, then rerun the command. Use `--save-before-run` only when the user explicitly asks to save editor changes before continuing. ## Usage From b759febb8d008bf9918909fba02c84a0de15c5c6 Mon Sep 17 00:00:00 2001 From: hatayama Date: Sun, 17 May 2026 16:56:40 +0900 Subject: [PATCH 6/8] Align Input System prerequisite wording Use the same package and Active Input Handling prerequisite wording across New Input System-dependent skill bodies so detailed guidance stays consistent outside frontmatter. --- .../Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md | 4 ++-- .../Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md index 53581953b..2f4dc7d6b 100644 --- a/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md @@ -83,6 +83,6 @@ Returns JSON with: ## Prerequisites - Unity must be in **PlayMode** -- **Input System package** (`com.unity.inputsystem`) must be installed -- Active Input Handling must be set to **Input System Package (New)** or **Both** in Player Settings +- **Input System package** must be installed (`com.unity.inputsystem`) +- Active Input Handling must be set to `Input System Package (New)` or `Both` in Player Settings - Game code must read input via Input System API (e.g. `Keyboard.current[Key.W].isPressed`), not legacy `Input.GetKey()` diff --git a/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md index fcaa52699..7d351ac36 100644 --- a/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md @@ -94,6 +94,7 @@ uloop simulate-mouse-input --action SmoothDelta --delta-x 300 --delta-y 0 --dura - Unity must be in **PlayMode** - **Input System package** must be installed (`com.unity.inputsystem`) +- Active Input Handling must be set to `Input System Package (New)` or `Both` in Player Settings - Game code must read input via Input System API (e.g. `Mouse.current.leftButton.wasPressedThisFrame`) - If the target project cannot use the New Input System, prefer `execute-dynamic-code` for a project-specific workaround instead of changing project settings just to use this tool From 36656c61cde71547c63fd666ede4881845a3b317 Mon Sep 17 00:00:00 2001 From: hatayama Date: Sun, 17 May 2026 17:05:24 +0900 Subject: [PATCH 7/8] Avoid Active Input Handling setup guidance Replace Player Settings guidance in New Input System skill bodies with a project-specific fallback path so the docs do not encourage changing Active Input Handling just for tooling. --- Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md | 2 +- Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md | 2 +- .../src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md | 2 +- .../Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md | 3 +-- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md index ce05fd835..8a670f6ce 100644 --- a/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md @@ -40,7 +40,7 @@ Replay injects input frame-by-frame, so the game must also be deterministic to p - Unity must be in **PlayMode** - **Input System package** must be installed (`com.unity.inputsystem`) -- Active Input Handling must be set to `Input System Package (New)` or `Both` in Player Settings +- Use this only when the project already uses the New Input System; otherwise prefer `execute-dynamic-code` for project-specific input handling. ## Output diff --git a/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md index 407007ea1..2f02e641d 100644 --- a/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md @@ -44,7 +44,7 @@ Replay injects the exact same input frame-by-frame, but the game must also be de - Unity must be in **PlayMode** - **Input System package** must be installed (`com.unity.inputsystem`) -- Active Input Handling must be set to `Input System Package (New)` or `Both` in Player Settings +- Use this only when the project already uses the New Input System; otherwise prefer `execute-dynamic-code` for project-specific input handling. ## Output diff --git a/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md index 2f4dc7d6b..fb5de949f 100644 --- a/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md @@ -84,5 +84,5 @@ Returns JSON with: - Unity must be in **PlayMode** - **Input System package** must be installed (`com.unity.inputsystem`) -- Active Input Handling must be set to `Input System Package (New)` or `Both` in Player Settings +- Use this only when the project already uses the New Input System; otherwise prefer `execute-dynamic-code` for project-specific input handling. - Game code must read input via Input System API (e.g. `Keyboard.current[Key.W].isPressed`), not legacy `Input.GetKey()` diff --git a/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md index 7d351ac36..cc07b7cb1 100644 --- a/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md @@ -94,9 +94,8 @@ uloop simulate-mouse-input --action SmoothDelta --delta-x 300 --delta-y 0 --dura - Unity must be in **PlayMode** - **Input System package** must be installed (`com.unity.inputsystem`) -- Active Input Handling must be set to `Input System Package (New)` or `Both` in Player Settings - Game code must read input via Input System API (e.g. `Mouse.current.leftButton.wasPressedThisFrame`) -- If the target project cannot use the New Input System, prefer `execute-dynamic-code` for a project-specific workaround instead of changing project settings just to use this tool +- Use this only when the project already uses the New Input System; otherwise prefer `execute-dynamic-code` for project-specific input handling. ## Output From 9cf2fc439cc45a5b63dc7d0e68b1296c7601f157 Mon Sep 17 00:00:00 2001 From: hatayama Date: Sun, 17 May 2026 17:08:08 +0900 Subject: [PATCH 8/8] Remove input skill fallback guidance Keep New Input System prerequisites focused on the actual assumption instead of directing users to another tool from these skill docs. --- .../src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md | 2 +- .../src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md | 2 +- .../Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md | 2 +- .../Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md index 8a670f6ce..2e824ff6a 100644 --- a/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/RecordInput/Skill/SKILL.md @@ -40,7 +40,7 @@ Replay injects input frame-by-frame, so the game must also be deterministic to p - Unity must be in **PlayMode** - **Input System package** must be installed (`com.unity.inputsystem`) -- Use this only when the project already uses the New Input System; otherwise prefer `execute-dynamic-code` for project-specific input handling. +- Use this only when the project already uses the New Input System. ## Output diff --git a/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md index 2f02e641d..dc9d81414 100644 --- a/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/ReplayInput/Skill/SKILL.md @@ -44,7 +44,7 @@ Replay injects the exact same input frame-by-frame, but the game must also be de - Unity must be in **PlayMode** - **Input System package** must be installed (`com.unity.inputsystem`) -- Use this only when the project already uses the New Input System; otherwise prefer `execute-dynamic-code` for project-specific input handling. +- Use this only when the project already uses the New Input System. ## Output diff --git a/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md index fb5de949f..8f44bc5dd 100644 --- a/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/SimulateKeyboard/Skill/SKILL.md @@ -84,5 +84,5 @@ Returns JSON with: - Unity must be in **PlayMode** - **Input System package** must be installed (`com.unity.inputsystem`) -- Use this only when the project already uses the New Input System; otherwise prefer `execute-dynamic-code` for project-specific input handling. +- Use this only when the project already uses the New Input System. - Game code must read input via Input System API (e.g. `Keyboard.current[Key.W].isPressed`), not legacy `Input.GetKey()` diff --git a/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md b/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md index cc07b7cb1..da66d0b1f 100644 --- a/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md +++ b/Packages/src/Editor/FirstPartyTools/SimulateMouseInput/Skill/SKILL.md @@ -59,7 +59,7 @@ uloop simulate-mouse-input --action [options] | Scenario | Tool | |----------|------| | Click a Unity UI Button (IPointerClickHandler) | `simulate-mouse-ui` | -| Destroy a block in Minecraft (reads `Mouse.current.leftButton`) | `simulate-mouse-input` when the project uses the New Input System; otherwise prefer `execute-dynamic-code` for a project-specific workaround | +| Destroy a block in Minecraft (reads `Mouse.current.leftButton`) | `simulate-mouse-input` when the project uses the New Input System | | Place a block with right-click | `simulate-mouse-input --button Right` when the project uses the New Input System | | Drag a UI slider | `simulate-mouse-ui --action Drag` | | Look around with mouse (FPS camera) | `simulate-mouse-input --action MoveDelta` when the project uses the New Input System | @@ -95,7 +95,7 @@ uloop simulate-mouse-input --action SmoothDelta --delta-x 300 --delta-y 0 --dura - Unity must be in **PlayMode** - **Input System package** must be installed (`com.unity.inputsystem`) - Game code must read input via Input System API (e.g. `Mouse.current.leftButton.wasPressedThisFrame`) -- Use this only when the project already uses the New Input System; otherwise prefer `execute-dynamic-code` for project-specific input handling. +- Use this only when the project already uses the New Input System. ## Output