skills/ship-faster/skills/workflow-ship-faster/SKILL.md
Ship Faster end-to-end workflow for small web apps (default: Next.js 16.1.1): idea/prototype → foundation gate → design-system.md → lightweight guardrails + docs → feature iteration → optional Supabase + Stripe → optional GitHub + Vercel deploy → optional AI-era SEO (sitemap/robots/llms.txt). Resumable, artifact-first under runs/ship-faster/ (or OpenSpec changes/). Trigger: ship/launch/deploy/production-ready MVP.
npx skillsauth add enuno/claude-command-and-control workflow-ship-fasterInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
The goal of this chain is: Ship an idea or small prototype to production-ready state in the shortest time, while maintaining iteration speed afterward.
Use this workflow when the user wants an end-to-end chain like:
..._path.tasks.md via - [ ] → - [x] (not in chat).foundation.md, deploy-vercel.md, etc.) when needed—avoid loading all details at once.tool-hooks-doctor once at the start of the session; if hooks are missing, offer to install project-level hooks (continue either way).Inputs (paths only):
repo_root: project root (default ".")run_dir (active run directory) if the user already has oneOutputs (artifacts, written under run_dir/):
proposal.md, tasks.md, context.jsondesign.md, evidence/, logs/Canonical contract (backends, templates, read order, auto-archive):
run_dir/ (see the deterministic backend rules in references/artifact-contract.md).proposal.md, tasks.md, context.jsontasks.md, ensure:
status: active|blocked|done field near the topevidence/ and logs/ when you actually have large outputs to store.Problem this solves: a run summary that marks core steps as “skipped” without the user ever choosing to skip them is misleading and hard to audit.
Ask the user to select a scope before executing steps beyond build checks:
Rules:
context.json (add/update a scope field).tasks.md, do not mark a default step as “skipped” unless the user explicitly requested skipping it.
disabled (scope=...) with a short reason under a “Scope / Disabled steps” sectiontasks.md firstProblem this solves: people jump straight into “implement a feature” and end up with a very basic MVP that’s hard to demo.
Run this step if any of these are true:
proposal.md is missing clear acceptance criteria and non-goalsHow:
workflow-brainstorm using the same repo_root + this run_dir.evidence/YYYY-MM-DD-kickoff-design.mdproposal.mdcontext.json (ensure need_database/need_billing/need_deploy/need_seo are explicitly set)Principle: a prototype that feels real needs at least one “demo moment” (tastefully showy, not gimmicky).
Examples of “demo moment” (pick 1, keep it small):
Workflow:
evidence/feature-00-demo-moment.mdmode: plan-only, feature_slug: demo-moment, and quality_bar: demo-readyworkflow-feature-shipper to generate the plan only (no implementation yet).Dynamically adjust execution order based on context.json content:
context.json has "need_database": truecontext.json has "need_billing": true or "need_stripe": truecontext.json has "need_auth": true or "auth": truecontext.json has "need_deploy": true or user explicitly requests deploymentcontext.json has "need_seo": true or project is already liveBefore starting each optional step:
context.json (and your chosen scope) to decide whether the step appliestasks.md (so resume/audit doesn’t require chat history)Open and follow: foundation.md.
Artifact requirements (minimum):
evidence/foundation.md (current state + risk assessment + chosen route)tasks.md: add a Foundation checklist section (tasks + verification commands)tasks.md and wait for confirmationBranch rules (important):
Call tool-design-style-selector: Scan project intent and persist design-system.md.
Confirmation point: After user confirms style, deploy design-system.md, and enter 2.5 UI/UX Implementation (default required; if user explicitly skips, log reason).
Goal: Make design-system.md actually reflected in the interface, not "wrote spec but UI unchanged".
Recommended approach: Treat "redo UI/UX per design-system.md" as an independent feature and hand to workflow-feature-shipper:
design-system.md (as sole design constraint) + current UI page list (from code scan)evidence/features/<feature_slug>-plan.md (scope/acceptance criteria/non-goals/risks/rollback) + code changesDefault enrichment (when installed):
tool-ui-ux-pro-max is installed, use it to enrich the UI/UX plan with concrete palette/typography/UX guardrails, and use its pre-delivery checklist as acceptance criteria.tool-ui-ux-pro-max enrichment if the user explicitly asks to skip it (e.g., “don’t over-design / keep it simple”), and log the reason.For large-scale refactoring: add an Approval item to tasks.md first and wait for user confirmation before implementing.
Open and follow: guardrails.md.
Artifact: tasks.md (Guardrails checklist section)
Problem this solves: many starter projects imported from Google AI Studio / v0 / Lovable ship with vendor branding, broken remnants (like importmap), and misleading README instructions.
Open and follow: cleanup-traces.md.
Artifacts:
evidence/trace-scan.mdtasks.md (Trace cleanup checklist section)Open and follow: docs-baseline.md.
Artifact: tasks.md (Docs checklist section, plus project README update)
Call workflow-feature-shipper:
evidence/features/<feature_slug>-plan.md (with acceptance criteria/non-goals)review-quality for a conclusive review + verdictreview-quality is the single entry point and will auto-triage: if React/Next.js performance risk is detected, it will also run review-react-best-practices (CRITICAL rules first)Auth note (optional): if a feature includes login/session/permissions and tool-better-auth is installed, call it before implementation to lock down session strategy, redirects, cookies/CSRF, and middleware boundaries. Persist:
evidence/auth-plan.mdevidence/auth-summary.mdExecution condition: context.json has "need_database": true or "database": "supabase"
Open and follow: supabase-integration.md.
Execution condition: context.json has "need_billing": true or "need_stripe": true or "payment": true
Open and follow: stripe-integration.md.
Execution condition: context.json has "need_deploy": true or "deploy_target" field exists and non-empty
Open and follow: deploy-vercel.md.
Execution condition: context.json has "need_seo": true or "seo": true, or step 8 completed successfully (already deployed)
Open and follow: ai-seo-nextjs.md.
Write to: final.md (in the run root), at minimum include:
And wrap up:
tasks.md status to done, and fill the Delivery summarypython3 ~/.claude/skills/workflow-ship-faster/scripts/auto_archive.py --run-dir "<run_dir>"active/<run_id>/ → archive/YYYY-MM-DD-<run_id>/skill-evolution Evolution checkpoint (3 questions); if user chooses "want to optimize", run skill-improver based on this run_dir to produce minimal patch suggestionstools
MemPalace local-first AI memory system. Use when setting up persistent memory for Claude Code sessions, mining project files or conversation transcripts, querying past context, configuring MCP tools, managing the knowledge graph, or troubleshooting palace operations.
tools
LangSmith Python SDK — trace, evaluate, and monitor LLM applications. Covers @traceable decorator, trace context manager, Client API, evaluate() / aevaluate(), comparative evaluation, custom evaluators, dataset management, prompt caching, ASGI middleware, and pytest plugin.
development
LangGraph (Python) — build stateful, controllable agent graphs with checkpointing, streaming, persistence, interrupts, fault tolerance, and durable execution. Covers both Graph API (StateGraph) and Functional API (@entrypoint/@task).
development
LangGraph Graph API (Python) — build explicit DAG agent workflows with StateGraph, typed state, nodes, edges, Command routing, Send fan-out, checkpointers, interrupts, and streaming. Use when you need explicit control flow and graph topology.