一键导入
pr-workflow
Create a pull request with review, REQ backlinks, push, and CI handoff.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Create a pull request with review, REQ backlinks, push, and CI handoff.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when the user wants to design, redesign, shape, critique, audit, polish, clarify, distill, harden, optimize, adapt, animate, colorize, extract, or otherwise improve a frontend interface. Covers websites, landing pages, dashboards, product UI, app shells, components, forms, settings, onboarding, and empty states. Handles UX review, visual hierarchy, information architecture, cognitive load, accessibility, performance, responsive behavior, theming, anti-patterns, typography, fonts, spacing, layout, alignment, color, motion, micro-interactions, UX copy, error states, edge cases, i18n, and reusable design systems or tokens. Also use for bland designs that need to become bolder or more delightful, loud designs that should become quieter, live browser iteration on UI elements, or ambitious visual effects that should feel technically extraordinary. Not for backend-only or non-UI tasks.
SDD-mode PR-boundary review policy for Pi. The root launches visible reviewer lanes, publishes triage, ends the turn for acknowledgement, then fixes in a separate follow-up. Review is independent of CI.
Use when the user wants to design, redesign, shape, critique, audit, polish, clarify, distill, harden, optimize, adapt, animate, colorize, extract, or otherwise improve a frontend interface. Covers websites, landing pages, dashboards, product UI, app shells, components, forms, settings, onboarding, and empty states. Handles UX review, visual hierarchy, information architecture, cognitive load, accessibility, performance, responsive behavior, theming, anti-patterns, typography, fonts, spacing, layout, alignment, color, motion, micro-interactions, UX copy, error states, edge cases, i18n, and reusable design systems or tokens. Also use for bland designs that need to become bolder or more delightful, loud designs that should become quieter, live browser iteration on UI elements, or ambitious visual effects that should feel technically extraordinary. Not for backend-only or non-UI tasks.
Verify a deployed UI in a browser for interaction, mobile layout, and visuals.
Workflow for /sdd clean — rescuing a rotted spec. Mode-aware behaviors (interactive/auto/unleashed), safety nets, what gets cleaned (incl. per-AC @impl AND @test anchor backfill at parity, gated by enforce_tdd), JUDGMENT auto-resolution rules. Invoked when /sdd clean runs. Requires the spec-driven-development skill for REQ format and Status semantics, and the spec-enforce skill family for the detection mechanics.
Specification-driven development index. Defines spec structure, REQ format, Status semantics, the @impl source-anchor and @test test-anchor conventions (per-AC, at parity), three autonomy modes, and routes to sub-command skills (sdd-init for bootstrap, sdd-clean for rescue). Holds the small sub-commands (edit, add, mode), Plan Mode integration, test discipline, templates. Invoked via /sdd.
| name | pr-workflow |
| description | Create a pull request with review, REQ backlinks, push, and CI handoff. |
| version | 3.0.0 |
Use this when the user asks to open a PR.
PR review and CI monitoring are separate.
subagent calls without inherited context, then the resolver's zero-or-one CI request unchanged once.After a successful protected-base PR creation, or a push to a branch that already has an open PR targeting main/master, end the current assistant turn immediately. Becoming idle is what delivers the extension's queued deliverAs: "followUp" boundary launch plan. Other pushes and PR commands are not boundaries.
After the Git command succeeds:
gh pr edit, another push, or the CI resolver to retrigger a boundary;The next turn begins when the queued launch plan arrives. Execute that supplied plan exactly once in that next turn.
Inspect the full commit history that will land:
git log --no-merges <base>..HEAD
Inspect the full PR diff:
git diff <base>...HEAD
If sdd/ exists, include relevant REQ-* backlinks in the PR body.
Draft a concise title under 70 characters, using the repository convention when visible.
Draft a body with a summary and test plan.
Push with upstream if needed:
git push -u origin HEAD
If that push updated a branch with an open PR to main/master, report the push result and stop the current turn. Otherwise continue to step 8.
In a later turn, create the PR and report its URL.
Stop the current turn immediately after PR creation. Do not search for, recreate, or retrigger the boundary plan.
When the queued PR-creation launch plan starts the next turn, launch all listed reviewers with run_in_background: true, inherit_context: false, and the exact supplied review_range marker in every prompt.
Immediately follow those reviewer calls with the same plan's CI wave when present. CI is the last launch, not a review completion dependency.
Wait for every named reviewer, then publish one consolidated triage without changing files or Git state. End the turn immediately after triage so agent-end enforcement can acknowledge the reviewed head from live session state; settled enforcement is the fallback.
In the next turn started by the queued FIX follow-up, apply only the accepted minimal fixes unless the latest user instruction says to wait or not autofix. Only the root main session may commit or push those fixes.
No open PR targeting main/master, or no JSON request from the resolver, means no automatic CI monitor. Do not relaunch an aborted monitor automatically. A later extension-issued boundary plan or explicit user request is the only other launch path.
Use a heredoc so markdown is preserved:
gh pr create --base <base> --head <branch> --title "<title>" --body "$(cat <<'EOF'
## Summary
- <1-3 bullets describing what changed and why>
- <REQ-* backlink bullet if sdd/ exists>
## Test plan
- [ ] CI green on this PR
- [ ] <feature-specific smoke check>
EOF
)"
Allowed and required without asking:
Not allowed unless explicitly requested: