Skip to content

Give your next release
a testing team.

Agents explore your app, investigate what breaks and turn findings into checks for the next release.

On-screen text of the 66-second pilot film, which uses a fictional demo app:

Your agents ship code all day. Tests behave. People don’t. They double-click. Go back. Paste anything. Give up. That’s where apps break.

Nauro’s agents act like real people. First it maps your app, and picks the flow that matters most: checkout. One agent double-clicks Place order. The page says “Order confirmed” for order DS-4821. Then it looks the order up: no orders match DS-4821. Agents only get the access you grant.

It files a finding, with the evidence: “Double-click on Place order: no order saved”, with a screenshot, the order lookup, the network requests and a replay. Your team confirms it: this is a bug. Your team ships the fix. Nauro rechecks it with a new checkout, order DS-4822: the order is saved, and the check that failed before now passes. 0 orders saved becomes 1 order saved.

More findings from fictional apps: a team chat app, “Signup says done. No account.” An online store, “Back, then Pay: charged twice.” An analytics app, “‘Export ready.’ File is empty.” An agent tool, “Agent says ‘Saved.’ Nothing written.”

Test your MCPs and CLIs. An agent sets up a fictional invoices MCP server from its README and skips the API key step. Asked to bill Ada $40 for March, the agent answers “Done. Ada’s invoice INV-1042 is ready.” The invoices API returned 401: 0 saved.

We’re recruiting pilot teams. Free and founder-assisted. Explore your app. Get findings linked to evidence. Nauro: give your next release a testing team. Request a pilot at nauro.ai.

Start with one user flow.

Agents start from a link to your app and test the user flow that matters most, then repeat the checks after your app changes. Pilots are free and founder-assisted: Nauro’s founder helps when you want it. Product validation is in development.

Request a pilot
  1. Send a link

    Share a link to your app’s test environment and say what agents may do there. They map the app, pick the user flow that matters most and start testing. Redirect them at any time, or share test accounts and documentation so they can cover more.

  2. Get a report

    Nauro runs the checks and investigates unexpected results. You receive the evidence, steps to reproduce problems and a list of anything we could not check.

  3. Check the next release

    After your next product change, we repeat the checks and compare the results. You can see what still works and what needs attention.

Proposed validation experience with fictional checkout data

Checkout after payment update

Checks

2of 2

Rechecks passed

2 checks were not repeated after this change.

Run 1 on shop-0.18.3: 3 of 4 checks passed. Run 2 on shop-0.18.4: the 2 repeated checks passed.

2

Findings

1 fixed · 1 to review

Checks by run
CheckRun 1Run 2
Click: order savedPassedNot repeated
Keyboard: order savedPassedNot repeated
Double click: confirmation shownPassedPassed
Double click: order savedFailedPassed

Findings

FixedBug, high impact.

Confirmation without an order

Recheck passed: DS-4822 saved

Your decision

Bug confirmed. Fixed in shop-0.18.4

Reproduction

Before fix · shop-0.18.3

Step 1 · 00:00 · Fresh checkout

demo-shop.example/cart

Your cart

Canvas tote × 1$24.00

DeliveryCalculated later

Step 2 · 00:14 · Double-click Place order

demo-shop.example/checkout

Place order, clicked twice

POST /api/orders00:14.01, DS-4821Canceled

POST /api/orders00:14.18, DS-4821409 checkout locked

Step 3 · 00:15 · Confirmation shown

demo-shop.example/checkout

Order confirmed

DS-4821

Step 4 · 00:20 · Order lookup

demo-shop.example/admin/orders

GET /admin/orders?reference=DS-4821

No matching order

0 records at 0s, 2s and 5s

Expected

Rule: Confirmed means saved

A confirmation means the order is saved.

Actual

Before fix · shop-0.18.3

Confirmed on screen, never saved.

What the customer saw
Browser

demo-shop.example/checkout

Demo shop

Order confirmed

DS-4821

Canvas tote × 1$28.00

What was saved
Order lookup
GET /admin/orders
?reference=DS-4821

No matching order

  • No record at 0 seconds
  • No record at 2 seconds
  • No record at 5 seconds
  • No record in the database
How this was checked
Requests
00:14.01 POST /api/orders · DS-4821 · Canceled00:14.18 POST /api/orders · DS-4821 · 409 checkout locked
Sources
Browser recording, network trace, order lookups at 0, 2 and 5 seconds, read-only database check.
Limits
Only the double click lost the order; click and keyboard saved. The trace shows the mismatch, not its cause in the code.
After fix · shop-0.18.4

The same double click, confirmed and saved.

What the customer saw
Browser

demo-shop.example/checkout

Demo shop

Order confirmed

DS-4822

What was saved
Order lookup
GET /admin/orders
?reference=DS-4822

1 matching order

Recheck after fix

Same behavior: double-click on Place order

Check results before and after the fix
CheckRun 1 · before fixRun 2 · after fix
Confirmation shownPassedPassed
Order savedFailedPassed

Run 2: order DS-4822 on shop-0.18.4, 18 Oct

To reviewNeeds user testNot rated.

Delivery cost after address

Your decision

Waiting for your team

Reproduction

Step 1 · 00:03 · Product price

demo-shop.example/tote

Canvas tote

$24.00

No delivery estimate

Step 2 · 00:07 · Cart

demo-shop.example/cart

Your cart

Subtotal$24.00

DeliveryCalculated later

Step 3 · 00:12 · Address entered

demo-shop.example/review

Review your order

Delivery$4.00

Total$28.00

Expected

No rule agreed yet. Only people can say if the total is clear.

Actual

Delivery cost shows only after the address.

Before the address

demo-shop.example/cart

Your cart

Canvas tote × 1$24.00

DeliveryCalculated later

After the address

demo-shop.example/review

Review your order

Subtotal$24.00

Delivery$4.00

Total$28.00

  • 0 people observed
  • 3 of 3 attempts

Next: ask people to find the total.

How this was checked
Sources
Browser recordings of 3 checkout attempts.
Limits
No usability threshold agreed. No claim about confusion or conversion.

Signup and first project

Checks

3of 3

Checks passed

Run 1 · shop-0.18.3

Run 1 on shop-0.18.3: 3 of 3 checks passed.

0

Findings

No issues found in these checks.

Checks by run
CheckRun 1
Standard: account and project savedPassed
Double click Create account: one accountPassed
Back, then resubmit: one accountPassed

Findings

No issues found in these checks

3 checks passed

Invite a teammate

Checks

2of 4

Checks passed

2 checks not completed

Run 1 on shop-0.18.2: 2 checks passed, 2 not completed.

1

Coverage gap

Needs inbox access

Checks by run
CheckRun 1
Send invite: shows PendingPassed
Resend: still one PendingPassed
Inbox receives inviteNot completed
Join link worksNot completed

Findings

Coverage gap

Inbox not checked

Open settings

Reproduction

Step 1 · 00:00 · Enter teammate

demo-shop.example/team

Invite a teammate

Recipient

[email protected]

Step 2 · 00:06 · Send invitation

demo-shop.example/team

Invitation sent

Status: Pending

Step 3 · 00:08 · Stop at access

demo-shop.example/team

Inbox access not granted

Expected

Rule: Missing access is not a failure

The invite arrives and its join link works.

Actual

The app says sent. No inbox to confirm.

What the app showed
Browser

demo-shop.example/team

Invitation sent

Status: Pending

Test inbox
Not connected

No inbox access

  1. Sent, observed
  2. Pending, observed
  3. Inbox, not completed
  4. Join link, not completed
How this was checked
Limits
Receipt and the join link were not observed.

Settings

Demo shop
  • Addresshttps://demo-shop.example
  • EnvironmentPreview / staging
  • IdentitiesTest accounts
  • DataSynthetic
  • Order lookupsRead-only
  • PaymentsSandbox
  • Test inboxNot connectedInvite a teammate
  • Live chargesBlocked
  • Other recipientsBlocked

Example only. No credentials, no connections.

When your app changes, the checks keep up.

After your fix ships, agents repeat the same behavior and compare the runs. When expected behavior changes, you review the new expectation before we update the checks.

Concept example of rechecking the same behavior after a fix. These are not results from a live test.

Recheck after fix

Run 2

Same behavior: double-click on Place order

Check results before and after the fix
CheckRun 1 · before fixRun 2 · after fix
Confirmation shownPassedPassed
Order savedFailedPassed

Frequently asked questions

What do I get from a pilot?

A report showing what passed, what failed and what could not be checked, with evidence and steps to reproduce problems. We retain the checks for another run after your app changes. Your team decides whether to release.

We already have automated tests. Where does Nauro help?

If you share your existing tests, we look for what they leave unchecked in the user flow. The pilot focuses on those gaps and on investigating unexpected results. There is no need to replace your Playwright, Cypress or other tests.

How do you check that a reported bug is real?

We reproduce unexpected results and link each finding to its evidence. When the expected behavior is our inference rather than something you confirmed, we mark it as a question for you, not a bug. A user flow passes only when every check you confirmed passes.

What access do you need, and how is our data handled?

A link to a test environment and the actions agents may take there are enough to start. Test accounts and documentation let agents cover more. You choose which data agents may use and which actions are allowed before they start.

Want us to test your app?

Leave your email with a link to your app and what agents may do there. Once the limits are set, agents start exploring.

We use your email only to reply. Privacy

For developers using coding agents.

Nauro’s decision system is available today. Keep approved decisions and their reasons available across coding sessions.

Use the decision system