Skip to content

katalon-labs/katalon-true-platform

v0.3.0MIT

Agent-neutral AI testing skills for Katalon True Platform covering the full software testing lifecycle: test planning, test design, test management and requirement traceability, test review, manual and automated execution with AI, failure analysis and release readiness, and test maintenance - operated through the Katalon MCP.

License: MIT 20 skills 8 agents Katalon MCP

Start here · Quickstart · Skills · Lifecycle · Install · MCP · Contributing

Ask your coding agent to read a requirement, design the test cases, run them with AI, upload the reports, and tell you whether the release is safe to ship. The skills do the platform work through the Katalon MCP, so the agent operates your real project instead of guessing at it.

An example session. Your requirement keys, suites, and verdicts come from your own workspace.

Quickstart

1. Install the skills. The skills CLI detects the agent you already run (70+ supported) and drops the skills into its native directory.

npx skills add katalon-labs/true-skills

2. Point it at your Katalon workspace. Add the MCP server to your agent's config file (the install section says which file yours is):

{
  "mcpServers": {
    "katalon-prod-mcp": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://<your.sub.domain>.katalon.io/mcp", "--transport", "http-first"]
    }
  }
}

First connect opens a browser OAuth flow. No tokens to paste, no keys to store.

3. Ask for something real.

Set up Katalon MCP and verify my projects.
Create manual tests from requirement CEL-6 and link them.
Which requirements in this sprint have no test coverage?
Run that suite with AI and summarize what broke.
Generate a Playwright script from test case TC-1042.
Upload my Playwright report to Katalon and verify the run.
Is release 3.2 safe to ship?

Or hand over the whole chain: "Analyze CEL-6, design and import the cases, build a suite, run it with AI, and tell me if we can ship."

Start where you are

Four jobs. Say the situation in your own words and the agent picks the skill.

You are aYou sayIt starts at
Manual tester QA analyst, test analystI just got requirement CEL-6 and need cases · Run this suite with AI and tell me what broke · Is this failure the app or my testcreate-test-casestest-dataexecute-testanalyze-failures Unscripted session? exploratory-charter.
Automation tester SDET, automation engineerTurn TC-1042 into a Playwright, Selenium, Cypress, or Studio test · Get my run into the platform · Our suite went flaky this monthtest-case-to-playwrightplaywright-executetest-maintenance
Test lead QA lead, QE leadWhat should we test first this sprint · Is this suite ready for the pipeline · Which requirements have no coveragetest-plantest-estimationtest-reviewtest-management
Test manager QA manager, head of qualityCan we ship 3.2 · How long will this take and with how many people · Build the summary I present upwardrelease-analyzetest-estimationtest-reporting

Not connected yet? Start at platform-setup, which everyone runs once.

Not sure which one you are, or the request spans several? Ask true-platform-testing and it routes by role and by stage. The full map from intent to skill, including what to fall back to for the parts not built yet, is in lifecycle-map.md.

The skills

Twenty skills, one folder each under skills/. The agent picks the right one from its description, so you rarely name a skill yourself.

SkillStageWhat it does
platform-setupsetupInstalls and verifies the Katalon MCP, and diagnoses auth or access failures. Start here.
test-plan1 planTurns quality goals into scope, ranks the work by requirement coverage and risk, and builds the folder and suite structure that acts as the executable plan.
test-estimation1 planSizes a test cycle from scope, risk, and historical execution data, resources it across the manual and automated lanes, and states the uncertainty instead of inventing precision.
create-test-cases2 designReads a requirement or free text, designs atomic manual cases with ISTQB techniques as reference, skips duplicates, imports only what is missing, and links each case back to the requirement.
test-data2 designDesigns the data a case runs on, decides what must exist before a run, keeps literals out of the step text, and resets state afterwards so the next run starts clean.
exploratory-charter2 designWrites a charter with a mission, areas, oracles, and a timebox, runs the session, and turns what was found into defects and scripted cases.
test-management3 manageOrganizes folders and suites, finds assets at scale, and produces a requirement to case to suite traceability report with coverage percentage and orphans.
test-review4 reviewReviews coverage, case quality, and flakiness before anything enters the pipeline, and returns Approve, Approve with fixes, or Reject plus the specific weak cases.
execute-test5 executeRuns a case, a list, or a suite as a manual run, a Run with AI session, or scheduled automation, then reports pass, fail, and blocked.
upload-report5 executeRuns automation and uploads or verifies Katalon Studio/KRE, JUnit XML, and Playwright reports on the platform.
test-case-to-playwright5 executeConverts manual cases into Playwright TypeScript with Page Object Model and fixtures.
test-case-to-selenium5 executeConverts manual cases into Selenium automation, detecting the project's language binding rather than assuming one.
test-case-to-cypress5 executeConverts manual cases into Cypress specs with custom commands and fixtures.
test-case-to-katalon-studio5 executeConverts manual cases into Katalon Studio test cases and Groovy scripts, keeping the .tc and .ts pair GUID-consistent.
playwright-execute5 executeRuns Playwright specs, ships the report with @katalon/playwright-reporter, and verifies the run landed.
analyze-failures6 analyzeSorts failures into product defect, automation defect, and environment noise, clusters them by signature, and files ALM defects for the real bugs.
release-analyze6 analyzeReads coverage, stability, and defect data to return Ready, Ready with risk, or Not ready, with the reasons attached.
test-reporting6 analyzeTurns platform quality data into the few metrics that answer a stakeholder question, trended across releases, as a summary a manager can present upward.
test-maintenance7 maintainFinds flaky and broken cases from stability history, repairs or regenerates them, and hands the refreshed gap list back to planning.
true-platform-testingallThe router and end to end runner. Routes any request to the right stage, or drives the full chain from requirement to ship decision.

Multi-skill playbooks live in combination-recipes.md. Copy-paste prompts and cross-model notes are in prompt-recipes.md.

The lifecycle

Seven stages, each owned by a skill. The loop closes when maintenance feeds its gap list back into the plan.

platform-setup sits before all seven, connecting the MCP. Every skill states which Katalon MCP tools it uses and where the platform stops. Full stage map: lifecycle-map.md. Every tool in one line each: mcp-tool-index.md. A self-contained visual for humans: docs/lifecycle.html.

Where the boundary is

Each skill names its limits up front so the agent does not promise work the platform cannot do.

Through the MCP: list projects and repositories, read requirements, create and update and link test cases, manage suites and folders, create manual runs, start Run with AI, poll AI sessions, read results, fetch quality metrics, and file ALM-linked defects.

Not through the MCP: creating requirements, creating a formal Test Plan entity, guaranteeing an AI run finishes, or inspecting the live app UI without a browser tool. A named suite plus a release or sprint association stands in for the Test Plan entity.

Some work is a product surface rather than an API call: object capture and resilience design in Studio, custom fields and Git config and governance in the TestOps UI, self-healing and Time Capsule and TrueTest regeneration, and rerun, terminate, and Live Monitor. The full list is in unavailable-capabilities.md.

Install

Every path needs the Katalon MCP configured.

Any agent via the skills CLI

npx skills add katalon-labs/true-skills                          # all skills, this project
npx skills add katalon-labs/true-skills --skill platform-setup   # just one
npx skills add katalon-labs/true-skills -g                       # user-global, every agent
npx skills update                                                # pull the latest

The CLI installs skill files only. Configure the MCP yourself with the snippet below, or use the Claude Code and Codex plugin paths, which bundle it.

Any agent via the Agent Plugins standard

This repository conforms to the Agent Plugins specification 1.0.0: plugin.json + skills/ + mcp.json at the repo root form a portable plugin any conformant client can load directly, and plugins/katalon-true-platform/ ships the same contract as a standalone plugin directory. Skills follow the Agent Skills format. Point your standard-aware client at either directory; replace <your.sub.domain> in mcp.json with your Katalon subdomain.

Claude Code plugin marketplace

claude plugin marketplace add katalon-labs/true-skills
claude plugin install katalon-true-platform@katalon-true-platform-marketplace

Developing against a checkout:

claude --plugin-dir plugins/katalon-true-platform

The plugin ships the skills and an .mcp.json. If your setup does not auto-load the bundled MCP, add it manually.

Codex plugin marketplace

codex plugin marketplace add katalon-labs/true-skills

Open Plugins in Codex and install Katalon True Platform. Set your subdomain in the plugin's .mcp.json.

GitHub Copilot agent skills + MCP

mkdir -p .github .vscode \
  && cp -R <checkout>/.github/skills .github/ \
  && cp -R <checkout>/.github/prompts .github/ \
  && cp <checkout>/.github/copilot-instructions.md .github/ \
  && cp <checkout>/.github/mcp.json .github/ \
  && cp <checkout>/.vscode/mcp.json .vscode/
  • VS Code (agent mode) - skills in .github/skills/ load automatically; prompt files stay available as /platform-setup etc. Start the katalon-prod-mcp server when VS Code offers it: it prompts for your Katalon subdomain, then signs you in through the browser OAuth flow. No token pasting.
  • Copilot CLI - the same skills are auto-discovered (/skills list to see them). The MCP server auto-loads from .github/mcp.json once you replace <your.sub.domain>; or register it interactively with /mcp add (type http, same URL). The CLI does not read .vscode/mcp.json.
  • Copilot coding agent & code review - read .github/skills/ from your repository automatically. Neither surface supports OAuth remote MCP servers yet, so keep Katalon platform operations in VS Code or the CLI for now.

Cursor project rules

cp -R <checkout>/.cursor .cursor

Rules in .cursor/rules/*.mdc load by description when relevant. MCP config lives in .cursor/mcp.json.

Kiro steering docs

cp -R <checkout>/.kiro .kiro

Steering docs use manual inclusion, so reference one in chat with #true-platform-testing. MCP config lives in .kiro/settings/mcp.json.

Windsurf rules

cp -R <checkout>/.windsurf .windsurf

Rules in .windsurf/rules/*.md trigger on their description. Add the MCP under Settings → MCP, or in ~/.codeium/windsurf/mcp_config.json.

Cline project rules

cp -R <checkout>/.clinerules .clinerules

Cline loads every file in .clinerules/. Add the MCP through its MCP Servers panel.

Continue rules and MCP block

cp -R <checkout>/.continue .continue

Rules live in .continue/rules/*.md, the MCP block in .continue/mcpServers/katalon.yaml.

Anything else via AGENTS.md

Point your agent at AGENTS.md. It indexes every skill and tells the agent to open skills/<name>/SKILL.md. Use the root .mcp.json for the server config.

Connect the Katalon MCP

The command is the same for every agent. Only the surrounding config file changes. The canonical shape lives in .mcp.json:

{
  "mcpServers": {
    "katalon-prod-mcp": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://<your.sub.domain>.katalon.io/mcp", "--transport", "http-first"]
    }
  }
}
  1. Replace <your.sub.domain> with your Katalon workspace subdomain.
  2. Complete the browser OAuth flow that mcp-remote opens on first connect.
  3. Reload the agent if the tools do not show up.

Auth is browser OAuth only. Never paste passwords, API tokens, cookies, JWTs, MFA codes, or OAuth callback URLs into chat, and never commit them. The skills enforce this.

How it is built

The skill bodies live once. Everything each agent needs is generated from them, so no adapter can drift.

  skills/                      13 SKILL.md files plus references/
     |
     |  node scripts/build-adapters.mjs      deterministic, checked in CI
     v
  Claude Code · Codex · Copilot · Cursor · Kiro · Windsurf · Cline · Continue · AGENTS.md
     |
     |  every adapter points at the same server
     v
  Katalon MCP  ->  requirements, test cases, suites, Run with AI, results, defects
skills/                              source of truth, 13 skills
scripts/build-adapters.mjs           generates every agent config
plugins/katalon-true-platform/       Claude Code and Codex plugin      (generated)
.claude-plugin/  .agents/            plugin marketplaces               (generated)
.cursor/  .kiro/  .github/           Cursor, Kiro, Copilot             (generated)
.windsurf/  .clinerules/  .continue/ Windsurf, Cline, Continue         (generated)
.mcp.json  .vscode/mcp.json          MCP config                        (generated)
AGENTS.md  llms.txt                  agent-readable index              (generated)

Contributing

Edit skills/ only. Everything else is generated. Then:

node scripts/validate-skills.mjs    # skills/ matches scripts/skills.config.mjs
node scripts/build-adapters.mjs     # regenerate every agent config

The build is deterministic. Re-running it with no skill changes produces no diff, and CI rejects out-of-sync adapters. Details in CONTRIBUTING.md.

License

MIT © Katalon. "Katalon" and "Katalon True Platform" are trademarks of Katalon, Inc.