Runs end-to-end QA validation on PRs and outputs a formatted report. Acts as a standalone entry point for testing.
Install
mkdir -p .claude/skills/qa-wp-media && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/17322" && unzip -o skill.zip -d .claude/skills/qa-wp-media && rm skill.zipInstalls to .claude/skills/qa-wp-media
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Run QA validation on a pull request — boots the local environment, tests acceptance criteria, and optionally posts the report as a PR comment. Standalone entry point for the qa-engineer agent.Key capabilities
- →Load project configuration from an orchestrator skill
- →Resolve PR number and base branch from arguments or current branch
- →Invoke a `qa-engineer` sub-agent for validation
- →Boot the local environment for testing
- →Validate acceptance criteria against PR changes
- →Generate a formatted QA report
How it works
The skill loads project configuration, resolves the PR, then invokes a `qa-engineer` sub-agent to boot the local environment, test acceptance criteria, and generate a QA report. It then offers to post this report as a PR comment.
Inputs & outputs
When to use qa
- →Validate a pull request
- →Run e2e tests for a specific branch
- →Generate a QA report for code changes
About this skill
QA
Standalone QA run for any PR. Boots the local environment, validates every acceptance criterion, and produces a test report. Posting to GitHub is your choice — you are prompted at the end.
Step 1 — Load config
Read project config from the orchestrator's ## Project Config block:
ORCHESTRATOR=".claude/skills/orchestrator/SKILL.md"
REPO=$(grep '^REPO=' "$ORCHESTRATOR" | cut -d= -f2)
TEMP_ROOT=$(grep '^TEMP_ROOT=' "$ORCHESTRATOR" | cut -d= -f2)
BOOT_CMD=$(grep '^BOOT_CMD=' "$ORCHESTRATOR" | cut -d= -f2-)
LOCAL_URL=$(grep '^LOCAL_URL=' "$ORCHESTRATOR" | cut -d= -f2)
Step 2 — Resolve the PR
Use $ARGUMENTS as the PR number or URL. If empty, resolve from the current branch:
gh pr list --head "$(git branch --show-current)" --json number,url -q '.[0] | "\(.number) \(.url)"'
If no PR is found, tell the user and stop.
Get the base branch:
gh pr view <PR_NUMBER> --json baseRefName -q .baseRefName
Step 3 — Invoke the qa-engineer agent
Invoke the qa-engineer sub-agent with:
- PR number and PR URL
- Base branch from Step 2
- Runtime values:
TEMP_ROOT={TEMP_ROOT},REPO={REPO},E2E_BOOT={BOOT_CMD},E2E_URL={LOCAL_URL}
STANDALONE MODE — two differences from the normal pipeline run:
- Skip Step 6 (posting the PR comment). Instead, output the full QA report as formatted Markdown in your response, in a section titled
## QA Report. Use the same format the pipeline would post (including the<!-- ai-pipeline:qa-report -->marker).- Skip the StructuredOutput JSON return. Output a short human-readable summary instead: overall result, pass/fail per criterion, and any blockers.
All other steps run normally — the environment is booted ({BOOT_CMD}), acceptance
criteria are tested, and the full validation is performed.
Step 4 — Offer to post
After the agent responds, display its ## QA Report and ask:
Post this QA report to PR #<PR_NUMBER>? Reply
yesto post,noto finish here.
If yes — post with dedup: check for an existing <!-- ai-pipeline:qa-report --> comment,
update it with PATCH if found, otherwise create a new comment.
If no — confirm the QA run is complete and finish.
When not to use it
- →When a full QA validation is not required for a PR
- →When the project does not use a `qa-engineer` sub-agent
- →When the user does not want to boot a local environment for testing
Limitations
- →The skill requires project configuration from an orchestrator skill
- →The skill relies on a `qa-engineer` sub-agent for validation
- →The skill does not automatically post the QA report; user confirmation is required
How it compares
This skill provides a standalone, automated QA validation process for any PR, including environment setup and acceptance criteria testing, which is more efficient and consistent than manual testing.
Compared to similar skills
qa side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| qa (this skill) | 0 | 1mo | Review | Intermediate |
| verify | 6 | 6mo | No flags | Beginner |
| code-change-verification | 4 | 4mo | Review | Beginner |
| springboot-verification | 4 | 4mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by wp-media
View all by wp-media →You might also like
verify
Use when you want to validate changes before committing, or when you need to check all React contribution requirements.
code-change-verification
openai
Run the mandatory verification stack when changes affect runtime code, tests, or build/test behavior in the OpenAI Agents Python repository.
springboot-verification
affaan-m
Verification loop for Spring Boot projects: build, static analysis, tests with coverage, security scans, and diff review before release or PR.
moai-workflow-testing
modu-ai
Comprehensive development workflow specialist combining DDD testing, debugging, performance optimization, code review, PR review, and quality assurance into unified development workflows
resolve-checks
flowglad
Resolve all failing CI checks and address PR review feedback on the current branch's PR. Runs tests locally, fixes failures, incorporates valid review comments, and resolves addressed feedback. Use when CI is red, after receiving PR feedback, or before merging.
verification-quality-assurance
ruvnet
Comprehensive truth scoring, code quality verification, and automatic rollback system with 0.95 accuracy threshold for ensuring high-quality agent outputs and codebase reliability.