01
Slow to write
Writing end-to-end tests is slow. Most teams either skip them or wait on QA.
Describe it, and Lucius takes it from there — exploring your app, building the test, and running it live. No steps required.
Scenario-01
Successful checkout with valid payment
Scenario-02
Checkout blocked with an empty cart
Scenario-03
Price updates when quantity changes
test('checkout', async ({ page }) => {
await page.goto('/cart');
await page.getByRole('button', { name: 'Checkout' }).click();
await expect(page.getByText('Order confirmed')).toBeVisible();
});9×
leaner output than a general LLM.
Same tests. A fraction of the tokens.
Measured against a general LLM using official Playwright.
01
Writing end-to-end tests is slow. Most teams either skip them or wait on QA.
02
Selectors break, suites go flaky, and maintenance eats the time you saved.
03
Coverage becomes the constraint. Teams drown in tests — or ship without them.
Lucius removes all three.
Focused building blocks for describing, generating, running, and owning real code.
01 · Intent
Describe the scenario once, in plain English. Lucius explores your app and turns it into real code you can run.
How it works
Lucius isn't one model guessing at a script. It's a focused pipeline — each stage does one job, and you can see the output of every one.
01
Lucius loads your app and maps the screens and flows involved in what you described.
02
Turns intent into a concrete scenario — what to check, and in what order.
03
Generates real, editable code for every step. Not a black box.
04
Checks each step as it goes, so failures are caught before you are.
05
Executes the suite live and reports pass/fail per step, in real time.
The architecture
Your automation should stay real code — even when AI creates it.
Bolted-on AI testing
✕ Locked to the platform
Lucius
✓ Your tests. Your infrastructure.
Ownership
Other AI testing tools hand you a black box. When it breaks, you're stuck. Lucius generates standard, real code you can read, edit, and take with you. Cancel tomorrow and your tests still run.
import { test, expect } from '@playwright/test';
test('checkout', async ({ page }) => {await test.step('Navigate to /cart', async () => { ... });await test.step('Click 'Checkout'', async () => { ... });await test.step('Assert 'Order confirmed'', async () => { ... });
});Privacy
Opt-in, not opt-out. What you run in Lucius stays yours unless you explicitly choose otherwise.
Default stance
Opt-in training only
Tunnel
Tunnel connects out — nothing is exposed publicly. Test staging and prod behind the firewall.
Network
Outbound-only tunnel
Ownership
Standard, real code in Git means canceling tomorrow does not trap your suite in a black box.
Portability
Export to Git anytime
For getting started
Testing — both modes & import. GitHub and runners included.
Auto + Manual
Testing modes
GitHub
Integration
Runners
Included
Bulk Import
Test cases
For teams and organizations
Everything in Free, plus:
Yes — standard, real code, exportable to Git.
Describe a scenario, get real code, and ship with confidence.
Start testing free