By dsolisp
The judge's hammer for test quality. Minimalism + QA discipline — one test, one verdict, move on.
Creates and executes API tests using the service layer pattern. Handles authentication, tenant/context headers, factories, contract validation, and error matchers. Covers happy path, validation, auth, authorization, and edge cases through the repo's native API test stack.
Audits expected-failure, skip, ignore, disabled, quarantine, and WIP markers across test suites. Runs each marked test, categorizes as real bug, isolation issue, undocumented marker, or already-fixed marker. Produces a report and edits only when a marker is safe to remove.
Creates automated E2E tests using stack-native patterns. Uses fixture DI, factories, native assertions, and the repo's existing composition model. Writes test by test with intermediate validation. Adapts by detected capabilities rather than hardcoded framework recipes.
Debugs and fixes failing tests via systematic root cause analysis. Determines if failure is test issue, app bug, or env issue. Validates with test run + verification after each fix. Framework-adaptive — uses the correct debugging approach per active profile.
Analyzes new backend/frontend commits after git pull to determine if API or UI automation needs updates, new tests, or refactors. Use when commits have landed and QA needs to decide whether to write/update tests. Framework-adaptive — works with any automation repo structure.
Analyze test suite run results for any framework. Classify failures as env, seed, app bug, test bug, or expected fail. Produce pass-rate by area and ranked recommendations. Use after any test suite run.
Author API tests using the service-layer pattern in the target repo. Generates test code only — not OpenAPI governance, contract platforms, or env provisioning. Framework-adaptive. Use when asked to write API tests with existing patterns.
Whole-repo audit for test suite bloat and Test Constitution violations. Scans the entire codebase: unused POMs, dead locators, duplicate factories, orphaned tests, CSS/XPath overuse, hardcoded data, missing test.step(). Ranked list of what to delete, simplify, or fix. Use when the user says "audit this test suite", "gavel-audit", "/gavel-audit", "find test bloat", or "what's wrong with my tests". One-shot report, does not apply fixes.
Multi-tenant firm-scoped authentication for API and UI tests. Use when tests get 401 across tenants, need tenant-scoped tokens, or debug firm-scope mismatches. Framework-adaptive.
Writes standardized bug reports when an automated test confirms a real product defect. Use only after gavel-heal or gavel-analyze classifies APP BUG — not for flaky, env, or test-side failures.
Uses power tools
Uses Bash, Write, or Edit tools
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Test-code quality enforcement for AI agents.
One test. One verdict. Move on.
Gavel is an independent QA discipline project for automation repos. It enforces lean suites, trustworthy test code, and resilient structure across Playwright, Selenium, Cypress, WebdriverIO, Cucumber, Robot, and pytest-playwright — without turning into a full QA platform.
Inspired by ponytail's minimalism. Not a fork. No upstream sync required.
git clone https://github.com/dsolisp/gavel.git
cd gavel
npm run verify # dogfood the verify gate
node scripts/self-check.js ../your-automation-repo
node scripts/audit-report.js ../your-automation-repo --with-self-check --audit-format
Install into your IDE (Cursor, Claude Code, OpenCode, etc.) using QUICKSTART.md, then invoke /gavel-audit or /gavel-review on your test repo.
| I want to… | Command / skill | Outcome |
|---|---|---|
| Scan my suite for bloat and violations | /gavel-audit | Ranked scoreboard: dead POMs, leaks, waits, markers |
| Review a test diff before merge | /gavel-review | One line per constitution violation |
| Enforce layering in CI | node scripts/self-check.js . | Blocker/fix report with exit code |
| Understand a CI failure cluster | /gavel-analyze | Classified clusters + next agent |
| Fix a failing test | /gavel-heal | Verdict: test bug, app bug, env, or flake |
| Remove safe dead code | /gavel-refactor (apply-safe) | Dead locators/POMs removed with test evidence |
| Detect my stack | /gavel-detect | Activates the right framework profile |
| Write UI/API tests in existing patterns | /gavel-e2e, /gavel-api | Test code using your repo's architecture |
| Track deferred test decisions | /gavel-debt | Ledger of gavel: comments |
| See suite health at a glance | /gavel-gain | Pass rate, flake count, LOC per test |
Companion workflows (optional, not in default install): companion/README.md — CI migration, env setup, hub credentials, issue closure.
| Command | What it does |
|---|---|
/gavel [lite | full | strict | off] | Set intensity level |
/gavel-audit | Whole-repo audit + suite health scoreboard |
/gavel-review | Review test diffs for constitution violations |
/gavel-self-check | Static constitution scanner |
/gavel-heal | Diagnose a failing test |
/gavel-analyze | Parse CI report, cluster failures |
/gavel-refactor | Improve test code; apply-safe dead code removal |
/gavel-detect | Auto-detect your test stack |
/gavel-help | Quick reference |
| Area | What Gavel enforces |
|---|---|
| Layering | Locators → actions → specs; no assertion leakage |
| Locators | Semantic/accessibility first; no raw selector chains outside locator classes |
| Waits | Native retry assertions; no arbitrary sleeps |
| DI | Fixtures over new PageObject(page) in specs |
| Suite health | Dead POMs/locators/factories, skip markers, bare test.fail() |
| Resilience | Overlay scoping, shared-state setup, draft-vs-list assertions (roadmap v0.8) |
| CI intelligence | JUnit, Allure, Playwright, Cypress, Cucumber parsers + clustering |
| Evidence gate | Compile + affected tests before declaring done |
Gavel audit report — ../my-automation-repo
blocker review manual-wait Manual sleeps or arbitrary polling. [pages/actions/ExampleActions.ts:L42]
fix review selector-leak Raw selector chains outside locator classes. [pages/actions/ExampleActions.ts:L18]
Suite health:
Dead POMs: 2
Dead locators: 5
Unused factories: 1
Selector leaks: 3
Manual waits: 7
Skip/quarantine markers: 0
Bare test.fail markers: 1
Constitution violations: 11
Critical-area violations: 4
Safe autofix candidates: 8
Top areas:
tests/e2e/catalog: 6
npx claudepluginhub dsolisp/gavel --plugin gavelComplete creative writing suite with 10 specialized agents covering the full writing process: research gathering, character development, story architecture, world-building, dialogue coaching, editing/review, outlining, content strategy, believability auditing, and prose style/voice analysis. Includes genre-specific guides, templates, and quality checklists.
Consult multiple AI coding agents (Gemini, OpenAI, Grok, Perplexity, plus codex and antigravity CLIs when installed) to get diverse perspectives on coding problems
Comprehensive skill pack with 66 specialized skills for full-stack developers: 12 language experts (Python, TypeScript, Go, Rust, C++, Swift, Kotlin, C#, PHP, Java, SQL, JavaScript), 10 backend frameworks, 6 frontend/mobile, plus infrastructure, DevOps, security, and testing. Features progressive disclosure architecture for 50% faster loading.
Develop, test, build, and deploy Godot 4.x games with Claude Code. Includes GdUnit4 testing, web/desktop exports, CI/CD pipelines, and deployment to Vercel/GitHub Pages/itch.io.
A growing collection of Claude-compatible academic workflow bundles. Covers scientific figures, manuscript writing and polishing, reviewer assessment, citation retrieval, data availability, paper reading, literature search, response letters, paper-to-PPTX conversion, and evidence-grounded Chinese invention patent drafting. Rules are organized as reusable skill folders with explicit workflows and quality checks.
Comprehensive PR review agents specializing in comments, tests, error handling, type design, code quality, and code simplification