st-setuplisted
Install: claude install-skill haingt-dev/agent
# ST Setup — Character Onboarding
One command to fully onboard a new SillyTavern character: extract visual baseline from card data, set char_prompts, audit SD settings, generate 28 expression sprites, create World Info lorebook.
**Usage:**
```
/st-setup Parasite # baseline + audit only
/st-setup Parasite --adv # + redistribute description into Advanced Definition fields (PNG patch)
/st-setup Parasite --expr # + generate 28 expression sprites
/st-setup Parasite --lore # + create World Info lorebook
/st-setup Parasite --all # all features (--adv + --expr + --lore)
/st-setup --audit # settings audit only, no char
```
## Constants
```
ST_DATA = /home/haint/Projects/home-server/sillytavern/data/default-user
ST_SCRIPTS = /home/haint/Projects/home-server/scripts
FORGE_URL = http://localhost:7860
```
## Critical Gotcha
ST's `getCharaFilename()` strips `.png` extension before key lookup in `character_prompts`. Key MUST be `"Parasite"` not `"Parasite.png"`. Source: `utils.js:1349` regex `/\.[^/.]+$/`.
---
## Phase 0: Parse Arguments
Extract from `$ARGUMENTS`:
- `CharName` = first non-flag token (e.g., `"Parasite"`)
- Flags: `--adv`, `--expr`, `--lore`, `--all` (enables `--adv` + `--expr` + `--lore`), `--audit`
Resolve flags:
- `adv = '--adv' in args or '--all' in args`
- `expr = '--expr' in args or '--all' in args`
- `lore = '--lore' in args or '--all' in args`
Validate:
- If `--audit` only: skip to Phase 2 audit step
- If CharName gi