plan — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited plan (Agent Skill) and scored it 96/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 1 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 1 flagged
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Respond in the user's preferred language (detect from their recent messages, or fall back to the language setting in CLAUDE.md).
Generate a technical implementation plan for Unity. This is NOT a game design document — it translates an existing design into an engineering plan that /qq:execute can consume.
When the plan can use live Unity editing instead of code: some implementation steps are simpler as direct tykit calls (scene tweaks, prefab overrides, UI adjustments, one-off data fixes) rather than writing C# utilities. If a step is a one-shot editor-state change, see shared/tykit-reference.md and mark the step as "execute via tykit command X" in the plan. Reserve code-writing for changes that need version control, compile-time validation, or repeatable behavior.Arguments: $ARGUMENTS
Best case: user provides a game design document (from Docs/qq/, Docs/design/, Notion export, or inline). Read it fully, extract the technical requirements.
Minimal case: user gives a one-liner like "add a health system" or "weapons need ammo reloading". Ask 3-5 targeted technical questions before proceeding:
Do NOT ask more than 5 questions. If something is unclear, explore the codebase to find the answer yourself. Prefer reading code over asking the user.
Before writing the plan, understand what already exists:
Assets/Scripts/, service modules, existing interfaces)This step is critical — do not design in a vacuum.
If .claude/seams.yml exists, this project maintains a registry of known fan-out points — places where adding one thing (a new enum value / interface impl / WorkType / MonsterType / event / registration / config row) requires synchronized edits in several other places. Miss one and it compiles clean but breaks or silently no-ops at runtime (classic: "added a WorkType but forgot the second switch").
For every such addition the plan introduces, match it against the keys in .claude/seams.yml and copy the matched seam's sites[].grep commands into the plan's 跨切面接缝清单 section (template below). Read `seams.yml` as the deterministic seed — do not enumerate seam points from memory (the model forgets/invents; the file does not). Newly discovered seams should be appended to .claude/seams.yml, not buried in one plan.
If .claude/seams.yml is absent, skip this section (no regression).
Output a single markdown document following this format. Keep it concise — 1-3 pages max. No filler.
# [Feature Name] — Implementation Plan
## Goal
One sentence. What technical capability is added.
## Architecturegraph LR A[ComponentA] --> B[ComponentB] B --> C[ComponentC]
## Key Types
| Type | Kind | Purpose |
|------|------|---------|
| `Foo` | MonoBehaviour | Does X |
| `Bar` | ScriptableObject | Stores Y |
| `IFoo` | interface | Contract for X |
## Interfacespublic interface IFoo { void DoSomething(SomeEvent e); float Value { get; } event Action<float> OnValueChanged; }
## Data Schema
Any new config fields, serialized data, or save structures.
Use actual field names and types.
## Steps
Ordered, each step is a shippable increment. Include:
- Exact file paths (create or modify)
- What to implement
- Dependencies on previous steps
- Done criteria (how to verify this step works)
1. **Create IFoo interface** — `Assets/Scripts/Systems/IFoo.cs`
- Define the contract shown above
- No deps
- Done: compiles
2. **Implement FooSystem** — `Assets/Scripts/Systems/FooSystem.cs`
- MonoBehaviour implementing IFoo
- [SerializeField] private fields for config
- Depends on: step 1
- Done: compiles + can attach to GameObject
3. **Wire into existing BarSystem** — `Assets/Scripts/Systems/BarSystem.cs`
- Add IFoo dependency, call on trigger
- Depends on: step 1, 2
- Done: compiles + integration test passes
4. **Tests** — `Assets/Tests/EditMode/FooSystemTests.cs`
- Test damage calculation, edge cases (zero, negative, overflow)
- Depends on: step 2
- Done: `/qq:add-tests` can implement this coverage without ambiguity, then all tests green
## 跨切面接缝清单 (Cross-cutting Seams)
> Only when `.claude/seams.yml` exists. Seeded from it — one row per fan-out point this change touches. Omit the whole section if the change introduces no new enum/registration/event/config-row.
| 接缝点 | 定位 grep | 是否需改 | 改法 |
|---|---|---|---|
| Crew.GetSkillLevel / GetPrimaryAttribute switch | `rg "case WorkType\." -- Assets/Scripts/.../Crew.cs` | 是 | 新 WorkType 各加一 case;default 仍抛 ArgumentOutOfRangeException |
## Constraints
- What NOT to do (anti-patterns to avoid)
- Assembly definition placement
- Execution order dependencies
- Existing systems that must not break
## Testing Strategy
- EditMode: [what pure logic to test]
- PlayMode: [what integration to test]
## Open Questions
- Anything unresolved that might change the planGet branch name: git branch --show-current | tr '/' '_'
Save to Docs/qq/<branch-name>/<feature-name>_implementation.md.
After saving the plan, record key technical decisions:
qq-decisions.py add --project . --phase plan --key "<decision>" --value "<choice>" --reason "<why>"Record architecture choices, pattern decisions, key interface designs.
Plan review is mandatory before execution. Do NOT offer /qq:execute directly.
First, check if Codex CLI is available by running which codex 2>/dev/null || where codex 2>/dev/null.
/qq:codex-plan-review (cross-model review catches blind spots that same-model review misses)/qq:claude-plan-review`--auto` mode: run qq-execute-checkpoint.py pipeline-advance --project . --completed-skill "/qq:plan" --next-skill "/qq:codex-plan-review" --plan-doc "<saved-plan-path>", then run the check and invoke the appropriate review skill with --auto.
Before saving the plan, verify:
If any check fails, fix the plan before saving.
/qq:execute — ordered steps with file paths and done criteria/qq:add-tests can implement them without re-planning/qq:tech-research to search for proven approaches before committing to one in the plan.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.