# /ork:dev — bringing it up to skill conventions

The Lane B initial PR shipped a SKILL.md describing a 9-step boot but no executable scripts. Every other user-invocable skill ships scripts/ + rules/ + test-cases.json. This PR closes the gap.

## Compliance audit (before vs after)

Required | expect | cover | implement | commit | dev (before) | dev (after)
--- | --- | --- | --- | --- | --- | ---
SKILL.md | ✓ | ✓ | ✓ | ✓ | ✓ | ✓
references/ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓
scripts/ | ✓ | — | ✓ | ✓ | ✗ | ✓ (3)
rules/ | ✓ | — | ✓ | ✓ | ✗ | ✓ (6)
test-cases.json | ✓ | ✓ | ✓ | ✓ | ✗ | ✓ (10 cases)

## What changed in src/skills/dev/

### Before this PR

SKILL.md only describes the contract
├── SKILL.md
└── references/
├── boot-sequence.md
└── state-schema.md
No scripts
No rules
No test cases

### After this PR

Full skill structure
├── SKILL.md
├── test-cases.json (10 cases)
├── references/
│ ├── boot-sequence.md
│ └── state-schema.md
├── scripts/
│ ├── boot.sh (executable, idempotent)
│ ├── stop.sh (SIGTERM reverse, SIGKILL fallback)
│ └── status.sh (--quiet for liveness only)
└── rules/
├── _sections.md, _template.md
├── lab-stack-prerequisites.md (CRITICAL)
├── branch-named-subdomain.md (HIGH)
├── idempotent-boot.md (HIGH)
└── teardown-order.md (MEDIUM)

## scripts/status.sh smoke test (run locally during this PR)

    $ bash src/skills/dev/scripts/status.sh
    ork:dev — no state file. Run /ork:dev to boot.
    (exit 1 — expected, no state)

    $ bash src/skills/dev/scripts/status.sh --quiet
    (exit 1, no output — used by boot.sh idempotency)

## 3 stale doc strings also fixed (drift caught while auditing)

    docs/getting-started/installation.mdx:36
    - Skills:     106 loaded (26 commands, 80 reference)
    + Skills:     107 loaded (27 commands, 80 reference)

    docs/skills/overview.mdx:156
    - Of OrchestKit's 107 skills, **26 are user-invocable**
    + Of OrchestKit's 107 skills, **27 are user-invocable**

    docs/reference/index.mdx:13
    - Card description: "Reusable knowledge modules — 26 commands + 80..."
    + Card description: "Reusable knowledge modules — 27 commands + 80..."

## Why this matters

A skill without scripts is a contract without an implementation — every invocation requires the model to re-read the SKILL.md and translate prose into shell. Other users-invocable skills ship the shell, then describe it. Now `/ork:dev` matches.

Rules give the AI guardrails it can cite ("per `idempotent-boot.md`, re-running while live is a no-op") instead of relying on prose embedded in SKILL.md. Test cases give golden behaviors that can be eval'd by `/ork:bare-eval`.