DevOps & Infra
flywheel-qa - Claude MCP Skill
Agentic QA for flywheel PRs. Navigate preview deploy with Agent Browser, verify UI renders, check for error boundaries, test interactive flows. Use when: PR passes CI but needs runtime verification before merge. Composes: /agent-browser, /dogfood, /visual-qa.
SEO Guide: Enhance your AI agent with the flywheel-qa tool. This Model Context Protocol (MCP) server allows Claude Desktop and other LLMs to agentic qa for flywheel prs. navigate preview deploy with agent browser, verify ui renders, check fo... Download and configure this skill to unlock new capabilities for your AI workflow.
Documentation
SKILL.md# /flywheel-qa
Runtime QA that CI can't do. Navigate, click, verify.
## Role
QA engineer verifying a PR's preview deployment before merge. You test what
static analysis and unit tests cannot: actual page rendering, user flows,
error boundaries, and console errors.
## Objective
Verify PR `$ARGUMENTS` preview deployment works correctly for all critical
user paths. Report pass/fail with evidence.
## Prerequisites
- PR has a Vercel preview deployment URL
- Agent Browser MCP is available
## Workflow
### 1. Get Preview URL
```bash
PR=$ARGUMENTS
PREVIEW_URL=$(gh pr view "$PR" --repo misty-step/caesar-in-a-year \
--json comments --jq '[.comments[] | select(.body | test("vercel.app")) | .body] | last' \
| grep -oE 'https://[a-z0-9-]+\.vercel\.app' | head -1)
# Fallback: check deployments API
if [ -z "$PREVIEW_URL" ]; then
BRANCH=$(gh pr view "$PR" --json headRefName --jq .headRefName)
PREVIEW_URL="https://caesar-in-a-year-git-${BRANCH}-misty-step.vercel.app"
fi
```
### 2. Critical Path Tests
Every QA run MUST verify these paths. Failure on any = QA fail.
| # | Path | What to Check |
|---|------|---------------|
| 1 | Landing page (`/`) | Renders, no error boundary, CTA visible |
| 2 | Dashboard (`/dashboard`) | Auth redirect or content loads, no "Something went wrong" |
| 3 | Subscribe (`/subscribe`) | Page renders, pricing visible |
| 4 | Session page (`/session`) | Content loads or appropriate empty state |
| 5 | Any new route in PR diff | Renders without error |
For each path:
1. Navigate to the URL
2. Wait for page load (no loading spinner after 5s)
3. Check for error boundary text: "Something went wrong", "Error", "500"
4. Read console for errors (`read_console_messages`)
5. Verify key elements are visible (headers, content areas, CTAs)
6. Take screenshot as evidence
### 3. Interactive Flow Tests (if PR touches these)
| Flow | Steps |
|------|-------|
| Auth | Sign in → redirected to dashboard → user info visible |
| Navigation | Click nav items → pages load → no flash of error |
| Forms | Fill form → submit → success state (no silent failure) |
### 4. Regression Checks
- Check all routes touched by the PR's diff
- If PR modifies a component used in multiple routes, check ALL routes using it
- If PR touches data fetching, verify both loading and loaded states
### 5. Console Error Audit
```
read_console_messages with pattern: "(Error|TypeError|ReferenceError|Failed|Unhandled)"
```
Any unhandled runtime error = QA fail.
## Output
Post a comment on the PR with results:
```bash
gh pr comment $PR --repo misty-step/caesar-in-a-year --body "$(cat <<'EOF'
## QA Results
**Status**: PASS / FAIL
### Critical Paths
- [x] Landing page: renders, CTA visible
- [x] Dashboard: loads for authenticated user
- [x] Subscribe: pricing visible
- [x] Session: content loads
- [ ] Dashboard: "Something went wrong" error boundary triggered
### Console Errors
None / [list errors found]
### Screenshots
[attached or described]
### Recommendation
Ready to merge / Needs fix: [describe issue]
EOF
)"
```
## Failure Modes
If QA finds issues:
1. Post detailed comment with evidence (screenshot, console errors)
2. Return non-zero exit (agent reports failure)
3. Coordinator will NOT merge — spawns `/pr-fix` agent instead
## Anti-Patterns
- Checking only the happy path (always test error states too)
- Skipping console error check (runtime errors hide behind working UI)
- Testing against localhost (always use preview URL)
- Marking pass without actually navigating (screenshots are evidence)Signals
Information
- Repository
- phrazzld/claude-config
- Author
- phrazzld
- Last Sync
- 3/2/2026
- Repo Updated
- 3/1/2026
- Created
- 3/1/2026
Reviews (0)
No reviews yet. Be the first to review this skill!
Related Skills
upgrade-nodejs
Upgrading Bun's Self-Reported Node.js Version
cursorrules
CrewAI Development Rules
cn-check
Install and run the Continue CLI (`cn`) to execute AI agent checks on local code changes. Use when asked to "run checks", "lint with AI", "review my changes with cn", or set up Continue CI locally.
CLAUDE
CLAUDE.md
Related Guides
Bear Notes Claude Skill: Your AI-Powered Note-Taking Assistant
Learn how to use the bear-notes Claude skill. Complete guide with installation instructions and examples.
Mastering tmux with Claude: A Complete Guide to the tmux Claude Skill
Learn how to use the tmux Claude skill. Complete guide with installation instructions and examples.
OpenAI Whisper API Claude Skill: Complete Guide to AI-Powered Audio Transcription
Learn how to use the openai-whisper-api Claude skill. Complete guide with installation instructions and examples.