Project knowledge graph
Tickets β scenarios β POMs β SUT areas β ACs, with an HTML viewer you can attach to any PR. Pre-flight impact analysis before merge β the moat no other QA tool has.
See a live one β
Yesterday that was your job β now it's one prompt. Hand a Jira or GitHub ticket to Claude, Cursor, or Codex; Xera writes the spec, runs it, classifies the failure, and posts the verdict back. A live knowledge graph catches breaking changes and surfaces coverage gaps before they ship.
> /xera-run SAMPLE-001
# Reads the acceptance criteria β writes Gherkin + Playwright β runs the test
# β classifies the failure β posts the diagnosis back to Jira or GitHub.That's the whole loop. Swap SAMPLE-001 for JIRA-123 or GH-42 and Xera works against your real tracker. See it run on FlowBoard β
npm install -g @xera-ai/cli # install once globally; or use npx
mkdir my-tests && cd my-tests
xera init # interactive: shape + tracker + ~5 prompts
# or fully non-interactive (GitHub Issues, no token required):
xera init -y --shape web --tracker github \
--gr xera-ai/xera --su https://staging.example.com
cp .env.example .env # fill in credentials
npm install
# Web shape only:
npx playwright install chromium
npx xera-internal auth-setup # pre-authenticate rolesThen in your AI coding agent (Claude Code, Cursor, or Codex CLI):
> /xera-run SAMPLE-001 # web sample
> /xera-run SAMPLE-HTTP-001 # api sample
> /xera-run JIRA-123 # your first real ticket
> /xera-run GH-42 # β¦or a GitHub issue
Tap to open the live knowledge graph βThere's a complete demo loop you can poke at without writing a single line of code or hosting an app:
| Repo | Role |
|---|---|
xera-ai/xera-sample-app | FlowBoard β the SUT. Full-stack project-management app (Fastify + React + SQLite, JWT auth, Swagger REST API, intentional security surfaces). |
xera-ai/xera-sample-app-tests | Reference tests β a working xera consumer project pointed at FlowBoard. Look here for a real xera.config.ts, .xera/<TICKET>/ artifacts, shared POMs, and openapi.json. |
| xera-ai.github.io/xera-sample-app-tests | Live knowledge graph β the actual .xera/graph.html viewer produced from the reference tests above. Click around: tickets β scenarios β POMs β areas, Coverage tab (Map / List / Trend), failure classes. |
Spin FlowBoard + the tests up locally:
# 1. Bring FlowBoard up
git clone https://github.com/xera-ai/xera-sample-app
cd xera-sample-app && npm install && npm run dev:backend & npm run dev:frontend
# UI on http://localhost:5173, API on http://localhost:3000
# 2. Clone the reference tests in a sibling directory and run a ticket
cd .. && git clone https://github.com/xera-ai/xera-sample-app-tests
cd xera-sample-app-tests
cp .env.example .env && npm install && npx playwright install chromium
npx xera-internal fetch XFB-6 && npx xera-internal exec XFB-6Or start from scratch with your own xera project pointed at the same FlowBoard:
mkdir flowboard-tests && cd flowboard-tests
xera init -y --shape mixed --tracker github \
--gr xera-ai/xera-sample-app \
--su http://localhost:5173 \
--au http://localhost:3000Pair /xera-run with /xera-explore
FlowBoard's intentional surfaces (stored XSS, JWT edge cases, file upload risks, SQL injection points) are exactly the territory the experimental /xera-explore skill brainstorms:
> /xera-run <TICKET> # AC-driven happy path β test.feature
> /xera-explore <TICKET> # negative / boundary / race / a11y / security-smell β explore.feature/xera-explore writes to a separate explore.feature (tagged @adversarial) so PO review of test.feature stays undisturbed.
| Skill | What it does |
|---|---|
/xera-run <TICKET> | Full pipeline end-to-end (auto-checks impact after fetch) |
/xera-fetch <TICKET> | Pull story from Jira or GitHub Issues; extract modified SUT areas |
/xera-feature <TICKET> | Generate Gherkin (or --from-spec to generate from an OpenAPI doc with no ticket) |
/xera-script <TICKET> | Generate Playwright spec + page objects |
/xera-exec <TICKET> | Run the test (supports --grep per-scenario) |
/xera-report <TICKET> | 9-class classifier + post diagnosis to the tracker |
/xera-impact <TICKET> | Pre-flight: which existing scenarios may break? |
/xera-coverage | Area + AC-level coverage with risk weighting |
/xera-fill-gap <area> | AI-drafted Gherkin for UNCOVERED areas or unsatisfied ACs |
/xera-explore <TICKET> | Brainstorm negative / boundary / race / a11y scenarios |
/xera-promote <TICKET> <POM> | Move a POM to shared/ |
| Version | Status | Highlights |
|---|---|---|
| v0.1 β v0.5 | β shipped | Core platform, Web adapter, eval harness (/xera-eval), prompt-injection defense, self-healing selectors |
| v0.6 | β shipped | Project knowledge graph, TEST_OUTDATED classifier, /xera-impact, HTML viewer + CI artifact |
| v0.7 | β shipped | HTTP API adapter (@xera-ai/http), pre-auth pattern, CONTRACT_DRIFT / RATE_LIMITED / AUTH_EXPIRED classifiers |
| v0.8 | β shipped | Coverage gap & AC matrix (/xera-coverage, /xera-fill-gap), release infra overhaul (changesets fixed group, auto-changeset from PR titles, xera-automation GitHub App) |
| v0.9 | β shipped | Adversarial exploration (/xera-explore, experimental, opt-in) |
| v0.10βv0.15 | β shipped | Multi-editor support (Claude / Cursor / Codex), cognitive AC extraction from Jira description, xera init --update --shape upgrade path, .d.ts declarations for all packages |
| v0.16 | β shipped | GitHub Issues tracker (xera init --tracker github, no token required), samples remove subcommand |
| v0.18 | β shipped | Feature-from-OpenAPI (/xera-feature --from-spec, no ticket needed), xera init scaffolds a root AGENTS.md |
| v0.19 | β shipped | Web CONTRACT_DRIFT detection (opt-in xeraNetwork recorder) + self-heal that rewrites a spec.ts assertion to the OpenAPI contract |
| v1.0 | π§ planned | Stability commitment (semver from 1.0, frozen TestAdapter interface), public documentation site, cross-adapter graph linkage (endpoint as first-class graph node) |
| v1.x | π planned | /xera-sprint multi-ticket orchestration, production trace β test backfill, hosted live dashboard (graph + coverage + disputes), messaging adapters (Kafka, AMQP, WebSocket), GraphQL, gRPC |
| v2.0 | π planned | Optional SaaS backend (only if multi-org demand) |
| Future | π‘ designed-for | Mobile, performance, and security adapters β the TestAdapter interface is built to accept them; no timeline or owner yet |
Released under the Apache 2.0 License.