Your AI-powered QA engineer. Crawl docs, explore your app, learn flows, and generate & execute tests — from a Chrome side panel or via a Model Context Protocol server.
Pathfinder ships in two flavors. Use one or both — they share the same engine.
Side-panel UI in Chrome. Install once, point at any web app, click through the tabs. Best for hands-on QA work and ad-hoc exploration.
Standalone Node.js process exposing 20+ tools over the Model Context Protocol. Lets Claude Desktop, Cursor, Cline, or any custom AI agent drive Pathfinder programmatically — no browser required.
Click the ⚙ Settings icon → choose your provider (OpenAI / Anthropic / Google) and paste an API key. Defaults to the latest models — GPT-5, Claude Sonnet 4.6, or Gemini 3 Pro.
Go to the Knowledge tab → paste your help/docs URL → click Crawl. Pathfinder reads every page, embeds the content, and builds a vector knowledge base used to ground test generation.
Open the page you want to test → Explore tab → Start Exploration. AI navigates your app and builds a page graph. Then Learn Flows from Exploration extracts user journeys. Finally, Generate in the Tests tab to write executable cases.
Paste the root URL of your help site or docs. Pathfinder crawls every linked page, extracts text, and stores embeddings.
Set depth (1–5), or flip on Single page only to scan just the active tab URL. Hit Start Exploration. Pathfinder clicks visible elements, opens modals, captures forms, fields, wizards, data tables, API calls, and accessibility issues.
After exploring, click Learn Flows from Exploration. Pathfinder partitions the graph by sub-app (e.g. /admin vs /learner), runs LLM extraction in parallel, and merges the results.
Click Generate on any flow. AI writes positive, negative & edge-case tests grounded in observed form fields. Constraint-based boundary tests (max-length+1, required-empty, format violations) are added deterministically.
Per-step status, screenshots on failure, healing attempts, network requests, and full error messages. Export as JSON, HTML, or JUnit XML for CI integration.
Three on-demand analyses on top of your captured data:
Save named presets bundling planning mode, target origin, headers, and storage state. Apply a preset before "Run All" to switch between staging / prod / sandbox in one click.
includeDangerous: true in the START_EXPLORATION message (or wire a UI toggle if you've added one).
pathfinder_* in chrome.storage.local; flows live in IndexedDB pathfinder_db.
The MCP package lets external AI agents call Pathfinder's engine over the Model Context Protocol. It runs as a local Node.js process and exposes 20+ tools.
# From the Pathfinder repo root
cd MCP
# Install Playwright + dependencies
npm run setup
# Start MySQL (used for KB + results)
docker run -d \
--name pathfinder-mysql \
-e MYSQL_ROOT_PASSWORD=pathfinder \
-e MYSQL_DATABASE=pathfinder \
-e MYSQL_USER=pathfinder \
-e MYSQL_PASSWORD=pathfinder \
-p 3307:3306 \
mysql:8.0
# Configure .env
cat > .env <<'EOF'
AI_PROVIDER=anthropic
ANTHROPIC_API_KEY=sk-ant-...
MYSQL_HOST=127.0.0.1
MYSQL_PORT=3307
MYSQL_USER=pathfinder
MYSQL_PASSWORD=pathfinder
MYSQL_DATABASE=pathfinder
EOF
# Build
npm run build
Claude Desktop — edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"pathfinder": {
"command": "node",
"args": ["--env-file=.env", "/absolute/path/to/Pathfinder/MCP/dist/index.js"],
"cwd": "/absolute/path/to/Pathfinder/MCP"
}
}
}
Cursor — Settings → MCP → Add new server, point to the same command.
Cline / custom agents — register the server in your client's MCP config; it speaks stdio JSON-RPC out of the box.
Once registered, ask the AI: "Use Pathfinder to crawl https://docs.example.com, then explore https://app.example.com, learn flows, and run smoke tests headless." The agent will chain crawl_knowledge → explore_app → learn_flows → run_one_liners automatically.
Approximate per-flow and per-test-run costs for a mid-sized site (≈240 flows / 1,440 generated tests, weekly runs):
| Model | In $/1M | Out $/1M | Generation | 4× weekly run | Total / month |
|---|---|---|---|---|---|
| GPT-5-mini | 0.25 | 2 | ~$2.5 | ~$25 | ~$28 |
| GPT-5 | 1.25 | 10 | ~$12 | ~$140 | ~$150 |
| Gemini 3 Pro | 2 | 10 | ~$15 | ~$165 | ~$180 |
| Claude Sonnet 4.6 | 3 | 15 | ~$26 | ~$230 | ~$255 |
| Claude Opus 4.7 | 15 | 75 | ~$130 | ~$1,120 | ~$1,250 |
Levers that change the bill: planningMode: 'preplan' drops execution cost ~70%; useLocalEmbeddings: true zeros embedding spend; describeImages: true adds 2–4× via vision calls. Constraint-based tests (up to 25 per flow) cost zero.
all-MiniLM-L6-v2 for those.
/login, /signin, /auth, /sso, /oauth, /session. If it gets bounced to one of these mid-run, it aborts immediately with a clear message instead of looping on the login form. Sign back in and re-run.
storage_state_path JSON; capture it once via capture_auth or import_chrome_cookies, then point every run at it.
export_knowledge / export_explore.
pathfinder_* in chrome.storage.local and IndexedDB pathfinder_db. MCP: clear_knowledge + clear_explore.