---
title: What is agent-qa
description: Understand agent-qa, then jump into the core docs for tests, suites, hooks, platforms, and agent workflows.
---



## Overview [#overview]

**agent-qa** is an open-source AI end-to-end testing tool for web and mobile apps. Tests can be written in natural language, with no hardcoded CSS or XPath selectors. Tests are self-healing, and with every run, the agent continuously learns and creates contextual memory like a QA engineer.

<Cards>
  <Card title="Quickstart" href="/docs/agent-qa/quickstart" icon="<DocsRocketIcon />" description="Install agent-qa, initialize the workspace, validate the generated files, and run the first local QA workflow." />

  <Card title="Explore demos" href="/demo/agent-qa" icon="<DocsDemoIcon />" description="Open curated agent-qa runs in the interactive demo viewer and inspect how real test steps execute." />

  <Card title="Configuration" href="/docs/agent-qa/configuration" icon="<DocsConfigIcon />" description="Review the file-backed configuration system for global settings, tests, suites, hooks, variables, secrets, devices, rules, and auth." />

  <Card title="Memory" href="/docs/agent-qa/memory" icon="<DocsMemoryIcon />" description="Review how file-backed product, suite, and test observations make future runs more product-aware." />

  <Card title="Caching" href="/docs/agent-qa/caching" icon="<DocsCacheIcon />" description="Reuse cached action plans for similar subsequent runs, with landing-page examples showing 5x faster execution and 3x fewer planner tokens." />

  <Card title="Tests" href="/docs/agent-qa/guides/first-test" icon="<DocsTestIcon />" description="Write one plain-English YAML journey with stable intent, reviewable steps, and source-controlled expectations." />

  <Card title="Web Testing" href="/docs/agent-qa/guides/web-testing" icon="<DocsWebIcon />" description="Run browser flows against local or staged web apps without hardcoded selectors or fragile DOM coupling." />

  <Card title="Auth state" href="/docs/agent-qa/guides/auth-state" icon="<DocsConfigIcon />" description="Capture a named web login once, reuse it by logical name, pass the active state to hooks, and keep credential material out of artifacts." />

  <Card title="Suites" href="/docs/agent-qa/guides/suites" icon="<DocsSuiteIcon />" description="Bundle related tests, targets, configuration, and hooks into repeatable workflows for a feature area." />

  <Card title="Mobile Testing" href="/docs/agent-qa/guides/mobile-testing" icon="<DocsMobileIcon />" description="Use the same natural-language workflow model for mobile app journeys while preserving artifacts locally." />

  <Card title="Hooks" href="/docs/agent-qa/guides/hooks" icon="<DocsHookIcon />" description="Prepare data, call project scripts, verify side effects, and clean up state before or after a run." />
</Cards>

## How agent-qa works [#how-agent-qa-works]

<Steps>
  <Step>
    ### Write tests in natural language [#write-tests-in-natural-language]

    Describe the user journey in plain English: what to open, what to do, and what to assert. agent-qa turns that intent into repeatable execution.
  </Step>

  <Step>
    ### Bring your own LLM [#bring-your-own-llm]

    Use any hosted or local model. It also works with Codex and Claude Code subscriptions.
  </Step>

  <Step>
    ### Run tests [#run-tests]

    Run tests from either the dashboard or the CLI. Group multiple tests into a suite to execute user journeys end-to-end.
  </Step>

  <Step>
    ### Generate memory and context [#generate-memory-and-context]

    Each run passes through a memory curator that records product behavior, test intent, and suite context, then creates contextual memory for future test runs.
  </Step>

  <Step>
    ### Improve the next run [#improve-the-next-run]

    Future executions use the evolved agent context. That memory helps the agent adapt to product changes at runtime, recover from brittle UI drift, and become more reliable over time.
  </Step>

  <Step>
    ### Grow a product-aware QA agent [#grow-a-product-aware-qa-agent]

    The end state is a QA agent with enough context about your product to author tests, run them, inspect failures, and keep improving the testing loop.
  </Step>
</Steps>
