---
description: Initialises the ShipMate pipeline in the current project. Creates the stories folder, sets up the pipeline state directory, and runs the initial codebase scan to generate project-doc.md and AGENTS.md.
argument-hint: "[--force]"
---

# ShipMate Setup

You are initialising the ShipMate AI development pipeline in this project for the first time. Walk the user through each step clearly, confirm before taking any action that modifies the project, and verify each step completed successfully before moving to the next.

## What This Creates

```
[project-root]/
├── stories/
│   └── _template.md          ← Story file template
├── AGENTS.md                 ← Generated by the initial scan
└── .claude/
    └── pipeline/             ← Pipeline state and stage outputs
```

The ShipMate agents and commands are provided by the plugin — no files need to be copied.

## Step 1: Confirm Installation

Print this message and wait for the user to confirm before proceeding:

```
🚀 ShipMate Setup

This will add the following to your project:
  • stories/           — story file folder + template
  • .claude/pipeline/  — pipeline state directory
  • AGENTS.md          — generated after initial scan

Proceed? [y/n]
```

If the user says no, exit cleanly: `Setup cancelled. Run /setup when ready.`

## Step 2: Check Prerequisites

1. **Git repository** — check if `.git/` exists in the project root. If not:
   ```
   ⚠️  This project is not a git repository.
   The pipeline uses git diff for delta scans.

   Initialise git now? [y/n]
   ```
   If yes: run `git init`. If no: warn the user that delta scanning will fall back to full scans, then continue.

2. **Existing `stories/` folder** — if it already exists, note it and skip creation.

3. **Existing `.claude/pipeline/` folder** — if it already exists, note it and skip creation.

## Step 3: Create Project Directories

Create the following directories if they do not already exist:

```bash
mkdir -p stories
mkdir -p .claude/pipeline
```

## Step 4: Copy Story Template

Copy `stories/_template.md` from the plugin into `stories/_template.md` in the current project.

If `stories/_template.md` already exists, print a warning and skip — do not overwrite.

## Step 5: Optional Enhancement Plugins

Print this message but do **not** attempt to install anything — these are user-installed:

```
ℹ️  Optional plugins (install manually for better scan quality):

  /plugin marketplace add Lum1104/Understand-Anything && /plugin install understand-anything
  /plugin marketplace add mksglu/context-mode && /plugin install context-mode@context-mode

The pipeline works without them — they improve codebase analysis depth and
protect the context window during large scans.
```

## Step 6: Run Initial Scan

Print:
```
📡 Running initial codebase scan...
   This generates project-doc.md and AGENTS.md.
   Large codebases may take a moment.
```

Invoke the `scan` skill. This will:
- Perform a full scan of the codebase
- Write `.claude/pipeline/project-doc.md`
- Write `AGENTS.md` at the project root

## Step 7: Confirm Setup Complete

Print the completion summary:

```
✅ ShipMate installed successfully!

   Project scanned:  .claude/pipeline/project-doc.md
   Agent guide:      AGENTS.md
   Story template:   stories/_template.md

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  NEXT STEPS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  1. Review AGENTS.md
     Verify the generated project instructions look correct.
     Edit it manually if needed — it won't be auto-overwritten
     unless an architectural change is detected by the scanner.

  2. Write a story
     Copy stories/_template.md → stories/your-story.md
     Fill in the title, description, acceptance criteria, and tasks.
     One task = one pipeline run. Keep tasks focused.

  3. Start the pipeline
     /ship stories/your-story.md

  4. Check progress anytime
     /ship status

  5. Resume after a human checkpoint
     /ship resume

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  HUMAN CHECKPOINTS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  The pipeline pauses once per task — after the architect
  produces the implementation plan. Review the plan at:
  .claude/pipeline/architect-plan.md

  Run /ship resume when ready to start implementation.

  The pipeline also pauses if a 🔴 Critical review issue
  is found. Check .claude/pipeline/review-report.md and
  run /ship resume after resolving.
```
