ccqa is a browser test recorder powered by Claude Code and agent-browser that turns YAML test specs into deterministic, replayable vitest scripts without requiring an LLM during test execution. Version 0.6.0, actively developed on GitHub. Key differentiators: leverages existing Claude subscription (no extra API key for tracing), generates vitest-compatible scripts for CI, supports drift analysis via Claude on test failures, and uses agent-browser for browser automation. Requires Node.js 20+.
npm install ccqaNo compatibility data collected yet for this library.
Shows full workflow: write a spec in YAML, trace browser actions with Claude, generate deterministic test script, run in CI without LLM.
Run `pnpm add -D agent-browser` (or npm/yarn equivalent)
Ensure all referenced environment variables (e.g., APP_URL) are set in your shell or .env file
Upgrade Node.js to version 20 or later
Use full model IDs via `--model claude-sonnet-4-20250514` (or current model ID) to avoid breakage
Log in via `claude login` locally; set ANTHROPIC_API_KEY in CI environment
Run `npx ccqa` or install with `pnpm add -D ccqa` and use `pnpm ccqa`
Install agent-browser: `pnpm add -D agent-browser`
Ensure the spec file exists at .ccqa/features/<feature>/test-cases/<spec>/spec.yaml (e.g., for `ccqa trace tasks/create-and-complete` the file must be at .ccqa/features/tasks/test-cases/create-and-complete/spec.yaml)
Set the variable before running: `export APP_URL=http://localhost:3000`
Use `import` syntax or run in an ESM context (add `"type": "module"` to package.json)