# QA

> QA workflows: investigate and document bugs, post issues to GitHub/GitLab/Linear, and run browser-agent smoke tests. Triggers on: 'qa debug', 'qa report', 'qa smoke', 'run smoke test', 'report bug', 'investigate issue'.

- Skill: `cloudvoyant/qa` (Agent Skill, multi-file: 8 files)
- Install (CLI): `npx skillmds@latest add cloudvoyant/qa`
- Raw SKILL.md: https://api.skillmd.com/api/skills/cloudvoyant/qa/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- License: MIT
- Author: cloudvoyant (https://skillmd.com/u/cloudvoyant)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/cloudvoyant/qa

---


## Critical Rules

- **Markdown output: soft-wrap prose, never hard-wrap** — when any qa workflow writes a `.md` artifact (debug report, smoke report) or markdown posted to GitHub/GitLab/Linear via `report`, write each paragraph as one continuous line; do not insert manual newlines to wrap prose at a fixed column width. Newlines still separate paragraphs, list items, headings, and code fences.

## Dispatcher

The raw invocation args (filled by Claude Code / OpenCode slash commands): `$ARGUMENTS`. If this line is not filled in, read the verb and remaining args from the user's current message.

```
VERB = first non-flag arg
case VERB:
  ""           → help
  "test"       → smoke
  "browse"     → smoke
  "investigate"→ debug
  "file"       → report
  "post"       → report
Dispatch to references/workflows/{VERB}.md
```

## Workflow Index

- **debug** — investigate a bug and produce a structured report
- **report** — post a QA report as an issue to GitHub/GitLab/Linear
- **smoke** — browser-agent smoke test, produces smoke report
- **help** — usage reference

