AI-ready: an agent that diagnoses failures and opens the fix

A self-hosted QA platform for test case management and test automation with Playwright or Cucumber.

Open source and self-hosted. Write Playwright specs or Cucumber feature files, run them from the CLI or UI, and view reports, all in one place. Connect an AI agent and it will tell you why a test failed — and fix it.

Get started

Three commands to a running server.

One global npm package. No database to provision, no config file to write. Plum brings its own.

  1. 01 Install the CLI from npm
  2. 02 Make a folder for your instance
  3. 03 Start the server and open the UI
$ npm install -g plum-e2e
$ mkdir plum && cd plum
$ plum server start
The UI comes up at localhost:3002. A setup wizard creates your organisation, first project and owner account.
Pick your framework

Plain code, or plain language.

Each project runs on one framework, chosen when you create it. Pick Playwright and you write tests in its own API. Pick Cucumber and every scenario is Gherkin that product, QA and engineering all read the same. Either way Plum runs them the same and gives you the same reports and replays.

login.spec.ts
test("user can log in with valid credentials", async ({ page }) => {
  await page.goto("/");
  await page.getByPlaceholder("Username").fill("standard_user");
  await page.getByPlaceholder("Password").fill("secret_sauce");
  await page.getByRole("button", { name: "Login" }).click();
  await expect(page).toHaveURL(/inventory/);
});
Built for AI agents

Let an agent run your QA.

Plum ships an MCP server. Point Claude, Cursor or any MCP client at it with a per-project key and it authors test cases, triggers runs, and reads back reports and logs. It acts as you, scoped to one project, every action tagged (MCP).

mcp.json
{
  "mcpServers": {
    "plum-checkout": {
      "type": "http",
      "url": "https://plum.example.com/mcp",
      "headers": {
        "Authorization": "ApiKey plum_live_…"
      }
    }
  }
}

Own your QA.

Self-hosted and open source: no telemetry, your data on your server. Up and running in the time it takes to read this.

Get started →