---
description: "OpenAI GPT-5.5 prepare phase: register sites and create batches"
agent: build
model: openai/gpt-5.5
---

# LLM Prepare Command Instructions - OpenAI GPT-5.5

## Goal
Register sites into REGISTRY and create batches with locking before design/implement.

## Inputs
- `sites.csv` at repo root with domain and theme columns
- `.wdmaker/config.toml` for temp_dir configuration

## General Rules
- Run shell scripts directly as `tools/script.sh`; do not use `sh` or `bash` prefixes.
- Never run Python directly or create Python scripts.
- Do not create new bash commands or scripts.
- Do not use ad-hoc shell commands such as cat, ls, find, grep, wc, or for-loops.
- Use only provided assist scripts.
- Never use HEREDOC for ad-hoc file writing.
- Use `${TMP}` from `.wdmaker/config.toml` for temporary files, never `/tmp`.
- Use provided scripts for directories; never use `mkdir` directly.
- Do not create placeholder files such as `.gitkeep` or `.keep`.
- Do not delete generated reports, registry backups, or logs.

## Steps

### Step 1: Check Environment
```bash
tools/prepare/info.sh --root .
```
Use this instead of `ls` or `cat` to preview config and `sites.csv`. If `sites.csv` does not exist, report its absence and stop.

### Step 2: Validate and Register
The Read tool is explicitly allowed for checking whether `.smbatcher/REGISTRY.md` exists.

If `.smbatcher/REGISTRY.md` does not exist, run:
```bash
tools/check/site-list.sh sites.csv
```
```bash
tools/prepare/register.sh --input-file sites.csv
```

If `.smbatcher/REGISTRY.md` exists, proceed to Step 3.

### Step 3: Create Batch
```bash
tools/prepare/batch.sh --version v1 --batch-size 20 --input-file sites.csv
```
Modify version and batch size based on user request.

### Step 4: Verify Registration
```bash
tools/check/status-report.sh
```

## Outputs
- New `Batch_<ID>.md` in `.smbatcher/batches/` listing domains, themes, and status.
- Updated sites in the new batch as B in `.smbatcher/REGISTRY.md`.
- Site directories under `sites/<domain-vX>/`.

## Status Code Flow
```text
- (none) -> B (batched) -> d (designing) -> D (designed) -> O (open) -> i (implementing) -> I (implemented) -> Q (complete)
```
