crowi-qa

Runs bounded exploratory browser QA charters against Crowi dev worktrees via chrome-devtools MCP.

1.1k|165|Updated Aug 18, 2014
One-click install
npx skills add https://github.com/crowi/crowi --skill crowi-qa
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: crowi-qa
Source: https://github.com/crowi/crowi/tree/main/.claude/skills/crowi-qa
Command: npx skills add https://github.com/crowi/crowi --skill crowi-qa

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

Manual exploratory testing of a running Crowi instance is unbounded and inconsistent. This Skill turns the critical-flow table into nine finite QA charters with strict operation, retry, and time budgets, driving a real browser against a worktree's proxy URL and leaving structured evidence and findings.

Core Features & Use Cases

  • Bounded charter execution: Runs 9 charters (auth, collab, page CRUD, editor/draft, comments, search, notifications, admin settings, attachments) with per-charter budgets of 10 browser operations, 2 retries, and 5-8 minute time limits, classifying outcomes as pass, blocked, or incomplete.
  • Safety guardrails: Verifies proxy process identity before mutations, refuses destructive charters on non-local URLs without an explicit override flag, isolates mutating auth subflows to isolated databases, and never pushes to git or modifies product code.
  • Evidence and findings: Writes screenshots, console/network logs, a manifest of created pages for hard-delete cleanup, and fix-or-drop findings under .reviews/qa/<run-id>/.
  • Use Case: After finishing a feature in a git worktree, run /crowi-qa <worktree-key> to smoke-test the running dev instance in a real browser and get a summary verdict plus findings before merging.

Quick Start

Ask the AI to run the crowi-qa skill against the current worktree to execute the nine bounded browser QA charters and produce an evidence report.

Frequently Asked Questions about crowi-qa

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run exploratory browser QA on a Crowi worktree?

Invoke /crowi-qa with a worktree key or omit the target to test the current worktree. The skill resolves the proxy URL from the dev-port registry, verifies the instance is running, then executes nine bounded charters and writes evidence to .reviews/qa/<run-id>/.

What is the difference between crowi-qa and Playwright E2E tests?

Playwright E2E in packages/e2e handles deterministic regression assertions, while crowi-qa covers visual, state-dependent, and exploratory checks with bounded budgets. The skill never reimplements assertions already covered by E2E specs and never modifies the E2E suite.

Which browser automation tools does crowi-qa support?

The skill prefers chrome-devtools MCP for navigation, clicks, screenshots, and console or network capture, falling back to claude-in-chrome with the computer tool for screenshots. If neither driver is available, the run stops as blocked rather than degrading.

Can crowi-qa run against a staging or production URL?

Yes, via the --url flag, but read-only charters only by default. Mutation charters and production-build smoke tests are refused on non-local URLs unless you explicitly pass --i-understand-destructive.

Why does crowi-qa report blocked instead of running a charter?

A charter is blocked when prerequisites fail: the worktree is not running, dev infrastructure like MongoDB or Redis is down, credentials are unset, proxy identity cannot be verified, or Mailpit is unreachable for mutating auth subflows. Blocked differs from incomplete, which means the budget was exhausted.

Does crowi-qa clean up the test pages it creates?

Yes. Created pages and comments are recorded in a manifest under the run's evidence directory, and pages are hard-deleted at charter end. Fixtures seeded on the QA-owned instance are discarded when its per-run database is dropped.