updatelisted
Install: claude install-skill sebastiandev/atelier
# Update — sync the working copy with main
Brings a contributor's checkout up to date end-to-end: code, deps, on-disk state, plus a clear pointer for whatever needs a manual restart. Designed to be safe to run with a backend currently up — but the user has to actually stop/restart it themselves (we don't kill processes we don't own).
## Steps
### 1. Confirm the working tree is safe to pull
Run:
```bash
git status --short
git rev-parse --abbrev-ref HEAD
```
- If the branch isn't `main`, ask the user whether to switch first or update the current branch (`git pull --rebase origin <branch>`).
- If the working tree has uncommitted changes, surface them and ask before pulling. Don't `git stash` automatically — the BC rule in `CLAUDE.md` covers user state, and a stash is one more thing the user has to remember to restore.
### 2. Pull
Capture HEAD before pulling so subsequent steps can detect a no-op:
```bash
PRE_HEAD=$(git rev-parse HEAD)
git pull --ff-only origin main
POST_HEAD=$(git rev-parse HEAD)
```
If `git pull` fails (diverged branch), fall back to `git pull --rebase origin main` and surface any merge conflicts to the user — don't try to resolve them blindly.
**"Already up to date" is not a reason to stop.** If `PRE_HEAD == POST_HEAD` the local branch was already at `origin/main` — but the user may have pulled manually since the backend last started, leaving FS migrations un-run or DB migrations un-applied. Continue to steps 3-5 regardless. The skills are idempoten