electron-stagewright

Electron Stagewright — Testing skill for Claude Code

Testing community

Drive Electron apps the way Playwright drives browsers — MCP server for AI agents.

How to install Electron Stagewright

This entry records only its repository, not the path inside it, so there is no exact command to give. Open electron-stagewright/electron-stagewright and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Electron Stagewright does

Drive Electron apps the way Playwright drives browsers — MCP server for AI agents.

Alternatives in Testing

  • Ext Apps — Official repo for spec & SDK of MCP Apps protocol - standard for UIs embedded AI chatbots, served by MCP serve 1.9k ★
  • Spec Driven Development — Drive Kandev feature work through spec, plan, independent tasks, implementation, QA, and verification 697 ★
  • Mda — MDA Open Spec — a Markdown superset for agent-facing documents 615 ★

README

Electron Stagewright

[![npm](https://img.shields.io/npm/v/@electron-stagewright/core?label=npm)](https://www.npmjs.com/package/@electron-stagewright/core) [![CI](https://github.com/electron-stagewright/electron-stagewright/actions/workflows/ci.yml/badge.svg)](https://github.com/electron-stagewright/electron-stagewright/actions/workflows/ci.yml) [![Real Electron E2E](https://github.com/electron-stagewright/electron-stagewright/actions/workflows/e2e-electron.yml/badge.svg)](https://github.com/electron-stagewright/electron-stagewright/actions/workflows/e2e-electron.yml) [![License: MIT](https://img.shields.io/badge/license-MIT-1f6f5c)](LICENSE)

**Agentic UX testing for real Electron apps. Cue the app, prove the experience, and return bounded evidence through MCP.**

Electron Stagewright is a Model Context Protocol (MCP) server that lets Claude Code, Codex, Cursor, Cline, Aider, and any MCP-compatible agent operate real Electron applications. Launch or attach, inspect the accessibility tree, interact through stable refs, assert behavior with retrying expectations, and capture diagnostics without turning every check into another agent round-trip.

Why this exists

Browser automation already has mature agent tooling. Electron adds a different boundary: the main process, renderer surfaces, native menus and dialogs, multiple windows, packaged runtimes, and signed release artifacts. A browser API exposed through MCP does not cover that whole product.

Electron Stagewright is designed **agent-first from the primitive level up**:

  • Errors carry hints, suggested next actions, and similar-ref alternatives — agents recover without an extra round-trip asking for context.
  • Every response reports its own token cost — agents budget in real time, not after the fact.
  • get_state returns the full state envelope in one call — visible, enabled, checked, focused, disabled, aria-expanded, aria-busy, aria-invalid. No 4-call chain to decide if a button is clickable.