From full-orchestration
Run the full software engineering pipeline from ticket to PR. Use when starting a feature, fixing a bug from a ticket, or driving end-to-end development from a Jira, Linear, or GitHub issue. Accepts a ticket ID or URL as argument and orchestrates intake, spec design, TDD implementation, code review, and PR creation with approval gates at each stage.
npx claudepluginhub shouenlee/ghcp-dev-plugin --plugin full-orchestrationThis skill uses the workspace's default tool permissions.
You give it a ticket ID. It gives you a reviewed PR.
Orchestrates development pipeline for bugs, features, tasks: classify work, discover ticket/branch, brainstorm design, plan tasks, execute build/test, review, ship PR. Use when starting dev work.
Fetches next ready_to_develop ticket via Board API or Supabase, creates feature/fix/chore branch, implements autonomously through build, code review, QA, docs checks, and ships without stopping.
Orchestrates full dev cycle in isolated git worktree: task understanding, TDD implementation, quality review, draft PR, CI/CD monitoring to merge-ready PR. Explicit invoke via /developer-workflow:implement-task.
Share bugs, ideas, or general feedback.
You give it a ticket ID. It gives you a reviewed PR.
/swe PROJ-123
/swe https://github.com/org/repo/issues/42
Parse the first positional argument:
PROJ-123, #42) → use directlyStep 0 — Check plugin dependencies:
Verify /deep_review is available (required for Stage 3). If unavailable, stop and show: /plugin install deep-review@ghcp-dev-plugin.
Step 1 — Detect target branch:
gh repo view --json defaultBranchRef --jq '.defaultBranchRef.name'
Fallback: git symbolic-ref refs/remotes/origin/HEAD, then default to main.
Step 2 — Ensure feature branch:
current=$(git branch --show-current)
If on the target branch, ask user to confirm creating feat/{ticket-id}. If on a different branch, use it as the feature branch.
Step 3 — Create directories:
mkdir -p .claude/swe-state/{ticket-id}
mkdir -p .claude/specs
Step 4 — Write full state file to .claude/swe-state/{ticket-id}.json:
Read the template from state-template.json in this skill's directory (find it via **/swe/state-template.json). Replace all {ticket-id} placeholders with the actual ticket ID, {detected} with the target branch, and {current-or-created} with the feature branch. Write the populated JSON to the state file path.
This is the single source of truth for the pipeline. All file paths are pre-populated — downstream skills read paths from state, never construct them. Fields with null, false, 0, or [] are populated by the owning stage.
Pipeline runs 4 stages in order: intake → spec → implement_and_review → pr
For each stage in order:
## Stage {N}: {Name}current_stage and status: "in_progress" in state| Stage | Skill |
|---|---|
intake | /ticket_intake {ticket-id} |
spec | /spec_writer {ticket-id} |
implement_and_review | /implement_and_review {ticket-id} |
pr | /pr_create {ticket-id} |
status: "failed", report which stage failedstatus: "aborted", exitEach skill handles its own user interaction and state writes.
## Pipeline Complete
**Ticket:** {ticket-id}
**PR:** {pr-url}
**State:** .claude/swe-state/{ticket-id}.json
Set status: "completed".
Tip: Use
/swe_status {ticket-id}at any time to check pipeline progress.