code-simplification
Use after implementing features, before claiming a phase is complete, when reviewing AI-generated code, or when code feels overly complex. Also use when you…
Import a spec-kit feature spec into Shipyard, replacing brainstorming. Use when a spec-kit feature directory exists with spec.md.
$ npx -y skills add lgbarn/shipyard --skill import-spec --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/import-specContext preview
The summary Claude sees to decide when to auto-load this skill.
Import a spec-kit feature spec into Shipyard, replacing brainstorming. Use when a spec-kit feature directory exists with spec.md.
name: import-spec description: Import a spec-kit feature spec into Shipyard, replacing brainstorming. Use when a spec-kit feature directory exists with spec.md. argument-hint: "[feature-path] — path to spec-kit feature directory (e.g. specs/003-chat-system)"
You are executing the Shipyard spec-kit import workflow. This replaces `/shipyard:brainstorm` when you have already created a spec using spec-kit. Follow these steps precisely.
<prerequisites>
1. Verify `.shipyard/` directory exists. If not, tell the user to run `/shipyard:init` first, then stop. 2. Verify the feature path exists and contains `spec.md`. If `spec.md` is missing, tell the user: "spec.md not found in `<feature-path>`. Run `/speckit.specify` first to generate the feature spec." and stop. 3. Inventory which artifacts exist — note which are present for use in later steps:
If `.shipyard/PROJECT.md` already exists, use `AskUserQuestion` to ask: > "A project definition already exists in `.shipyard/PROJECT.md`. What would you like to do?"
</prerequisites>
<execution>
Read `<feature-path>/spec.md` and extract the following to write `.shipyard/PROJECT.md`:
**Mapping rules:**
**Handle `[NEEDS CLARIFICATION]` markers:** If spec.md contains unresolved `[NEEDS CLARIFICATION: ...]` markers, list them in a `## Open Questions` section at the bottom of PROJECT.md and notify the user: "The imported spec has N unresolved clarification items — see Open Questions in PROJECT.md."
**Write `.shipyard/PROJECT.md`** using this structure:
# [Project Name] ## Description [1-2 paragraphs] ## Goals 1. [Goal from US1 — P1] 2. [Goal from US2 — P2] ... ## Non-Goals - [explicit exclusions or "Not yet defined"] ## Requirements ### [User Story 1 Title] - [requirement derived from acceptance scenario 1] - [requirement derived from acceptance scenario 2] ### [User Story 2 Title] ... ## Non-Functional Requirements - [extracted constraints] ## Success Criteria - [from US1 Independent Test] - [from US2 Independent Test] ## Constraints - [from constitution.md principles, if present] - [technical constraints from plan.md, if present] ## Open Questions - [any [NEEDS CLARIFICATION] items from spec.md]
Check if `.shipyard/ROADMAP.md` already exists.
**If plan.md exists (and ROADMAP.md does not exist or user chose Replace):**
Follow **Model Routing Protocol** (select the correct model for each agent role using `model_routing` from config; see `docs/PROTOCOLS.md`) -- read `model_routing` from config for architect model selection.
Dispatch an **architect agent** (subagent_type: `"shipyard:architect"`) with:
Present the roadmap to the user for approval. Allow up to **2 revision cycles**. After approval, finalize.
**If plan.md does not exist:** Offer to dispatch the architect with PROJECT.md alone (same as `/shipyard:brainstorm` step 5). Ask: "No plan.md found. Generate a roadmap from the project definition alone?"
**If ROADMAP.md already exists:** Ask: "ROADMAP.md already exists. Replace it using plan.md?" (Yes / Keep exist
A Claude Code plugin for structured project execution. Plan work in phases, build with parallel agents and TDD, review with security audits and quality gates, and ship with confidence.
Repo: lgbarn/shipyard
Use after implementing features, before claiming a phase is complete, when reviewing AI-generated code, or when code feels overly complex. Also use when you…
Use when shipping features with public interfaces that lack docs, generating documentation, updating README files, writing API docs, creating architecture…
Use when starting feature work that needs a branch, creating worktrees for isolation, making atomic commits during development, or completing a development…
Import a handwritten spec document into Shipyard, replacing brainstorming. Use when a freeform spec, requirements, or design document exists.
Use when working with Terraform (.tf, .tfvars), Ansible (playbooks, roles, inventory), Docker (Dockerfile, docker-compose.yml), Kubernetes (manifests, Helm…
Use when a phase or milestone is complete and you need to extract reusable knowledge, before shipping, or when reflecting on completed work. Also use when the…