Tests your app actually needs.
vibe-test reads your app, classifies it by type and deployment risk, and generates the tests proportional to that risk — not a boilerplate dump, not a pass/fail coverage meter. For builders who shipped vibe-coded apps with thin-to-zero coverage and no clear path to fixing that.
Includes8 commands · 14 skills
ValidatedWeSeeYouAtTheMovies — three real findings reproduced live on the real codebase.
Audit, generate, leave a practice you can keep.
vibe-test classifies your app against a five-tier maturity matrix and generates tests proportional to what you actually shipped — then hands you a runbook and CI config so the practice survives after the plugin stops running.
Plugin entry point.
First-run or returning welcome. Lists the subcommands in plain language, detects whether a prior audit exists, and asks what to do next. No scanning.
App inventory and gap analysis.
Scans routes, components, models, integrations. Classifies app type and maturity tier, measures coverage with an honest denominator, and surfaces three harness-break finding types as first-class findings.
Confidence-tiered test generation.
Generates in three lanes: high-confidence auto-writes to tests/, medium stages for batch review, low shows inline for accept/reject. Matches your framework idioms.
Diagnose and repair broken tests.
Distinguishes harness-level breaks from test-logic breaks and routes repairs by confidence. Rolls back generated tests to pending when they're the source of CI breakage.
Honest-denominator coverage.
Detects cherry-picked denominators and proposes — never silently applies — the adapter diff to fix them. Emits a CI-friendly JSON sidecar.
CI pass/fail enforcement.
Applies the tier-appropriate threshold and exits 0/1/2. Detects CI mode and emits GitHub Actions annotations plus a summary.
Ambient posture summary.
Read-only. Renders classification, weighted score vs target, gap counts, and last-run timestamps in under 40 lines. Suggests next commands as questions.
Every other test tool assumes the harness works.
The coverage number your CI reports is a claim. vibe-test checks whether the claim is true. Three harness-level finding types — broken runner, missing binary, cherry-picked denominator — are surfaced as distinct, actionable findings. These are the failure modes that make coverage look fine while the app ships untested. No other Claude Code test tool catches them as first-class findings.
The generator is tier-aware: a prototype gets smoke tests, a public-facing SPA+API gets smoke + behavioral + edge-case + integration, calibrated by a weighted score. The handoff artifacts — docs/TESTING.md, a test plan, and an optional GitHub Actions stub — survive uninstalling the plugin entirely.
Two channels.
Stable marketplace
Tagged releases via the Vibe Plugins marketplace. CLI for CI: @esthernandez/vibe-test-cli.
/plugin marketplace add estevanhernandez-stack-ed/vibe-plugins /plugin install vibe-test@vibe-plugins
Canary bleeding edge
Tracks the solo repo's main branch — faster feedback, occasional breakage.
/plugin marketplace add estevanhernandez-stack-ed/vibe-test /plugin install vibe-test
JS/TS today (React, Next, Vite, Express, Firebase). Python/Go on the roadmap.
One plugin in a family.
Vibe Plugins are a coordinated family — installed independently, composed when present.