startlisted
Install: claude install-skill iansmith/slopstop
# /slopstop:start
Start or resume work on a ticket.
**On fresh-start:** transitions to In Progress, creates `<type>/$ARGUMENTS` branch (e.g. `fix/MAZ-99`), seeds tracking files at `$TRACKING_DIR/<TICKET>/`.
**On resume:** reads tracking dir, prints summary, appends session header. No ticket-system call, no git.
Auto-detects ticket system (JIRA via Atlassian MCP, Linear via Linear MCP, GitHub via GitHub MCP or `gh` CLI).
## Project scope
Read `.project-conf.toml` from cwd; if absent, fall back to the main worktree at `dirname "$(git rev-parse --git-common-dir)"`. Extract `$PREFIX` (`prefix` field), `$OWNER` and `$REPO` (split `key` on `/`), and `system` (`linear` | `jira` | `github`). Stop with a clear error if `prefix` is absent; stop if it doesn't match `^[A-Za-z][A-Za-z0-9]*$`. Only operate on `$PREFIX`'s tickets — the branch-IS-selection parser only matches `$PREFIX-\d+`.
Resolve `$TRACKING_DIR` and `$ARCHIVE_DIR` **together**, via the shared resolution ladder.
`:start` also owns that reference's **layout-mismatch check** — run it on the fresh-start
path, before Step 6 seeds anything. It reports and continues; it never relocates state:
→ Read `~/.claude/commands/slopstop-start-refs/tracking-dir-resolution.md`
Also read the remote config (both optional, default `"origin"`):
- `$PR_REMOTE` = `pr-remote` if present, else `"origin"`. Used when checking/fetching a remote branch (Steps 5a–5b).
- `$ORIGIN_REMOTE` = `origin-remote` if present, else `"origin"`. Used as