What it’s for
The rules a project follows when agents write code tend to get copied from
repository to repository and drift apart. Shipyard splits them into two
pieces: a Claude Code plugin with skills and a repository template with the
process files. A fix to a skill reaches every project through
/plugin update.
The shipyard plugin
Six skills, each firing at its own moment:
- task-stack keeps the task stack: before any task bigger than a one-line fix, when a task blocks and when one ships.
- lane-discipline keeps parallel agents from colliding.
- ci-gates tells a green pull request from one that only looks green and finds required checks that never ran.
- issue-bookkeeping reconciles the issue tracker with what reached main.
- deploy-verify puts a release on a host and checks which version the host runs.
- release-audit audits the product before a release.
The /bootstrap command sets up a fresh repository from the template once:
it fills the placeholders, writes the first ADR and opens the first task.
Skills read project facts from named sections of CLAUDE.md. When a section
is missing, the skill stops and says so instead of running on an empty
default.
The project-skeleton template
A GitHub template that gives a project its process on the first commit and nothing else: no framework, no package manager, no linter.
specs/tasks/is the task stack, one file per task, with no shared index for branches to collide on..claude/CLAUDE.mdholds a five-rule working agreement and the sections the skills read.- A Conventional Commits check for PR titles in POSIX shell, with its own tests.
docs/adr/keeps architecture decision records.
Monorepos get a separate plugin, shipyard-monorepo. It’s optional: shipyard
runs without it.
Getting started
gh repo create my-project --template kkucherenkov/project-skeleton --private --clone
Then, in a Claude Code session:
/plugin marketplace add kkucherenkov/shipyard
/plugin install shipyard
/bootstrap