Ship a one-command /git-agent:ship-pages that takes a user's plans gallery ( docs/plans/ ) and social-share gallery ( docs/media/social/ ) live on GitHub Pages — or any static host — scaffolding every first-run prerequisite so publishing works in any repo with zero manual setup.
Read and implement all steps in the plan at docs/plans/add-ship-pages-skill.md — Add a ship-pages skill — one-command publish for plans & media galleries. Verify against the plan's Tests, Verification, and Acceptance Criteria before reporting done. If everything passed, mark completion in docs/plans/add-ship-pages-skill.md — tick each step's [x] marker and each criterion's - [x], set status: completed — and re-render the HTML from the spec. If any check failed, leave status: in-progress and say which.
More ways to run this plan — goal & workflow prompts, file path
Achieve this goal: Add a ship-pages skill — one-command publish for plans & media galleries. The plan at docs/plans/add-ship-pages-skill.md describes one approach — use it as reference, but optimize for the outcome. Fan out across parallel subagents where that serves the outcome. Verify against the plan's Tests, Verification, and Acceptance Criteria before reporting done. If everything passed, mark completion in docs/plans/add-ship-pages-skill.md — tick each step's [x] marker and each criterion's - [x], set status: completed — and re-render the HTML from the spec. If any check failed, leave status: in-progress and say which.
Run a workflow to implement the plan at docs/plans/add-ship-pages-skill.md — Add a ship-pages skill — one-command publish for plans & media galleries. Brief subagents with the plan file at docs/plans/add-ship-pages-skill.md. Reserve a final verification phase for the lead agent, not a subagent. Verify against the plan's Tests, Verification, and Acceptance Criteria before reporting done. If everything passed, mark completion in docs/plans/add-ship-pages-skill.md — tick each step's [x] marker and each criterion's - [x], set status: completed — and re-render the HTML from the spec. If any check failed, leave status: in-progress and say which.
add-ship-pages-skill.html
docs/plans/add-ship-pages-skill.html
docs/plans/add-ship-pages-skill.md
Context
The story behind this plan — what prompted the work and why it matters now.
Publishing today is a three-stage pipeline split across plugins: plan-agent + social-media-tools generate gallery HTML into docs/ , git-agent commits and pushes, and a GitHub Actions workflow auto-deploys docs/ to Pages. No single tool chains generate → commit → push → deploy .
Worse, that automatic deploy only works because this repo already ships .github/workflows/deploy-pages.yml and docs/.nojekyll . A plugin user's own repo has none of that scaffolding — so "just push docs/" silently fails to publish.
ship-pages closes the gap by orchestrating the existing gallery and git skills and scaffolding the missing Pages prerequisites, with a --static escape hatch that treats docs/ as a portable bundle for Netlify, Vercel, Cloudflare Pages, or S3. It lives in git-agent (next to ship ) and is command-only, mirroring ship 's deliberate, manual-invoke posture. It locates the plans gallery through the same plansDirectory resolution as plans-library (project → global settings, fallback docs/plans/ ), so it publishes from wherever plans are configured to live.
Files that change
Every file this plan touches, and what happens to each one.
kit/plugins/git-agent/skills/ship-pages/SKILL.mdnew the command-only ship-pages skillassets/deploy-pages.ymlnew bundled Pages workflow template- kit/plugins/git-agent/
CHANGELOG.mdmodified v3.12.0 entryREADME.mdmodified document /git-agent:ship-pages
.claude-plugin/marketplace.jsonmodified bump git-agent to 3.12.0tests/plugins/test-ship-pages.shnew smoke + scaffold testsCLAUDE.mdmodified update git-agent row in plugins table
Steps
The step-by-step work, in order — each step says what to do, why it matters, and how to check it worked.
Tests
The tests that prove the change does what it promises.
Definition of done
The plan counts as done when every statement below is true — check each one off as you verify it.
Final check
One last pass to confirm the whole change works end to end.
Load git-agent locally ( claude --plugin-dir ./kit/plugins/git-agent ) in a checkout that has docs/plans/ plans and docs/media/social/ cards. Run /git-agent:ship-pages and confirm it: (1) rebuilds only stale galleries, (2) scaffolds deploy-pages.yml , docs/.nojekyll , and docs/index.html when absent, (3) enables Pages via gh api or prints fallback steps, (4) opens a PR whose diff is limited to docs/ + the workflow file, and (5) prints https://<owner>.github.io/<repo>/ . Run /git-agent:ship-pages --static and confirm it skips all scaffolding and prints docs/ -based Netlify/Vercel/Cloudflare/S3 commands. Finally run bash tests/plugins/test-ship-pages.sh and confirm it exits 0.
Wrapping up
Three gates that must all pass before this plan is marked completed.
Completion Report
No items to report — all requirements met.