qa

qa is a skill for Claude Code, Codex from blueberrycongee/termcanvas. It costs 50 tokens per session (839 once invoked), scanned A, original, MIT.

A quality check of a real website using browser automation, which controls a browser to inspect pages and perform actions. It records page snapshots, console errors, screenshots, links, and user-flow results.

In plain words
What is it for?
Testing deployed pages, mapping important site routes, checking signup or checkout flows, and capturing visual evidence of issues.
Why use it?
It finds broken links, visible layout problems, missing elements, and browser errors that static code inspection may miss.

Skill for Claude CodeCodex

Part of the skills plugin — 7 skills, 1 hook shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/blueberrycongee/termcanvas/qa
Any agent
npx skills add blueberrycongee/termcanvas --skill qa
Clone the repo
git clone --depth 1 https://github.com/blueberrycongee/termcanvas

Made for: Claude Code, Codex.

Or install skills, the plugin that ships this one along with the rest of its 7 skills, 1 hook.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for qa

README.md
[![agentmods](https://agentmods.dev/badge/skills/blueberrycongee/termcanvas/qa.svg)](https://agentmods.dev/skills/blueberrycongee/termcanvas/qa)
Your own site
<a href="https://agentmods.dev/skills/blueberrycongee/termcanvas/qa"><img src="https://agentmods.dev/badge/skills/blueberrycongee/termcanvas/qa.svg" alt="Measured on agentmods" height="20"></a>
Per session 50 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 839 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00050 $0.00839
Opus 5 $0.00025 $0.00419
Sonnet 5 $0.00010 $0.00168
Haiku 4.5 $0.00005 $0.00084

Measured 3d ago against content hash 98b8f1732fe7, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

qa scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/skills/qa/SKILL.md · 105 lines

How it starts

The opening of the file, as written. The whole thing — 105 lines — stays where its author put it; the contents beside it link to each section on GitHub.

QA

Browser-based QA testing with the browse CLI. Test real user flows, capture visual evidence, and fix issues with atomic commits.

Phase 0: Setup

  1. Verify browse is available: browse status
  2. If not found, report error — browse binary must be installed
  3. Get the target URL from the task description or ask the user

Phase 1: Orient

  1. Navigate to the target: browse goto <url>
  2. Take a baseline snapshot: browse snapshot -i
  3. Check console for errors: browse console
  4. Extract navigation links: browse links
  5. Build a site map of pages to test (limit to 10 most important pages)

Phase 2: Page-by-Page Audit

For each page in the site map:

  1. Navigate: browse goto <page-url>
  2. Snapshot interactive elements: browse snapshot -i
  3. Check console for errors: browse console
  4. Screenshot for evidence: browse screenshot <page-name>.png
  5. Note issues found: broken links, console errors, missing elements, layout problems visible in snapshot

Phase 3: User Flow Testing

Test the primary user flows (signup, login, checkout, etc.):

  1. Identify the flow steps from the snapshot
  2. Execute each step using refs:
    • browse click @e3 — click buttons/links
    • browse fill @e5 "[email protected]" — fill inputs
    • browse select @e7 "option-value" — select dropdowns
    • browse press Enter — submit forms
  3. After each step, snapshot and verify the expected outcome
  4. Screenshot at each step for evidence

Phase 4: Health Score

Rate the site on a 0-10 scale across these dimensions:

  • Console health: errors / warnings count
  • Link health: broken links / total links
  • Interactivity: do buttons and forms work?
  • Visual completeness: are there missing images, broken layouts?

Report format:

Health Score: 7/10
- Console: 9/10 (2 warnings, 0 errors)
- Links: 8/10 (1 broken link out of 45)
- Interactivity: 6/10 (signup form submit fails silently)
- Visual: 5/10 (hero image 404, footer misaligned on mobile)

Phase 5: Fix Loop

Read the full file on GitHub · 105 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 105 lines · 50 tokens per session scan A 98b8f1732fe7

Subscribe to this mod's changes

qa is a skill published in the GitHub repository blueberrycongee/termcanvas (392 stars, last pushed 3mo ago), licensed MIT. It adds 50 tokens to every session and 839 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

webapp-testing

Start/reuse a local app, wait for readiness, inspect rendered state/console/network, act from observed selectors, and verify with evidence.

Hmbown/CodeWhale · 32 tokens

tutti-record-agent-session-replay

From a Tutti checkout, run, audit, freshly replay, publish, or diagnose Session Replay cassettes that are driven by case-repository scenario scripts (CDP), not by interactive UI recording. Use for real-Provider capture while a scenario.mjs executes, cassette transport or semantic-state mismatches, fresh replay…

tutti-os/tutti · 127 tokens

browser-check

Drive a real browser and come back with a MEASUREMENT rather than an impression - console errors and >=400 responses as counts, computed styles as JSON when appearance is disputed. Use when work touches UI, when a review must verify one, or when fidelity-gate asks for its measurement.

jjanczur/tyran · 58 tokens

e2e-testing

Run and author the repository's Playwright E2E tests, validate critical user journeys, and stabilize flaky browser behavior using the actual GUI and service contract.

c9r-io/orchestrator · 36 tokens

playwright-cli

Automate browser interactions, test web pages and work with Playwright tests.

kdlbs/kandev · 19 tokens

hive-browser

Drive a Browser tile on the hivemind canvas from inside an agent session — navigate pages, click, fill forms, read content, and screenshot the SAME browser tile the user is watching, using the Chrome DevTools Protocol. Use this whenever you (an agent running in a hivemind tile) are asked to browse the web, open a…

dip497/hivemind · 192 tokens