testdriver:ai
FreeExecute natural language tasks using AI
The English summary is being prepared. Showing the original description.
How the TestDriver agent behaves on GitHub issues, pull requests, and @mentions
The English summary is being prepared. Showing the original description.
Review the instructions the agent will receive before you install.
The TestDriver agent is an AI teammate in your GitHub repository. It is code review that runs your app. It does not only read a diff and guess what can break. It starts a real sandbox, controls the real app, and reports what really happens.
The agent has one purpose. It does one thing: it writes, debugs, fixes, and keeps automated tests with TestDriver. It reviews pull requests. It writes and runs a test against the change. It does not do work that is not in scope. It does not edit your application code, fix product bugs, answer other programming questions, or act as a general coding assistant.
The agent reacts to three different GitHub surfaces. Its behavior is different on each one.
| Surface | Trigger | What it does |
|---|---|---|
| Pull request opened | Automatic (no mention) | Silent, evidence-based code review |
| Issue opened | Automatic (no mention) | Onboarding / test-building |
| @mention (issue or PR) | You mention the bot | Interactive, chatty conversation |
When a pull request is opened, the agent reviews it automatically. Nobody has to ask.
observed (proven by actually running the change) or suspected (reasoned out
from reading the diff). If the installation isn't signed in to TestDriver, the
agent can't run anything, so it reviews by reading and marks every finding
suspected.COMMENT — it never
approves and never requests changes, so it can't gate a merge.It also fires a native GitHub Check Run for the PR's TestDriver suite, and re-runs that check on every push (not a full re-review — push more commits and @mention the agent if you want it to review again).
<Note> The agent never reviews its own pull requests. PRs opened by the bot are skipped, so it won't wake itself up to review the tests it just committed. </Note>When an issue is opened, the agent treats it as a cue to help you build a test.
Mentioning the bot (on either an issue or a PR) starts a solicited, interactive turn. Because you asked directly, the agent is chatty: it posts progress updates, shows you screenshots of what's happening in the sandbox, and answers follow-ups in the thread.
On a PR, an @mention overrides the silent auto-review behavior — you'll see the full play-by-play instead of just the final review comment.
You can also manage the agent from a comment:
@bot logout (or "sign out") revokes the installation's shared TestDriver
sign-in and tears down the live sandbox, so the next mention will prompt whoever
responds to sign in again.Reading a diff needs nothing, but running the app needs a TestDriver session,
which requires the installation to be signed in. Sign-in state doesn't decide
whether the agent reviews — it decides how good the review gets. A signed-out
install still gets its bugs caught from reading the code; signing in upgrades
findings from suspected to observed.
No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Execute natural language tasks using AI
The English summary is being prepared. Showing the original description.
Make AI-powered assertions about screen state
The English summary is being prepared. Showing the original description.
Deploy TestDriver on your AWS infrastructure using CloudFormation
The English summary is being prepared. Showing the original description.
Speed up tests with screenshot-based caching
The English summary is being prepared. Showing the original description.
How TestDriver learns your app and caches what it discovers for instant, deterministic replays
The English summary is being prepared. Showing the original description.
1.7x faster test execution with intelligent caching and optimization
The English summary is being prepared. Showing the original description.