Skip to main content
SHAFT

Release decisions backed by inspectable evidence.

Run across web, mobile, API, database, and CLI. Keep the evidence close to the decision it informs.

Real SHAFT execution. Open the report evidence and inspect it.

Evidence that survives scrutiny

Steps, attachments, diagnostics, and visual checks remain inspectable after the run.

Passed steps, attached proofInspect actions and captured evidence in the same run.
Failure context, ready to inspectMove from the failed action to its screenshot and trace without reconstructing the run.
Visual evidence beside the resultReview the expected image, actual image, and deterministic OpenCV difference together.

Useful at the keyboard and in the release room

For engineers

Keep native Java control while SHAFT owns repeatable suite mechanics.

  • Run browser, mobile, API, database, and CLI checks together.
  • Move lifecycle, synchronization, screenshots, and logs out of test intent.
  • Start debugging with evidence already attached.

For delivery leaders

Make automation results inspectable before they inform a release.

  • Use one onboarding path for new and existing projects.
  • Review steps, screenshots, traces, and diagnostics together.
  • Audit license, releases, CI, security, and support from primary sources.

Choose the shortest path to evidence

First run

Generate a SHAFT project

Choose test surfaces and download a ready-to-run project.

Open generator
Quick start

Run your first test

Move from setup to an evidence report through one short guide.

Read quick start
Migration

Upgrade an existing suite

Adopt SHAFT by test surface without rewriting everything at once.

Plan the upgrade
Expansion

Add another test surface

Bring mobile, API, database, CLI, or Grid evidence into the same run.

Compare surfaces
Agentic

Connect MCP after the basics

Expose Capture, Doctor, Heal, and browser tools after the project compiles.

Connect MCP

One evidence model across five test surfaces

Web GUI

Selenium + Playwright

Actions, synchronization, locators, screenshots, and report steps.

Mobile GUI

Appium

Android, iOS, mobile web, emulators, real devices, and clouds.

API

REST Assured

Requests, schemas, authentication, assertions, and payload evidence.

Database

JDBC

Connections, queries, updates, and result validation.

CLI

Local, Docker, SSH

Commands, containers, remote shells, files, and captured output.

Move from observation to maintainable automation

SHAFT Capture showing locator inspection and captured browser evidence.
Capture the real interactionRecord browser activity, inspect locators, and retain evidence for generation.
SHAFT IntelliJ Assistant showing agentic project guidance inside the IDE.
Keep guidance in the IDEConnect project context, MCP tools, and focused assistance where engineers work.

Write intent. Keep control.

SHAFT reduces repeated lifecycle and evidence plumbing without hiding the native engines beneath it.

  • Driver lifecycle, waits, retries, and synchronization
  • Screenshots, logs, steps, and attachments
  • Configuration and data isolation
  • Allure evidence that Doctor and Heal can inspect
A readable SHAFT test
driver.browser().navigateToURL(appUrl);
driver.element().type(username, user);
driver.element().click(signIn);
driver.element().assertThat(home).exists();

Adopt without a rewrite mandate

Keep native-tool access

Use underlying automation APIs directly when a case needs them.

Compare modules

Evidence improves the next run

  1. ExecuteRun web, mobile, API, database, and CLI checks.
  2. CollectCapture screenshots, logs, requests, responses, and data facts.
  3. ReportKeep the timeline and attachments in Allure.
  4. DiagnoseUse the report and Doctor to understand the failure path.
  5. ImproveApply a deterministic fix; use Heal when evidence supports recovery.

Visual comparison is deterministic. AI-assisted Heal is a separate recovery capability; Doctor explains evidence-backed failure paths; MCP connects those tools to supported assistants.

Start with a project. Keep the evidence.

Generate a focused starter, examine the documentation, or follow development on GitHub.