ship-clilisted
Install: claude install-skill aiskillstore/marketplace
## Rules
1. **NEVER run via bash:** `jj`, `gh pr`, `git`, `ship`, `pnpm ship` - use the `ship` tool instead
2. **ALWAYS use `workdir` parameter** for all commands when in a workspace
3. **NEVER ask user to `cd`** - use `workdir` instead
4. **On webhook events:** Notify user and ask confirmation BEFORE acting
---
## Workflow
### Start Task
```
ship: action=stack-sync # Get latest trunk
ship: action=ready # Find work
ship: action=start, taskId=<id> # Mark In Progress (Linear only)
ship: action=stack-create, message="<type>: <short description>", bookmark="user/<id>-slug"
# Store workspace path from output, use for all subsequent workdir params
bash: command="pnpm install", workdir=<workspace-path>
```
### Do Work
- Use `workdir=<workspace-path>` for ALL bash and ship commands
- Make changes, run quality checks (lint, format, typecheck)
### Update Commit Message (for multi-line)
```
ship: action=stack-describe, title="<type>: <subject>", description="<body>", workdir=<path>
```
Use `title` + `description` params for proper multi-line commits (NOT `message` with `\n`).
### Submit Work (MANDATORY - do not skip)
```
ship: action=stack-sync, workdir=<path> # Rebase on trunk
ship: action=stack-submit, workdir=<path> # Push + create PR (auto-subscribes to webhooks)
ship: action=done, taskId=<id> # Mark complete ONLY after PR exists
```
---
## Webhook Events
When you receive `[GitHub] ...` notification