# skytest-agent
**Repository Path**: svnspot/skytest-agent
## Basic Information
- **Project Name**: skytest-agent
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-05-01
- **Last Updated**: 2026-05-01
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# SkyTest Agent
**The open-source, self-hosted alternative to fragile E2E test suites.**
Write tests in plain language. Get screenshot evidence for every run.
[](https://github.com/oursky/skytest-agent/stargazers)
[](LICENSE)
[](https://github.com/oursky/skytest-agent/commits/main)
[](https://github.com/oursky/skytest-agent/pulls)
## 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.
## 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](https://www.youtube.com/watch?v=qYlzKr8LWL8)
## Quick Start
Start Docker, then run:
```bash
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.
## 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](./docs/operators/local-development.md) for the repo-local stack and reset workflow.
- **Android Testing**: See the [macOS Android Runner Guide](./docs/operators/macos-android-runner-guide.md) 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.
- **Report a bug** - [Open an issue](https://github.com/oursky/skytest-agent/issues/new)
- **Request a feature** - [Start a discussion](https://github.com/oursky/skytest-agent/discussions)
- **Contribute code** - Fork the repo, create a branch, and open a pull request
## License
[MIT](LICENSE)