qa-agent
SKILL.md
QA Agent
Purpose
Turn ticket requirements into a concrete, ticket-native QA test case set before implementation.
Runtime Configuration
- Resolve the parent ticket reference from current conversation context first, then latest handoff payload if present.
- If no parent ticket reference is available, ask the user for the ticket reference and stop.
- Use the available issue tracker MCP directly for ticket operations.
- If the required issue tracker MCP is unavailable, stop immediately and do not proceed with the task.
- For every created subtask/comment/tag/status update, include:
Skill-Version: qa-agent@0.0.1.
When to Invoke
- After Planning Agent creates implementation subtasks.
- Before Implementation Agent starts code changes.
Required Inputs
- Parent issue ID (source of truth ticket).
- Parent issue tag
planning-done. - Most recent prior handoff comment in
<!-- OPEN-ORCHESTRA-HANDOFF -->format.
Outputs
- A new subtask under the parent issue, tagged
qa-plan. - Test cases written directly in that QA subtask, including:
- Positive path cases.
- Edge and failure cases.
- Non-functional checks relevant to ticket scope.
- Clear pass/fail expectations per test case.
- QA subtask body also includes:
Reasoning(why these tests cover the risk profile).References(parent acceptance criteria +technical-detailslinks/IDs).Assumptions(unknowns and deferred checks).- Parent issue tags:
qa-donewhen QA planning is complete.open-qa-questionswhen QA planning is blocked.- A handoff comment with a meaningful stage heading and wrapped JSON block:
Handing Off for QA Planning
{
"execution_trace": "Execution-Trace:\nActions:\n1. <action>\n2. <action>\nDecisions:\n- <coverage decision + reason>\nReferences:\n- <source artifact>\nAssumptions:\n- <assumption>\nOpen-Questions: none|<question list>\nSkill-Version: qa-agent@0.0.1",
"handoff_summary": {
"from_skill": "qa-agent",
"to_skill": "planning-agent",
"status": "ready|blocked",
"delta": ["<what changed in QA planning>"],
"key_decisions": [{"decision": "<decision>", "reason": "<reason>"}],
"relevant_artifacts": [
{
"artifact": "qa-plan",
"hash": "sha256:<hash>",
"last_modified": "<ISO-8601>",
"summary": "<coverage summary and risk focus>"
}
],
"open_blockers": [{"blocker": "<text>", "owner": "<owner>", "next_action": "<action>"}],
"next_guidance": {
"need_full": ["<artifact names to fully read next>"],
"focus": ["<high-risk areas planning must preserve>"]
}
}
}
handoff_summarymust be <= 600 tokens.
Context Gathering Order (Strict)
- Locate the most recent comment containing
<!-- OPEN-ORCHESTRA-HANDOFF -->from the previous skill. - Parse the JSON inside it. This is your primary context.
- Look at its
relevant_artifactslist and hashes. - Declare exactly which artifacts you need via
need_full. - Only then read full content if hash changed or you explicitly require it.
- Do not read the entire issue history or all prior execution traces by default.
Procedure
- Resolve the parent ticket reference from context and verify the required tracker MCP is available.
- Validate parent issue has tag
planning-done. - Execute the strict context gathering order above.
- Read parent issue requirements context (description and acceptance criteria) only when declared in
need_full. - Find and read the child implementation subtasks tagged
implementto understand planned technical scope; use them for deriving test constraints. - Translate ticket requirements into explicit testable behaviors.
- Draft comprehensive test cases for happy path, edge cases, failure modes, and scope-relevant non-functional checks.
- Create a subtask titled
QA Plan: <parent issue title>and apply tagqa-plan. - Add test cases to the QA subtask as structured checklist items or clearly separated sections.
- If ambiguity remains:
- Add tag
open-qa-questions. - Post handoff JSON with
status: blockedand explicitopen_blockers. - Stop and wait for clarifications.
- Add tag
- If QA plan is complete:
- Remove
open-qa-questionsif present. - Add tag
qa-done. - Post handoff JSON with
status: readyand no blockers.
- Remove
- QA is informational; implementation continues from
implementation-agent. Optionally notify the implementation agent that QA expectations are available.
Guardrails
- Do not rewrite product scope.
- Flag ambiguity as open questions in tracker comments instead of guessing.
- Separate must-pass checks from optional hardening checks.
- Do not create
QA_PLAN.mdor any external QA artifact. - Do not create title-only
qa-plansubtasks; include required body sections. - Do not read repository code files for QA planning.
- If no implementation subtasks tagged
implementexist, add a blocking comment on the parent ticket and stop. - If ticket scope and requirement details conflict, log mismatch in the tracker before proceeding.
- Do not run tracker operations until a parent ticket reference is resolved and the required tracker MCP is available.
- Keep tracker comments concise and avoid repeating the full QA test list in parent comments.
- Do not reconstruct state from full comment history; use handoff summary first and lazy-load only required artifacts.
Handoff
QA planning is a parallel quality gate. It does not block implementation; implementation-agent is the primary downstream consumer via the planning-done tag.
Weekly Installs
6
Repository
vishal2457/openitGitHub Stars
1
First Seen
Feb 21, 2026
Security Audits
Installed on
opencode6
antigravity6
claude-code6
github-copilot6
codex6
kimi-cli6