Reference

Reference material is introduced as interfaces and configuration become stable.

Configuration

Create testkit.config.ts at the repository root. It is optional for simple repositories and is the primary configuration surface for services, managed databases, timeouts, worker count, regression handling, and toolchains.

TypeScript
import { app, defineConfig } from "@(scope)/testkit/config";

export default defineConfig({
  execution: { workers: 8, fileTimeoutSeconds: 60 },
  services: {
    api: app.node({ cwd: ".", entry: "src/index.ts", port: 3004 }),
  },
});

CLI reference

testkit runDiscover and run all managed suites.
testkit discover [--json]Inspect discovered suites without executing them.
testkit show <run-id>Inspect a sealed run and its evidence.
testkit --type <types>Filter suites by comma-separated types, such as int,e2e,dal.
testkit --service <name> -s <suite>Run a named service and suite.
testkit status | lint | destroyInspect lifecycle state, check configuration, or destroy current-product resources.
testkit cleanup --resources --global --dry-runPreview stale Testkit-owned resource cleanup before deleting anything.

Public authoring imports

Use @(scope)/testkit for defineFile; use the engine-specific paths /k6, /node-vitest/data, /node-vitest/contract, and /playwright for suite helpers. Tooling helpers are published at /config, /drizzle, /env, and /tooling/vitest.