Skip to content

IniZio/skytest-agent

 
 

Repository files navigation

SkyTest Agent

The open-source, self-hosted alternative to fragile E2E test suites.

Write tests in plain language. Get screenshot evidence for every run.

GitHub stars License: MIT Last Commit PRs Welcome

Join Waitlist

What is SkyTest Agent?

Cypress and Playwright make you code against DOM selectors that break when the UI changes. SkyTest Agent works differently: describe what a user would do in plain language, and a browser agent runs those steps, capturing screenshots as evidence.

It is self-hosted, open source, and uses your own API key.

Welcome.mp4

Key Features

  • Plain-language tests - Write test cases the way you'd explain them to a colleague. No CSS selectors or XPaths.
  • Visual evidence - Every run captures screenshots and logs so you see what happened, not just pass/fail.
  • Multi-session flows - Coordinate across browser roles (e.g., "Browser A" sends a message, "Browser B" receives it) for multi-user scenarios.
  • Custom Playwright code - Mix AI-driven steps with your own Playwright scripts when you need precise control.
  • Android Support — Run cross-platform tests on web and Android apps with a single test suite.
  • MCP & Agent SKill — Use MCP to let AI coding agents generate test cases from your specs.
  • Bring Your Own Key - Use your own OpenRouter API key. You pay only your LLM costs.

Example test case:

1. Open the app
2. Sign in as a user
3. Add an item to the cart
4. Verify checkout succeeds

Watch the demo on YouTube

Quick Start

Start Docker, then run:

npm install
cp .env.example .env.local
# Edit .env.local with your credentials
make dev

Open http://localhost:3000 and sign in.
Enter your OpenRouter API key in settings and start testing!

Hosted Version

Don't want to self-host? We're building a managed version of SkyTest.

Join Waitlist

Advanced Setup

  • Environment Variables: See .env.example for required configs like database and storage. Users provide their own OpenRouter keys in the app settings.
  • Local Development: Check the Local Development Guide for the repo-local stack and reset workflow.
  • Android Testing: See the macOS Android Runner Guide to configure Android execution on macOS hosts.
  • macOS CLI (Homebrew): brew tap oursky/skytest && brew install skytest

Quick Troubleshooting

  • Browsers not found: Run npm run playwright:install
  • Database errors: Verify DATABASE_URL, then run npm run db:migrate:deploy
  • Object storage errors: Verify S3_ENDPOINT, S3_BUCKET, and MinIO credentials in .env.local for local development

Community & Contributing

Bug reports, feature requests, and pull requests are all welcome.

License

MIT

About

AI-powered web automation agent for natural language testing. Built with Next.js 16, Midscene.js, and Playwright. Describe steps, automate interactions.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 97.4%
  • JavaScript 1.5%
  • Shell 0.4%
  • CSS 0.3%
  • Makefile 0.2%
  • Dockerfile 0.1%
  • Ruby 0.1%