一键导入
qa-only
Run browser-first QA in OpenCode, capture evidence, and write a structured report without modifying source code or suggesting fixes.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Run browser-first QA in OpenCode, capture evidence, and write a structured report without modifying source code or suggesting fixes.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Check local gstack setup health, detect stale build/setup state, and write a bounded upgrade-readiness report.
Interrogate an idea like a bounded YC-style office hours session and write a durable local memo.
Review recent local repository history and write a bounded engineering retrospective.
Prepare a local authenticated browser session for OpenCode QA and design workflows using gstack browse cookie import flows.
Audit a local rendered page with browser evidence, write a bounded design report, and optionally apply local UI fixes when explicitly requested.
Update a small, factual set of project docs from local changes and write a durable summary without committing or using GitHub APIs.
| name | qa-only |
| description | Run browser-first QA in OpenCode, capture evidence, and write a structured report without modifying source code or suggesting fixes. |
| compatibility | opencode |
| metadata | {"host":"opencode","migration_phase":"11","mode":"report-only"} |
This is the first OpenCode-native /qa-only slice for gstack. It runs browser-driven QA, captures evidence, and writes a structured report.
In this v1 slice:
.gstack/qa-reports/Do not modify source code in this v1 QA workflow. Do not run a fix loop. Do not create commits. Do not suggest fixes in the report. Use /qa when the user wants the test-fix-verify loop.
You need an explicit target URL or local page path for this version.
http://localhost:3000http://127.0.0.1:4173/qa-eval.html --quickhttps://staging.example.com/settingsIf no target is provided, ask for one using the host's normal user-question tool.
Load the browse skill first and use it to determine the local browser binary setup.
Use these shared repo assets:
qa/templates/qa-report-template.mdqa/references/issue-taxonomy.mdWrite outputs here:
.gstack/qa-reports/qa-report-{slug}.md.gstack/qa-reports/screenshots/.gstack/qa-reports/baseline.json.gstack/qa-reports/screenshots/Use when the request includes --quick.
console --errorsFor this v1 slice, keep quick mode bounded. Run this exact sequence unless one command clearly fails:
mkdir -p .gstack/qa-reports/screenshots
$B goto <target-url>
$B snapshot -i -a -o .gstack/qa-reports/screenshots/initial.png
$B console --errors
$B links
$B viewport 375x812
$B snapshot -a -o .gstack/qa-reports/screenshots/mobile.png
If the mobile capture step fails, continue with the annotated screenshot and state that mobile capture was skipped.
Default when --quick is not present.
snapshot -i.gstack/qa-reports/screenshots existsqa/templates/qa-report-template.mdconsole --errorsUse qa/references/issue-taxonomy.md as the classification source.
For each page or major state you inspect:
snapshot -D after meaningful interactionsDocument issues as you find them. Do not batch everything at the end.
Use literal issue IDs in order: ISSUE-001, ISSUE-002, ISSUE-003, and so on.
Each issue needs:
Use categories and severity labels from qa/references/issue-taxonomy.md.
Compute a simple health score using the same categories as qa/templates/qa-report-template.md.
Minimum categories to score:
Use conservative scoring. Do not invent precision you cannot support with evidence.
Write the final report under .gstack/qa-reports/ and keep screenshot paths relative to that report.
If the request gives an exact report path, write to that exact file path.
Also write a small baseline.json with:
{
"url": "<target>",
"healthScore": 0,
"issues": []
}
If the request gives an exact baseline path, write to that exact file path.
If you could not complete the full flow, still write a partial report and clearly mark what was covered versus skipped. If any browser command fails after partial evidence has already been captured, still write the report and baseline with the evidence you do have.
In quick mode, each issue heading must start with its literal issue ID, for example ### ISSUE-001: Broken link.
If the repository has no test framework or test directories, note this in the report summary: No test framework detected. Run /qa to bootstrap one and enable regression test generation.
snapshot -D whenever an interaction should visibly change page state