aitk-sandbox-checklisted
Install: claude install-skill erclx/toolkit
# Sandbox check
Manual guard after editing a plugin skill or a domain script. Reports whether each changed item has a paired scenario edit, re-provisions changed scenarios, and prints the re-test command for the user to launch.
## Guards
- If the current branch is `main` or `master`, stop: `❌ On main. Checkout a feature branch first.`
- If both `git diff "$(git merge-base main HEAD)" --name-only -- 'claude/skills/**/SKILL.md' '.claude/skills/**/SKILL.md'` and `git diff "$(git merge-base main HEAD)" --name-only -- 'scripts/**' 'src/**'` are empty, stop: `✅ No skill or script changes since main.`
## Step 1: collect changed files
Run in parallel from the worktree root:
```bash
git diff "$(git merge-base main HEAD)" --name-only -- 'claude/skills/**/SKILL.md' '.claude/skills/**/SKILL.md'
```
```bash
git diff "$(git merge-base main HEAD)" --name-only -- 'scripts/**' 'src/**'
```
```bash
git diff "$(git merge-base main HEAD)" --name-only -- 'scripts/sandbox/**/*.sh'
```
```bash
pwd
```
The first list is the changed skills, both plugin (`claude/skills/`) and internal (`.claude/skills/`). The second list is the changed scripts (`scripts/`, `src/`). The third is the changed sandbox scenarios. The fourth is the current root, whether that is main or a linked worktree. `.sandbox/` lives under whichever root ran `manage-sandbox.sh`, because the script resolves `PROJECT_ROOT` from its own path.
Drop any path in the script list that already appears in the scenario list. Scenario e