BangOnIt! bangs on your app so you don't have to. Write tests in natural language, AI runs them just like a human would.
$ npx bangonit run \
--plan "Log in as test@test.com / 123456,
navigate to the billing page,
and verify the charts look right"
BangOnIt! opened — watching test run...
> browser: navigate http://localhost:3000/login
> browser: type email, type password, click Sign in
> browser: navigate /billing
> browser: screenshot [verifying charts]
PASS All steps verified. (14.2s)
Recording saved to recordings/03-23T04-12Z/index.htmlTest plans are just plain markdown files. And the headless CLI can be called from test runners, CI pipelines, or AI coding agents like Claude Code.
Debugging E2E tests doesn't have to be terrible. Every test run can be recorded and played back as a single HTML file along with the logs and agent trace.
Batched browser actions, accessibility tree for navigation, optimized screenshots only when visual verification is needed. Run tests in parallel across multiple agents.
The AI agent adapts to UI changes, loading states, animations, and layout shifts just like a human would, minimizing false negatives.
One command sets up test plan directories, Claude Code skills, and GitHub Actions CI.
$ npm i -g bangonit
$ boi init
Created testplans/
Created .github/workflows/
Created .claude/skills/Describe your test in a markdown file. List the steps a human would take.
---
name: Login flow
---
## Steps
1. Go to /login
2. Type "user@test.com" in email
3. Type "password123" in password
4. Click "Sign in"
5. Verify the dashboard loadsRun locally or push to trigger CI. Results post to your PR with links to session recordings.
$ boi run
ALL TESTS PASSED
+ Login flow (12.3s)
Recording saved to recordings/Add BangOnIt! to your GitHub Actions workflow in minutes. Test results are posted as PR comments with links to interactive session recordings.
name: E2E Tests
on: [pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm ci
- run: npx bangonit
env:
ANTHROPIC_API_KEY: ${{ secrets.KEY }}Uses the accessibility tree for fast, text-based navigation. Switches to optimized screenshots when visual verification is needed. The right tool for each step, automatically.
Multiple browser actions are batched into a single LLM call for fewer round trips. Fewer API calls means faster tests and lower costs.
A beautiful, purpose-built browser UI for watching tests run and debugging failures. Built on Electron with custom Chrome DevTools Protocol instrumentation.
Run multiple tests simultaneously, each with its own isolated browser tab and AI agent.
Recordings are single HTML files. No SaaS subscription required. Open them in any browser, share them in Slack, host them on S3. They just work.
BangOnIt! turns your plain English test plans into fully automated E2E tests. No selectors. No page objects. No nonsense.