PlayPorter is an agentic ecosystem built with CrewAI that intelligently migrates existing Selenium test frameworks to Playwright.
It uses a coordinated team of AI agents to:
- Analyze Selenium test suites
- Maps and stores code relationships in-memory
- Migrates them into Playwright equivalents
- Validate correctness via runtime testing
- Review diffs between old and new code
- Commit results to Git automatically
- Generate a detailed migration report
| Agent | Role | Tools |
|---|---|---|
| Sensei | Understands Selenium test structures, reads source files, and maps locators and test flows into structured contexts for migration. | FileReadTool, CodeAtlas |
| Alchemist | Transforms Selenium code into Playwright syntax, manages element mappings, and commits generated scripts to the repository. | SeleniumToPlaywrightConverter, Migrator |
| Sentinel | Executes migrated Playwright tests, performs quality checks, and validates that behavior matches the Selenium baseline. | PlaywrightRunnerTool, BuildTool. CodeDiffTool |
| Healer | Detects flaky or failed migrations, applies automated repairs, and re-validates fixed scripts before closure. | CodeDiffTool, HealingTool |
python -m venv .venv
.\.venv\bin\Activate.ps1python -m pip install --upgrade pip setuptools wheel
pip install -e .
pip install crewai crewai-tools playwright
npx playwright install chromium# Run the CLI (after installing this package)
playporter -m "selenium-framework-path" "path-for-new-playwright-framework"
# With Target Language Binding
playporter --migrate "selenium-framework-path" "path-for-new-playwright-framework" "typescript"
# Or run directly with Python (one-off)
python -m src.playporter.main --migrate "selenium-framework-path" "path-for-new-playwright-framework" "typescript"
