Agent skill

QA Find Bugs Dashboard

by bex-co in bex-co/beancount-io

Exercise the running Beancount.io dashboard with headless Playwright, use QAEMAIL and QAPASSWORD for login, reproduce bugs, trace fixes to source, and deduplicate findings.

MITAuto-check: notesDevelopment

Install QA Find Bugs Dashboard

skills CLI
$ npx skills add bex-co/beancount-io --skill qa-find-bugs-dashboard -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install bex-co/beancount-io qa-find-bugs-dashboard --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/bex-co/beancount-io.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/qa-find-bugs-dashboard .claude/skills/qa-find-bugs-dashboard && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
qa-find-bugs-dashboard
GitHub stars
296
Token cost
~2.3k tokens
SKILL.md length
992 words
Files
2
Skills in repo
27
Repo updated
First seen
Licence
MIT

At a glance

Exercise the running Beancount.io dashboard with headless Playwright, use QAEMAIL and QAPASSWORD for login, reproduce bugs, trace fixes to source, and deduplicate findings.

  • A browser bug hunt
  • SKILL.md covers Run in the background, Prepare the browser, Sweep whole journeys and Research map
  • Calls yarn and node; needs QA_PASSWORD
  • Tasks that involve Debugging

What it does

QA Find Bugs Dashboard is an agent skill from bex-co/beancount-io. Exercise the running Beancount.io dashboard with headless Playwright, use QAEMAIL and QAPASSWORD for login, reproduce bugs, trace fixes to source, and deduplicate findings. Use for dashboard QA or a browser bug hunt. Skip ordinary code review, bug implementation, and native-mobile QA (use qa-find-bugs-mobile).

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `evals/evals.json`).

It sits in Development, covering Debugging and Browser testing. It works with Playwright and Model Context Protocol. The repository describes itself as: 💰 Double-entry bookkeeping made easy — plain-text accounting for humans and AI agents. Polished iOS & Android app built with React Native + Expo. The licence is MIT.

When your agent uses it

  • A browser bug hunt
  • Tasks that involve Debugging
  • Tasks that involve Browser testing

Example prompts

  • “/qa-find-bugs-dashboard”

What it can do on your machine

Read from SKILL.md and the folder at commit 2e520db. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • yarn
    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use yarn, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • QA_PASSWORD

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

QA Find Bugs Dashboard loads about 2.3k tokens when it runs. Until then it costs about 84 tokens; SKILL.md has 992 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~84
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:57
    `QA_PASSWORD` from **`dashboard/.env`**, unless the user supplies another path.
  • NoteMentions a .env fileSKILL.md:59
    cripts/qa-login.mjs --env-file dashboard/.env`.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from bex-co/beancount-io at commit 2e520db, republished under its MIT licence (© bex-co). 992 words, ~2,273 tokens.

Download SKILL.mdSave it as .claude/skills/qa-find-bugs-dashboard/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
qa-find-bugs-dashboard
description
Exercise the running Beancount.io dashboard with headless Playwright, use QA_EMAIL and QA_PASSWORD for login, reproduce bugs, trace fixes to source, and deduplicate findings. Use for dashboard QA or a browser bug hunt. Skip ordinary code review, bug implementation, and native-mobile QA (use qa-find-bugs-mobile).

Dashboard QA bug hunt

Read the shared QA contract first. Read dashboard/AGENTS.md. Use Playwright MCP to test real browser behavior.

Arguments: optional server URL, journey names, wN, SHIP=1, DRY_RUN=1. Default to production and report mode. A target URL changes the client under test; inspect its API origin independently. Record whether the running client matches local HEAD before declaring a source fix missing from production.

Run in the background

  • Default to a headless browser with an isolated QA profile. Keep the user's windows, tabs, mouse, keyboard, and system clipboard undisturbed. A fresh context inside a headed browser can still open a visible window; it does not satisfy this requirement.
  • Launch Playwright MCP with --headless --isolated. For Claude Code, check mcpServers.playwright.args in the repo's .mcp.json; for Codex, check the active [mcp_servers.playwright] configuration, normally in ~/.codex/config.toml. Inspect effective launch settings, including overrides and any attached-browser endpoint, before the first browser action. A config edit takes effect on a new MCP server/browser session, not an already-running headed session. Do not attach to the user's regular browser.
  • If the current MCP session is headed, establish a separate headless session before continuing UI checks. An already available Playwright runtime in a QA-owned process is an acceptable fallback when MCP cannot be restarted safely. Preserve the same login and evidence workflow. If no background session is available, report the UI checks as blocked and continue independent source/API investigation; do not silently launch a visible browser or stop another task's browser server.
  • Use Playwright's page/context APIs for clicks, typing, keyboard navigation, focus assertions, viewport changes, screenshots, and downloads. Do not call bringToFront, activate desktop apps, drive the OS mouse/keyboard, or open downloaded artifacts in desktop viewers. Browser-local focus checks remain part of accessibility QA.
  • For uploads, use file inputs/file-chooser APIs with authorized fixtures. For print checks, inspect print media or a headless PDF where supported; this does not verify the native print dialog. Run visible-browser, native-dialog, or actual screen-reader checks only when explicitly requested. Otherwise record that coverage as unverified and continue the background journeys.
  • Record the browser mode and session ownership with the run evidence. Reuse the owned headless browser with fresh contexts as needed, and close only this run's contexts, browsers, and helper processes during cleanup.

Prepare the browser

  • Record the initial browser session. Authenticate using QA_EMAIL and QA_PASSWORD from dashboard/.env, unless the user supplies another path. From the repo root, run node .agents/skills/qa-shared/scripts/qa-login.mjs --env-file dashboard/.env. The helper hides the password and transfers session cookies in memory. Inspect features/auth/hooks/use-login-form.ts, graphql/query/auth.graphql, and the backend auth resolver/cookie helper for the current contract. Verify the resulting account and role, not merely a 200.
  • Use an ordinary desktop viewport (for example 1440×1000), then repeat the relevant controls at a narrow viewport. Record locale, theme, and active filters. Prefer accessible roles and names from snapshots to brittle selectors.
  • If the account is unavailable, continue public-ledger and signed-out journeys and explicitly leave authenticated behavior unverified.
  • For local reproduction, install existing dependencies with yarn install --immutable inside dashboard/; start yarn dev. Never assume the local server uses a sandbox backend. Existing scripts/perf-fixture-api.mjs can isolate loading behavior, but results against its synthetic owner/fixtures must be labeled local simulations.
Show full SKILL.md (468 more words)Show less

Sweep whole journeys

Use selected journey names to narrow this table; otherwise survey the available surfaces and deepen the journeys that show failures. Report each skipped group.

JourneyObservable promise
authSign-in reaches the intended safe next route; cancellation/back and expired-session states remain usable. Do not send reset or invitation email without authorization.
discoveryGallery search narrows, pagination changes results, a public ledger opens, and returning restores a coherent list. Test ledger switching without leaking prior data.
overviewDate/account filters affect cards and charts; recent activity opens the corresponding journal item; empty and loading states are truthful.
journalType, flag, date, account, payee/tag filters compose; pagination/count agree; postings expand; back/reload preserves the stated filters. Authorized synthetic edits persist exactly once.
accountsSearch and hierarchy expansion work; a linked account shows matching entries and balances; closed or absent accounts have honest states.
reportsBalance Sheet, Income Statement, Trial Balance, Cash Flow, holdings/statistics and budget honor the selected period and units; drill-down retains intended context.
exportCSV/Markdown and Print / Save as PDF match the filtered supported statement, dates, entity, commodity units, and sign conventions. Read features/reports/AGENTS.md before interpreting financial signs.
filesTree navigation, text preview, branches, commit/diff links, and downloads work. Test create/edit/upload/delete only with authorized disposable files and check the resulting commit.
queryBQL executes, errors are actionable, result paging/export matches the result, and editing the query does not show stale output as new.
importReceipt/file/bank entrypoints and validation are usable. Actual imports and bank linking need the applicable authorization; inspect previews without booking real transactions.
settingsAvailable profile/ledger/settings screens render; owner/member/public controls match permissions. Inspect billing, credentials and collaborators without changing them.
accessibilityKeyboard access, dialogs/focus return, accessible primary controls, narrow screens, theme and locale changes. Confirm names with the accessibility tree.

After a surprising state, capture the screenshot, console errors, request status, and operation response (sanitized). Use page.evaluate with fetch for an authenticated API control when appropriate, returning only relevant non-secret fields. Do not export an unfiltered HAR containing login bodies or cookies. Reproduce once from a fresh page load before retaining a finding.

Research map

  • Thin route wrappers: dashboard/src/routes/; implementation: dashboard/src/features/<feature>/.
  • Cross-feature infrastructure: dashboard/src/common/, particularly Apollo links, auth, filters, navigation and ledger layout.
  • Report behavior and exports: features/reports/AGENTS.md; importer and ledger-data have their own nested guides. ADRs are in docs/adrs/.
  • Shared server causes: read backend-cluster/backend-v2/AGENTS.md before tracing src/features/<domain>/api, services, schemas, and ledger adapters. Read the ledger package guide if the response originates there. Keep fixes assigned to the package that owns the defect; do not create cross-package imports.

Apply the contract's reproduce → research → dedupe → report/optional filing steps. Finding a bug does not require changing product code or adding a test that merely repeats the implementation. If the user also requests a fix, reproduce it with a meaningful regression check and run the owning package's normal gates.

© bex-co, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in .agents/skills/qa-find-bugs-dashboard of bex-co/beancount-io.

  • SKILL.md
  • evals/evals.json

Open the folder on GitHubat commit 2e520db

Compare with similar skills

QA Find Bugs Dashboard next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

QA Find Bugs Dashboard compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
QA Find Bugs Dashboard this skillbex-co/beancount-io296—~2.3kAutomated safety check: NotesMIT
Playground Website DebuggingWordPress/wordpress-playground2k—~1.9kAutomated safety check: PassGPL-2.0
QABuilderIO/agent-native7.1k—~3kAutomated safety check: NotesNone
Playwright Debugvoicetreelab/voicetree924—~1.2kAutomated safety check: PassCustom licence
Chrome Devtoolstech-leads-club/agent-skills7k—~1.3kAutomated safety check: PassMIT
Debug E2E Testbitovi/ai-enablement-prompts121—~677Automated safety check: PassMIT

Similar skills

  • Playground Website Debugging

    WordPress/wordpress-playground

    Debug the WordPress Playground website by running the dev server from source and interacting with it via Playwright MCP.

    2k GitHub stars~1.9k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • QA

    BuilderIO/agent-native

    Autonomous multi-app QA sweep that drives template apps with Playwright MCP.

    7.1k GitHub stars~3k tokensUpdated today
    Testing & QAAuto-check: notes
  • Playwright Debug

    voicetreelab/voicetree

    This skill should be used when the user asks to "debug the electron app", "connect playwright to VoiceTree", "take screenshots of the running app", "interact with the live UI", "inspect the running…

    924 GitHub stars~1.2k tokensUpdated 2 days ago
    Testing & QAAuto-check passed
  • Chrome Devtools

    tech-leads-club/agent-skills

    Browser debugging, performance profiling, and automation via Chrome DevTools MCP.

    7k GitHub stars~1.3k tokensUpdated yesterday
    Testing & QAAuto-check passed
  • Debug E2E Test

    bitovi/ai-enablement-prompts

    Debug and fix failing Playwright E2E tests. An agent skill from bitovi/ai-enablement-prompts.

    121 GitHub stars~677 tokensUpdated 29 days ago
    Testing & QAAuto-check passed
  • Extension Puppeteer Debugging

    mengxi-ream/read-frog

    Debug the built Read Frog extension in real Chrome. An agent skill from mengxi-ream/read-frog.

    10k GitHub stars~2k tokensUpdated yesterday
    DevelopmentAuto-check: notes

More from bex-co/beancount-io

All 27 skills in this repo
  • Beancount Close

    bex-co/beancount-io

    Close an accounting period in a Beancount ledger by reconciling each active account through beancount-reconcile, checking assertions and recurring gaps, reviewing flags, then proposing a commit with…

    296 GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • Beancount Import

    bex-co/beancount-io

    Import a bank or card CSV, OFX/QFX, or QIF export into an existing Beancount ledger.

    296 GitHub stars~3k tokensUpdated today
    Auto-check passed
  • Beancount Importer Author

    bex-co/beancount-io

    Write or repair a reusable Beangulp importer from a sample bank export, with reviewed golden files and a passing test harness.

    296 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Beancount Init

    bex-co/beancount-io

    Scaffold a new Beancount ledger with bea init and validation, with optional Fava browser setup when requested.

    296 GitHub stars~1.2k tokensUpdated today
    Auto-check: notes
  • Beancount Options

    bex-co/beancount-io

    Record a described options trade or lifecycle event as validated Beancount transactions through bea, after review and confirmation.

    296 GitHub stars~3.7k tokensUpdated today
    Auto-check passed
  • Beancount Reconcile

    bex-co/beancount-io

    Reconcile one Beancount account against a CSV statement or pasted PDF text.

    296 GitHub stars~4.1k tokensUpdated today
    Auto-check passed

Questions about QA Find Bugs Dashboard

What does QA Find Bugs Dashboard do?

Exercise the running Beancount.io dashboard with headless Playwright, use QAEMAIL and QAPASSWORD for login, reproduce bugs, trace fixes to source, and deduplicate findings. QA Find Bugs Dashboard is an agent skill from bex-co/beancount-io.io dashboard with headless Playwright, use QAEMAIL and QAPASSWORD for login, reproduce bugs, trace fixes to source, and deduplicate findings.

When should I use QA Find Bugs Dashboard?

QA Find Bugs Dashboard fits situations like: A browser bug hunt; tasks that involve Debugging; tasks that involve Browser testing.

How do I install QA Find Bugs Dashboard in Claude Code?

Run `npx skills add bex-co/beancount-io --skill qa-find-bugs-dashboard -a claude-code`. Or copy the skill folder (.agents/skills/qa-find-bugs-dashboard in bex-co/beancount-io) into .claude/skills/qa-find-bugs-dashboard in your project. Claude Code loads it when a task matches its description.

How do I install QA Find Bugs Dashboard in Codex?

Run `npx skills add bex-co/beancount-io --skill qa-find-bugs-dashboard -a codex`. Or copy the skill folder (.agents/skills/qa-find-bugs-dashboard in bex-co/beancount-io) into .agents/skills/qa-find-bugs-dashboard in your project. Codex loads it when a task matches its description.

Can I use QA Find Bugs Dashboard in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add bex-co/beancount-io --skill qa-find-bugs-dashboard -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/qa-find-bugs-dashboard, .gemini/skills/qa-find-bugs-dashboard, .github/skills/qa-find-bugs-dashboard and .opencode/skills/qa-find-bugs-dashboard in your project.

What does QA Find Bugs Dashboard need to run?

Going by SKILL.md and its folder, QA Find Bugs Dashboard needs the command-line tools its instructions call (yarn and node) and credentials named QA_PASSWORD.

Does QA Find Bugs Dashboard access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is QA Find Bugs Dashboard safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does QA Find Bugs Dashboard use?

QA Find Bugs Dashboard is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does QA Find Bugs Dashboard use?

About 2.3k tokens (SKILL.md is roughly 9.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to QA Find Bugs Dashboard?

Skills that share tags, products or a category with QA Find Bugs Dashboard: Playground Website Debugging (WordPress/wordpress-playground, 2k stars), QA (BuilderIO/agent-native, 7.1k stars), Playwright Debug (voicetreelab/voicetree, 924 stars) and Chrome Devtools (tech-leads-club/agent-skills, 7k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains QA Find Bugs Dashboard?

bex-co (a GitHub organization) maintains it in bex-co/beancount-io, which has 296 GitHub stars. The repository holds 27 skills in this directory. The repository was last updated on October 10, 2026.

Source: bex-co/beancount-io on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.