
Ship Shit Dev Skills

164 AI agent skills for development workflows. Works with Claude Code, OpenAI Codex, and Cursor.
Skills are model-agnostic playbooks: the harness supplies the model, so no skill names a concrete model — orchestrators speak in capability tiers, and each repo's routing block maps tiers to models. Enforced by scripts/validate-skill-sync.sh; standards live in .agents/memory/system/skill-standards.md.
Directory Structure
skills/
├── skills/ # All skills (164)
├── commands/ # All commands (30)
├── bundles/ # Generated marketplace bundles
├── .agents/ # Repo management, memory, meta-skills
│ ├── memory/ # Repo decisions, context, and system docs
│ ├── sessions/ # Historical session logs
│ └── skills/ # Meta-skills for maintaining this repo
├── .claude/ # Claude Code adapters (agents, rules)
└── scripts/ # Validation, generation, migration
What's Included
- The Dev Loop: a board-driven autonomous workflow that ships software with
gh + Claude + Codex.
- Engineering Workflows: code review, debugging, QA, release, GitHub triage,
branch cleanup, production audit, and CI repair.
- Implementation Specialists: frontend, backend, infrastructure, security,
testing, payments, and workspace setup skills.
- Agent Engineering: context engineering, memory systems, evaluation,
multi-agent patterns, MCP building, and prompt/tool design.
- Maintenance Tooling: scripts that validate skills, regenerate bundles, and
keep the marketplace catalog aligned with source.
The Dev Loop — ship software with gh + Claude + Codex
The flagship workflow: a board-driven autonomous dev loop that turns a GitHub
issue into a reviewed PR, with you as architect/reviewer. It is the open, gh-driven
version of ShipCode's pipeline — same stages, no app required.
- Plan (human):
feature-intake → prd-writer / writing-plans write the PRD
and implementation plan onto the issue.
- Dispatch (human opt-in): apply
dispatch:claude (Claude lane),
dispatch:codex (Codex lane), or dispatch:openrouter (OpenRouter lane) to a
Backlog issue.
- Execute (AI): the loop claims it → In Progress → branch → implement →
qa-reviewer + tests → PR, advancing loop:* phase labels as it goes.
- Review (human): the PR lands in Human Review, auto-assigned to you. Merge =
Done; reject = back to Backlog.
Board columns are for humans (Backlog · In Progress · Human Review · Done ·
Deferred); the AI loop's sub-phases ride as loop:* labels. Status is the GitHub
Projects board Status field — the single source of truth.
# 1. Install the dev-loop bundle (every skill the loop needs)
/plugin marketplace add shipshitdev/skills
/plugin install shipshitdev-dev-loop@shipshitdev
# 2. Provision your repo: labels + board + workflows + secrets (idempotent)
bash scripts/setup-dev-loop.sh # --dry-run to preview
# 3. Write your repo's routing block (tracker + labels + domain). In Claude Code:
/setup-agent-routing
# 4. Drive it
/loop # Phase 1: local pull (Claude lane)
# …or apply dispatch:claude / dispatch:codex to fire Phase 2 (GitHub Actions)
Full reference: .agents/memory/system/ai-dev-loop.md.
Installation
Quick Install (Recommended)
# Install all skills globally for Claude Code, Codex, and Cursor
npx skills add shipshitdev/skills -g --agent claude-code codex cursor --skill '*' -y
# Install specific skills
npx skills add shipshitdev/skills -g --skill stripe-implementer -y
# List available skills
npx skills add shipshitdev/skills --list
Do NOT use --all — it installs to every agent the CLI knows about (30+).
Always use --agent to target only the agents you use.
Project-local Install
npx skills add shipshitdev/skills --agent claude-code codex cursor
Claude Code Plugin (Alternative)
/plugin marketplace add shipshitdev/skills
/plugin install shipshitdev-dev-loop@shipshitdev
/plugin install shipshitdev-dev-workflow@shipshitdev
/plugin install shipshitdev-github@shipshitdev
/plugin install shipshitdev-testing@shipshitdev
/plugin install shipshitdev-security@shipshitdev
Platform setup boundary
The portable workflow source is always skills/<name>/SKILL.md. Platform entry
surfaces should route to that source instead of copying it.