Our review
Posts a testing checklist to a GitHub issue to initiate QA handoff after implementation.
Strengths
- Automates creation of a structured testing checklist from acceptance criteria
- Links PR, spec, and issue together
- Updates project board status to QA
Limitations
- Requires spec document to be in a parseable format
- Does not handle automated test execution
- Relies on GitHub CLI and API availability
When implementation is complete and you need to hand off to QA testers with clear manual verification steps.
If QA is fully automated or the team does not use GitHub Issues for tracking.
Security analysis
CautionThe skill automates GitHub issue updates and project board management using the gh CLI. While this is a legitimate use, it involves external service interaction and could be leveraged to post unintended content if the user provides malicious inputs. However, the skill does not perform any destructive actions or exfiltration.
- •Uses gh CLI to interact with GitHub, which could be abused if the skill were misused with malicious inputs, but no inherent destructive or exfiltrating behavior.
Examples
/qa-handoff #42 Documents/specs/42-dark-mode-spec.mdready for testingname: qa-handoff description: "Update GitHub issue with testing checklist for QA testers. Use after implementation is complete, before merge. Invoke with '/qa-handoff #42 path/to/spec.md' or 'qa handoff', 'ready for testing', 'update issue for QA'." contract: tags: [closure, qa, github] state_source: spec inputs: params: - name: issue_number required: true - name: spec_path required: true gates: [] outputs: mutates: [] side_effects: ["Posts QA checklist", "Sets status to QA", "Links PR"] next: [] human_gate: false
QA Handoff
Posts a testing checklist to a GitHub issue so QA testers have everything they need for manual verification. This is the final step before merge.
When to Use
Use this skill when:
- Implementation is complete and verified
- PR is ready for review/merge
- QA testers need to know what to test manually
- User says "ready for testing", "qa handoff", or "update issue for QA"
Prerequisites
Before using this skill:
- Implementation must be complete
- Automated tests must be passing
/verification-before-completionshould have been run- PR should exist (or be ready to create)
Instructions
Step 1: Gather Inputs
Require two inputs from the user:
- Issue number (e.g.,
#42or42) - Spec document path (e.g.,
Documents/specs/42-dark-mode-spec.md)
If not provided, ask:
- "What's the issue number?"
- "Where's the spec document?"
Step 2: Read the Spec
Read the spec document to extract:
- Feature summary (from Problem Statement)
- Acceptance criteria (the testing checklist)
- Any specific test scenarios mentioned
See shared/spec-io.md for spec sections and how to extract acceptance criteria.
Step 3: Get PR Information
Check for an open PR linked to this work:
gh pr list --state open --head $(git branch --show-current)
If a PR exists, note its number. If not, note that PR creation is pending.
Step 4: Format Testing Checklist
Convert acceptance criteria to a QA-friendly format:
- Use checkbox syntax for trackable items
- Add context where needed (not just the criterion)
- Include browser/device requirements if applicable
- Note any test data needed
Example transformation:
Spec criterion:
- [ ] Toggle appears in Settings > Appearance
QA checklist item:
- [ ] Navigate to Settings > Appearance. Verify dark mode toggle is visible.
Step 5: Post to GitHub Issue
Create a comment on the issue with this structure:
## Ready for QA Testing
**Status:** Implementation complete, ready for manual verification.
**Spec:** `{spec-path}` (see repo for full details)
**PR:** #{pr-number} (or "PR pending")
---
### Manual Testing Checklist
{Converted acceptance criteria as checkboxes}
---
### Test Environment
- Branch: `{current-branch}`
- Prerequisites: {any setup needed}
### Notes for Testers
{Any additional context, known limitations, or specific things to watch for}
See shared/github-ops.md for posting the QA checklist comment.
Step 6: Link PR to Issue (if applicable)
If a PR exists and isn't already linked, update the PR to reference the issue.
See shared/github-ops.md for linking PR to issue.
Step 7: Update Project Board Status
MANDATORY: Set the issue status to QA on the project board.
See shared/github-ops.md for updating project board status.
End-of-skill check: See
shared/primitive-updates.md. Signals: decisions made during QA review.
Step 8: Confirm Handoff
Tell the user:
"QA handoff complete:
- Testing checklist posted to issue #{number}
- Project board status set to QA
- PR #{pr-number} is ready for review
- QA testers can now verify the acceptance criteria
Next: Wait for QA sign-off, then merge."
Example Output
For issue #42 with a dark mode spec:
## Ready for QA Testing
**Status:** Implementation complete, ready for manual verification.
**Spec:** `Documents/specs/42-dark-mode-spec.md`
**PR:** #123
---
### Manual Testing Checklist
- [ ] Navigate to Settings > Appearance. Verify dark mode toggle is visible.
- [ ] Click the toggle. Verify the theme switches immediately without page reload.
- [ ] Refresh the page. Verify the dark mode preference persists.
- [ ] Test in Chrome and Firefox. Verify consistent behavior.
- [ ] Test with system set to light mode. Verify app respects user preference over system.
---
### Test Environment
- Branch: `feature/dark-mode`
- Prerequisites: None, works on any account
### Notes for Testers
- Toggle state is stored in localStorage, so clearing browser data will reset it.
- This does not include per-page theme customization (explicitly out of scope).
Best Practices
- Make checklists actionable - "Verify X appears" not just "X appears"
- Include navigation steps - "Go to Settings > Appearance" not just "In settings"
- Note browser requirements - If testing should happen in specific browsers
- Mention test data - If QA needs specific accounts or data to test
- Keep it concise - Link to spec for full details, don't duplicate everything
Common Issues
No PR exists yet:
- Note "PR pending" in the comment
- Remind user to create PR and link it
Issue already has testing info:
- Add a new comment rather than editing old ones
- Reference the latest implementation state
Spec has many criteria:
- Group related criteria under subheadings
- Prioritize critical paths first
TDD Red-Green-Refactor
Testing
Skill that guides Claude through the complete TDD cycle.
Web Accessibility Audit
Testing
Performs a comprehensive web accessibility audit following WCAG standards.
UAT Test Case Generator
Testing
Generates structured and comprehensive user acceptance test cases.