Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/nowsprinting/unity-coding-skills/plan-featurenpx skills add nowsprinting/unity-coding-skills --skill plan-featuregit clone --depth 1 https://github.com/nowsprinting/unity-coding-skillsWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00076 | $0.01817 |
| Opus 5 | $0.00038 | $0.00908 |
| Sonnet 5 | $0.00015 | $0.00363 |
| Haiku 4.5 | $0.00008 | $0.00182 |
Grade A, and why
plan-feature scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 129 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Guide for plan mode. This skill defines the orchestration workflow for test-first implementation planning.
Mode Check
This skill requires plan mode. Before doing anything else, check the current mode:
ExitPlanModeis in the deferred tools list → not in plan mode → stop immediately and tell the user:"This skill (
/plan-feature) requires plan mode. Enter plan mode first: use/planor press Shift+Tab to toggle."ExitPlanModeis NOT in the deferred tools list (i.e., directly callable) → in plan mode → proceed.
Task Type Check
If the user's request is to investigate or fix a bug rather than implement a new feature, change a specification, or refactor, use ExitPlanMode immediately and guide the user to invoke the /fix-bug skill instead. The rest of this skill applies to feature implementation, spec changes, and refactoring only.
Plan Mode Workflow
Step 1: Initial Understanding
Launch Explore agents to understand the codebase relevant to the task.
TBD items: If the requirements or specifications explicitly contain the text "TBD" for any item, treat that item as non-existent — do not design or implement it. Only ask the user via AskUserQuestion if the TBD item is a prerequisite that cannot be deferred without blocking the overall design.
Step 2: Implementation Design (Plan Agent)
Launch a Plan agent to design the class/method structure. Include the following instruction in the Plan agent prompt:
Design the class/method seams with testability in mind:
- Prefer small, focused public interfaces
- Test through the same seam production code uses. Tests should exercise the same
public/internalAPI that production callers go through. Do not promote aprivatemethod or widen visibility merely to reach it from a test — by default, private stays private.- Sanctioned exception (reduce combinatorial coverage): When a method takes 3 or more parameters — a heuristic for the real trigger, which is that several independent conditions combine so exhaustive coverage cost explodes (this can also happen with fewer parameters that each take many values, and may not apply when the extra parameters don't drive branching) — extract the cohesive sub-logic (a pure computation or decision that depends on only 1–2 of those inputs) into its own unit. Prefer a standalone class or pure function when the logic stands on its own; fall back to an
internalmethod on the same class only when it cannot be cleanly separated from instance state. Give the extracted unitinternal(notpublic) visibility when it need not be reachable outside the assembly — the narrowed visibility is a consequence of the extraction, not the goal.- Inject dependencies via interfaces so they can be replaced with test doubles
- Avoid hidden static/global state and
newcalls inside constructors for external dependenciesNaming: If any class or public method name explicitly specified by the user is a poor fit for what the spec describes, propose a more appropriate alternative using
AskUserQuestionbefore finalizing the design. Accept the user's final choice without further challenge.TBD items: Any item explicitly marked "TBD" in the requirements or spec must be excluded from the design. Skip it silently unless it is structurally required to complete the design (in which case, ask via
AskUserQuestion).
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 129 lines · 76 tokens per session scan A baae9ea273d2
plan-feature is a skill published in the GitHub repository nowsprinting/unity-coding-skills (19 stars, last pushed 2d ago), licensed Unlicense. It adds 76 tokens to every session and 1,817 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
unity
Compile, test, and drive Unity for this repo's C# packages (unity/core, jint, quickjs, clearscript) and the two Unity projects (tests/, kitchen-sink/). Use when a change touches C# under unity/, when Unity test results are needed, when a rendering snapshot has to be checked or regenerated, or when the app has to be…
uloop-execute-dynamic-code
Execute C# with Unity APIs when existing uloop tools cannot inspect or edit enough. Use for reachable scene/component state, scene/prefab/menu automation, and PlayMode checks.
uloop-simulate-mouse-input
Simulate Mouse.current input in PlayMode through Unity Input System. Use for gameplay mouse clicks, long-press (LongPress), movement delta (MoveDelta/SmoothDelta), or scroll. Use --dry-run to check what a Game View coordinate hits in 3D physics before clicking (works in EditMode; no Input System required). Use…
uloop-simulate-mouse-ui
Simulate PlayMode EventSystem UI mouse actions using screen coordinates. Use for UI clicks, long-presses, or drags from annotated screenshots.
uloop-pause-point
Pauses Unity playback at any source file:line without editing code or recompiling, and returns a snapshot of the locals, parameters, and instance fields at that exact frame. Use for bug investigation, PlayMode/E2E verification, checking variable values at a specific frame, or confirming that a code path executed.
uloop-screenshot
Capture Unity Editor windows or Game View rendering as PNG. Use for visual checks, debugging, documentation, or annotated UI element coordinates.